mirror of
https://github.com/openobserve/openobserve.git
synced 2026-11-04 08:09:27 +00:00
## Summary - Thin caller (~70 lines) that watches OSS PRs and forwards to the reusable engine in \`o2-enterprise\` - Replaced the old self-contained 374-line workflow — all real logic (triage, build, test, generation) lives in the ENT engine - Running as \`workflow_call\` means the engine executes in OSS context (OSS \`GITHUB_TOKEN\`) — so it can comment on OSS PRs, push \`autoqa/*\` branches, and open OSS PRs without a cross-repo token - Input validation job guards the \`workflow_dispatch\` path (numeric \`pr_number\` check) before forwarding to the engine - ENT engine is pinned to a specific commit SHA (supply-chain safety — no floating \`@main\`) ## Entry points | Comment | Phase | Action | |---|---|---| | \`/query-agent\` | A | Run existing 675+ SQL regression suite | | \`/qa-generate\` | A + B | Run regression suite AND generate new SQL queries, open autoqa PR | | \`workflow_dispatch\` | A or B | Manual trigger via \`generation_mode\` choice | ## What lives where | Thing | Repo | Why | |---|---|---| | Caller workflow | OSS | Triggers from OSS PR comments | | Engine workflow | ENT | All logic, private | | Agent prompt files (qa-ci-\*) | ENT | Private — never exposed in public OSS repo | | Generated test files (\`queries/\*.json\`) | OSS | OSS SQL regression tests run in ENT CI | | \`compute_counts.py\`, \`data_gen.py\` | OSS | Test data generation scripts | ## Related - Engine PR (o2-enterprise): https://github.com/openobserve/o2-enterprise/pull/1988 - Supersedes: #12749 (standalone Phase B workflow — logic moved to ENT engine) ## Merge order ENT PR #1988 must merge first. After merge, update the SHA pin on line 84 of this file to the new ENT \`main\` commit, then merge this PR. ## Test plan - [ ] \`/query-agent\` comment on an OSS PR triggers Phase A via the engine; triage comment appears on the OSS PR - [ ] \`/qa-generate\` comment triggers Phase A + B; an \`autoqa/pr-N\` PR is opened in OSS with new query JSON files - [ ] \`workflow_dispatch\` with \`dry_run=true\` runs triage only, no tests - [ ] Non-integer \`pr_number\` in \`workflow_dispatch\` is rejected before forwarding 🤖 Generated with [Claude Code](https://claude.ai/claude-code) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>