@event4u/agent-config 14.16.0 → 14.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.
Files changed (93) hide show
  1. package/.augment-plugin/marketplace.json +3 -3
  2. package/.augment-plugin/plugin.json +1 -1
  3. package/.claude-plugin/marketplace.json +1 -1
  4. package/CHANGELOG.md +177 -213
  5. package/README.md +2 -2
  6. package/dist/agent-src/commands/analyze/inbox.md +172 -6
  7. package/dist/agent-src/commands/fix/commit-messages.md +336 -0
  8. package/dist/agent-src/commands/fix.md +5 -3
  9. package/dist/agent-src/commands/pr/merge.md +35 -44
  10. package/dist/agent-src/rules/commit-conventions.md +1 -1
  11. package/dist/agent-src/skills/accessibility-auditor/SKILL.md +2 -0
  12. package/dist/agent-src/skills/ai-code-blindspots/SKILL.md +27 -1
  13. package/dist/agent-src/skills/aws-infrastructure/SKILL.md +41 -0
  14. package/dist/agent-src/skills/code-intelligence/SKILL.md +60 -12
  15. package/dist/agent-src/skills/complexity-first-planning/SKILL.md +27 -0
  16. package/dist/agent-src/skills/conventional-commits-writing/SKILL.md +234 -4
  17. package/dist/agent-src/skills/design-review/SKILL.md +2 -0
  18. package/dist/agent-src/skills/feature-planning/SKILL.md +34 -0
  19. package/dist/agent-src/skills/git-workflow/SKILL.md +37 -12
  20. package/dist/agent-src/skills/git-workflow/references/push-closes-its-loop.md +176 -0
  21. package/dist/agent-src/skills/laravel-mail/SKILL.md +44 -0
  22. package/dist/agent-src/skills/terraform/SKILL.md +29 -0
  23. package/dist/agent-src/skills/testing-anti-patterns/SKILL.md +40 -0
  24. package/dist/agent-src/skills/threat-modeling/data/reasoning.csv +1 -0
  25. package/dist/agent-src/skills/threat-modeling/data/surfaces.csv +1 -0
  26. package/dist/agent-src/skills/threat-modeling/data/threats.csv +5 -0
  27. package/dist/agent-src/skills/using-git-worktrees/SKILL.md +12 -0
  28. package/dist/agent-src/skills/verify-repair-loop/SKILL.md +53 -8
  29. package/dist/agent-src/skills/worktree-lifecycle/SKILL.md +3 -1
  30. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  31. package/dist/cli-delegate/cmd_conformance.js +335 -659
  32. package/dist/cli-delegate/cmd_explain.js +24 -112
  33. package/dist/discovery/deprecation-report.md +1 -1
  34. package/dist/discovery/discovery-manifest.json +55 -29
  35. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  36. package/dist/discovery/discovery-manifest.summary.md +3 -3
  37. package/dist/discovery/dormancy-report.md +1 -1
  38. package/dist/discovery/orphan-report.md +1 -1
  39. package/dist/discovery/packs.json +6 -5
  40. package/dist/discovery/trust-report.md +2 -2
  41. package/dist/discovery/workspaces.json +5 -4
  42. package/dist/hooks/dispatch.js +959 -1304
  43. package/dist/mcp/registry-manifest.json +3 -3
  44. package/dist/mcp/server.json +2 -2
  45. package/dist/mcp/server.mjs +671 -1002
  46. package/dist/shared/settingsConsent.js +1 -1
  47. package/package.json +1 -1
  48. package/src/config/conformance-claim-baseline.json +9 -0
  49. package/src/config/gate-violation-baselines.json +3 -3
  50. package/src/config/release-gate-locality.yml +129 -0
  51. package/src/config/web-launch-readiness.json +1 -1
  52. package/src/scripts/_cli/explain_last/index.ts +1 -1
  53. package/src/scripts/_cli/explain_last/memory.ts +8 -104
  54. package/src/scripts/_lib/release_highlights.ts +172 -1
  55. package/src/scripts/_lib/release_material.ts +66 -0
  56. package/src/scripts/_lib/repeated_run.ts +77 -0
  57. package/src/scripts/_lib/tamper_vocabulary.ts +242 -0
  58. package/src/scripts/_lib/unified_diff.ts +121 -0
  59. package/src/scripts/check_artefact_count_messaging.ts +9 -0
  60. package/src/scripts/check_finding_dispositions.ts +179 -3
  61. package/src/scripts/check_installed_hooks_fresh.ts +381 -0
  62. package/src/scripts/check_release_highlights.ts +89 -4
  63. package/src/scripts/check_suppression_hygiene.ts +11 -0
  64. package/src/scripts/check_web_launch_readiness.ts +295 -15
  65. package/src/scripts/code_graph/build.ts +230 -33
  66. package/src/scripts/code_graph/extract.ts +168 -33
  67. package/src/scripts/code_graph/types.ts +37 -2
  68. package/src/scripts/code_graph/validate.ts +12 -1
  69. package/src/scripts/conformance_scan.ts +2 -2
  70. package/src/scripts/detect_silent_catch.ts +403 -0
  71. package/src/scripts/detect_verification_tampering.ts +538 -0
  72. package/src/scripts/git_authorization_hook.ts +153 -17
  73. package/src/scripts/hook_manifest.json +1 -1
  74. package/src/scripts/hook_manifest.yaml +33 -19
  75. package/src/scripts/hooks/block_no_verify.ts +3 -3
  76. package/src/scripts/hooks/concern_registry.ts +2 -2
  77. package/src/scripts/hooks/evidence_independence.ts +21 -2
  78. package/src/scripts/hooks/{block_unauthorized_git.ts → git_command_classifier.ts} +25 -369
  79. package/src/scripts/hooks/push_settle_hook.ts +250 -0
  80. package/src/scripts/hooks/ship_diff_volume_hook.ts +1 -1
  81. package/src/scripts/install-hooks.sh +134 -1
  82. package/src/scripts/language_mirror_hook.ts +27 -5
  83. package/src/scripts/measure_release_mix.ts +384 -0
  84. package/src/scripts/release.ts +31 -143
  85. package/src/scripts/release_drill.ts +71 -1
  86. package/src/scripts/release_mix_taxonomy.json +172 -0
  87. package/src/scripts/release_publication.ts +243 -3
  88. package/src/scripts/release_verify.ts +220 -0
  89. package/src/scripts/schemas/review-findings.schema.json +1 -1
  90. package/src/scripts/schemas/skill.schema.json +11 -1
  91. package/src/scripts/self_review_gate.ts +10 -1
  92. package/src/shared/settingsConsent.ts +1 -1
  93. package/src/scripts/attest_artifact.ts +0 -193
@@ -1,20 +1,20 @@
1
1
  {
2
2
  "name": "event4u-agent-config",
3
3
  "description": "Governed agent system — skills, rules, commands, and guidelines for AI-assisted development.",
4
- "version": "14.16.0",
4
+ "version": "14.18.0",
5
5
  "owner": {
6
6
  "name": "event4u",
7
7
  "email": "dev@event4u.app"
8
8
  },
9
9
  "metadata": {
10
10
  "description": "A policy-driven execution system that enforces quality, consistency, and developer-like behavior for AI agents.",
11
- "version": "14.16.0"
11
+ "version": "14.18.0"
12
12
  },
13
13
  "plugins": [
14
14
  {
15
15
  "name": "agent-config",
16
16
  "description": "Full governed agent system — rules, skills, commands, guidelines, and runtime tooling.",
17
- "version": "14.16.0",
17
+ "version": "14.18.0",
18
18
  "source": ".",
19
19
  "category": "governance",
20
20
  "tags": [
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "agent-config",
3
3
  "description": "A governed skill framework for AI agents — runtime execution, tooling, observability, feedback, and lifecycle management with policy-driven quality enforcement.",
4
- "version": "14.16.0",
4
+ "version": "14.18.0",
5
5
  "author": {
6
6
  "name": "event4u",
7
7
  "email": "dev@event4u.app"
@@ -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": "14.16.0",
9
+ "version": "14.18.0",
10
10
  "keywords": [
11
11
  "agent-config",
12
12
  "skills",
package/CHANGELOG.md CHANGED
@@ -30,6 +30,37 @@ Entry-shape contract: [`docs/contracts/CHANGELOG-conventions.md`](docs/contracts
30
30
 
31
31
  ## [Unreleased]
32
32
 
33
+ ### Fixed
34
+
35
+ - **Release gates now refuse before the push, not on the release PR.** 14.17.0
36
+ (PR #1856) failed `check_release_highlights` on a missing
37
+ `> **Governance mix:**` line — an assertion reproducible locally in under two
38
+ seconds, discovered instead after a branch, a pull request and a CI run had
39
+ been spent. It was the second instance of the shape in three releases
40
+ (14.14.0 / PR #1812 was the first, on the curated head), and
41
+ `docs/contracts/CHANGELOG-conventions.md` had **recorded** the gap rather than
42
+ closed it. Three changes: `render_changelog_entry` now emits the response
43
+ block with the measured level and a placeholder sentinel the guards refuse
44
+ (never a finished answer — a generator that discharged a written-answer
45
+ obligation for itself would make it a formality); one predicate
46
+ (`mix_response_blockers`) is read by the CI gate and both local guards, so the
47
+ two sides cannot drift; and the missing `Tests: N` footer joins it as a
48
+ section-level publication blocker, which until now also existed only inside
49
+ `release-validation.yml`.
50
+
51
+ ### Added
52
+
53
+ - **A release-gate locality registry, so the next orphan cannot land silently.**
54
+ `src/config/release-gate-locality.yml` relates every job in
55
+ `release-validation.yml` to the command that reproduces it locally;
56
+ `tests/scripts/release_gate_locality.test.ts` fails when a job has no row, or
57
+ when a row claims a script that is not in the tree, or when a missing local
58
+ command carries no classified `NEEDS_*` reason. `task release:verify` runs the
59
+ reproducible set from that same registry — and `task release` now runs its
60
+ `--cheap` subset itself, before the branch is pushed. Three jobs genuinely
61
+ cannot run pre-PR; the registry names which and why, and a green run prints
62
+ what it did not cover rather than reading as a clearance.
63
+
33
64
  ### Changed
34
65
 
35
66
  - **Docs hygiene — retired stale authoring-source pointers.** 43 stale
@@ -427,249 +458,182 @@ Entry-shape contract: [`docs/contracts/CHANGELOG-conventions.md`](docs/contracts
427
458
  > keeps the active era under the 250-line drift cap enforced by
428
459
  > `tests/test_changelog_eras.py`.
429
460
 
430
- # Era: 14.14.x — current
431
-
432
- > Started at `14.14.0`. Full entries live inline below.
433
- > The drift test caps this era at 250 lines of entry body; growth past
434
- > that forces a new era split (`# Era: 14.15.x`, etc.) — see
435
- > [`docs/contracts/CHANGELOG-conventions.md § Era splits`](docs/contracts/CHANGELOG-conventions.md).
436
-
437
- ## [14.16.0](https://github.com/event4u-app/agent-config/compare/14.15.0...14.16.0) (2026-09-04)
438
-
439
- ### Release highlights
440
-
441
- - **Behaviour changes:** pay for the new triggers inside the same file, not out of the ceiling (e6737e0); make security-sensitive-stop reachable by the surfaces its own table names (bb857f1).
442
- - **Default changes + migration:** stop iconography handing an agent the default icon-consistency forbids (4461e31).
443
- - **Security and correctness:** stop asserting two things about the environment rather than the code (d3896a3); drop the box-rule dividers from the negation corpus (83158f1); import the merge-impact module by its .js specifier (1522c89); read a rename as a rename, and pin the closed-vocabulary property (6fa2b06); take the pull-request bound from the API contract, and stop swallowing a failed write (1cf8f70); scope a negation to its clause, in both directions (6a08ed2); +4 more.
444
- - **Honest nulls:** _none_
445
- - **Known limitations:** _none_
446
-
447
- ### Features
448
-
449
- * **catalog:** represent the interaction and texture layer, and bring V1 current ([1172647](https://github.com/event4u-app/agent-config/commit/117264783230fde125bf6aaed2feabe938ffc5ab))
461
+ # Era: pre-14.17.0 — archived
450
462
 
451
- ### Bug Fixes
452
-
453
- * **tests:** stop asserting two things about the environment rather than the code ([d3896a3](https://github.com/event4u-app/agent-config/commit/d3896a37f2e97689c93adeb22db8486e84ff4e41))
454
- * **docs:** repair every live doc asserting a Python-era path as current ([8ded7ff](https://github.com/event4u-app/agent-config/commit/8ded7ff568366d03c7e1efdf1fb07e18df3cf42a))
455
- * **evidence:** declare review independence on the 14.15.0 ledger ([42f53f8](https://github.com/event4u-app/agent-config/commit/42f53f8f5af12249d72563ac5c2b54bc4a6b7656))
456
- * **tests:** drop the box-rule dividers from the negation corpus ([83158f1](https://github.com/event4u-app/agent-config/commit/83158f1246b8a6301749575ba233ee67d8fd6987))
457
- * **tests:** import the merge-impact module by its .js specifier ([1522c89](https://github.com/event4u-app/agent-config/commit/1522c897ebab000bc3f92eeecc608ba2a6ee89f5))
458
- * **auth:** read a rename as a rename, and pin the closed-vocabulary property ([6fa2b06](https://github.com/event4u-app/agent-config/commit/6fa2b068a1c5e6df9c15d90fd9fe13fbd96160e3))
459
- * **auth:** take the pull-request bound from the API contract, and stop swallowing a failed write ([1cf8f70](https://github.com/event4u-app/agent-config/commit/1cf8f70869593281b26a16a00408ce24050db4a7))
460
- * **auth:** scope a negation to its clause, in both directions ([6a08ed2](https://github.com/event4u-app/agent-config/commit/6a08ed26177bd601b2677428c598ce72f1e256c5))
461
- * **catalog:** state M6's promotion prerequisites instead of citing a roadmap path ([a04d99e](https://github.com/event4u-app/agent-config/commit/a04d99e4b4bb9b9ee74f283672d4ed0bd98deaa3))
462
- * **skills:** stop three of the tree's own surfaces handing over what the catalog flags ([0e18887](https://github.com/event4u-app/agent-config/commit/0e1888704ea5837d2f2752c1fde0b37f469bc0ed))
463
- * **rules:** pay for the new triggers inside the same file, not out of the ceiling ([e6737e0](https://github.com/event4u-app/agent-config/commit/e6737e0a218119902d20fe34d9799587fd2b929b))
464
- * **skills:** stop iconography handing an agent the default icon-consistency forbids ([4461e31](https://github.com/event4u-app/agent-config/commit/4461e319aa7b42005715a921122d72388e84040f))
465
- * **skills:** make the accessibility skill carry the WCAG version it claims ([2bd8e50](https://github.com/event4u-app/agent-config/commit/2bd8e5064129d6cc233ebc34a1c7af4ff2390234))
466
- * **rules:** make security-sensitive-stop reachable by the surfaces its own table names ([bb857f1](https://github.com/event4u-app/agent-config/commit/bb857f113ca0fa9b4c621478412891d94dd1cad7))
467
- * **release:** reuse an existing release branch without --resume, and carry main at step 1 ([d9ca89d](https://github.com/event4u-app/agent-config/commit/d9ca89d6ae58d642e5fae79fa0ba59482da996d1))
468
-
469
- ### Documentation
463
+ > All entries before `14.17.0` live in
464
+ > [`docs/archive/CHANGELOG-pre-14.17.0.md`](docs/archive/CHANGELOG-pre-14.17.0.md).
465
+ > The archive is read-only; git tags remain the canonical
466
+ > source for what shipped. Splitting them out of the main file
467
+ > keeps the active era under the 250-line drift cap enforced by
468
+ > `tests/test_changelog_eras.py`.
470
469
 
471
- * **evidence:** record the run-19 drain summary ([057efa3](https://github.com/event4u-app/agent-config/commit/057efa30557e15a5710389e027774e91b212ec87))
472
- * **roadmaps:** archive road-to-python-era-doc-references ([69db685](https://github.com/event4u-app/agent-config/commit/69db685abe0079ef2df3c3f81e94d5d8667d1275))
473
- * **roadmaps:** promote python-era-doc-references to ready ([48fed1c](https://github.com/event4u-app/agent-config/commit/48fed1c5b85d19f871ac609c412c7027b010ce94))
474
- * **roadmaps:** archive road-to-binding-findings ([ed6fedd](https://github.com/event4u-app/agent-config/commit/ed6fedd47a9ca26d16b0851ff73f1be3a6ccfa58))
475
- * **roadmaps:** record the binding-findings verdicts and its own prose corrections ([6b00c58](https://github.com/event4u-app/agent-config/commit/6b00c583356b7479fba7abb7c325da9f861366f2))
476
- * **evidence:** disposition all nine 14.15.0 findings, and park the ordering guarantee ([4d44188](https://github.com/event4u-app/agent-config/commit/4d44188afce223392ffef1339370d2f333c26be8))
477
- * **roadmaps:** close and archive road-to-tell-currency ([77178e8](https://github.com/event4u-app/agent-config/commit/77178e8935442466b125f60ea8917cde347edcad))
478
- * **roadmaps:** correct four measured claims on the topology carrier and its stub ([5c1c927](https://github.com/event4u-app/agent-config/commit/5c1c92732e2e035762294ea584dfff7d4607aff1))
479
- * **roadmaps:** record the tell-currency verdicts and park the two deferrals ([856f5b1](https://github.com/event4u-app/agent-config/commit/856f5b10e08a0a03e6229df96efc1dbe949c5fd2))
480
- * **fe-design:** put the interaction-layer motion guidance in its declared home ([d9fd8b6](https://github.com/event4u-app/agent-config/commit/d9fd8b63fa47f54d8e62bd44ce99af52549a818c))
481
- * **evidence:** declare the evidence type on the coverage-truth note ([d4de5ba](https://github.com/event4u-app/agent-config/commit/d4de5ba5a997a0bfda972db03794498913bdeca3))
482
- * **roadmaps:** close and archive road-to-declared-coverage-truth ([b131995](https://github.com/event4u-app/agent-config/commit/b131995896f3036e01c29f3a4c77b680a6623a61))
483
- * **evidence:** declare the completion-review skip for the inbox-2026-09-c diff ([2133161](https://github.com/event4u-app/agent-config/commit/21331619b8635785657313cc36c3744d550b368e))
484
- * **roadmaps:** three roadmaps from the inbox-2026-09-c round ([5d9140a](https://github.com/event4u-app/agent-config/commit/5d9140a54bef3a95a79ce6cd5b41691a287bcf7b))
485
- * **evidence:** record the inbox-2026-09-c verification and disposition ([27f5b2a](https://github.com/event4u-app/agent-config/commit/27f5b2a510a1fe3319bd6ce119bacdbedc08f597))
470
+ # Era: pre-14.18.0 — archived
486
471
 
487
- ### Chores
472
+ > All entries before `14.18.0` live in
473
+ > [`docs/archive/CHANGELOG-pre-14.18.0.md`](docs/archive/CHANGELOG-pre-14.18.0.md).
474
+ > The archive is read-only; git tags remain the canonical
475
+ > source for what shipped. Splitting them out of the main file
476
+ > keeps the active era under the 250-line drift cap enforced by
477
+ > `tests/test_changelog_eras.py`.
488
478
 
489
- * **sync:** reproject the fe-design motion reference ([dd636df](https://github.com/event4u-app/agent-config/commit/dd636dff8f58dc631fb9ed53a2f72880b3d9b394))
490
- * **evidence:** re-anchor the routing body-signal verdict after two skill-body edits ([ca0c479](https://github.com/event4u-app/agent-config/commit/ca0c479df99dff54ae5c544e5eea7108c3736e36))
491
- * **sync:** reproject security-sensitive-stop after the trigger narrowing ([71ca6b0](https://github.com/event4u-app/agent-config/commit/71ca6b01670a189ded73f314fe7d6e1eaaa5a531))
479
+ # Era: 14.18.x — current
492
480
 
493
- Tests: 20974 (+52 since 14.15.0)
481
+ > Started at `14.18.0`. Full entries live inline below.
482
+ > The drift test caps this era at 250 lines of entry body; growth past
483
+ > that forces a new era split (`# Era: 14.19.x`, etc.) — see
484
+ > [`docs/contracts/CHANGELOG-conventions.md § Era splits`](docs/contracts/CHANGELOG-conventions.md).
494
485
 
495
- ## [14.15.0](https://github.com/event4u-app/agent-config/compare/14.14.1...14.15.0) (2026-09-03)
486
+ ## [14.18.0](https://github.com/event4u-app/agent-config/compare/14.17.0...14.18.0) (2026-09-06)
496
487
 
497
488
  ### Release highlights
498
489
 
499
- - **Behaviour changes:** stage-2 impact scan, so a refused merge can be answered in four words (5a3b7c5).
490
+ - **Behaviour changes:** say that a finding id is a finding id, not a commit SHA (d6ca2b7); bump skill.schema.json to 1.1.0 for the added enforced_by key (ab87d6a); a standard-conformance claim names its resolver or declares its gap (9a013fa).
500
491
  - **Default changes + migration:** _none_
501
- - **Security and correctness:** make the derived head publishable, so a release stops halting by construction (e6f6744); ask for the curated head before the release commit, not after (e31f07a).
502
- - **Honest nulls:** _none_
492
+ - **Security and correctness:** resolve --git-path output before comparing it (f5d3c5c); honour core.hooksPath, name the destination, and repair two weak pins (89305f3); make the staleness check advisory, and stop it prescribing a downgrade (6b7e6c2); drop the write-swallow assertions the removed guard owned (9deec70); drop consumer-dead paths and re-derive the corpus pins (934cd71); declare conformance-claim-baseline in the suppression inventory (45bf83e); +15 more.
493
+ - **Honest nulls:** track the hook this change could not reach (3802ea5); close road-to-checklist-rows (29f63fe).
503
494
  - **Known limitations:** _none_
504
495
 
505
- ### Features
506
-
507
- * **authz:** stage-2 impact scan, so a refused merge can be answered in four words ([5a3b7c5](https://github.com/event4u-app/agent-config/commit/5a3b7c5064b2e92523781530cbfe6ef09bd26f35))
508
- * **authz:** classify the 17 destructive operations the guard could not see ([a1327b2](https://github.com/event4u-app/agent-config/commit/a1327b2767751d4ce6e680af1b8f9732faf97b88))
509
- * **authz:** target-bound merge grants that outlive the clock ([c286570](https://github.com/event4u-app/agent-config/commit/c286570d1e9a421a51571bb27e3a2945a54e8f8c))
510
-
511
- ### Bug Fixes
512
-
513
- * **docs:** cite the head label as code, not bold — the ratchet counts bold ([3f78ead](https://github.com/event4u-app/agent-config/commit/3f78ead4fd9023ed189ccd15aac2659397072ca8))
514
- * **release:** make the derived head publishable, so a release stops halting by construction ([e6f6744](https://github.com/event4u-app/agent-config/commit/e6f67444c0c11873f6231fd007b70b404f9e883a))
515
- * **ci:** drop code-comment-discipline from the rule-enforcement baseline ([731924a](https://github.com/event4u-app/agent-config/commit/731924ae778191bafefb3bbcfcb92c2acf76b558))
516
- * **release:** ask for the curated head before the release commit, not after ([e31f07a](https://github.com/event4u-app/agent-config/commit/e31f07ab8bb4b25e048f1b4c78ffa32b27fd59f5))
517
-
518
- ### Documentation
519
-
520
- * **adr:** ADR-252 evidence section, and the census it moves ([19e99a4](https://github.com/event4u-app/agent-config/commit/19e99a4febfc6e9f8d092ecafc8c8e23c8f1699e))
521
- * **adr:** ADR-252 supersedes ADR-251 — specificity replaces recency, for merge only ([ef930e0](https://github.com/event4u-app/agent-config/commit/ef930e01d450a4b78730f545a4f04eab1812eccb))
522
-
523
- Tests: 20922 (+146 since 14.14.1)
524
-
525
- ## [14.14.1](https://github.com/event4u-app/agent-config/compare/14.14.0...14.14.1) (2026-09-03)
526
-
527
- ### Release highlights
528
-
529
- - **Behaviour changes:** four new read-only surfaces, all additive — `agent-config hooks:effect`, which dispatches each bound concern against a scratch root and reports whether it actually fired rather than whether the manifest binds it (b0a03a7); `doctor --strict`, carrying the failing exit as a separate mode so `doctor` itself keeps its always-zero exit and no existing caller changes (517afcb, the `doctor-exit-contract` choice); and the `dev:skill-scout` and `push-ready` Taskfile targets (576ff4f, 6735abf). No public artefact was removed in this span.
530
- - **Default changes + migration:** _none_
531
- - **Security and correctness:** `skill_scout` confines a human-supplied candidate name to a single path segment and asserts resolved-path containment BEFORE it reports a scan scope, so a traversing name is refused rather than normalised and the scan-scope line can never record a root it did not scan; it also re-checks file type and size at read time, closing a post-intake symlink that was followed out of the quarantine directory (576ff4f). Three runtime advisories that were failing the `npm audit --omit=dev --audit-level=high` gate are cleared (54f0242).
532
- - **Honest nulls:** the deferred council-topology carrier's two resumption triggers were re-measured live and neither had moved — Phase 2 needs five independent eligible council seats and `council:status` reports two of five; Phase 3 needs a two-day spend reservation that does not exist. The carrier stays parked with all 38 obligations in place, and no third disposition record was written (1fe6fa0).
533
- - **Known limitations:** the README daemon-claim repair is verified only one way. `check_claims` exiting 0 proves the retired phrasing is gone; it does NOT validate the replacement wording, because `README.md:30` is unmarkered prose (e200ba2). And `check_source_size_budget`'s excess is still five figures — this span lowered it 18,245 → 18,205 by moving prose and helpers under the 1500-line cap, not by removing debt.
534
-
535
- ### Bug Fixes
536
-
537
- * **deps:** clear the three runtime advisories failing the audit gate (#1822) ([54f0242](https://github.com/event4u-app/agent-config/commit/54f024250c67781e34e6242450fdf97d9165bfee))
538
- * **release:** refuse an uncurated head before the first remote state (#1813) ([2b3d2b3](https://github.com/event4u-app/agent-config/commit/2b3d2b3474e6520ef696466aff583a76381f002c))
539
-
540
- ### Documentation
541
-
542
- * **evidence:** record drain run 18 (#1823) ([76ed568](https://github.com/event4u-app/agent-config/commit/76ed5684367667000ed5b1bd2bc5af13bdef8943))
543
-
544
- ### Other
545
-
546
- * complete road-to-wired-instruments (#1818) ([b0a03a7](https://github.com/event4u-app/agent-config/commit/b0a03a7af314cb231f4385005f7d73e8a6ca5dd4))
547
- * complete road-to-self-description-truth (#1817) ([e200ba2](https://github.com/event4u-app/agent-config/commit/e200ba2f97590d2686bd9a292cf54025fb47cee2))
548
- * complete road-to-governed-skill-scouting (#1815) ([576ff4f](https://github.com/event4u-app/agent-config/commit/576ff4fcc2568e7619ff489ddcf301f32f30da9f))
549
- * complete road-to-ship-control-coverage (#1816) ([5a0ca3a](https://github.com/event4u-app/agent-config/commit/5a0ca3a16fb8f0ab54df734de885abee8c8fedff))
550
- * complete road-to-artifact-location-and-doctor-reach (#1819) ([517afcb](https://github.com/event4u-app/agent-config/commit/517afcb524d201ad08b5d820638d84b2b3cdeb7b))
551
- * complete road-to-cascading-base-integration (#1821) ([6735abf](https://github.com/event4u-app/agent-config/commit/6735abf3f789bd2d1549aa02937189ba9fe2b952))
552
- * **topology:** repair three claims that went false, and record why the carrier stays parked (#1820) ([1fe6fa0](https://github.com/event4u-app/agent-config/commit/1fe6fa0fb3facfa7e735b68ee92e04616fbb3843))
553
- * six survivors of the 2026-09-b inbox round (#1814) ([0415101](https://github.com/event4u-app/agent-config/commit/04151017860e0066e20832bdee49221e047ee33e))
554
- * park governed-evidence-production to later/, and resolve metered-backend-park with (b) (#1811) ([c6b4f64](https://github.com/event4u-app/agent-config/commit/c6b4f640736c78554d7ce03f27257f44368ef1ae))
555
-
556
- Tests: 20776 (+215 since 14.14.0)
557
-
558
- ## [14.14.0](https://github.com/event4u-app/agent-config/compare/14.13.0...14.14.0) (2026-09-02)
559
-
560
- ### Release highlights
561
-
562
- - **Behaviour changes:** `lint_code_comments` becomes a blocking source gate — comment discipline was claimed by two rules and enforced by neither, and it now reds the build on the authored tree (448f31f; the blind spots its first real corpus exposed are closed in 6edf1ad). Authoring-side only: no rule, skill, or command was removed or renamed in this span.
563
- - **Default changes + migration:** _none_
564
- - **Security and correctness:** No security-scoped fix in this span. One correctness fix reaches shipped behaviour — the language-pin carrier now skips host-injected wrapper regions instead of ending the human lead on them (27f3233). The other ten repair gates, fixtures, locks, typing and pinned evidence in the evolution harness and its records (6edf1ad, 9411964, 0c7fce0, ecf05c4, 32203ec, 01de2a3, f87eb79, 04a5a0b, 25647d0, 92549c4).
565
- - **Honest nulls:** _none_
566
- - **Known limitations:** _none_
496
+ > **Governance mix:** governance-only 55 vs consumer-only 16 (taxonomy 1.0.0).
497
+ > Next cycle ships the installed MCP bridge repair — a version-pinned server
498
+ > entry instead of an `npx -y` resolution of `latest` at every start, a
499
+ > registration that migrates itself when the bridge shape changes under an
500
+ > update, and setup docs that document the command the installer actually
501
+ > writes — tracked in `road-to-mcp-bridge-integrity-and-reach-truth`.
567
502
 
568
503
  ### Features
569
504
 
570
- * **gates:** enforce comment discipline in source, where two rules claimed it and neither could (#1806) ([448f31f](https://github.com/event4u-app/agent-config/commit/448f31ff8b3ef3752283d877bd68975dc6eaca1d))
571
- * **council:** read-only retention probe for council artefacts ([1ac4a53](https://github.com/event4u-app/agent-config/commit/1ac4a53f118d190fa38bb1f282f225412ddb614d))
572
- * **council:** corpus assembler for the provider-leakage bench ([f287afd](https://github.com/event4u-app/agent-config/commit/f287afd6c4ecc11eaec7cbb57a72cac58dffaad8))
573
- * **harness:** lexical shortlist over the BM25 core, as a tie-break the matcher outranks ([ef9d74b](https://github.com/event4u-app/agent-config/commit/ef9d74b6669537e5425b4dcc42fbeaf79fd94004))
574
- * **harness:** derive the index input set from the 5.1 verdict, closes 6.5 ([dce00d9](https://github.com/event4u-app/agent-config/commit/dce00d9a972062b4f5666ba7160d849303734e87))
575
- * **harness:** measure delivery sets and set compatibility, closes 6.4 ([b7aafbb](https://github.com/event4u-app/agent-config/commit/b7aafbb3b3fe8b32d9a0d5fe6d22d6c8aefe4a4d))
576
- * **harness:** run report with a mandatory evolution-ROI figure, and a cheapest-first model ladder ([83f1006](https://github.com/event4u-app/agent-config/commit/83f1006fedab78f364ddf8a11e39f36081bab3d4))
577
- * **harness:** measure the description-vs-body routing signal, closes 5.1 ([a86bd89](https://github.com/event4u-app/agent-config/commit/a86bd899c5b32b8cee00e78e144695a0deac69bb))
578
- * **harness:** deterministic evaluation cascade, wired into the runner ([211477d](https://github.com/event4u-app/agent-config/commit/211477d38819432ae4c4783ffddb122ff705da50))
579
- * **harness:** pathology archive per WHERE x WHY cell, closes 4.4 ([c0fdd42](https://github.com/event4u-app/agent-config/commit/c0fdd42b1172c4f0664f906f920d1210c9174845))
580
- * **council:** free explain mode for routing, with the unanswerable field marked ([07a717a](https://github.com/event4u-app/agent-config/commit/07a717afe8f259ed21564c1d67764da46922d045))
581
- * **council:** route record for decision replay, with the one field that cannot exist ([f0954ed](https://github.com/event4u-app/agent-config/commit/f0954eddad2c024bafe0808fc38924f0a4e8caaa))
582
- * **harness:** the promotion bridge mechanism — steps 7.1 through 7.7 ([ad0962f](https://github.com/event4u-app/agent-config/commit/ad0962f2e546fd87d77a1ad37cc570f6c6f1fbd7))
583
- * **council:** one synthesis-strategy interface behind the five candidates ([b1e6001](https://github.com/event4u-app/agent-config/commit/b1e6001ac4a3d62e4a50c3d1b0100354cdbd0ffa))
584
- * **council:** routing training-row schema with no free-text field ([8004341](https://github.com/event4u-app/agent-config/commit/8004341005335575f0eac5cb8ad4e43e7b5fa8cc))
585
- * **council:** deterministic expected-information-gain-per-cost scoring ([8af7598](https://github.com/event4u-app/agent-config/commit/8af759869268d7e9682e4a04bc74500b72bcc90c))
586
- * **council:** targeted cross-examination that quotes the claim verbatim ([de4bada](https://github.com/event4u-app/agent-config/commit/de4bada83e2ba266b8b15b30ac85c5dc5d602b5c))
587
- * **gates:** lint_promotion_paths — the promotion-path structural invariant ([13999df](https://github.com/event4u-app/agent-config/commit/13999df0e46a3f754c9e9b1b709e1a5b1ddb4146))
588
- * **council:** reviewer budget k with a balance-feasible diversity floor ([6afb3ae](https://github.com/event4u-app/agent-config/commit/6afb3ae24f791e5e65ab5370c27fd59455ee3b0f))
589
- * **council:** freeze the majority-laundering fixture and its retention gate ([045fb8d](https://github.com/event4u-app/agent-config/commit/045fb8dea1b0176572fe7a05bc0d6db2dcd78071))
590
- * **council:** reconstruct re-council savings offline and settle the retention cause ([44bc2e4](https://github.com/event4u-app/agent-config/commit/44bc2e4071f15791f8a518d91c794aa177b79a65))
505
+ * **hooks:** report when the installed git hooks go stale ([6b12be5](https://github.com/event4u-app/agent-config/commit/6b12be5d66a6efc08fe3bc467719b851960b68c5))
506
+ * **roadmaps:** add the receiver for the tenth arrival's carried AC-3 ([576de5f](https://github.com/event4u-app/agent-config/commit/576de5f3fafb290dbcec54cda5f9a18075f84d8a))
507
+ * **authz:** remove the git-authorization gate — enforcement returns to the model ([7f5bc37](https://github.com/event4u-app/agent-config/commit/7f5bc37321404d39ffe22b7401b2ee694d7d82af))
508
+ * **release:** register every release-validation job against a local command ([e9f272b](https://github.com/event4u-app/agent-config/commit/e9f272b87723879f2afeb064d98d58880527a4e6))
509
+ * **detectors:** flag a newly introduced silent catch, warn-first ([85b1db3](https://github.com/event4u-app/agent-config/commit/85b1db34bb08acd7a41a00d4273475fa427d3628))
510
+ * **detectors:** decide verification tampering by shape, loop-local ([f7a8e16](https://github.com/event4u-app/agent-config/commit/f7a8e16163c4ce495171c76feb6711864538b6c4))
511
+ * **skills:** a standard-conformance claim names its resolver or declares its gap ([9a013fa](https://github.com/event4u-app/agent-config/commit/9a013fac54fd1d50126ef11bc3be681e76d085cc))
512
+ * **hooks:** make a push say whether it finished, not only whether it worked ([b3fff64](https://github.com/event4u-app/agent-config/commit/b3fff64e1b0e9dc57215e8b718cf11c003dc1709))
513
+ * **prepush:** ask the staleness question the hook has always claimed to ask ([10a3168](https://github.com/event4u-app/agent-config/commit/10a3168426e23d3e9501ab3f62ff4bc1b7cfb5e2))
514
+ * **planning:** state the four criteria a plan can be failed on ([1d77901](https://github.com/event4u-app/agent-config/commit/1d77901ebbeaf12c01ce3bde6c02f1eaae99438c))
515
+ * **ai-code-blindspots:** add the four completeness rows to the render surface ([339c40d](https://github.com/event4u-app/agent-config/commit/339c40dae2aa27e1b76bf6f2e25d40de189fe545))
591
516
 
592
517
  ### Bug Fixes
593
518
 
594
- * **gates:** close two blind spots lint_code_comments had on its first real corpus (#1807) ([6edf1ad](https://github.com/event4u-app/agent-config/commit/6edf1add75881f9db6a9ff293a956722c8026503))
595
- * **language-pin:** skip host-injected wrapper regions instead of ending the human lead on them (#1800) ([27f3233](https://github.com/event4u-app/agent-config/commit/27f323304be26c3514ad66f78852c6c207d31fb9))
596
- * **guarded-baseline:** resolve what the blockers actually permit, and record why the rest cannot close (#1786) ([9411964](https://github.com/event4u-app/agent-config/commit/9411964fb85c92777b8138494ab0042747ea3671))
597
- * **tests:** stop a test fixture from shifting the skill-catalogue count ([0c7fce0](https://github.com/event4u-app/agent-config/commit/0c7fce0d292c015e49c05f12421431bea89cac6c))
598
- * **roadmap:** repair five stale line anchors in the governed harness ([52e0287](https://github.com/event4u-app/agent-config/commit/52e0287af36dd0be566a426284629c4877a308e0))
599
- * **roadmap:** record three discharged conjuncts and the retention diagnosis ([869d76a](https://github.com/event4u-app/agent-config/commit/869d76a14a205bcc8a2359d7ff47eb6c24deddaa))
600
- * **roadmap:** repair four stale claims in the governed harness ([94f17a3](https://github.com/event4u-app/agent-config/commit/94f17a33b65e6981c9809ce639062011ee1ae929))
601
- * **roadmap:** repair two stale claims in the promotion bridge ([c96aa53](https://github.com/event4u-app/agent-config/commit/c96aa53de58050daeca6e9624e8288cff89562d3))
602
- * **harness:** widen the cascade's optional inputs for exactOptionalPropertyTypes ([ecf05c4](https://github.com/event4u-app/agent-config/commit/ecf05c4c6cf5ea10d31428a2d946a9b15451c985))
603
- * **harness:** repair two type errors the branch merge introduced ([32203ec](https://github.com/event4u-app/agent-config/commit/32203ec34a28effdee62f23fc035c160261d2850))
604
- * **test:** take the shared clones lock, and close AC-10b at completion ([01de2a3](https://github.com/event4u-app/agent-config/commit/01de2a3ddac14dc1027702e1575105a3d8ccf373))
605
- * **test:** scope the cascade end-to-end case so it stops breaking siblings ([f87eb79](https://github.com/event4u-app/agent-config/commit/f87eb7936d141650544c998e1bcecc35f83c8e51))
606
- * **evidence:** declare the type on the re-council savings analysis ([7280750](https://github.com/event4u-app/agent-config/commit/7280750fad20fd990de57c6aa4bf5ed5b238dcf8))
607
- * **test:** satisfy exactOptionalPropertyTypes and readonly-array typing ([04a5a0b](https://github.com/event4u-app/agent-config/commit/04a5a0b35d5aaab3f3ee6eabc798fcb541fdce03))
608
- * **test:** the 7.3 tripwire reddened on its own documentation ([25647d0](https://github.com/event4u-app/agent-config/commit/25647d0249c1d4a8eb2a5ba91e4bc964e7cb3000))
609
- * **evidence:** re-pin the trigger-corpus holdout hashes and guard them ([92549c4](https://github.com/event4u-app/agent-config/commit/92549c4a9983724fc47fbb5467de325ada98a28c))
519
+ * **tests:** resolve --git-path output before comparing it ([f5d3c5c](https://github.com/event4u-app/agent-config/commit/f5d3c5ce47b4744344b428dc682db2069f38fbe2))
520
+ * **hooks:** honour core.hooksPath, name the destination, and repair two weak pins ([89305f3](https://github.com/event4u-app/agent-config/commit/89305f333f4c44efcc71c56d9c46bdd8f6e5e88c))
521
+ * **hooks:** make the staleness check advisory, and stop it prescribing a downgrade ([6b7e6c2](https://github.com/event4u-app/agent-config/commit/6b7e6c2a62949475aad9b5dedc0167fd9c0f88f2))
522
+ * **roadmaps:** land the AC-6 cancellation PR #1860 archived without ([d92f9a6](https://github.com/event4u-app/agent-config/commit/d92f9a60e512ddae3adbb9eaeff7bf7f2432cf45))
523
+ * **docs:** keep the skill reference portable and the dialect canonical ([500da8b](https://github.com/event4u-app/agent-config/commit/500da8b781ee8af1a5c44946123964d8c0c94440))
524
+ * **test:** drop the write-swallow assertions the removed guard owned ([9deec70](https://github.com/event4u-app/agent-config/commit/9deec705af2d4242e93613f6e8cb3abfda52f0c4))
525
+ * **adr:** ADR-254 carries no agentic_mode — the decision had none ([7e38059](https://github.com/event4u-app/agent-config/commit/7e38059c23aab7d8b4989cf639591e26b4629662))
526
+ * **testing-anti-patterns:** use the house dialect in the five new prose lines ([72acd36](https://github.com/event4u-app/agent-config/commit/72acd36a8864890dd47551c0bd0c5b65b127d109))
527
+ * **code-intelligence:** drop consumer-dead paths and re-derive the corpus pins ([934cd71](https://github.com/event4u-app/agent-config/commit/934cd7117eb71b113114bcba8dbaca9b3d939483))
528
+ * **gates:** declare conformance-claim-baseline in the suppression inventory ([45bf83e](https://github.com/event4u-app/agent-config/commit/45bf83e1e72a1a07d0cd58b90d0fb705086bd380))
529
+ * **test:** drop the three imports the deleted enforcement tests owned ([9fd6a80](https://github.com/event4u-app/agent-config/commit/9fd6a8022143964b70d6bfe7b66367e2f2c95218))
530
+ * **skills:** name feature-planning instead of linking it from complexity-first-planning ([ed70287](https://github.com/event4u-app/agent-config/commit/ed702875ef4c87c78e3df7e58120d8001ca8f99f))
531
+ * **evidence:** declare review independence on the 14.16.0 findings ledger ([848dd8e](https://github.com/event4u-app/agent-config/commit/848dd8e2a86df20d5d9ab59fc1eeeb880d5ded26))
532
+ * **release:** stop the runner reporting a clearance it did not earn ([47412ed](https://github.com/event4u-app/agent-config/commit/47412ed6d1780be01f172943b424f8c4fea34e5f))
533
+ * **release:** move the tests-footer refusal off the site that cannot recover ([4394eda](https://github.com/event4u-app/agent-config/commit/4394eda093c9fe9c301b7d462d62981b79979a8a))
534
+ * **release:** the mix predicate was wrong in both directions ([f71e975](https://github.com/event4u-app/agent-config/commit/f71e975fb4c1b0ddeae3bea67aa8072890a6fd2c))
535
+ * **release:** drop the two box-rule section comments this branch added ([1355604](https://github.com/event4u-app/agent-config/commit/1355604d8554cf4ae106901b7cd49e6a5f97d8ad))
536
+ * **release:** drop the imports this branch's own relocation orphaned ([6282594](https://github.com/event4u-app/agent-config/commit/6282594ad7d7b55fbcb12f0881dd91ef3ad877d4))
537
+ * **release:** refuse both writer placeholders, not only the first ([6fd1e67](https://github.com/event4u-app/agent-config/commit/6fd1e67866b5925e428ef2e3155d618014242a97))
538
+ * **release:** skip the release-PR-shape row off a release branch, and say so ([67dfddc](https://github.com/event4u-app/agent-config/commit/67dfddc4097d72b48acfe4599a1785c113560e78))
539
+ * **release:** refuse the governance-mix obligation before the push, not on the PR ([23cc153](https://github.com/event4u-app/agent-config/commit/23cc153ccc8344e99e2b35985858388d46793377))
540
+ * **code-graph:** bind imports to their module specifier, stop guessing by name ([87a5bf9](https://github.com/event4u-app/agent-config/commit/87a5bf9dc920594786950ac9aa78837e60925b37))
541
+ * **release-truth:** absence is not evidence of zero ([d318926](https://github.com/event4u-app/agent-config/commit/d318926eaa16703608623b223c68a1de47634849))
542
+ * **self-review:** say that a finding id is a finding id, not a commit SHA ([d6ca2b7](https://github.com/event4u-app/agent-config/commit/d6ca2b790c9b09c5351f59758e3c5a24f9630a7a))
543
+ * **roadmap:** the carrier was already there — 1.2 claimed otherwise without looking ([466c45b](https://github.com/event4u-app/agent-config/commit/466c45b637b83dfca533039103c1883611f92645))
544
+ * **hooks:** stop swallowing a failed write at all four sites, not the two that were reported ([6b41475](https://github.com/event4u-app/agent-config/commit/6b4147531e2b87e54942d0c1121d8d1db5f94a61))
545
+ * **hooks:** record the push-settle admission, and drop the last maintainer verb ([0196513](https://github.com/event4u-app/agent-config/commit/0196513f8f761567cd83e9bc07b4d8ca92517e81))
546
+ * **git-workflow:** keep the shipped skill shippable, and speak the house dialect ([4658fdf](https://github.com/event4u-app/agent-config/commit/4658fdfe5f589161ab43cc5dd4395188436dde0a))
547
+ * **git-workflow:** say the install lifecycle without naming one ecosystem's tool ([01fa985](https://github.com/event4u-app/agent-config/commit/01fa985fd1569b1d9f49d1c04b9fdbf8735375b7))
548
+ * **git-auth:** route isRevocation through the one clause-scoped negation parser ([c19f4d7](https://github.com/event4u-app/agent-config/commit/c19f4d7246cab5da2f19834e69a2cbbb34fe5311))
549
+ * **roadmaps:** correct two stale line citations in the archived roadmap ([455f3f2](https://github.com/event4u-app/agent-config/commit/455f3f2491a3d07769d20b79c5a2b64f4a6ac02f))
550
+ * **claims:** retire the surviving no-runtime-daemon wording and repair the README ([d6992c8](https://github.com/event4u-app/agent-config/commit/d6992c867b61543d17e18afb927ba68f04f39577))
610
551
 
611
552
  ### Documentation
612
553
 
613
- * **evidence:** record the council round on drain run 13's five open questions (#1792) ([b92b74e](https://github.com/event4u-app/agent-config/commit/b92b74efe7cb541df0371e15d7782b82ab3849cc))
614
- * **evidence:** commit the pending terminal-disposition council question ([e8c17f9](https://github.com/event4u-app/agent-config/commit/e8c17f9ebed1af047494c7f6ba31b23d1875f4a5))
615
- * correct the red-check record — the failure is intermittent, CI is green ([95a435c](https://github.com/event4u-app/agent-config/commit/95a435cfa4acc19e63a2c76844cc72e34cdef3ed))
616
- * **evidence:** record the CI-only red check in the run-11 summary ([df02075](https://github.com/event4u-app/agent-config/commit/df02075f63e9f6431012bccbb7ac7ca0eeba7507))
617
- * track the CI-only routing-verdict drift found by this branch ([d088d81](https://github.com/event4u-app/agent-config/commit/d088d81a11515683eb8e74cc503570eca9390915))
618
- * **evidence:** drain run 11 summary — three PRs, one council verdict, zero descopes ([41c8925](https://github.com/event4u-app/agent-config/commit/41c8925a6d204da29fcc8602ef33dbcd222bbe37))
619
- * **bench:** pre-register the leakage protocol and emit the Phase-2 schedule ([bde70ef](https://github.com/event4u-app/agent-config/commit/bde70efec38a240ab05e51802510894151f76a0c))
620
- * **evidence:** drain run 10 summary — PRs, council decisions, descopes ([18af540](https://github.com/event4u-app/agent-config/commit/18af5407551588abe5878c761f555523f03d2820))
621
- * **roadmap:** pin the 6.4 measurement commit SHA beside the prereg SHA ([e595917](https://github.com/event4u-app/agent-config/commit/e59591765f681ae5a1f22b1746cf426a3f1ec668))
622
- * **roadmap:** re-audit AC-8 after 5.6 — shape half closed, subject half unreachable here ([41f1d4c](https://github.com/event4u-app/agent-config/commit/41f1d4cfcab5b67266fe3497016e0dda956280bc))
623
- * **roadmap:** pin the 5.1 measurement commit SHA beside the prereg SHA ([4e9eb72](https://github.com/event4u-app/agent-config/commit/4e9eb7278fa648e7507f2eaa2c97e07a7609663d))
624
- * **evidence:** pre-register the routing-signal and delivery-set measurements ([fe87494](https://github.com/event4u-app/agent-config/commit/fe874945812138f1f28455f4a0540b41766b8012))
625
- * **council:** pre-register the early-stop promotion gate before either arm runs ([4f4ca01](https://github.com/event4u-app/agent-config/commit/4f4ca014a546dec9720684ce03a18ae62cb555a1))
626
-
627
- ### Refactoring
628
-
629
- * **adr:** move the reopen-authority vocabulary into the shared reader ([cb81e2d](https://github.com/event4u-app/agent-config/commit/cb81e2dd1abf926c8e969d74b051e60479231fa9))
554
+ * **evidence:** correct the run-21 record after lane B's review landed ([df1203f](https://github.com/event4u-app/agent-config/commit/df1203f86bf5d8248b4d982d62b491fcc8f1091e))
555
+ * **roadmaps:** record arrival counts on the objects nine rounds hit ([cd0d572](https://github.com/event4u-app/agent-config/commit/cd0d5722ac3a652f83fc96577bb69bd6f5628b63))
556
+ * **roadmaps:** add road-to-observed-learning-signal ([ce41a05](https://github.com/event4u-app/agent-config/commit/ce41a05f0c80453ae648cbd2ab5599be669d156b))
557
+ * **roadmaps:** add road-to-scan-that-fails-closed ([070076d](https://github.com/event4u-app/agent-config/commit/070076d0e9cb24ba0b5fa670018667e0b397ec57))
558
+ * **roadmaps:** add road-to-admissible-council-seats ([708b575](https://github.com/event4u-app/agent-config/commit/708b57545c1953889b04582dbdd6b3d113d0d760))
559
+ * **roadmaps:** add road-to-authorization-that-reaches-further ([d84cc1c](https://github.com/event4u-app/agent-config/commit/d84cc1c92c6e2ed89cda6b11b7a88959bb6a2c1f))
560
+ * **roadmaps:** add road-to-one-motion-authority ([572b778](https://github.com/event4u-app/agent-config/commit/572b7789c1e43b061104223b5f97957a076a7b35))
561
+ * **roadmaps:** add road-to-mcp-bridge-integrity-and-reach-truth ([8ed7d7b](https://github.com/event4u-app/agent-config/commit/8ed7d7b496671c2c4860a43b679dee33d176ee84))
562
+ * **roadmaps:** add road-to-asked-not-parked ([c74eaa5](https://github.com/event4u-app/agent-config/commit/c74eaa5a5a58377018f37f096e066be3ea0ac00b))
563
+ * **roadmaps:** add road-to-host-enforcement-truth ([ba136b4](https://github.com/event4u-app/agent-config/commit/ba136b4dadb994aae1681e3678d4ffae6e8a2d15))
564
+ * **roadmaps:** add road-to-bounded-reference-harvest-loop ([23ab3df](https://github.com/event4u-app/agent-config/commit/23ab3dfcd69220a289816ebcf6329b2791125a0d))
565
+ * **evidence:** record the cross-session hook revert the detector caught ([2da72d3](https://github.com/event4u-app/agent-config/commit/2da72d36ac2292b12f126ca53519451e58f45884))
566
+ * **evidence:** state the run-21 base-update and ci_settle-exit-2 detail ([4365727](https://github.com/event4u-app/agent-config/commit/4365727ddbba9ff0b82f5149fa9c20b3f16d4010))
567
+ * **evidence:** record the run-21 autonomous roadmap drain ([1a49336](https://github.com/event4u-app/agent-config/commit/1a49336427e7df6ac24fd60d682927fdce1ec94e))
568
+ * **adr:** ADR-254 discloses what it rests on ([b003cc0](https://github.com/event4u-app/agent-config/commit/b003cc0423b35cc9d1f5332b8b8522193be0219c))
569
+ * **roadmap:** re-pin the DONE-note line citations after the reorder ([a4f75c7](https://github.com/event4u-app/agent-config/commit/a4f75c7a22564d9a6c684e481120c4f46c0c7c6b))
570
+ * **roadmaps:** resolve the worth-building blocker W-NO ([6e9f0c5](https://github.com/event4u-app/agent-config/commit/6e9f0c5c016b4680327b602a72cb179ac55c80d7))
571
+ * **hooks:** answer the consumer question and record the refused repair ([77bafdf](https://github.com/event4u-app/agent-config/commit/77bafdfca0b193f276ff6f6fac9126337ee1766c))
572
+ * **roadmaps:** carry the tenth arrival's AC-3 rather than claiming it ([b92952c](https://github.com/event4u-app/agent-config/commit/b92952c978016f8506f1edab7786a19d76297dab))
573
+ * **evidence:** reproduce the tenth-arrival AC-3 constraint at n=1 ([1476bfa](https://github.com/event4u-app/agent-config/commit/1476bfa7d23dd7337730da68ef9f48426538b402))
574
+ * **evidence:** record the 2026-09-05 PR drain run ([d5c8c75](https://github.com/event4u-app/agent-config/commit/d5c8c75727d41bdf389a4b21db30a47a210190c8))
575
+ * **release:** correct three claims this branch got wrong, and name the surface ([21d0f58](https://github.com/event4u-app/agent-config/commit/21d0f584777a99206d444f0b72e279e4c2f78794))
576
+ * **authz:** ADR-254 supersedes ADR-252, and every doc that claimed a window ([c1dabe5](https://github.com/event4u-app/agent-config/commit/c1dabe561b7c4d8af278319d3903112a8e1b074d))
577
+ * **release:** correct the coverage paragraph that documented the gap ([3cd0376](https://github.com/event4u-app/agent-config/commit/3cd0376fc2018a71a452c3d77be2cbd246b39fea))
578
+ * **worktrees:** name the cwd cost of a worktree outside the repo root ([e4ad278](https://github.com/event4u-app/agent-config/commit/e4ad278bff745b19f75cd9702ffa8c3229963766))
579
+ * **index:** regenerate for the code-intelligence description change ([f8e7955](https://github.com/event4u-app/agent-config/commit/f8e7955b25e3bbbfee7fb884de90a791728c795a))
580
+ * **roadmaps:** archive road-to-the-graph-that-lies-confidently ([a53789a](https://github.com/event4u-app/agent-config/commit/a53789ab507169d7f267483ab944cecc8839bfff))
581
+ * **roadmaps:** close the graph-that-lies-confidently with its findings ([3d23a90](https://github.com/event4u-app/agent-config/commit/3d23a9070bb201adb46b580877965f923248b7f9))
582
+ * **code-intelligence:** re-anchor the published measurement to the re-run ([9d5042c](https://github.com/event4u-app/agent-config/commit/9d5042c614f92daafee2aa7db250a0abfdeda5f4))
583
+ * **code-intelligence:** apply the retraction where the claim still lives ([7d36b11](https://github.com/event4u-app/agent-config/commit/7d36b11010f719d8e0f9acb3b5f42c2870a89e24))
584
+ * **roadmaps:** archive road-to-the-unwritten-ledger ([4b68884](https://github.com/event4u-app/agent-config/commit/4b6888446013df14d9409fcf2618fc34b5f9ad14))
585
+ * **roadmaps:** close the unwritten ledger, and move the sibling review date ([0493a64](https://github.com/event4u-app/agent-config/commit/0493a64f9ce674a59e7186dd108a12203ebeed0d))
586
+ * **self-review:** record why the enforcement flip is not safe to take yet ([6e89069](https://github.com/event4u-app/agent-config/commit/6e890690e28d05198e4425528e9eea6e95441d1a))
587
+ * **evidence:** write the findings ledger 14.16.0 never got ([c507353](https://github.com/event4u-app/agent-config/commit/c5073530e44d6f464cbfafbee2e5e08204d2923e))
588
+ * **contracts:** name two test smells, and give flakiness a state ([e795899](https://github.com/event4u-app/agent-config/commit/e7958998d0d6699417354fd58b844e7074284b9b))
589
+ * **roadmaps:** record the three counted populations, and report AC-5 failed rather than claim it ([5626df0](https://github.com/event4u-app/agent-config/commit/5626df095363b7cec8d206e3b3e322a662c3c76f))
590
+ * **roadmaps:** inline the council convergence summary instead of linking it ([387b1d0](https://github.com/event4u-app/agent-config/commit/387b1d03ad58c0c30e2bfa3399c8783f3d519100))
591
+ * **roadmaps:** close road-to-one-negation-vocabulary ([c8b9771](https://github.com/event4u-app/agent-config/commit/c8b97710aecea7628a0db83927e504cd11e9e288))
592
+ * **git-workflow:** name the hole this change leaves open ([722c8cb](https://github.com/event4u-app/agent-config/commit/722c8cbfb24708d89b56ce654591c2e012430d40))
593
+ * **git-workflow:** a push closes its own loop ([e3f681d](https://github.com/event4u-app/agent-config/commit/e3f681df062143f75d26e5bf931ef31cd45de904))
594
+ * **roadmaps:** close road-to-checklist-rows ([29f63fe](https://github.com/event4u-app/agent-config/commit/29f63fe57b54e9faf46dd4bfce9a547188c36642))
595
+ * **laravel-mail:** cover what a transactional email needs to survive a client ([30bcc27](https://github.com/event4u-app/agent-config/commit/30bcc27433d6bc6f46e66f0c932efed9994f2561))
630
596
 
631
597
  ### Tests
632
598
 
633
- * **harness:** pin the proposer survival bar, 5.4 as an absence assertion ([4cb3c4c](https://github.com/event4u-app/agent-config/commit/4cb3c4c37eb6f5416bfc84f305949277c9c9ce16))
634
- * **council:** pin the probe-above-council precedence as a guarded baseline ([b635f4e](https://github.com/event4u-app/agent-config/commit/b635f4efca1fedb516fcd20690114627fccdb962))
635
- * **council:** pin the early-stop cost/quality separation as a guarded baseline ([0b4b922](https://github.com/event4u-app/agent-config/commit/0b4b92205bd80dfcca995873de8b6ad9499fe1b7))
599
+ * **authz:** drop the enforcement tests, keep every ledger and classifier test ([3030265](https://github.com/event4u-app/agent-config/commit/30302652699d9d9674d3b2ba972adc6828627248))
600
+ * **release:** prove the pre-push gate run can actually stop a release ([13e7bb3](https://github.com/event4u-app/agent-config/commit/13e7bb38b778e9ad0c260e2a8451fd04e1c6c9d3))
601
+ * **bench:** re-pin the re-run to the engine tree that actually ships ([bd8a222](https://github.com/event4u-app/agent-config/commit/bd8a222c602b7b7a305b63d50fccf3c19868feac))
602
+ * **bench:** publish the v2 re-run, zero classes won again ([5264732](https://github.com/event4u-app/agent-config/commit/52647327c64a4eda9bf25adb2844cbd8075e6d7a))
603
+ * **bench:** warn on every re-run that a measured root is live source ([20af461](https://github.com/event4u-app/agent-config/commit/20af461be6cdbac56892dd2543dbe134b8b7a3d7))
604
+ * **bench:** let the v2 runner write a dated re-run without overwriting v2 ([4988954](https://github.com/event4u-app/agent-config/commit/4988954f4268aee9f0fddfa4fc55e3311ed9473f))
605
+ * **fixtures:** commit the tamper corpus before any detector exists ([c62402c](https://github.com/event4u-app/agent-config/commit/c62402c7c7c49e24cc036b9e93032530127c91e1))
606
+ * **git-auth:** derive the operation set, and name every guard rather than only the covered one ([e6dd88e](https://github.com/event4u-app/agent-config/commit/e6dd88e5e0b5f123a08c130b227e68c5de5f0f3e))
607
+ * **git-auth:** assert the negation corpus against both functions ([c01c6e7](https://github.com/event4u-app/agent-config/commit/c01c6e7227eed02898c78eb4a98f6835cba5f882))
636
608
 
637
609
  ### Chores
638
610
 
639
- * **deps-dev:** bump @cloudflare/workers-types from 5.20260819.1 to 5.20260829.1 in /deploy/telemetry-worker in the telemetry-worker group (#1797) ([de6708b](https://github.com/event4u-app/agent-config/commit/de6708b3625aaca778d58db995183255270b0b00))
640
- * **deps:** bump the site group in /site with 4 updates (#1798) ([044d141](https://github.com/event4u-app/agent-config/commit/044d141404b6a717beffc1c58ea6ae4dd271753f))
611
+ * **roadmaps:** archive road-to-second-trigger-corpus-generation ([666d2a8](https://github.com/event4u-app/agent-config/commit/666d2a882fefa7f3abaf60bd47444f6c8daef9bb))
612
+ * **adr:** regenerate the evidence census for ADR-254 ([88e16ff](https://github.com/event4u-app/agent-config/commit/88e16ff938f38e89573d910d5e36f7bdae9aa008))
613
+ * **roadmaps:** archive road-to-the-tenth-arrival ([4f34c15](https://github.com/event4u-app/agent-config/commit/4f34c157fc2480b942e4fb557c541302c3fc0407))
614
+ * **reports:** regenerate the skill-overlap report after the dialect fix ([3fcfe81](https://github.com/event4u-app/agent-config/commit/3fcfe81a5a0485eab903ffc441f8d8876d296958))
615
+ * **meta:** regenerate the meta pack token passport after the main merge ([c4747a8](https://github.com/event4u-app/agent-config/commit/c4747a88131da2d8bb40eb7e654762c301952001))
616
+ * **code-graph:** drop a box-rule comment lint_code_comments rejects ([10fcf0c](https://github.com/event4u-app/agent-config/commit/10fcf0c1bfa3d258c97298c0786e151308f54082))
617
+ * **evidence:** re-anchor the routing body-signal verdict after a skill-body edit ([44db916](https://github.com/event4u-app/agent-config/commit/44db91672b0092a293b5645e5ce083ae47f96e8a))
618
+ * **roadmaps:** archive road-to-deterministic-defect-detectors ([b256143](https://github.com/event4u-app/agent-config/commit/b256143d917c8e1ccd0e1e3e3818025a924834e4))
619
+ * **schemas:** bump skill.schema.json to 1.1.0 for the added enforced_by key ([ab87d6a](https://github.com/event4u-app/agent-config/commit/ab87d6ae01ce48a69eda6946408d8346f832e878))
620
+ * **evidence:** declare the evidence type on the three census artifacts ([003963e](https://github.com/event4u-app/agent-config/commit/003963eff51a1acc5f235d8d760aee4517bed697))
621
+ * **roadmaps:** archive road-to-defect-population-sweeps ([1b5f60a](https://github.com/event4u-app/agent-config/commit/1b5f60ab19926142ba7cdb5514201797b0b088a8))
622
+ * **roadmaps:** archive road-to-one-negation-vocabulary ([45e4036](https://github.com/event4u-app/agent-config/commit/45e4036e84b4eb28062a68ec4bf49768865fdff7))
623
+ * **roadmaps:** archive road-to-checklist-rows ([34f109f](https://github.com/event4u-app/agent-config/commit/34f109ff334a7c77f032e21aad86529b29a0fc9e))
641
624
 
642
625
  ### Other
643
626
 
644
- * complete the deferral-carry guard, and give a carrier a status that costs something (#1810) ([6641d47](https://github.com/event4u-app/agent-config/commit/6641d471993726174dde2f9d14734be8098a01fd))
645
- * **governed-evidence:** cure F-A and F-C, and record 2A as owner-reserved (#1809) ([4ea82c2](https://github.com/event4u-app/agent-config/commit/4ea82c2f3239d4b36240108cbaf68ac2fecc5e1f))
646
- * complete comment-enforcement-completion (#1808) ([183f9af](https://github.com/event4u-app/agent-config/commit/183f9afafa515f3619e9057b7cd9b6771b212ebe))
647
- * complete harness-promotion-bridge (#1802) ([56c3338](https://github.com/event4u-app/agent-config/commit/56c3338557b634670f9098c913e6b907bac5809c))
648
- * complete publication-integrity-hard-fail (#1801) ([f7fc5a1](https://github.com/event4u-app/agent-config/commit/f7fc5a135e7b8e38a6ce35f3be956ec449364bb9))
649
- * complete blocked-quickwin-visibility (#1803) ([ef30b1f](https://github.com/event4u-app/agent-config/commit/ef30b1f3e80a03032e8ba29d272cdd97d8a6cdc8))
650
- * **governed-evidence:** record the drain-15 1B disposition (#1804) ([7a3fe86](https://github.com/event4u-app/agent-config/commit/7a3fe8646f436449df98adbcb9e88c81763561af))
651
- * **council-topology:** record the carrier's terminal disposition (#1805) ([31b2db2](https://github.com/event4u-app/agent-config/commit/31b2db292c8c3ce158220692d860695af7af85f9))
652
- * **publication-integrity:** make the discarded detection refuse, and escalate the Phase 2 authority split (#1796) ([23391ae](https://github.com/event4u-app/agent-config/commit/23391aec24d4f7d47d71d1c4aeb86be46e81023c))
653
- * **blocked-quickwin:** give stubs:due a fourth bucket, and delete the dispatcher definition that hid it (#1799) ([94000b3](https://github.com/event4u-app/agent-config/commit/94000b3bb5026fd78e788939d5cfd0b4e7ed00a6))
654
- * **governed-evidence:** refuse the metered capture on validity, and repair six defects found proving it (#1795) ([1f6961d](https://github.com/event4u-app/agent-config/commit/1f6961da96128f7b04c9c572226c120fd59a6a2b))
655
- * record the terminal owner-reserved disposition, and measure the unguarded carrier (#1794) ([597bf38](https://github.com/event4u-app/agent-config/commit/597bf3816d3c6212bce349b443b9b569b1967ae6))
656
- * fix the release-head placeholder defect, and surface the quick-win the estate ratchet was holding (#1793) ([03d61a1](https://github.com/event4u-app/agent-config/commit/03d61a1161109d6704d8c9f9e528b2fe75f45511))
657
- * **harness-bridge:** make a merge-authority refusal recordable, and record drain-13's dispositions (#1789) ([b50b272](https://github.com/event4u-app/agent-config/commit/b50b272817513325d30a2500039a379e9cd5a336))
658
- * **governed-evidence:** close Phase 1, narrow the metered park, build Phase 2's arm and record its execution refusal (#1791) ([1e4b97b](https://github.com/event4u-app/agent-config/commit/1e4b97b286ddc4ebe6853ff588ed90efedea8661))
659
- * **topology:** verify every deferral trigger, repair what the receiver mis-states, and record why it is not drained (#1790) ([35e1a3d](https://github.com/event4u-app/agent-config/commit/35e1a3d089f744d9dc1a2b477c80501acdc62626))
660
- * complete road-to-governed-harness-evolution (#1785) ([0a567e9](https://github.com/event4u-app/agent-config/commit/0a567e949e7936c438d8d06db2e3b273d3f89ca7))
661
- * close road-to-inbox-harvest-2026-08-e-council-topology-evidence (#1787) ([468eeef](https://github.com/event4u-app/agent-config/commit/468eeefc7f45af21414bf2e42de769249a84a31d))
662
- * transfer the four governed-harness obligations to an owned receiver, and archive the source (#1788) ([50457b8](https://github.com/event4u-app/agent-config/commit/50457b898e65b2c92e4a0c6df066ff80da8ba9da))
663
- * complete road-to-harness-promotion-bridge (#1784) ([7259c40](https://github.com/event4u-app/agent-config/commit/7259c407f46036bf88bcb2edbf8dbe9d76897cd4))
664
- * advance road-to-inbox-harvest-2026-08-e-council-topology-evidence (#1782) ([8a9b97a](https://github.com/event4u-app/agent-config/commit/8a9b97af5485d8f96e268503ff1528051e0ef90b))
665
- * drop two imports the merge left unused ([dae43b1](https://github.com/event4u-app/agent-config/commit/dae43b1e8785ee8ceebee6f60bc2dac0dc361b70))
666
- * record that the merge-authority council route was refused, twice ([ba41097](https://github.com/event4u-app/agent-config/commit/ba41097eb4b15e584fcf3a0388eb771badcda638))
667
- * harness-promotion-bridge 0/9 -> 7/9 — Phase 7 closed as mechanism, AC-9 re-audited and still open ([0040258](https://github.com/event4u-app/agent-config/commit/004025839a1528511544e5fb1ef219eb385d9ac4))
668
- * harness-promotion-bridge — the carried condition is discharged by route 1 ([4a1e2f9](https://github.com/event4u-app/agent-config/commit/4a1e2f9163cd4e7253994f80a407dc2b9a6642a0))
669
- * archive obligation-delivery-verification, all items disposed ([6d4dea9](https://github.com/event4u-app/agent-config/commit/6d4dea906e171fa96a9bb7e73ff2ddb3076b01ec))
670
- * obligation-delivery closes BLOCKED-BY-ARCHITECTURE, criterion transferred not dropped ([991d4aa](https://github.com/event4u-app/agent-config/commit/991d4aa60eb5492a29bed58e5591adce82c22fd0))
671
-
672
- Tests: 20561 (+674 since 14.13.0)
627
+ * **r2:** rebind the artefact after the base merge ([922a6dc](https://github.com/event4u-app/agent-config/commit/922a6dc9b8448623334ab1e2f81aefa3f7516f22))
628
+ * **r2:** rebind the round-2 artefact against origin/main ([735888d](https://github.com/event4u-app/agent-config/commit/735888df79ace437ecb0576fbd13862f11347106))
629
+ * **r2:** round-2 dispositions, all eleven terminal ([79eb0cf](https://github.com/event4u-app/agent-config/commit/79eb0cf752bf95f10eb4093353bda0368a8b755e))
630
+ * **r2:** record the blind completion review, findings open ([23884ad](https://github.com/event4u-app/agent-config/commit/23884ad2ec01ec63ec395c56c15decbcb025f9f1))
631
+ * complete road-to-the-hook-that-was-never-installed ([a8c0ddc](https://github.com/event4u-app/agent-config/commit/a8c0ddc51ad71097a585e54fdb9a21ca5f483009))
632
+ * close road-to-the-check-that-cannot-see under delegated disposition ([cfb696f](https://github.com/event4u-app/agent-config/commit/cfb696fdd0a954d1320b9aa49c51a22818795dab))
633
+ * **detectors:** drop markdown headings from the new docstrings ([63e9263](https://github.com/event4u-app/agent-config/commit/63e9263d6ac7da023f5c437dd1f7a7e5602eda5f))
634
+ * track the hook this change could not reach ([3802ea5](https://github.com/event4u-app/agent-config/commit/3802ea5e2fc47d9346179a8edb184d4e64efd6cd))
635
+
636
+ Tests: 21190 (+183 since 14.17.0)
673
637
 
674
638
  # Era: pre-4.0.0 — archived
675
639
 
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  [![Smoke](https://github.com/event4u-app/agent-config/actions/workflows/smoke.yml/badge.svg)](https://github.com/event4u-app/agent-config/actions/workflows/smoke.yml) [![Public install smoke (3 OS × 2 Node)](https://github.com/event4u-app/agent-config/actions/workflows/smoke-public-install.yml/badge.svg)](https://github.com/event4u-app/agent-config/actions/workflows/smoke-public-install.yml) [![npm](https://img.shields.io/npm/v/@event4u/agent-config?style=flat-square&label=npm&color=orange)](https://www.npmjs.com/package/@event4u/agent-config) [![agent-config MCP server](https://glama.ai/mcp/servers/event4u-app/agent-config/badges/score.svg)](https://glama.ai/mcp/servers/event4u-app/agent-config) [![MCP Toplist](https://mcptoplist.com/badge/glama%2Fevent4u-app%2Fagent-config.svg)](https://mcptoplist.com/server/glama%2Fevent4u-app%2Fagent-config)
6
6
 
7
- [![Skills](https://img.shields.io/badge/Skills-299-orange?style=flat-square)](dist/agent-src/skills/) [![Rules](https://img.shields.io/badge/Rules-120-orange?style=flat-square)](dist/agent-src/rules/) [![Commands](https://img.shields.io/badge/Commands-202-orange?style=flat-square)](dist/agent-src/commands/) [![Guidelines](https://img.shields.io/badge/Guidelines-118-orange?style=flat-square)](docs/guidelines/) [![Personas](https://img.shields.io/badge/Personas-29-orange?style=flat-square)](dist/agent-src/personas/) [![Advisors](https://img.shields.io/badge/Advisors-5-orange?style=flat-square)](dist/agent-src/personas/advisors/) <!-- claim:published-artifact-counts -->
7
+ [![Skills](https://img.shields.io/badge/Skills-299-orange?style=flat-square)](dist/agent-src/skills/) [![Rules](https://img.shields.io/badge/Rules-120-orange?style=flat-square)](dist/agent-src/rules/) [![Commands](https://img.shields.io/badge/Commands-203-orange?style=flat-square)](dist/agent-src/commands/) [![Guidelines](https://img.shields.io/badge/Guidelines-118-orange?style=flat-square)](docs/guidelines/) [![Personas](https://img.shields.io/badge/Personas-29-orange?style=flat-square)](dist/agent-src/personas/) [![Advisors](https://img.shields.io/badge/Advisors-5-orange?style=flat-square)](dist/agent-src/personas/advisors/) <!-- claim:published-artifact-counts -->
8
8
 
9
9
  <sub>**How these are counted** — one canonical counter, `agent-config` → `update_counts --check`, re-derives all six from the tree and fails CI on a drift of one. Two bases are not what the linked directory shows, so they are stated here rather than left to be inferred: **Commands 202** counts every command file **recursively** (the linked directory holds 61 at its top level), and **Rules 120** counts the **source** rules while the linked projection holds 119 — one rule is dormant and is not projected. **Personas 29** excludes the directory README. Counts are of files and directories: none of them measures quality, activation, or adoption. <!-- claim:published-artifact-counts --></sub>
10
10
 
@@ -483,7 +483,7 @@ When a prompt matches a command's purpose ("setze ticket ABC-123 um" → `/imple
483
483
  - **Verify with real execution** — no "should work"
484
484
  - **Challenge to improve** — agents are thought partners, not yes-machines
485
485
  - **Strict by design** — quality over flexibility
486
- - **Zero overhead by default** — nothing runs until you ask for it
486
+ - **Governed runtime** — resident processes require supervision, scoped writes, and a stop control
487
487
 
488
488
  ---
489
489