feat(pilot): minimal AI review bot for Gitea Actions
Ships a working pragent pilot ahead of the framework build (design doc deferred). Single stdlib-only reviewer script fetched at runtime by a per-repo Gitea Action; reviews fire only on PRs with the AI-REVIEW label; model is glm-5.2:cloud via the on-network headroom proxy; fail-open. - pilot/ai_review.py: fetch PR diff, call model, post review as pragent-bot - pilot/workflow-template.yml: per-repo Gitea Action gated on AI-REVIEW label - pilot/README.md: onboarding (bot collaborator + secret + workflow + label) - tests/pilot/test_ai_review.py: 15 unit tests for pure helpers (no network) - README/design doc: note pilot is the bootstrap; framework build deferred Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -297,3 +297,24 @@ and they may be worth contributing upstream rather than shipping standalone.
|
||||
- Auto-fix commits (findings and suggestions only — writing to branches is a later,
|
||||
separately-gated decision)
|
||||
- Web dashboard (event schema first; dashboard is a downstream consumer)
|
||||
|
||||
## Bootstrap: the pilot (2026-08-17)
|
||||
|
||||
Before the framework build, a minimal **pilot** was shipped to get a working AI
|
||||
review bot live immediately (user decision 2026-08-17). It is deliberately not
|
||||
this design:
|
||||
|
||||
- Single Python script (`pilot/ai_review.py`, stdlib only) fetched at runtime by
|
||||
a per-repo Gitea Action (`pilot/workflow-template.yml`).
|
||||
- One model, `glm-5.2:cloud` via the on-network headroom proxy — no tiering, no
|
||||
analyzer fan-out, no shared-prefix caching, no provider matrix.
|
||||
- Trigger = `AI-REVIEW` label on a PR (deterministic skip, the cheapest tier
|
||||
rule, but expressed as a Gitea Actions `if` gate rather than the tier engine).
|
||||
- Fail-open, comment-only review; no inline line comments, no status checks,
|
||||
no analytics JSONL, no `explain`/`replay`.
|
||||
- Re-posts on every push (no prior-comment synthesis — §6.1 — yet).
|
||||
|
||||
The pilot validates the delivery model (CI-step + bot user, not a central
|
||||
webhook) and the on-network provider path. When the framework build resumes,
|
||||
`pilot/ai_review.py` is replaced by `pragent review`; the per-repo workflow
|
||||
stays, just calling the CLI instead of curling the script. See `pilot/README.md`.
|
||||
|
||||
Reference in New Issue
Block a user