@event4u/agent-config 9.17.0 → 9.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/CHANGELOG.md +79 -182
- package/dist/agent-src/commands/challenge-me/vision.md +5 -0
- package/dist/agent-src/commands/evals/rule-compliance-audit.json +46 -0
- package/dist/agent-src/commands/feature/plan.md +20 -0
- package/dist/agent-src/commands/feature/roadmap.md +19 -0
- package/dist/agent-src/commands/pr/create.md +29 -0
- package/dist/agent-src/commands/roadmap/create.md +29 -0
- package/dist/agent-src/commands/rule-compliance-audit.md +28 -5
- package/dist/agent-src/contexts/execution/plan-confidence-gate.md +133 -0
- package/dist/agent-src/rules/active-remediation.md +2 -0
- package/dist/agent-src/rules/architecture.md +2 -0
- package/dist/agent-src/rules/augment-edit-discipline.md +2 -0
- package/dist/agent-src/rules/brand-consistency.md +10 -62
- package/dist/agent-src/rules/brand-source-of-truth.md +62 -11
- package/dist/agent-src/rules/broken-access-control.md +4 -0
- package/dist/agent-src/rules/cli-output-handling.md +5 -0
- package/dist/agent-src/rules/code-comment-discipline.md +3 -0
- package/dist/agent-src/rules/commit-conventions.md +2 -0
- package/dist/agent-src/rules/cross-source-consistency.md +3 -0
- package/dist/agent-src/rules/design-fidelity.md +2 -0
- package/dist/agent-src/rules/doc-screenshot-hygiene.md +2 -0
- package/dist/agent-src/rules/docker-commands.md +4 -0
- package/dist/agent-src/rules/domain-adoption-policy.md +2 -0
- package/dist/agent-src/rules/domain-safety-disclaimer.md +5 -2
- package/dist/agent-src/rules/engineering-safety-floor.md +2 -0
- package/dist/agent-src/rules/framework-neutrality-in-generic-skills.md +9 -0
- package/dist/agent-src/rules/image-likeness-and-rights.md +4 -0
- package/dist/agent-src/rules/improve-before-implement.md +4 -0
- package/dist/agent-src/rules/laravel-routing.md +4 -0
- package/dist/agent-src/rules/legal-safety-floor.md +3 -0
- package/dist/agent-src/rules/lethal-trifecta-guard.md +3 -0
- package/dist/agent-src/rules/media-governance-routing.md +5 -0
- package/dist/agent-src/rules/minimal-safe-diff.md +2 -0
- package/dist/agent-src/rules/no-roadmap-references.md +2 -0
- package/dist/agent-src/rules/notes-first-reasoning.md +2 -0
- package/dist/agent-src/rules/php-coding.md +2 -0
- package/dist/agent-src/rules/prefer-enums-over-literals.md +3 -0
- package/dist/agent-src/rules/provider-lifecycle-discipline.md +5 -0
- package/dist/agent-src/rules/roadmap-ci-steps-policy.md +2 -0
- package/dist/agent-src/rules/roadmap-progress-sync.md +2 -0
- package/dist/agent-src/rules/rule-type-governance.md +2 -0
- package/dist/agent-src/rules/scale-discipline.md +3 -0
- package/dist/agent-src/rules/secret-vcs-guard.md +2 -0
- package/dist/agent-src/rules/security-sensitive-stop.md +9 -2
- package/dist/agent-src/rules/senior-engineering-discipline.md +6 -0
- package/dist/agent-src/rules/skill-quality.md +2 -0
- package/dist/agent-src/rules/source-confidentiality.md +4 -0
- package/dist/agent-src/rules/source-discovery-gate.md +3 -0
- package/dist/agent-src/rules/source-of-truth.md +2 -0
- package/dist/agent-src/rules/strategy-safety-floor.md +2 -0
- package/dist/agent-src/rules/think-before-action.md +5 -0
- package/dist/agent-src/rules/ui-audit-gate.md +2 -0
- package/dist/agent-src/skills/design-intelligence/SKILL.md +6 -180
- package/dist/agent-src/skills/design-intelligence/references/context-and-registers.md +100 -0
- package/dist/agent-src/skills/design-intelligence/references/integration-mapping.md +91 -0
- package/dist/agent-src/skills/design-review/SKILL.md +4 -141
- package/dist/agent-src/skills/design-review/references/review-communication.md +92 -0
- package/dist/agent-src/skills/design-review/references/verification-automation.md +61 -0
- package/dist/agent-src/skills/existing-ui-audit/SKILL.md +8 -27
- package/dist/agent-src/skills/existing-ui-audit/references/anti-slop-cross-reference.md +31 -0
- package/dist/agent-src/skills/fe-design/SKILL.md +4 -289
- package/dist/agent-src/skills/fe-design/references/design-patterns.md +227 -0
- package/dist/agent-src/skills/fe-design/references/design-read-and-memory.md +75 -0
- package/dist/agent-src/skills/roadmap-management/SKILL.md +10 -0
- package/dist/agent-src/skills/roadmap-writing/SKILL.md +12 -1
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
- package/dist/agent-src/templates/roadmaps.md +12 -0
- package/dist/agent-src/templates/scripts/work_engine/directives/ui/_fix_lane.ts +52 -0
- package/dist/agent-src/templates/scripts/work_engine/directives/ui/audit.ts +8 -0
- package/dist/agent-src/templates/scripts/work_engine/directives/ui/design.ts +6 -0
- package/dist/agent-src/templates/scripts/work_engine/intent/classify.ts +56 -4
- package/dist/cli/registry.js +2 -0
- package/dist/cli/registry.js.map +1 -1
- package/dist/cli-delegate/chunk-AIIUU73N.js +2040 -0
- package/dist/cli-delegate/{chunk-IMSXPRVH.js → chunk-ELMFOQPW.js} +11 -0
- package/dist/cli-delegate/chunk-LF2KKJ4Q.js +183 -0
- package/dist/cli-delegate/cmd_explain.js +36 -36
- package/dist/cli-delegate/cmd_export.js +1 -1
- package/dist/cli-delegate/cmd_handoff.js +203 -2228
- package/dist/cli-delegate/cmd_prune.js +1 -1
- package/dist/cli-delegate/cmd_route_audit.js +249 -0
- package/dist/cli-delegate/cmd_route_explain.js +285 -0
- package/dist/cli-delegate/cmd_settings_migrate.js +1 -1
- package/dist/cli-delegate/cmd_sync.js +1 -1
- package/dist/cli-delegate/cmd_uninstall.js +1 -1
- package/dist/cli-delegate/cmd_validate.js +1 -1
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +57 -57
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +1 -1
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +2 -2
- package/dist/discovery/trust-report.md +1 -1
- package/dist/discovery/workspaces.json +2 -2
- package/dist/install/install.mjs +11 -0
- package/dist/mcp/registry-manifest.json +1 -1
- package/dist/mcp/server.json +2 -2
- package/dist/router.json +1 -1
- package/dist/server/schemas/settings.js +12 -0
- package/dist/server/schemas/settings.js.map +1 -1
- package/package.json +1 -1
- package/src/agent-src/templates/scripts/work_engine/directives/ui/_fix_lane.ts +52 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui/audit.ts +8 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui/design.ts +6 -0
- package/src/agent-src/templates/scripts/work_engine/intent/classify.ts +56 -4
- package/src/config/agent-settings.template.yml +46 -0
- package/src/config/evaluator-budgets.json +3 -3
- package/src/config/gate-coverage.yml +40 -0
- package/src/scripts/_cli/cmd_explain.ts +41 -36
- package/src/scripts/_cli/cmd_route_audit.ts +290 -0
- package/src/scripts/_cli/cmd_route_explain.ts +269 -0
- package/src/scripts/_dispatch.bash +23 -0
- package/src/scripts/_lib/git_env.ts +40 -0
- package/src/scripts/_lib/md_table.ts +27 -0
- package/src/scripts/_lib/planning_settings.ts +43 -0
- package/src/scripts/_lib/router_match.ts +301 -0
- package/src/scripts/annotate_r1_outcomes.ts +258 -0
- package/src/scripts/check_completion_review.ts +1140 -0
- package/src/scripts/compile_router.ts +20 -3
- package/src/scripts/dispatch_r2_reviewer.ts +968 -0
- package/src/scripts/eval_ui_triviality.ts +156 -0
- package/src/scripts/lint_abstraction_thresholds.ts +3 -1
- package/src/scripts/lint_plan_risk_register.ts +931 -0
- package/src/scripts/lint_trigger_collisions.ts +257 -0
- package/src/scripts/router_telemetry.ts +16 -290
- package/src/scripts/schemas/rule.schema.json +10 -0
- package/src/server/schemas/settings.ts +18 -0
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
8
|
"description": "Bootstrap shim for the event4u agent-config suite. This plugin ships ONLY the dispatcher hooks plus one install-pointer skill — ALL content (skills, rules, commands) is installed via `npx -y @event4u/agent-config init`, which writes the file projection AND registers the same hooks in ~/.claude/settings.json. DEPRECATED as a content channel; kept so the marketplace listing stays discoverable and existing installs keep working hooks.",
|
|
9
|
-
"version": "9.
|
|
9
|
+
"version": "9.18.0",
|
|
10
10
|
"keywords": [
|
|
11
11
|
"agent-config",
|
|
12
12
|
"skills",
|
package/CHANGELOG.md
CHANGED
|
@@ -255,212 +255,109 @@ Entry-shape contract: [`docs/contracts/CHANGELOG-conventions.md`](docs/contracts
|
|
|
255
255
|
> keeps the active era under the 250-line drift cap enforced by
|
|
256
256
|
> `tests/test_changelog_eras.py`.
|
|
257
257
|
|
|
258
|
-
# Era: 9.
|
|
258
|
+
# Era: pre-9.18.0 — archived
|
|
259
259
|
|
|
260
|
-
>
|
|
260
|
+
> All entries before `9.18.0` live in
|
|
261
|
+
> [`docs/archive/CHANGELOG-pre-9.18.0.md`](docs/archive/CHANGELOG-pre-9.18.0.md).
|
|
262
|
+
> The archive is read-only; git tags remain the canonical
|
|
263
|
+
> source for what shipped. Splitting them out of the main file
|
|
264
|
+
> keeps the active era under the 250-line drift cap enforced by
|
|
265
|
+
> `tests/test_changelog_eras.py`.
|
|
266
|
+
|
|
267
|
+
# Era: 9.18.x — current
|
|
268
|
+
|
|
269
|
+
> Started at `9.18.0`. Full entries live inline below.
|
|
261
270
|
> The drift test caps this era at 250 lines of entry body; growth past
|
|
262
|
-
> that forces a new era split (`# Era: 9.
|
|
271
|
+
> that forces a new era split (`# Era: 9.19.x`, etc.) — see
|
|
263
272
|
> [`docs/contracts/CHANGELOG-conventions.md § Era splits`](docs/contracts/CHANGELOG-conventions.md).
|
|
264
273
|
|
|
265
|
-
## [9.
|
|
274
|
+
## [9.18.0](https://github.com/event4u-app/agent-config/compare/9.17.0...9.18.0) (2026-08-04)
|
|
266
275
|
|
|
267
276
|
### Release highlights
|
|
268
277
|
|
|
269
278
|
<!-- Curated head: fill before merge, keep it under 10 lines, and leave `_none_` where it is genuinely the answer. The generated log below is unchanged. -->
|
|
270
|
-
- **Behaviour changes:**
|
|
271
|
-
- **Default changes + migration:**
|
|
272
|
-
- **Security and correctness:**
|
|
273
|
-
- **Honest nulls:**
|
|
274
|
-
- **Known limitations:**
|
|
279
|
+
- **Behaviour changes:** rule triggers were re-cut — the brand pair is merged into one rule and the `disclaimer`/`finance` plus `secret`/`security` trigger sets are disjoined, so a prompt that used to load two rules now loads one (71c3527); `existing-ui-audit` moved its required sections back into the skill body and `references/output-and-pitfalls.md` is removed (b3cc0ad); an unknown router `tier` value now fails compilation instead of silently downgrading to tier-2 (02960bf); a new trigger-collision disposition gate lands with a reproducible census (b71e36c).
|
|
280
|
+
- **Default changes + migration:** the new `planning` settings section (Gate C/R1/R2) ships with defaults, so omitting it stays legal (4bd8813, 74afbf9) — no data or config migration.
|
|
281
|
+
- **Security and correctness:** the `secret`/`security` trigger overlap was disjoined so a secret-shaped edit routes to exactly one floor (71c3527); round-2 review of the new gate scripts closed eight findings, two of which were fail-open — a missing `maxBuffer` switched R2 off on large PRs, and the documented `planning.completion_review: false` escape hatch was read by nobody (8a2bf76).
|
|
282
|
+
- **Honest nulls:** the R2 review of the merge scope returned a binding honest-null (6c6fc15); the Stage-A metrics protocol is pre-registered but unmeasured, so no effectiveness claim ships with it (01323d1); an honest-null verdict no longer suppresses the risk-table checks it previously masked (65fe441).
|
|
283
|
+
- **Known limitations:** R2 (completion review) has **no blocking path in this release** — every wired call site passes `--advisory`, which downgrades every violation kind including dead-scan-scope; the gate-coverage note that claimed a trippable floor was withdrawn, and teeth arrive when Stage B drops the flag (f2c6971).
|
|
275
284
|
|
|
276
285
|
### Features
|
|
277
286
|
|
|
278
|
-
* **
|
|
279
|
-
* **
|
|
280
|
-
* **
|
|
281
|
-
* **
|
|
282
|
-
* **
|
|
283
|
-
* **
|
|
284
|
-
* **
|
|
285
|
-
* **
|
|
286
|
-
* **
|
|
287
|
+
* **ci:** local mirror for the R2 manifest re-derivation (parity) ([3e014b2](https://github.com/event4u-app/agent-config/commit/3e014b2196a1caf8ebfc404dd492cb500acf5126))
|
|
288
|
+
* **metrics:** pre-register Stage-A protocol; close + archive the roadmap ([01323d1](https://github.com/event4u-app/agent-config/commit/01323d17b03e01610c526cf34cd5134002899518))
|
|
289
|
+
* **ci:** enforce R1 + advisory R2 at pre-push and CI, register gate coverage ([21810f2](https://github.com/event4u-app/agent-config/commit/21810f2bd443310591bbaa7c83d54133477ab902))
|
|
290
|
+
* **gates:** wire C/R1/R2 into the authoring and delivery surfaces ([3622d09](https://github.com/event4u-app/agent-config/commit/3622d09d4154e97fb2736cf5f08dc8eb2f7e0ba1))
|
|
291
|
+
* **gates:** R1/R2 validators, R2 reviewer dispatcher, R1 annotation helper ([37389c9](https://github.com/event4u-app/agent-config/commit/37389c9ef8ae7420eaaab98484b53f362d34168b))
|
|
292
|
+
* **settings:** add planning gate keys (Gate C/R1/R2) to template + Zod schema ([74afbf9](https://github.com/event4u-app/agent-config/commit/74afbf973bd34d8572f63b8e47ae29ebeefc43b1))
|
|
293
|
+
* **work-engine:** ui-fix intent — fix-lane enters the chain at apply ([f29cc7c](https://github.com/event4u-app/agent-config/commit/f29cc7cb33b6247da197348d6e0a8e74ef74617d))
|
|
294
|
+
* **work-engine:** trivial-lane recall 0.60 -> 1.00 against the pre-registered corpus ([07a32d4](https://github.com/event4u-app/agent-config/commit/07a32d4985cd89cba46474d7ffabff52ccd1b497))
|
|
295
|
+
* **eval:** pre-register the ui-triviality golden corpus (40 tasks, council-labelled) ([f71a41c](https://github.com/event4u-app/agent-config/commit/f71a41c821f81cd0bb78bc427e2eba47b0ac0fd4))
|
|
296
|
+
* **lint:** trigger-collision disposition gate + reproducible census ([b71e36c](https://github.com/event4u-app/agent-config/commit/b71e36c317385701d3b8577770130075c1b08754))
|
|
297
|
+
* **routing:** one shared trigger matcher + route:explain / route:audit CLI ([e3af5ca](https://github.com/event4u-app/agent-config/commit/e3af5cacc496228794acf5a86fe799785ddbe19d))
|
|
287
298
|
|
|
288
299
|
### Bug Fixes
|
|
289
300
|
|
|
290
|
-
* **
|
|
291
|
-
* **
|
|
292
|
-
* **
|
|
293
|
-
* **
|
|
294
|
-
* **
|
|
301
|
+
* **gates:** stop claiming a blocking floor the advisory window does not have ([f2c6971](https://github.com/event4u-app/agent-config/commit/f2c6971913d19afe14523d460df996aa8d2adf82))
|
|
302
|
+
* **metrics:** create the metrics dir before appending an outcome ([4931eda](https://github.com/event4u-app/agent-config/commit/4931eda2dd968e365b7666856353d63e14f61dfe))
|
|
303
|
+
* **gates:** slug comes from git, not the CI branch env ([a8b04e1](https://github.com/event4u-app/agent-config/commit/a8b04e14dfdafdfffdd38f4966a6f04f60c175ac))
|
|
304
|
+
* **settings:** planning section defaults, so omitting it is legal ([4bd8813](https://github.com/event4u-app/agent-config/commit/4bd881354fdce7f053ce4b1135a650d11ab71898))
|
|
305
|
+
* **gates:** cwd decides, never an inherited GIT_DIR ([022f381](https://github.com/event4u-app/agent-config/commit/022f3819b17d3c80afbbad4b8aa30ce0f05dc5da))
|
|
306
|
+
* **gates:** honest-null no longer suppresses the risk-table checks ([65fe441](https://github.com/event4u-app/agent-config/commit/65fe4418126751d2833156b5debfa17fba2d17b5))
|
|
307
|
+
* **gates:** pin the diff bytes; malformed-row reporting; shared row split ([e023ac7](https://github.com/event4u-app/agent-config/commit/e023ac70df800380214dd7ade34ae266f842ae03))
|
|
308
|
+
* **ci:** full history for the plan-governance gates ([323ab06](https://github.com/event4u-app/agent-config/commit/323ab068eb8f70348478127768b54273a582dc8c))
|
|
309
|
+
* **metrics:** annotate helper exits on EOF instead of hanging ([6fd7fa9](https://github.com/event4u-app/agent-config/commit/6fd7fa9296b50e90d120ed7575c6cdd5c2a554f7))
|
|
310
|
+
* **gates:** exclude the mandated metrics path from the review scope ([cc82999](https://github.com/event4u-app/agent-config/commit/cc82999ceb937ef58543415c9abe45b1eb073eb7))
|
|
311
|
+
* **gates:** escape-aware markdown row split; scanned on every exit path ([05b4d44](https://github.com/event4u-app/agent-config/commit/05b4d44f4edffe90c305f1aa9f34ced8543c7002))
|
|
312
|
+
* **gates:** close the eight script findings of round 2 — two were fail-open ([8a2bf76](https://github.com/event4u-app/agent-config/commit/8a2bf767be47c081a0f94bd5f2dd69b45cce2e28))
|
|
313
|
+
* **ci,pr:** no-fetch base sha, in-script artefact selection, scope-hash re-use (R2 round-2 findings 1,3,5) ([f9102d7](https://github.com/event4u-app/agent-config/commit/f9102d7bea877822b1d82f8a1650083fab4919b0))
|
|
314
|
+
* **gates:** contract §2.0/§2.6, dispatcher scope binding, precise dead-scope trigger ([cd52b53](https://github.com/event4u-app/agent-config/commit/cd52b53458d18ec9f3ad2e7e1f65067b118a2a5d))
|
|
315
|
+
* **bundle,roadmaps:** drop worktree path leak; R1 adoption + corrected claims (R2 findings 3,6,7) ([54e60db](https://github.com/event4u-app/agent-config/commit/54e60dbf814614c27ce94232b8c63f0893816849))
|
|
316
|
+
* **ci:** verify every review artefact, block on dead scope (R2 findings 2,8,9) ([962699d](https://github.com/event4u-app/agent-config/commit/962699d5108ca12219ecf18c1c9e19e068b210b9))
|
|
317
|
+
* **gates:** bind R2 to a review-scope hash, not a head sha (R2 findings 1,2,4,5,10,11) ([8b4ec9f](https://github.com/event4u-app/agent-config/commit/8b4ec9f75b09eaac913271e6e8dd8bd365c72371))
|
|
318
|
+
* **lint:** repoint the fe-design abstraction-threshold pin to its reference file ([428bbd2](https://github.com/event4u-app/agent-config/commit/428bbd2513afe15a59600752244edd72b30a74b8))
|
|
319
|
+
* **lint:** escape the NUL key separator in lint_trigger_collisions ([e359256](https://github.com/event4u-app/agent-config/commit/e359256e2498719afc508625c3c46cd3f93ff155))
|
|
320
|
+
* **skills:** keep required sections in existing-ui-audit's body ([b3cc0ad](https://github.com/event4u-app/agent-config/commit/b3cc0ada669c2011de9c64623680ca4664552123))
|
|
321
|
+
* **config:** surgical schema + budget edits instead of whole-file JSON rewrites ([2e1b377](https://github.com/event4u-app/agent-config/commit/2e1b3776edd2c960d0c9170bee60648875acf055))
|
|
322
|
+
* **router:** unknown tier value fails compilation instead of silent tier-2 downgrade ([02960bf](https://github.com/event4u-app/agent-config/commit/02960bf5e8fab4c11aafaad29b5f4b5cde52ccd2))
|
|
295
323
|
|
|
296
324
|
### Documentation
|
|
297
325
|
|
|
298
|
-
* **
|
|
299
|
-
* **
|
|
300
|
-
* **
|
|
301
|
-
* **
|
|
326
|
+
* **review:** binding R2 honest-null for the merge scope ([6c6fc15](https://github.com/event4u-app/agent-config/commit/6c6fc15a983c8c685820c5e5eac2dd21ba0ab228))
|
|
327
|
+
* **contracts:** label the terminal-before-rename rule enforced_by: none ([911505e](https://github.com/event4u-app/agent-config/commit/911505e0207ab5715894e931b45f87a065b22b8a))
|
|
328
|
+
* **contracts:** name the superseded-round convention (§2.7) ([ba202e2](https://github.com/event4u-app/agent-config/commit/ba202e2dd261ea3d194799946a2dc1924024bef3))
|
|
329
|
+
* **review:** close round-4 findings — 4 fixed, 0 open ([7bb24d8](https://github.com/event4u-app/agent-config/commit/7bb24d879ecc9f512f9429e3c78a88959c7b6c50))
|
|
330
|
+
* **gates:** withdraw three claims that had no mechanism behind them ([2529f53](https://github.com/event4u-app/agent-config/commit/2529f53e91c68a670667ea2fa2971cc262241404))
|
|
331
|
+
* **review:** close round-3 findings — 11 fixed, 1 accepted-risk ([9603e29](https://github.com/event4u-app/agent-config/commit/9603e29f610dc1566bf1931ea6daf784e9f31725))
|
|
332
|
+
* **review:** R2 round-3 findings — 12 open ([7a88b1a](https://github.com/event4u-app/agent-config/commit/7a88b1af2d2283ae1b3c8866d689241a4af9dda3))
|
|
333
|
+
* **review:** close round-2 findings — 11 fixed ([6f0934c](https://github.com/event4u-app/agent-config/commit/6f0934c561223a8dd4424fa109b4c8b5701d38a7))
|
|
334
|
+
* **review:** close round-1 findings — 10 fixed, 1 accepted-risk ([6bc2a26](https://github.com/event4u-app/agent-config/commit/6bc2a2673daf568d39de86710625108a84a03e13))
|
|
335
|
+
* **review:** R2 completion-review findings — fresh blind reviewer, 11 open ([e7d0dca](https://github.com/event4u-app/agent-config/commit/e7d0dca86111dfe52247539630f11ff21f4c3c67))
|
|
336
|
+
* **contracts:** add plan-review-gates v1 — R1/R2 grammars, C-to-R1 handoff, exit codes ([aa69cdd](https://github.com/event4u-app/agent-config/commit/aa69cdd39adb4e7c12f95881a2243a785093c734))
|
|
337
|
+
* **roadmap:** adjudicate advisory-gate blocker findings for plan-governance-gates ([b35b2aa](https://github.com/event4u-app/agent-config/commit/b35b2aa088e6d0236d9a28107f7726d76b9530f8))
|
|
338
|
+
* **roadmap:** inline council trace per no-roadmap-references council clause ([c355c3b](https://github.com/event4u-app/agent-config/commit/c355c3b00b3a8ce031b7017bf12734908e1fd485))
|
|
339
|
+
* **roadmap:** add plan-governance-gates roadmap (confidence gate + review gates) ([810caa7](https://github.com/event4u-app/agent-config/commit/810caa74529577049bc55778fe82eb5936ce79e1))
|
|
340
|
+
* **evidence:** pre-register the UI-skill progressive-disclosure threshold ([0914f65](https://github.com/event4u-app/agent-config/commit/0914f65b24dd76f50ba073f375d6b0cb7d69ff2b))
|
|
341
|
+
* **roadmap:** flip census + collision-lint checkboxes (landed in b71e36c31) ([f49df8b](https://github.com/event4u-app/agent-config/commit/f49df8bf766462e1a60dae3f41d2974a81bee814))
|
|
342
|
+
* **roadmap:** routing-correctness — Phases 1, 2 and 4 landed ([010d733](https://github.com/event4u-app/agent-config/commit/010d73359ced4c9700ef4f40cc948216b0d6a070))
|
|
343
|
+
* **commands:** routing-audit surface on /rule-compliance-audit ([61ade3f](https://github.com/event4u-app/agent-config/commit/61ade3f78f8f5956ec66413890b692055fef319d))
|
|
344
|
+
|
|
345
|
+
### Refactoring
|
|
346
|
+
|
|
347
|
+
* **skills:** compress the gate additions under the size threshold ([015ec87](https://github.com/event4u-app/agent-config/commit/015ec8752dc6b5bc4e0e5c9098fc34b044bc9c61))
|
|
348
|
+
* **skills:** progressive disclosure for the four heavy UI reference skills ([709f010](https://github.com/event4u-app/agent-config/commit/709f0105a2b305f7c1b53ad561ceb964c5616157))
|
|
349
|
+
* **rules:** merge brand pair, disjoin disclaimer/finance and secret/security triggers ([71c3527](https://github.com/event4u-app/agent-config/commit/71c35279a774a42557f91d9f769ad0bdcf2386ba))
|
|
302
350
|
|
|
303
351
|
### Tests
|
|
304
352
|
|
|
305
|
-
* **
|
|
306
|
-
|
|
307
|
-
### CI
|
|
308
|
-
|
|
309
|
-
* **release:** wire surface-equality, highlight-plausibility, finding-dispositions ([86866ed](https://github.com/event4u-app/agent-config/commit/86866edc918f4fbe3f2b2a1f6047584e2bc78b44))
|
|
353
|
+
* **gates:** cover the annotation helper and the R2 artifact parser ([72eabe0](https://github.com/event4u-app/agent-config/commit/72eabe01025f6a399ff0818b173d17c8546ed737))
|
|
310
354
|
|
|
311
355
|
### Chores
|
|
312
356
|
|
|
313
|
-
*
|
|
314
|
-
* **
|
|
315
|
-
|
|
316
|
-
Tests: 10692 (+104 since 9.16.0)
|
|
317
|
-
|
|
318
|
-
## [9.16.0](https://github.com/event4u-app/agent-config/compare/9.15.0...9.16.0) (2026-08-03)
|
|
319
|
-
|
|
320
|
-
### Release highlights
|
|
321
|
-
|
|
322
|
-
<!-- Curated head: fill before merge, keep it under 10 lines, and leave `_none_` where it is genuinely the answer. The generated log below is unchanged. -->
|
|
323
|
-
- **Behaviour changes:** _none_
|
|
324
|
-
- **Default changes + migration:** _none_
|
|
325
|
-
- **Security and correctness:** _none_
|
|
326
|
-
- **Honest nulls:** _none_
|
|
327
|
-
- **Known limitations:** _none_
|
|
328
|
-
|
|
329
|
-
### Features
|
|
330
|
-
|
|
331
|
-
* **gates:** fail the PR that moves the CLI registry without the evaluator budget ([84740f3](https://github.com/event4u-app/agent-config/commit/84740f3aba1cd7e9fd3e2fa6eb304a1ad106e149))
|
|
332
|
-
|
|
333
|
-
### Chores
|
|
334
|
-
|
|
335
|
-
* **deps:** bump the github-actions group across 1 directory with 5 updates ([5e272d8](https://github.com/event4u-app/agent-config/commit/5e272d89e6e9b5bcc1fff053e9448da294998221))
|
|
336
|
-
|
|
337
|
-
Tests: 10588 (+8 since 9.15.0)
|
|
338
|
-
|
|
339
|
-
## [9.15.0](https://github.com/event4u-app/agent-config/compare/9.14.0...9.15.0) (2026-08-03)
|
|
340
|
-
|
|
341
|
-
### Release highlights
|
|
342
|
-
|
|
343
|
-
<!-- Curated head: fill before merge, keep it under 10 lines, and leave `_none_` where it is genuinely the answer. The generated log below is unchanged. -->
|
|
344
|
-
- **Behaviour changes:** _none_
|
|
345
|
-
- **Default changes + migration:** _none_
|
|
346
|
-
- **Security and correctness:** _none_
|
|
347
|
-
- **Honest nulls:** _none_
|
|
348
|
-
- **Known limitations:** _none_
|
|
349
|
-
|
|
350
|
-
### Features
|
|
351
|
-
|
|
352
|
-
* **routing:** budget-aware cheap-request delegation (budget_routing) ([c3e98dd](https://github.com/event4u-app/agent-config/commit/c3e98dda535413e6d5e40cc463f88628c8b2ff27))
|
|
353
|
-
* **eval:** rules mode for the live trigger eval + weekly canary leg ([69fda7d](https://github.com/event4u-app/agent-config/commit/69fda7ddadbb60581f33ec3403609a34edaeed8b))
|
|
354
|
-
* **routing:** word-boundary-anchored keyword matching ([1975323](https://github.com/event4u-app/agent-config/commit/197532342bbac44adfc1e5e486f8e485a95e1d6a))
|
|
355
|
-
* **routing:** per-rule routing matrices for all 97 rules + derived coverage corpus ([f5ea58f](https://github.com/event4u-app/agent-config/commit/f5ea58f458865ad5ba60713e918acab301a76ffb))
|
|
356
|
-
* **routing:** routing:doctor + composed session_start chain tests ([bc9d3a2](https://github.com/event4u-app/agent-config/commit/bc9d3a249649a4fd063d316fdc42f2f5404246e7))
|
|
357
|
-
* **hooks:** daily throttle for session_start probes ([db1cdef](https://github.com/event4u-app/agent-config/commit/db1cdef2b45b7944dd056648768acb4194675d31))
|
|
358
|
-
* **cli:** dispatch:hook fast path in the bin launcher ([048757d](https://github.com/event4u-app/agent-config/commit/048757dc0fc2c21cc1ea862c4690cc5cbeb03d3b))
|
|
359
|
-
* **hooks:** claude hook command invokes the dispatcher bundle directly ([a8b2bdd](https://github.com/event4u-app/agent-config/commit/a8b2bddd916d6e129c4db255094a369a6b7b6972))
|
|
360
|
-
* **bench:** measure the real hook invocation path and gate CI on it ([832480a](https://github.com/event4u-app/agent-config/commit/832480ac961f3c1c0815219d95653c398ff7059d))
|
|
361
|
-
* **router:** reconcile the routes_to contract via an explicit self-contained class (ADR-210) ([4f24152](https://github.com/event4u-app/agent-config/commit/4f2415250e8b3f5a9e235c0f99ef2707a0df99ec))
|
|
362
|
-
* **adr:** retrofit event-based review_trigger on 11 time-bound ADRs ([6dd0375](https://github.com/event4u-app/agent-config/commit/6dd03758a73a7a0682f8b4543fe45954a5cb6f56))
|
|
363
|
-
* **adr:** projection-era corrections via ADR-209 — ADR-030 carve-out retired, ADR-089 superseded ([73b3fd8](https://github.com/event4u-app/agent-config/commit/73b3fd804a666e1bed5b58ca67b35b0669c49daf))
|
|
364
|
-
* **adr:** decide the ADR-201 open question — dist/agent-src is kept forever ([693fc3d](https://github.com/event4u-app/agent-config/commit/693fc3d172e0e9a6286d161c59035e848715dfd5))
|
|
365
|
-
* **adr:** drain the perma-proposed sweep — five accepts, one supersede ([3ab49ff](https://github.com/event4u-app/agent-config/commit/3ab49ff992a4bafd4bbe9b7bc2a625c45427f439))
|
|
366
|
-
* **adr:** supersede ADR-085 with ADR-207 — stdio-lite restated on Node-only grounds ([3874e58](https://github.com/event4u-app/agent-config/commit/3874e58267f684a8a479130ae1db20f1ab5e5ad5))
|
|
367
|
-
* **adr:** batch-disposition the drive-loop era via ADR-206 ([0052f65](https://github.com/event4u-app/agent-config/commit/0052f657238794fce1144bfbf9a8f2864b569f01))
|
|
368
|
-
* **hooks:** add the block-config-weakening PreToolUse guard ([d158f2d](https://github.com/event4u-app/agent-config/commit/d158f2dcfd69f4a71d97dd5bd30e9774aa95162e))
|
|
369
|
-
* **router:** ratchet short keyword triggers, and stop the contract lying about activation ([9f9e273](https://github.com/event4u-app/agent-config/commit/9f9e273d5d3d8736542723be5ca4df1b32627229))
|
|
370
|
-
* **projection:** project the colon command form and drop the twinned wrappers ([002697c](https://github.com/event4u-app/agent-config/commit/002697c891a9fde2a7e05a9f6b895bc189eeb80e))
|
|
371
|
-
* **projection:** derive the rule pack axis from the active-pack set ([37900a9](https://github.com/event4u-app/agent-config/commit/37900a92badba9dec34cd6e84918581154365b26))
|
|
372
|
-
* **gates:** put the repaired scan roots under the coverage census ([df1e736](https://github.com/event4u-app/agent-config/commit/df1e736b9d775d7870a1a2d1d7fc467c47ded858))
|
|
373
|
-
* **release:** name failing checks + mid-release-fix guidance at the failure point ([a3ce993](https://github.com/event4u-app/agent-config/commit/a3ce9939fa02a3510882ac5e85a40e070e1c313a))
|
|
374
|
-
* **ci:** commit the measurement set and warn on main, fail on release ([6eebc02](https://github.com/event4u-app/agent-config/commit/6eebc021cd8ac43a32625fa939898054e94f238b))
|
|
375
|
-
* **gates:** extend default-entry coverage and add the mutation canary ([fc05f30](https://github.com/event4u-app/agent-config/commit/fc05f30f080b799d781e401fa500ede4d8bb340e))
|
|
376
|
-
* **gates:** generate the scan-scope census over the full gate population ([301116f](https://github.com/event4u-app/agent-config/commit/301116f6f53d08d82806914bd1bf719f22ad6412))
|
|
377
|
-
* **gates:** add a violation ratchet for repaired scan roots ([190d53d](https://github.com/event4u-app/agent-config/commit/190d53deca65c3c01c9fff619aaf0e0e136e92c6))
|
|
378
|
-
|
|
379
|
-
### Bug Fixes
|
|
380
|
-
|
|
381
|
-
* **cli:** register routing:doctor in the CLI registry ([f02db54](https://github.com/event4u-app/agent-config/commit/f02db54c2cae449e730742f7396af5ac812bf0e8))
|
|
382
|
-
* **ci:** waive pre-existing SC2016 in bench-drift comment renderer ([bb4c605](https://github.com/event4u-app/agent-config/commit/bb4c6058177ccbdcdd3157a26c9818f1bcd3cc94))
|
|
383
|
-
* **deps-dev:** keep web-tree-sitter on the 0.24.7 ABI pin ([3e76cb2](https://github.com/event4u-app/agent-config/commit/3e76cb2515d6b4c183b7305b49dd7084b1cd59b4))
|
|
384
|
-
* **deps:** settle the preact floor and adopt the group bumps into the baseline ([b9c9c14](https://github.com/event4u-app/agent-config/commit/b9c9c14d6c43b51ee857a422ec35a4c559cd3a2e))
|
|
385
|
-
* **sweep:** keep the kernel rule language-and-tone out of the dead-tree sweep ([80c323a](https://github.com/event4u-app/agent-config/commit/80c323ac27c024f85426ee63a03c51a2e02ac964))
|
|
386
|
-
* **tests:** use src/rules fixture paths in the self-contained carve-out tests ([c541100](https://github.com/event4u-app/agent-config/commit/c541100cb8e9ed836dc3cd7ba54414a0c6783d65))
|
|
387
|
-
* **adr-index:** stop the index header naming the retired Python generator ([a26756e](https://github.com/event4u-app/agent-config/commit/a26756e9f9da1cdb79ab29deaed6dd3238def969))
|
|
388
|
-
* **hooks:** resolve the session-canary name user-globally, not per project ([9c3b779](https://github.com/event4u-app/agent-config/commit/9c3b7791fad2fa2d987b279a0951e662ff3c3ab1))
|
|
389
|
-
* **hooks:** rebuild stale tsc output after pull / branch-switch ([d2122e9](https://github.com/event4u-app/agent-config/commit/d2122e936033262a9dbe429dd21a2a6e7e23efe6))
|
|
390
|
-
* **roadmap-management:** tighten the awaiting-evidence section to clear the overlap gate ([5b6f141](https://github.com/event4u-app/agent-config/commit/5b6f141a8be8da01f7f231608de3a7d374b88e03))
|
|
391
|
-
* **worktree:** name the dependency tree by ecosystem peers, not one stack ([eafeced](https://github.com/event4u-app/agent-config/commit/eafecedebbd207c97c37f2f380e718c37512b34b))
|
|
392
|
-
* **clusters:** enumerate the filesystem in check_cluster_patterns ([a1cb83e](https://github.com/event4u-app/agent-config/commit/a1cb83e86648774cbbce7bc089640438a99626b5))
|
|
393
|
-
* **registries:** register the new command generator and its output root ([2e57080](https://github.com/event4u-app/agent-config/commit/2e570802e170ff7ccd97476902b4dcdff8aac570))
|
|
394
|
-
* **mcp:** price tool schemas per transport and stop shipping stub schemas ([040c8be](https://github.com/event4u-app/agent-config/commit/040c8bee1d3a7a02ec1bde7409c98e2f38881d4a))
|
|
395
|
-
* **deps:** bump the npm-production group with 4 updates ([2795154](https://github.com/event4u-app/agent-config/commit/27951548d89bb575b8d08bffc2269a55f6e9f414))
|
|
396
|
-
* **gates:** stop a check_ script from mutating a tracked report on every run ([d478b7a](https://github.com/event4u-app/agent-config/commit/d478b7a0f45373e9dd7f49b6427f93e101c77bea))
|
|
397
|
-
* **condense:** wire thin-mode instead of throwing on it ([092e535](https://github.com/event4u-app/agent-config/commit/092e5354440dbc114e059a008139168e29e8eb42))
|
|
398
|
-
* **docs:** drop the roadmap path from the branch-protection contract ([6927770](https://github.com/event4u-app/agent-config/commit/69277700fd91cf538cfb243700efcd748054dec7))
|
|
399
|
-
* **gates:** repair five gates that were scanning a deleted root ([e89c1b7](https://github.com/event4u-app/agent-config/commit/e89c1b733a61bd6cd722c86488ee7f727e1e64f1))
|
|
400
|
-
* **ci:** make ci-strict a superset of ci by construction ([10908cf](https://github.com/event4u-app/agent-config/commit/10908cf31919e615bb727a86b892cdfbcc38ca58))
|
|
401
|
-
* **ci:** reconcile the required-check matrix with what is actually enforced ([9b6b016](https://github.com/event4u-app/agent-config/commit/9b6b016343a63d80db8d549b194b93200ad55798))
|
|
402
|
-
* **ci:** satisfy actionlint on the newly-linted workflow and explain the plumbing failure ([f1e3518](https://github.com/event4u-app/agent-config/commit/f1e351811ac6ff53c80692ea94eee56fa30e4434))
|
|
403
|
-
* **gates:** repair the last dead scan root and pin the exit contract on a fixture ([683d493](https://github.com/event4u-app/agent-config/commit/683d493ec5bed63b1ac023064ed7b4da2016f066))
|
|
404
|
-
* **gates:** close four first-match-wins collisions over the repo's own conventions ([7dcc6f0](https://github.com/event4u-app/agent-config/commit/7dcc6f0f1cfc3e3cd8ba3b57f549b910cee931b4))
|
|
405
|
-
* **release:** ratchet existing legacy roots and stop the lockfile drift ([3bba94e](https://github.com/event4u-app/agent-config/commit/3bba94e2e479f93d8a8bf27e191b8a6accccaace))
|
|
406
|
-
* **ci:** run the release-gated checks on the PR that causes them ([7d25422](https://github.com/event4u-app/agent-config/commit/7d2542289748c8a768258389718e1870dbe67df9))
|
|
407
|
-
* **gates:** repair thirteen dead scan roots so the gates read real artefacts ([47bb0f0](https://github.com/event4u-app/agent-config/commit/47bb0f099c248d9ab1669c589158bb8908b275db))
|
|
408
|
-
|
|
409
|
-
### Documentation
|
|
410
|
-
|
|
411
|
-
* **roadmap:** road-to-tested-routing complete — 37/37, archived ([9a0fed9](https://github.com/event4u-app/agent-config/commit/9a0fed9c8809d68706ea0b16a0ba920414fcd087))
|
|
412
|
-
* **adr:** ADR-212 — declarative routing with a quantified resolver reopen ([9c6fbff](https://github.com/event4u-app/agent-config/commit/9c6fbfff23f11a0df6d24b3a55a931350f0f7097))
|
|
413
|
-
* **roadmap:** road-to-tested-routing — council-locked plan, phases 1/2/6 progress ([5a04b3a](https://github.com/event4u-app/agent-config/commit/5a04b3aa013d43f9e0105169bf20e5bcce366363))
|
|
414
|
-
* **roadmap:** close and archive road-to-hook-latency-repair ([3c0af7e](https://github.com/event4u-app/agent-config/commit/3c0af7e384badd218a4712caf93a1279dc972022))
|
|
415
|
-
* **claims:** hook-dispatch-latency claim pinned to the real path ([fc31783](https://github.com/event4u-app/agent-config/commit/fc31783d672e1599041ed3bfa789ba4cbb94c765))
|
|
416
|
-
* **adr:** renumber the harvest-freeze record 206 -> 210 (numbers 206-209 landed on main via #1123) ([bce530d](https://github.com/event4u-app/agent-config/commit/bce530dd5685932bdbf319369eea1f050f1feeac))
|
|
417
|
-
* **roadmap:** pull Codex into agent-handoff v2 scope ([eb15183](https://github.com/event4u-app/agent-config/commit/eb15183e249fec1ed51e07b52785d3f8614e56fd))
|
|
418
|
-
* **roadmap:** re-audit the parked feedback-sweep items against ADR-206 ([6216751](https://github.com/event4u-app/agent-config/commit/6216751849726b6738c04c31c5af8c8759494e8f))
|
|
419
|
-
* **adr:** canonicalize the harvest freeze as ADR-206 with amended resume conditions ([7ebbe0e](https://github.com/event4u-app/agent-config/commit/7ebbe0e414321b2c4d57b3e0c5b5b7480db4cae0))
|
|
420
|
-
* **roadmap:** plan the agent-handoff v2 resume-style overhaul ([62895b1](https://github.com/event4u-app/agent-config/commit/62895b1bccd9fa65f24e3a78f40e91602b47070c))
|
|
421
|
-
* **roadmap:** reword tier-value tokens so check_references stops reading them as rule names ([5bc8124](https://github.com/event4u-app/agent-config/commit/5bc81249c94dd39a0271311206d85546d64bd318))
|
|
422
|
-
* **roadmap:** land the three feedback-sweep repair roadmaps + dashboard ([beb0560](https://github.com/event4u-app/agent-config/commit/beb0560e9b49760f696dbd127ccec6c259f57228))
|
|
423
|
-
* **roadmap:** park the four freeze-gated feedback-sweep proposals in later/ ([e669f0f](https://github.com/event4u-app/agent-config/commit/e669f0f01424d921fa798ad69ad7c20763d040b2))
|
|
424
|
-
* **roadmap:** close road-to-renewal-leverage with its findings ([bcc85d0](https://github.com/event4u-app/agent-config/commit/bcc85d0c593b46d83e9455139937b73061ca64b4))
|
|
425
|
-
* **roadmap-management:** name the awaiting-evidence signal ([e008f19](https://github.com/event4u-app/agent-config/commit/e008f191ddc2eeaa18931259e11c852ec6e101c6))
|
|
426
|
-
* **worktree:** encode the seeding allow/deny list in the creation flow ([6743690](https://github.com/event4u-app/agent-config/commit/6743690f226242a2fed6d4a45195202342fd2878))
|
|
427
|
-
* **roadmap:** pre-register the resolver spike, park it, and archive Foundation ([0e49f83](https://github.com/event4u-app/agent-config/commit/0e49f83d013a242c94baf320b13249ac3f496942))
|
|
428
|
-
* **roadmap:** record Phase 2 with both figures, and the two honest misses ([8de0e6c](https://github.com/event4u-app/agent-config/commit/8de0e6c088b9f6d7fde94815dc2fe235c211815a))
|
|
429
|
-
* **roadmap:** record the umbrella-runner spike result — import-safety GO, timing LOSS ([0551a7c](https://github.com/event4u-app/agent-config/commit/0551a7cce2b312cf3d018967aa8e606f0f2ecda2))
|
|
430
|
-
* **roadmap:** decline CI build-artifact sharing on measurement, record the Phase 2 token baseline ([fa244c1](https://github.com/event4u-app/agent-config/commit/fa244c1a8878696ab2398ca6279ad9544b1269b1))
|
|
431
|
-
* **roadmap:** close Foundation P1 required-checks, ci-strict, dependabot and baseline steps ([cbc1217](https://github.com/event4u-app/agent-config/commit/cbc12170722ad3a5d5e091f290d263fff9adad96))
|
|
432
|
-
* **roadmap:** close the phases of road-to-gates-that-can-fail ([a6af14f](https://github.com/event4u-app/agent-config/commit/a6af14ff088e5836bc20f769e67a820e267defc6))
|
|
433
|
-
|
|
434
|
-
### Tests
|
|
435
|
-
|
|
436
|
-
* **orchestration:** dispatch-decision matrices + council-path routing invariants ([8d48180](https://github.com/event4u-app/agent-config/commit/8d48180064458dd5a75559465a20ea5424f1264c))
|
|
437
|
-
* **portability:** build fixtures under the live scan root ([e02dd0b](https://github.com/event4u-app/agent-config/commit/e02dd0bfaf0f2b8aaaaccec9d1a82409fa2bdb98))
|
|
438
|
-
* **gates:** exercise the two happy-path-only gates through their real entry point ([365da5b](https://github.com/event4u-app/agent-config/commit/365da5b9fcc887864d344b94301836ce5cef928e))
|
|
439
|
-
|
|
440
|
-
### Build
|
|
441
|
-
|
|
442
|
-
* **install:** refresh the committed installer output for the rule-packs change ([8bcccc7](https://github.com/event4u-app/agent-config/commit/8bcccc7ef575420f9074307cee33721d80c6df7a))
|
|
443
|
-
|
|
444
|
-
### Chores
|
|
357
|
+
* **index:** regenerate artefact index, catalog and command flows ([71aacc6](https://github.com/event4u-app/agent-config/commit/71aacc6f675def21773d13f3fd927bcdc2519a99))
|
|
358
|
+
* **tests:** drop unused import in the fix-lane test ([b18e77f](https://github.com/event4u-app/agent-config/commit/b18e77f78c426493ba3ff6a2ee8dc9c9ce068253))
|
|
445
359
|
|
|
446
|
-
|
|
447
|
-
* **deps-dev:** bump @inquirer/prompts from 7.10.1 to 8.5.2 ([7dfea4b](https://github.com/event4u-app/agent-config/commit/7dfea4bbc26e8b04d2c73bc9cbe4d813dc64c724))
|
|
448
|
-
* **deps-dev:** bump typescript in /deploy/telemetry-worker ([fdbff3f](https://github.com/event4u-app/agent-config/commit/fdbff3f293b3eaa6a6b1d8d5c7ba8e0769a2daab))
|
|
449
|
-
* **deps:** bump marocchino/sticky-pull-request-comment from 2 to 3 ([7d4d9cb](https://github.com/event4u-app/agent-config/commit/7d4d9cb81bd95faf851cf16bb06c87d2df871d9b))
|
|
450
|
-
* **deps-dev:** bump tsx from 4.22.3 to 4.23.1 in deploy/telemetry-worker ([ea561ea](https://github.com/event4u-app/agent-config/commit/ea561ea964fda776c02df3a280aaa1d9c188eac6))
|
|
451
|
-
* **deps-dev:** bump the npm-development group across 1 directory with 7 updates ([fe05c7f](https://github.com/event4u-app/agent-config/commit/fe05c7fe02b2d9dca60887fe23b92b1d5fe3024e))
|
|
452
|
-
* **deps:** bump actions/upload-artifact from 4 to 7 ([a2a2423](https://github.com/event4u-app/agent-config/commit/a2a2423776510471a17ebf0631fad2cba9cd50d1))
|
|
453
|
-
* **roadmap:** close and archive road-to-renewal-adr-hygiene ([ab432b0](https://github.com/event4u-app/agent-config/commit/ab432b0247b21a21b6961de20ca1ef1584c96367))
|
|
454
|
-
* **adr:** regenerate the index for the hygiene batch ([61dc94f](https://github.com/event4u-app/agent-config/commit/61dc94f98f48ef508986050728d04c47125c6718))
|
|
455
|
-
* **docs:** sweep non-gate .agent-src.uncondensed references to the src/ truth ([9d987a0](https://github.com/event4u-app/agent-config/commit/9d987a086363b933505d6290fc111f9763f8810d))
|
|
456
|
-
* **roadmap:** default dashboard_regen_cadence to every_5_steps ([d40f676](https://github.com/event4u-app/agent-config/commit/d40f676326f034affe8a0c15e4835bc4a6143fe2))
|
|
457
|
-
* **deps:** bump the site group in /site with 3 updates ([ddb92d4](https://github.com/event4u-app/agent-config/commit/ddb92d4399ee35137b8c0a557345f6104b069915))
|
|
458
|
-
* **deps:** bump actions/configure-pages from 5 to 6 ([c2fe6bc](https://github.com/event4u-app/agent-config/commit/c2fe6bc26f123bfd0eaf8a88d5ba2c9cb70cf6bc))
|
|
459
|
-
* **deps:** bump actions/upload-pages-artifact from 3 to 5 ([6998b77](https://github.com/event4u-app/agent-config/commit/6998b77bbddfd85f8346c751f0a8679f13129dcc))
|
|
460
|
-
* **deps:** schedule dependency updates via dependabot ([d9e4a8d](https://github.com/event4u-app/agent-config/commit/d9e4a8de95ef246311b85a85fd5189892ce21161))
|
|
461
|
-
* **reports:** refresh the derived reports the consistency gate regenerates ([ee73e3f](https://github.com/event4u-app/agent-config/commit/ee73e3feab59cf2df2a1f6b1bc35ff6e1e032359))
|
|
462
|
-
|
|
463
|
-
Tests: 10580 (+524 since 9.14.0)
|
|
360
|
+
Tests: 10944 (+252 since 9.17.0)
|
|
464
361
|
|
|
465
362
|
# Era: pre-4.0.0 — archived
|
|
466
363
|
|
|
@@ -438,6 +438,11 @@ If the user wants any other follow-up, they invoke it explicitly. The
|
|
|
438
438
|
polishing).
|
|
439
439
|
- [`ask-when-uncertain`](../../rules/ask-when-uncertain.md) — the
|
|
440
440
|
one-question-per-turn Iron Law this command is built on.
|
|
441
|
+
- [`plan-confidence-gate`](../../contexts/execution/plan-confidence-gate.md)
|
|
442
|
+
— Gate C: the plan-authoring surfaces (`/roadmap:create`,
|
|
443
|
+
`roadmap-writing`, `/feature:plan`, `/feature:roadmap`) auto-route into
|
|
444
|
+
this interview when their confidence check falls below 95%. Reverse
|
|
445
|
+
pointer only — nothing in this command changes when the gate fires.
|
|
441
446
|
- Inspiration: `mattpocock/skills/skills/productivity/grill-me/SKILL.md`
|
|
442
447
|
— same spirit (relentless decision-tree interview, one question at a
|
|
443
448
|
time, recommended answer per question), restructured to our command
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{
|
|
2
|
+
"command": "rule-compliance-audit",
|
|
3
|
+
"intent": "Audit rule trigger quality and replay the router matcher over recent prompts (routing audit)",
|
|
4
|
+
"cases": [
|
|
5
|
+
{
|
|
6
|
+
"prompt": "audit my rules for weak triggers",
|
|
7
|
+
"expected": "rule-compliance-audit"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"prompt": "run a routing audit — which rules fired on my last prompts",
|
|
11
|
+
"expected": "rule-compliance-audit"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"prompt": "check whether the rule routing actually matches what I type",
|
|
15
|
+
"expected": "rule-compliance-audit"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"prompt": "why did no rule activate on my last message — audit the triggers",
|
|
19
|
+
"expected": "rule-compliance-audit"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"prompt": "find rules whose descriptions overlap or never activate",
|
|
23
|
+
"expected": "rule-compliance-audit"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"prompt": "fix the failing CI on this branch",
|
|
27
|
+
"expected": "fix"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"prompt": "review the changes on this branch before I push",
|
|
31
|
+
"expected": "review-changes"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"prompt": "run a full project health check",
|
|
35
|
+
"expected": "project-health"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"prompt": "estimate this ticket for me",
|
|
39
|
+
"expected": "estimate-ticket"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"prompt": "commit these changes in logical chunks",
|
|
43
|
+
"expected": "commit"
|
|
44
|
+
}
|
|
45
|
+
]
|
|
46
|
+
}
|
|
@@ -21,6 +21,19 @@ packs:
|
|
|
21
21
|
# /feature plan
|
|
22
22
|
## Instructions
|
|
23
23
|
|
|
24
|
+
### 0. Confidence gate (Gate C)
|
|
25
|
+
|
|
26
|
+
Before gathering, run the plan-confidence gate per
|
|
27
|
+
[`plan-confidence-gate`](../../contexts/execution/plan-confidence-gate.md):
|
|
28
|
+
read `planning.challenge_on_create` (missing = `true`), do the codebase
|
|
29
|
+
lookup, and assess the four 95%-conditions — **seed = the provided
|
|
30
|
+
description** (when none was provided, step 1's ask supplies it first).
|
|
31
|
+
Confident → single marker line, continue with step 1. Uncertain → route
|
|
32
|
+
into `/challenge-me vision` (inline degrade protocol without the command);
|
|
33
|
+
the pitch feeds steps 5c–6, and the C→R1 handoff state is written so the
|
|
34
|
+
risk-review step re-asks nothing. Explicit user bypass wins for the turn
|
|
35
|
+
and is counted.
|
|
36
|
+
|
|
24
37
|
### 1. Gather the idea
|
|
25
38
|
|
|
26
39
|
If the user provided a description, use it. Otherwise ask:
|
|
@@ -259,6 +272,13 @@ If picked **2** → continue.
|
|
|
259
272
|
- Set the `Module` field in the feature doc accordingly.
|
|
260
273
|
- Set status to `📋 Planned`.
|
|
261
274
|
- If Jira tickets were provided, add them to the `Jira` field and reference them in the feature doc.
|
|
275
|
+
- **Risk review (Gate R1)** — before saving, add a `## Risk Register`
|
|
276
|
+
section per [`plan-review-gates § 1`](../../../docs/contracts/plan-review-gates.md):
|
|
277
|
+
read the C→R1 handoff state from step 0 if present (resolved branches
|
|
278
|
+
seed the risks — never re-ask them), rank the highest product and
|
|
279
|
+
implementation risks descending, one mitigation per row, each row
|
|
280
|
+
anchored to a section of this document. No material risks → the exact
|
|
281
|
+
honest-null grammar. Self-review suffices.
|
|
262
282
|
|
|
263
283
|
**Ask for the filename:**
|
|
264
284
|
```
|
|
@@ -55,6 +55,15 @@ Stop.
|
|
|
55
55
|
- Read the roadmap template at `.augment/templates/roadmaps.md` for the structure.
|
|
56
56
|
- Research the codebase for affected areas mentioned in the feature.
|
|
57
57
|
|
|
58
|
+
**Confidence gate (Gate C)** — after reading the feature plan, run
|
|
59
|
+
[`plan-confidence-gate`](../../contexts/execution/plan-confidence-gate.md)
|
|
60
|
+
with the **feature document as seed** (`planning.challenge_on_create`,
|
|
61
|
+
missing = `true`). All four 95%-conditions hold → single marker line,
|
|
62
|
+
continue. A gap that would change the phases or acceptance criteria →
|
|
63
|
+
`/challenge-me vision` interview (or inline degrade protocol) **before**
|
|
64
|
+
proposing roadmaps; the C→R1 handoff state is written so the risk-review
|
|
65
|
+
step re-asks nothing. Explicit user bypass wins for the turn and is counted.
|
|
66
|
+
|
|
58
67
|
Determine how many roadmaps are needed:
|
|
59
68
|
|
|
60
69
|
- **Single roadmap:** Small/medium features that fit in one document.
|
|
@@ -143,6 +152,16 @@ If any planned name already exists anywhere under the namespace,
|
|
|
143
152
|
Re-run the check after a rename. Never silently overwrite, never
|
|
144
153
|
auto-suffix without the user's pick.
|
|
145
154
|
|
|
155
|
+
**Risk review (Gate R1)** — every generated roadmap that is saved ready
|
|
156
|
+
(non-draft) carries a `## Risk Register` per
|
|
157
|
+
[`plan-review-gates § 1`](../../../docs/contracts/plan-review-gates.md):
|
|
158
|
+
read the C→R1 handoff state from step 2 if present (resolved branches
|
|
159
|
+
seed the risks — never re-ask them), rank the highest product and
|
|
160
|
+
implementation risks descending, one mitigation per row, each row
|
|
161
|
+
anchored to a phase/step of that roadmap. No material risks → the exact
|
|
162
|
+
honest-null grammar. `lint_plan_risk_register` enforces this at
|
|
163
|
+
pre-push + CI; drafts are exempt until flipped to ready.
|
|
164
|
+
|
|
146
165
|
### 5. Link roadmaps in the feature plan
|
|
147
166
|
|
|
148
167
|
Update the feature file's `## Roadmaps` section:
|
|
@@ -139,6 +139,35 @@ completion is read from the checkbox counts.
|
|
|
139
139
|
in the working tree.
|
|
140
140
|
- **It reported nothing → proceed.** No completed roadmap in this branch.
|
|
141
141
|
|
|
142
|
+
### 1d. Completion review (Gate R2) — after the sweep, before the PR
|
|
143
|
+
|
|
144
|
+
Fixed sequence: (1) the § 1c archival sweep runs first, (2) the R2 review
|
|
145
|
+
runs on the post-archival state (the findings artifact references
|
|
146
|
+
post-archival paths), (3) the PR is created only with a valid findings
|
|
147
|
+
artifact, honest-null, or skip declaration **for the current review-scope
|
|
148
|
+
hash** per
|
|
149
|
+
[`plan-review-gates § 2`](../../../docs/contracts/plan-review-gates.md).
|
|
150
|
+
|
|
151
|
+
- A completion-review artifact from the roadmap-completion event
|
|
152
|
+
(`agents/evidence/reviews/<slug>.findings.md`) is re-used when its
|
|
153
|
+
`scope:` equals the current review-scope hash — one artifact covers
|
|
154
|
+
both triggers. **Never compare the `diff:` sha**: it is provenance only
|
|
155
|
+
(§ 2.1), and § 2.0 proves that comparison unsatisfiable — committing the
|
|
156
|
+
artifact moves HEAD, and CI checks out a synthetic merge commit.
|
|
157
|
+
Otherwise dispatch a fresh review via `dispatch_r2_reviewer` (fresh
|
|
158
|
+
subagent, no implementation context, findings BEFORE fixes; every
|
|
159
|
+
finding ends `fixed` / `accepted-risk` / `deferred`).
|
|
160
|
+
- **Review last.** Any content commit after the review changes the scope
|
|
161
|
+
hash and invalidates the artifact — freeze the content, then review.
|
|
162
|
+
Artifacts from earlier rounds stay as audit trail under a name outside
|
|
163
|
+
the `*.findings.md` glob; the final round is the binding one.
|
|
164
|
+
- Docs-only / plan-only diffs take the explicit skip declaration, never
|
|
165
|
+
a silent skip.
|
|
166
|
+
- The agent-side check here is advisory; `check_completion_review` at
|
|
167
|
+
pre-push + CI is the enforcing layer (CI authoritative; advisory mode
|
|
168
|
+
during the Stage-A baseline window). `planning.completion_review:
|
|
169
|
+
false` is the settings escape hatch.
|
|
170
|
+
|
|
142
171
|
### 2. Generate PR content
|
|
143
172
|
|
|
144
173
|
Run `/create-pr:description-only` Steps 1–4 to generate the PR title and body.
|
|
@@ -20,6 +20,22 @@ packs:
|
|
|
20
20
|
# /roadmap create
|
|
21
21
|
## Instructions
|
|
22
22
|
|
|
23
|
+
### 0. Confidence gate (Gate C)
|
|
24
|
+
|
|
25
|
+
Before anything else, run the plan-confidence gate per
|
|
26
|
+
[`plan-confidence-gate`](../../contexts/execution/plan-confidence-gate.md):
|
|
27
|
+
read `planning.challenge_on_create` (missing = `true`), do the codebase
|
|
28
|
+
lookup, and assess the four 95%-conditions against the seed.
|
|
29
|
+
|
|
30
|
+
- **Confident** (all four hold) → emit the single marker line and continue
|
|
31
|
+
with step 1.
|
|
32
|
+
- **Uncertain** → route into `/challenge-me vision` with the ask as seed
|
|
33
|
+
(inline degrade protocol when the command is unavailable); the resulting
|
|
34
|
+
pitch pre-fills steps 3–4, and the C→R1 handoff state is written per the
|
|
35
|
+
context doc so the risk-review step re-asks nothing.
|
|
36
|
+
- **Explicit user bypass** ("just write it") → skip the gate for this turn;
|
|
37
|
+
count the bypass.
|
|
38
|
+
|
|
23
39
|
### 1. Determine location
|
|
24
40
|
|
|
25
41
|
Ask the user (in their language) where the roadmap should be created:
|
|
@@ -99,6 +115,19 @@ Show the complete roadmap to the user and ask (in their language) if anything sh
|
|
|
99
115
|
- If yes → apply changes, show again.
|
|
100
116
|
- Repeat until the user says it's done.
|
|
101
117
|
|
|
118
|
+
### 5b. Risk review (Gate R1) — after draft, before save
|
|
119
|
+
|
|
120
|
+
Unless the roadmap will be saved as `status: draft`, add a
|
|
121
|
+
`## Risk Register` per
|
|
122
|
+
[`plan-review-gates § 1`](../../../docs/contracts/plan-review-gates.md):
|
|
123
|
+
read the C→R1 handoff state from step 0 if present (resolved branches
|
|
124
|
+
seed the risk list — never re-ask them), identify the highest product and
|
|
125
|
+
implementation risks, rank descending, write a mitigation per row, and
|
|
126
|
+
anchor every row to a phase/step of this roadmap. No material risks → the
|
|
127
|
+
exact honest-null grammar from the contract. Self-review suffices.
|
|
128
|
+
`lint_plan_risk_register` enforces this at pre-push + CI; drafts are
|
|
129
|
+
exempt until flipped to ready.
|
|
130
|
+
|
|
102
131
|
### 6. Save the file
|
|
103
132
|
|
|
104
133
|
- Generate a filename from the title: kebab-case, e.g. `optimize-webhook-jobs.md`.
|
|
@@ -5,11 +5,11 @@ pack: meta
|
|
|
5
5
|
tier: 2
|
|
6
6
|
visibility: internal
|
|
7
7
|
skills: [rule-compliance-audit]
|
|
8
|
-
description: Audit rule trigger quality, simulate activation, detect overlaps,
|
|
8
|
+
description: Audit rule trigger quality, simulate activation, detect overlaps, find never-activating rules, and replay the router matcher over recent prompts (route:audit)
|
|
9
9
|
suggestion:
|
|
10
10
|
eligible: true
|
|
11
|
-
trigger_description: "audit my rules, check rule trigger quality"
|
|
12
|
-
trigger_context: "maintainer working on .augment/rules/ files"
|
|
11
|
+
trigger_description: "audit my rules, check rule trigger quality, routing audit — which rules fired"
|
|
12
|
+
trigger_context: "maintainer working on .augment/rules/ files or questioning whether rules route"
|
|
13
13
|
workspaces:
|
|
14
14
|
- agent-config-maintainer
|
|
15
15
|
packs:
|
|
@@ -121,7 +121,27 @@ ALWAYS-RULE HEALTH
|
|
|
121
121
|
{name}: {line_count} lines — {✅ healthy | ⚠️ large (>100 lines) | ⚠️ could be auto}
|
|
122
122
|
```
|
|
123
123
|
|
|
124
|
-
### 6.
|
|
124
|
+
### 6. Session routing audit (deterministic; the `/routing-audit` surface)
|
|
125
|
+
|
|
126
|
+
Replay the router's ONE shared matcher over the recent session — read-only,
|
|
127
|
+
no LLM call, deterministic:
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
agent-config route:audit --last 10 # matched rules per recent user prompt
|
|
131
|
+
agent-config route:explain "<prompt>" # deep trace for one prompt
|
|
132
|
+
agent-config route:audit --weekly # rolling 7-day recorder render
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
Render the matched-vs-should-have-matched review: for each audited prompt,
|
|
136
|
+
the tool prints the matched rules + triggers; flag prompts where a rule you
|
|
137
|
+
would expect is absent (should-have-matched is YOUR judgment as reviewer —
|
|
138
|
+
the tool never computes it). Every output opens with the measurement-level
|
|
139
|
+
header: **trigger matching only — what the host actually invoked is NOT
|
|
140
|
+
measured** (ADR-126). Recording (`--record`) is opt-in via
|
|
141
|
+
`telemetry.routing_recorder.enabled` (default off) and stores prompt digests,
|
|
142
|
+
never prompt text.
|
|
143
|
+
|
|
144
|
+
### 7. Summary and recommendations
|
|
125
145
|
|
|
126
146
|
```
|
|
127
147
|
═══════════════════════════════════════════════
|
|
@@ -152,7 +172,10 @@ Wait for user to pick which recommendations to apply.
|
|
|
152
172
|
## Rules
|
|
153
173
|
|
|
154
174
|
- **Do NOT modify any files** until the user approves recommendations.
|
|
155
|
-
- **Do NOT run any scripts** — this is a pure analysis command.
|
|
175
|
+
- **Do NOT run any scripts** — this is a pure analysis command. Sole
|
|
176
|
+
carve-out: the read-only routing CLI in step 6 (`route:explain` /
|
|
177
|
+
`route:audit`), which is deterministic and writes nothing (the opt-in
|
|
178
|
+
`--record` flag is the one gated exception).
|
|
156
179
|
- **Be honest about uncertainty** — if a trigger might or might not match, say "might miss".
|
|
157
180
|
- **Always-rules are expensive** — flag any that could safely be auto.
|
|
158
181
|
- **Auto-rules that never activate are dead weight** — flag them clearly.
|