Skip to content

Commit 27bc49c

Browse files
committed
feat: add local operator reports
1 parent a52cc3e commit 27bc49c

14 files changed

Lines changed: 928 additions & 18 deletions

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ memory/20[0-9][0-9]-[0-1][0-9]-[0-3][0-9].md
8282
memory/handoff-inbox/
8383

8484
# brigade local state (logs, scrub cache, dogfood runs, work sessions).
85+
.brigade/center/
8586
.brigade/dogfood.toml
8687
.brigade/logs/
8788
.brigade/runs/

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
8484
- `brigade learn plan/doctor/import-issues` for bounded local learning candidates that become reviewed tasks, handoffs, suppressions, accepted risk, archive, or dismissal.
8585
- `brigade tools pack build/list/show/archive` and `brigade tools sync plan/apply` for portable tool evidence bundles and reviewed projection sync over the existing managed projection path.
8686
- `brigade work backup closeout`, `brigade security closeout`, `brigade handoff closeout`, `brigade memory care closeout`, and `brigade work acceptance` for reviewable local closeout and acceptance rollup receipts.
87-
- `brigade center status/activity/reviews/templates` for read-only local operator-center summaries over work, scanner, review, handoff, tool, learning, context, project, security, and release state.
87+
- `brigade center status/activity/reviews/templates` and `brigade center report plan/build/list/show/archive` for read-only local operator-center summaries and local report bundles over work, scanner, review, handoff, tool, learning, context, project, security, and release state.
8888
- `brigade roadmap audit` and `brigade roadmap patterns` for roadmap closure checks, stale phase warnings, documented command drift, neutral pattern-family coverage, and source-pattern decisions.
8989
- `brigade repos init/list/show/scan/doctor/import-issues` for gitignored local repo-fleet readiness checks, safe setup metadata, fallback guidance detection, and `repo-fleet` work inbox imports.
9090
- `brigade work sweep closeout <sweep-id|latest>` for reviewable sweep closeout records that block unresolved pending imports, support explicit deferrals, and surface unclosed sweeps through inbox hygiene.

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -322,6 +322,11 @@ brigade center status
322322
brigade center activity
323323
brigade center reviews
324324
brigade center templates
325+
brigade center report plan
326+
brigade center report build
327+
brigade center report list
328+
brigade center report show <report-id>
329+
brigade center report archive <report-id>
325330
brigade work run
326331
brigade work run --queue-next
327332
brigade work run "review today's changes"

ROADMAP.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ Goal: make Brigade a safe target for local automations that discover useful work
4848
- Audit roadmap closure and neutral pattern coverage. Status: started with `brigade roadmap audit`, `brigade roadmap patterns`, stale phase warnings, documented command drift checks, roadmap-audit imports, and source-pattern decision records without public reference names.
4949
- Inspect local repo fleet readiness without copying private repo contents. Status: started with gitignored `.brigade/repos.toml`, `brigade repos init/list/show/scan/doctor/import-issues`, safe metadata summaries, AGENTS and fallback guidance detection, repo-fleet imports, and daily-loop health surfacing.
5050
- Close out scanner sweeps after review. Status: started with `brigade work sweep closeout <sweep-id|latest>`, deferred import recording, missing-reference blocking, and inbox hygiene warnings for unclosed sweeps.
51-
- Inspect local operator state from one read-only center view. Status: started with `brigade center status/activity/reviews/templates`, aggregating local work, imports, sweeps, reviews, handoffs, tools, learning, context packs, projects, security, and release state without a daemon or server.
51+
- Inspect local operator state from one read-only center view. Status: started with `brigade center status/activity/reviews/templates` and `brigade center report plan/build/list/show/archive`, aggregating local work, imports, sweeps, reviews, handoffs, tools, learning, context packs, projects, security, and release state into JSON and local report bundles without a daemon or server.
5252

5353
## Later Phase: Chat Surface Scanners
5454

docs/operator-center.md

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,11 @@ brigade center reviews
1313
brigade center reviews --json
1414
brigade center templates
1515
brigade center templates --json
16+
brigade center report plan
17+
brigade center report build
18+
brigade center report list
19+
brigade center report show <report-id>
20+
brigade center report archive <report-id>
1621
```
1722

1823
`status` summarizes active work, pending tasks, pending imports, scanner sweep health, review health, handoff drafts, tool catalog health, learning candidates, context packs, release readiness, release candidates, repo fleet, roadmap health, project consolidation, and security health.
@@ -30,4 +35,22 @@ brigade center templates --json
3035

3136
`templates` lists local workflow templates for context packs, tool packs, project audits, release candidates, and review closeouts.
3237

33-
The operator center never invokes scanners, tools, reviewers, handoff ingestion, release publishing, git commands that mutate state, or remote APIs. It only reads existing local files and prints text or JSON.
38+
Every center row uses the same wrapper-facing fields: `subsystem`, `local_id`, `status`, `priority`, `severity`, `safe_summary`, `created_at`, `updated_at`, `receipt_path`, `path`, and `suggested_next_command`.
39+
40+
## Operator Reports
41+
42+
`brigade center report build` writes a local bundle under:
43+
44+
```text
45+
.brigade/center/reports/
46+
```
47+
48+
Each bundle contains:
49+
50+
- `OPERATOR_REPORT.md`, a daily review summary with review queue, activity, and suggested next commands.
51+
- `OPERATOR_REPORT.html`, a dependency-free escaped static rendering of the Markdown report.
52+
- `CENTER_EVIDENCE.json`, stable JSON evidence for wrappers.
53+
54+
`brigade center report plan` previews the same evidence without writing. `list`, `show`, and `archive` inspect or move local bundles. Report health warns when the latest bundle is stale, references missing receipts, was built from an older git HEAD, or newer center activity exists. `brigade work brief`, `brigade work doctor`, `brigade release doctor`, and release candidate evidence surface those report health checks.
55+
56+
The operator center never invokes scanners, tools, reviewers, handoff ingestion, release publishing, git commands that mutate state, or remote APIs. Only `center report build` and `center report archive` write local gitignored report bundle files.

docs/release-candidates.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,16 @@ Each candidate contains:
3434
- `RELEASE_NOTES_DRAFT.md`, an editable draft inferred from `CHANGELOG.md`, commit subjects since the base ref, and touched docs. Uncertain sections are marked `review-needed`.
3535
- `PUBLISH_PLAN.md`, a manual checklist for verification, closeout, release doctor, content guard, tag, push, and release creation. Remote-mutating commands are marked manual-only and are not run.
3636
- `EVIDENCE.json`, stable wrapper-friendly evidence for the release readiness receipt, work closeout, verification receipt, code review closeout, scanner sweep state, security state, handoff state, git state, changed files, docs touch status, content-guard summaries, blockers, warnings, and suggested next commands.
37+
- latest operator report health, including stale reports, missing receipt references, changed HEAD, and newer center activity warnings.
3738

3839
## Candidate Health
3940

4041
`brigade release doctor` warns when the latest candidate is stale, references missing receipts, was built from blocked readiness, or no longer matches the current git HEAD.
4142

4243
These are warnings because candidate bundles are review artifacts. They do not replace release readiness checks, verification, code review closeout, or content guard.
4344

45+
Release readiness and candidate bundles include operator report health so an operator can tell whether the local daily review packet is fresh before publishing manually.
46+
4447
## Boundary
4548

4649
Release candidate commands are local and explicit. Brigade does not push, tag, create GitHub releases, mutate pull requests, edit changelogs outside the candidate bundle, upload artifacts, approve content-guard findings, start daemons, install schedulers, or store secrets.

docs/release-readiness.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ Release readiness includes:
4646
- latest security health and evidence state
4747
- handoff draft and ingest health
4848
- local closeout state for backup, handoff, memory-care, security, and release candidates when available
49-
- context pack freshness, project consolidation state, learning candidates, and operator-center pending review summaries where configured
49+
- context pack freshness, project consolidation state, learning candidates, operator-center pending review summaries, and operator report freshness where configured
5050
- git branch, dirty tracked files, upstream, ahead count, and behind count
5151
- README, CHANGELOG, and ROADMAP touch warnings when user-facing code changed
5252
- content-guard tip scan when available

docs/roadmap-completion-plan.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -567,13 +567,16 @@ Implementation scope:
567567
- Add `brigade center activity`.
568568
- Add `brigade center reviews`.
569569
- Add `brigade center templates`.
570+
- Add `brigade center report plan/build/list/show/archive`.
570571
- Aggregate existing local state only: work sessions, pending tasks, pending imports, scanner runs and sweeps, review runs, handoff drafts, tool approvals, checkpoints, context packs, learning candidates, repo fleet, project decisions, security health, release readiness, and release candidates.
571572
- Every center item includes subsystem, local id, status, safe summary, suggested next command, and priority or severity when available.
572573
- Keep center commands read-only and JSON-first for future wrappers.
574+
- Build local report bundles only under `.brigade/center/reports/`, with Markdown, dependency-free HTML, and JSON evidence.
573575

574576
Acceptance:
575577

576578
- Tests cover center status, activity, reviews, and templates in text and JSON.
579+
- Tests cover center report plan, build, list, show, archive, freshness checks, and release/work integration.
577580
- Tests prove center commands are read-only.
578581
- Public docs describe the operator center as local CLI output, not a hosted dashboard, app server, daemon, or sync engine.
579582

@@ -582,6 +585,12 @@ Phase 36 status:
582585
- Implemented command surface: `brigade center status/activity/reviews/templates`.
583586
- Center status aggregates local subsystem health. Center activity reads receipts and pack metadata. Center reviews presents one pending review queue across imports, learning, projects, and context health. Center templates lists local workflow templates for wrappers.
584587

588+
Phase 37 status:
589+
590+
- Implemented command surface: `brigade center report plan/build/list/show/archive`.
591+
- Operator reports write `OPERATOR_REPORT.md`, `OPERATOR_REPORT.html`, and `CENTER_EVIDENCE.json` under `.brigade/center/reports/`.
592+
- Work brief, work doctor, release doctor, and release candidate evidence include operator report freshness.
593+
585594
## Suggested Execution Order
586595

587596
1. Roadmap audit, inspiration pattern registry, and repo-fleet readiness.

0 commit comments

Comments
 (0)