Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .canopy/prompts.jsonl

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@ jobs:
- run: bun install
- run: bun run lint
- run: bun run typecheck
- run: bun run validate:agents-md
- run: bun run check:file-sizes
- run: bun run check:debt-markers
- run: bun run check:duplicates
- run: bun run check:agents
- run: bun run check:size
- run: bun run check:debt
- run: bun run check:dups
- run: bun run ui:install
- run: bun run check:deps
- run: bun run build:ui
Expand Down
2 changes: 2 additions & 0 deletions .mulch/expertise/quality.jsonl
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
{"type":"decision","classification":"tactical","recorded_at":"2026-06-12T05:46:29.689Z","evidence":{"seeds":"pl-cf2a","commit":"3ea944c703437849df336bf143d61f6b5424e132"},"dir_anchors":["scripts"],"title":"check:all standard: frozen template scripts, per-repo config","rationale":"Fleet-wide byte-identity makes the gate surface learn-once; cmp against templates/l5-toolkit is the conformance check, so any local edit (even formatting) is drift.","id":"mx-094be9"}
{"type":"failure","classification":"tactical","recorded_at":"2026-06-12T05:46:29.895Z","evidence":{"commit":"3ea944c703437849df336bf143d61f6b5424e132"},"dir_anchors":["scripts"],"description":"The fleet-frozen check-all.ts / check-ci-parity.ts templates do not satisfy warren's Biome formatter at lineWidth 100 (they fail even the l5-toolkit's own biome baseline), so bun run lint broke immediately after copying them in.","resolution":"Added a biome.json overrides block disabling the formatter for exactly scripts/check-all.ts and scripts/check-ci-parity.ts (linter stays on). Never reformat the frozen scripts — that breaks cmp byte-identity with the template.","id":"mx-dab8fc"}
1 change: 1 addition & 0 deletions .mulch/mulch.config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ domains:
analytics: {}
sandbox: {}
reap: {}
quality: {}
governance:
max_entries: 100
warn_entries: 150
Expand Down
8 changes: 4 additions & 4 deletions .seeds/issues.jsonl
Original file line number Diff line number Diff line change
Expand Up @@ -660,10 +660,10 @@
{"id":"warren-b32d","title":"Onboard kota-monorepo: add as a warren project, place .warren/config.yaml (defaultRole, defaultPrompt, runBranchPrefix) plus .seeds/.mulch/.plot/ at the repo root, dispatch a smoke run and a small plan-run end-to-end, and record the validated setup + any friction as mulch records","status":"open","type":"task","priority":2,"plan_step_index":0,"description":"<!-- seeds:plan-backref:start -->\nStep 1 of plan pl-1ec1.\n\nParent seed: warren-58dc — Monorepo support: onboard kota-monorepo as a warren project\nPlan template: feature\nPlan approach: Onboard kota-monorepo as a single warren project now and validate the full loop (dispatch, plan-run, PR) against it, then land the cheap coarseness fixes only as pain is proven: partial clone + sparse-checkout first if checkout time/disk…\n\nRun `sd plan show pl-1ec1` for the full plan (context, alternatives, sibling steps, acceptance criteria).\n<!-- seeds:plan-backref:end -->","createdAt":"2026-06-11T04:45:11.903Z","updatedAt":"2026-06-11T04:45:11.903Z","plan_id":"pl-1ec1","blocks":["warren-4c45","warren-58dc"]}
{"id":"warren-4c45","title":"Measure and decide on sparse/partial clone: capture clone + per-run worktree checkout time and disk for kota-monorepo under concurrent runs; if it bites, implement --filter=blob:none on warren's clone (src/projects/clone.ts, refresh.ts) and a per-project sparsePaths burrow applies after worktree add (burrow src/provider/local/workspace.ts + sandbox binds); if it does not bite, close with the measurements recorded","status":"open","type":"task","priority":3,"plan_step_index":1,"description":"<!-- seeds:plan-backref:start -->\nStep 2 of plan pl-1ec1.\n\nParent seed: warren-58dc — Monorepo support: onboard kota-monorepo as a warren project\nPlan template: feature\nPlan approach: Onboard kota-monorepo as a single warren project now and validate the full loop (dispatch, plan-run, PR) against it, then land the cheap coarseness fixes only as pain is proven: partial clone + sparse-checkout first if checkout time/disk…\n\nRun `sd plan show pl-1ec1` for the full plan (context, alternatives, sibling steps, acceptance criteria).\n<!-- seeds:plan-backref:end -->","createdAt":"2026-06-11T04:45:11.903Z","updatedAt":"2026-06-11T04:45:11.903Z","plan_id":"pl-1ec1","blockedBy":["warren-b32d"],"blocks":["warren-58dc"]}
{"id":"warren-2fa8","title":"R-20 Colonies decision spike for os-eco's separate repos: evaluate the ROADMAP sketch (colonies/colony_members tables, shared scheduling, aggregate dashboard, colony-level agents) against actual cross-repo needs observed after the monorepo + plan-run CLI workflows settle; outcome is a go/no-go note on the roadmap item, not code","status":"open","type":"task","priority":4,"plan_step_index":2,"description":"<!-- seeds:plan-backref:start -->\nStep 3 of plan pl-1ec1.\n\nParent seed: warren-58dc — Monorepo support: onboard kota-monorepo as a warren project\nPlan template: feature\nPlan approach: Onboard kota-monorepo as a single warren project now and validate the full loop (dispatch, plan-run, PR) against it, then land the cheap coarseness fixes only as pain is proven: partial clone + sparse-checkout first if checkout time/disk…\n\nRun `sd plan show pl-1ec1` for the full plan (context, alternatives, sibling steps, acceptance criteria).\n<!-- seeds:plan-backref:end -->","createdAt":"2026-06-11T04:45:11.903Z","updatedAt":"2026-06-11T04:45:11.903Z","plan_id":"pl-1ec1","blocks":["warren-58dc"]}
{"id":"warren-16d2","title":"Adopt canonical check:all standard","status":"open","type":"feature","priority":2,"createdAt":"2026-06-12T04:51:00.337Z","updatedAt":"2026-06-12T04:53:28.716Z","plan_id":"pl-cf2a","blockedBy":["warren-c123","warren-0628","warren-3a0f"]}
{"id":"warren-c123","title":"Rename warren's verbose package.json gate keys to the canonical terse names: check:file-sizes -> check:size, check:debt-markers -> check:debt, check:duplicates -> check:dups, validate:agents-md -> check:agents (keep check:deps, check:coverage, check:bundle-size, gen:docs:check, gen:openapi:check as-is). Update every reference to the old keys in CLAUDE.md, .github/workflows/ci.yml, .github/workflows/ci-postgres.yml, and any scripts; retain each old key as a one-cycle deprecated alias only if an external consumer needs it. Do not yet touch check:all.","status":"open","type":"task","priority":2,"plan_step_index":0,"description":"<!-- seeds:plan-backref:start -->\nStep 1 of plan pl-cf2a.\n\nParent seed: warren-16d2 — Adopt canonical check:all standard\nPlan template: feature\nPlan approach: Rename warren's verbose gate keys to canonical, swap the && chain for the byte-identical quiet runner, and refactor warren's existing check-ci-parity.ts to import the shared GATES manifest. Keep warren's repo-specific conditional gates…\n\nRun `sd plan show pl-cf2a` for the full plan (context, alternatives, sibling steps, acceptance criteria).\n<!-- seeds:plan-backref:end -->","createdAt":"2026-06-12T04:53:28.716Z","updatedAt":"2026-06-12T04:53:28.716Z","plan_id":"pl-cf2a","blocks":["warren-0628","warren-16d2"]}
{"id":"warren-0628","title":"Replace warren's && -chain check:all with the canonical scripts/check-all.ts quiet runner copied byte-identical from templates/l5-toolkit/scripts/check-all.ts. Define warren's exported GATES manifest in the standard's order: lint, typecheck, check:agents, check:dups, check:deps, check:size, check:debt, check:bundle-size, gen:docs:check, gen:openapi:check, check:coverage, check:ci-parity (last). Set package.json check:all to `bun scripts/check-all.ts`, add `verify`: `bun run check:all`, and add scripts/check-all.test.ts. Confirm the quiet-output contract (one aligned line per gate, signatures-only on failure).","status":"open","type":"task","priority":2,"plan_step_index":1,"description":"<!-- seeds:plan-backref:start -->\nStep 2 of plan pl-cf2a.\n\nParent seed: warren-16d2 — Adopt canonical check:all standard\nPlan template: feature\nPlan approach: Rename warren's verbose gate keys to canonical, swap the && chain for the byte-identical quiet runner, and refactor warren's existing check-ci-parity.ts to import the shared GATES manifest. Keep warren's repo-specific conditional gates…\n\nRun `sd plan show pl-cf2a` for the full plan (context, alternatives, sibling steps, acceptance criteria).\n<!-- seeds:plan-backref:end -->","createdAt":"2026-06-12T04:53:28.716Z","updatedAt":"2026-06-12T04:53:28.716Z","plan_id":"pl-cf2a","blockedBy":["warren-c123"],"blocks":["warren-3a0f","warren-16d2"]}
{"id":"warren-3a0f","title":"Refactor warren's existing scripts/check-ci-parity.ts to import the GATES array from scripts/check-all.ts as the single source of truth (replacing its own ROOT_GATES/local derivation), and confirm it scans BOTH .github/workflows/ci.yml and ci-postgres.yml. Run `bun run check:all` and `bun run verify` green end-to-end, confirm check:ci-parity passes with the new manifest, and update CLAUDE.md's Quality Gates section to describe the runner + verify alias.","status":"open","type":"task","priority":2,"plan_step_index":2,"description":"<!-- seeds:plan-backref:start -->\nStep 3 of plan pl-cf2a.\n\nParent seed: warren-16d2 — Adopt canonical check:all standard\nPlan template: feature\nPlan approach: Rename warren's verbose gate keys to canonical, swap the && chain for the byte-identical quiet runner, and refactor warren's existing check-ci-parity.ts to import the shared GATES manifest. Keep warren's repo-specific conditional gates…\n\nRun `sd plan show pl-cf2a` for the full plan (context, alternatives, sibling steps, acceptance criteria).\n<!-- seeds:plan-backref:end -->","createdAt":"2026-06-12T04:53:28.716Z","updatedAt":"2026-06-12T04:53:28.716Z","plan_id":"pl-cf2a","blockedBy":["warren-0628"],"blocks":["warren-16d2"]}
{"id":"warren-16d2","title":"Adopt canonical check:all standard","status":"open","type":"feature","priority":2,"createdAt":"2026-06-12T04:51:00.337Z","updatedAt":"2026-06-12T05:46:06.577Z","plan_id":"pl-cf2a"}
{"id":"warren-c123","title":"Rename warren's verbose package.json gate keys to the canonical terse names: check:file-sizes -> check:size, check:debt-markers -> check:debt, check:duplicates -> check:dups, validate:agents-md -> check:agents (keep check:deps, check:coverage, check:bundle-size, gen:docs:check, gen:openapi:check as-is). Update every reference to the old keys in CLAUDE.md, .github/workflows/ci.yml, .github/workflows/ci-postgres.yml, and any scripts; retain each old key as a one-cycle deprecated alias only if an external consumer needs it. Do not yet touch check:all.","status":"closed","type":"task","priority":2,"plan_step_index":0,"description":"<!-- seeds:plan-backref:start -->\nStep 1 of plan pl-cf2a.\n\nParent seed: warren-16d2 — Adopt canonical check:all standard\nPlan template: feature\nPlan approach: Rename warren's verbose gate keys to canonical, swap the && chain for the byte-identical quiet runner, and refactor warren's existing check-ci-parity.ts to import the shared GATES manifest. Keep warren's repo-specific conditional gates…\n\nRun `sd plan show pl-cf2a` for the full plan (context, alternatives, sibling steps, acceptance criteria).\n<!-- seeds:plan-backref:end -->","createdAt":"2026-06-12T04:53:28.716Z","updatedAt":"2026-06-12T05:46:06.452Z","plan_id":"pl-cf2a","blocks":["warren-0628","warren-16d2"],"closedAt":"2026-06-12T05:46:06.452Z"}
{"id":"warren-0628","title":"Replace warren's && -chain check:all with the canonical scripts/check-all.ts quiet runner copied byte-identical from templates/l5-toolkit/scripts/check-all.ts. Define warren's exported GATES manifest in the standard's order: lint, typecheck, check:agents, check:dups, check:deps, check:size, check:debt, check:bundle-size, gen:docs:check, gen:openapi:check, check:coverage, check:ci-parity (last). Set package.json check:all to `bun scripts/check-all.ts`, add `verify`: `bun run check:all`, and add scripts/check-all.test.ts. Confirm the quiet-output contract (one aligned line per gate, signatures-only on failure).","status":"closed","type":"task","priority":2,"plan_step_index":1,"description":"<!-- seeds:plan-backref:start -->\nStep 2 of plan pl-cf2a.\n\nParent seed: warren-16d2 — Adopt canonical check:all standard\nPlan template: feature\nPlan approach: Rename warren's verbose gate keys to canonical, swap the && chain for the byte-identical quiet runner, and refactor warren's existing check-ci-parity.ts to import the shared GATES manifest. Keep warren's repo-specific conditional gates…\n\nRun `sd plan show pl-cf2a` for the full plan (context, alternatives, sibling steps, acceptance criteria).\n<!-- seeds:plan-backref:end -->","createdAt":"2026-06-12T04:53:28.716Z","updatedAt":"2026-06-12T05:46:06.515Z","plan_id":"pl-cf2a","blocks":["warren-3a0f","warren-16d2"],"closedAt":"2026-06-12T05:46:06.515Z"}
{"id":"warren-3a0f","title":"Refactor warren's existing scripts/check-ci-parity.ts to import the GATES array from scripts/check-all.ts as the single source of truth (replacing its own ROOT_GATES/local derivation), and confirm it scans BOTH .github/workflows/ci.yml and ci-postgres.yml. Run `bun run check:all` and `bun run verify` green end-to-end, confirm check:ci-parity passes with the new manifest, and update CLAUDE.md's Quality Gates section to describe the runner + verify alias.","status":"closed","type":"task","priority":2,"plan_step_index":2,"description":"<!-- seeds:plan-backref:start -->\nStep 3 of plan pl-cf2a.\n\nParent seed: warren-16d2 — Adopt canonical check:all standard\nPlan template: feature\nPlan approach: Rename warren's verbose gate keys to canonical, swap the && chain for the byte-identical quiet runner, and refactor warren's existing check-ci-parity.ts to import the shared GATES manifest. Keep warren's repo-specific conditional gates…\n\nRun `sd plan show pl-cf2a` for the full plan (context, alternatives, sibling steps, acceptance criteria).\n<!-- seeds:plan-backref:end -->","createdAt":"2026-06-12T04:53:28.716Z","updatedAt":"2026-06-12T05:46:06.577Z","plan_id":"pl-cf2a","blocks":["warren-16d2"],"closedAt":"2026-06-12T05:46:06.577Z"}
{"id":"warren-a63d","title":"Per-agent / per-trigger spend caps: warren tracks cost post-hoc only (runs.cost_usd) with no enforcement anywhere; the audit population adds 3 cron agents (one Fable-tier) so a runaway patrol has no ceiling. Add a budget knob (per-trigger maxCostUsd in triggers.yaml + per-agent frontmatter cap) enforced at dispatch or mid-run","status":"open","type":"feature","priority":2,"createdAt":"2026-06-12T05:04:05.759Z","updatedAt":"2026-06-12T05:04:05.759Z","labels":["audit","infra"]}
{"id":"warren-d5e5","title":"Investigate merged PR #270 (2e7316b4): feature-titled PR with zero source code in diff, commit message rationalizes a known-red pre-commit gate ('red independent of this docs-only change'). Constitution Article I violation — determine what happened, whether the claimed feature landed elsewhere, and whether the title/diff class needs an executable gate","status":"open","type":"task","priority":2,"createdAt":"2026-06-12T05:04:05.814Z","updatedAt":"2026-06-12T05:04:05.814Z","labels":["audit","gatewatch"]}
{"id":"warren-785b","title":"Raise coverage floors to current actuals: line coverage decayed 91.62% -> 90.82% across baselines while floors in scripts/coverage-budgets.json sat below both (~1.3pt silent slack). Ratchet floors up to actual minus 0.25pt margin per Constitution Article II","status":"open","type":"task","priority":3,"createdAt":"2026-06-12T05:04:05.877Z","updatedAt":"2026-06-12T05:04:05.877Z","labels":["audit","ratchetwatch"]}
Expand Down
Loading
Loading