Files
openobserve/.github
Neha PandClaude Sonnet 4.6 ee008d661a test: convert query-agent to thin caller (engine in o2-enterprise) (#12853)
## 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>
2026-07-01 06:23:09 +00:00
..