Skip to content

feat(guardian): add quality-review as Deacon plugin#2263

Closed
rsionnach wants to merge 1 commit intogastownhall:mainfrom
rsionnach:feat/guardian-quality-plugin
Closed

feat(guardian): add quality-review as Deacon plugin#2263
rsionnach wants to merge 1 commit intogastownhall:mainfrom
rsionnach:feat/guardian-quality-plugin

Conversation

@rsionnach
Copy link
Copy Markdown
Contributor

Summary

  • Replaces the Go-based Guardian persistence layer (PRs feat(guardian): add transport & persistence layer (PR 1/3) #2167chore: remove .beads/backup/ from git tracking #2169, now closed) with a wisp-based Deacon plugin approach per Steve's review feedback
  • Adds plugins/quality-review/plugin.md — town-level Deacon plugin that runs every 6h, queries quality-review-result wisps, computes per-worker trends, and alerts mayor on quality breaches
  • Updates mol-refinery-patrol formula (v4→v5) with a quality-review step between run-tests and handle-failures that records results as wisps via bd create --ephemeral
  • Adds judgment_enabled (default "false") and review_depth (default "standard") formula variables for per-rig opt-in

No Go code changes. No new packages, CLIs, config types, or event types. Phase 1 measurement-only (does not gate merges).

Test plan

  • go build ./... passes (no Go changes besides formula TOML)
  • go test ./internal/formula/... passes (formula parses correctly)
  • gt plugin list discovers quality-review plugin
  • gt plugin show quality-review displays plugin details
  • Refinery records result wisps when judgment_enabled=true
  • Deacon plugin queries wisps and computes trends correctly

🤖 Generated with Claude Code

Replace the Go-based Guardian persistence layer (internal/guardian/,
gt judgment CLI, trend_monitor.go) with a wisp-based plugin approach:

- Add plugins/quality-review/plugin.md: Deacon plugin that runs every
  6h, queries quality-review-result wisps, computes per-worker trends,
  and alerts mayor on quality breaches
- Update mol-refinery-patrol formula (v4->v5): add quality-review step
  between run-tests and handle-failures that records results as wisps
  via bd create --ephemeral
- Add judgment_enabled/review_depth formula variables (opt-in, default off)

No Go code changes. Phase 1 measurement-only (does not gate merges).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@github-actions github-actions Bot added the status/needs-triage Inbox — we haven't looked at it yet label Mar 2, 2026
steveyegge added a commit that referenced this pull request Mar 2, 2026
Replace Go-based Guardian persistence layer (PRs #2167-#2169) with wisp-based
approach. Adds quality-review step to mol-refinery-patrol formula (v8->v9) and
Deacon plugin for per-worker trend analysis.

Formula step: measurement-only Phase 1 between run-tests and handle-failures.
Fail-open design — records scores as ephemeral wisps, never gates merges.
Controlled by judgment_enabled (default false) and review_depth vars.

Plugin: runs every 6h, queries result wisps, computes per-worker averages and
trends, alerts mayor and escalates on quality breaches (avg < 0.45).

Fix-merged from PR #2263 with: rebased onto v8, added template vars for
config injection, aligned bd create syntax with existing plugin conventions,
added gt escalate on failure path.

Co-Authored-By: Rob Fox <r.sionnach@gmail.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@steveyegge
Copy link
Copy Markdown
Collaborator

Fix-merged to main as bd47754. Rebased onto formula v8→v9, fixed template variable injection, aligned bd create syntax with existing plugin conventions, added gt escalate on failure path. Thanks @rsionnach!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

status/needs-triage Inbox — we haven't looked at it yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants