@event4u/agent-config 9.1.0 → 9.2.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 +22 -251
- package/README.md +1 -1
- package/dist/agent-src/commands/implement-ticket.md +2 -0
- package/dist/agent-src/commands/review/changes.md +22 -0
- package/dist/agent-src/contexts/execution/subagent-modes-detail.md +41 -6
- package/dist/agent-src/contexts/execution/verify-budget.md +15 -0
- package/dist/agent-src/rules/cross-source-consistency.md +92 -0
- package/dist/agent-src/rules/delegation-policy.md +1 -1
- package/dist/agent-src/skills/estimate-ticket/SKILL.md +2 -0
- package/dist/agent-src/skills/feature-planning/SKILL.md +1 -1
- package/dist/agent-src/skills/po-discovery/SKILL.md +2 -0
- package/dist/agent-src/skills/refine-ticket/SKILL.md +7 -0
- package/dist/agent-src/skills/roadmap-writing/SKILL.md +14 -0
- package/dist/agent-src/skills/subagent-orchestration/SKILL.md +26 -5
- package/dist/agent-src/skills/subagent-orchestration/evals/evals.json +18 -0
- package/dist/agent-src/skills/subagent-orchestration/prompts/README.md +3 -2
- package/dist/agent-src/skills/subagent-orchestration/prompts/adversarial-verification-council.md +79 -0
- package/dist/agent-src/skills/subagent-orchestration/schemas/adversarial-findings.json +56 -0
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +42 -19
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +4 -4
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +10 -8
- package/dist/discovery/trust-report.md +3 -3
- package/dist/discovery/workspaces.json +8 -6
- package/dist/install/install.mjs +9 -0
- package/dist/mcp/registry-manifest.json +2 -2
- package/dist/router.json +1 -1
- package/dist/server/schemas/settings.js +5 -0
- package/dist/server/schemas/settings.js.map +1 -1
- package/docs/CLAIMS.md +8 -1
- package/docs/architecture.md +2 -2
- package/docs/archive/CHANGELOG-pre-9.2.0.md +276 -0
- package/docs/benchmark.md +24 -0
- package/docs/decisions/ADR-122-adversarial-verification-council.md +136 -0
- package/docs/decisions/INDEX.md +1 -0
- package/docs/design/adversarial-council-eval.md +106 -0
- package/docs/getting-started-by-role.md +1 -1
- package/docs/getting-started.md +1 -1
- package/docs/governance-advantage.md +1 -1
- package/docs/guidelines/agent-infra/cross-source-consistency-mechanics.md +109 -0
- package/docs/proof.md +2 -2
- package/package.json +1 -1
- package/src/config/agent-settings.template.yml +42 -0
- package/src/scripts/_lib/adversarial_council_gate.test.ts +112 -0
- package/src/scripts/_lib/adversarial_council_gate.ts +98 -0
- package/src/scripts/_lib/adversarial_reconcile.test.ts +197 -0
- package/src/scripts/_lib/adversarial_reconcile.ts +187 -0
- package/src/scripts/_lib/verify_budget.ts +4 -1
- package/src/scripts/schemas/agent-settings.schema.json +11 -0
- package/src/server/schemas/settings.ts +9 -0
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
# Changelog Archive — pre-9.2.0
|
|
2
|
+
|
|
3
|
+
> Frozen snapshot of `event4u/agent-config` changelog entries
|
|
4
|
+
> released before `9.2.0`, split out of the main
|
|
5
|
+
> [`CHANGELOG.md`](../../CHANGELOG.md) by `scripts/release.py`
|
|
6
|
+
> once the active era's body crossed the drift cap enforced by
|
|
7
|
+
> `tests/test_changelog_eras.py`.
|
|
8
|
+
>
|
|
9
|
+
> **Read-only.** New entries land in `CHANGELOG.md`. Entries
|
|
10
|
+
> here are not amended — git tags remain the canonical source
|
|
11
|
+
> for what shipped.
|
|
12
|
+
>
|
|
13
|
+
> Entry shape follows
|
|
14
|
+
> [`../contracts/CHANGELOG-conventions.md`](../contracts/CHANGELOG-conventions.md).
|
|
15
|
+
|
|
16
|
+
## [9.1.0](https://github.com/event4u-app/agent-config/compare/9.0.0...9.1.0) (2026-07-14)
|
|
17
|
+
|
|
18
|
+
### Features
|
|
19
|
+
|
|
20
|
+
* **create-pr:** tier-driven body, grounded API examples, capability-gated screenshots ([306f7d5](https://github.com/event4u-app/agent-config/commit/306f7d59e6e7dee4a22e9c34aad4fbc89a75e3e2))
|
|
21
|
+
* **create-pr:** settings for description detail level, API examples, screenshots ([65275bb](https://github.com/event4u-app/agent-config/commit/65275bb1237fc4dfbbcefd86d27bc45ef4be257c))
|
|
22
|
+
* **ai-council:** prompt caching + right-sized output on the paid Anthropic path ([3ec7ff0](https://github.com/event4u-app/agent-config/commit/3ec7ff09d49283b096901e5d4716cc529fef1609))
|
|
23
|
+
* **skills:** add llm-provider-knowledge — verify LLM product facts against official docs ([ba34d94](https://github.com/event4u-app/agent-config/commit/ba34d94530d1b30066470a0316f247be84b5ac2d))
|
|
24
|
+
* **commands:** register discoverable /explain-run command ([13955a1](https://github.com/event4u-app/agent-config/commit/13955a1e7ab40a658ed0879e21266fe49a54c6a0))
|
|
25
|
+
* **doctor:** add rule-scope-drift check for the scoped-projection flip ([71353f8](https://github.com/event4u-app/agent-config/commit/71353f8c6bb66b404916f599c5e168bef1f85601))
|
|
26
|
+
|
|
27
|
+
### Bug Fixes
|
|
28
|
+
|
|
29
|
+
* **ai-council:** make prompt caching explicit opt-in (default off) ([bad8070](https://github.com/event4u-app/agent-config/commit/bad80707eda42aacbd3698575e1d22383dbea8b3))
|
|
30
|
+
* **refs:** treat external claude-api plugin as non-repo reference ([75a3431](https://github.com/event4u-app/agent-config/commit/75a34314ca802e8cda39df8ff6b375c52621ae63))
|
|
31
|
+
* **commands:** reference agent-docs-writing skill in /explain-run ([c104279](https://github.com/event4u-app/agent-config/commit/c104279abaaad1035758cc86140be847ed4f4a06))
|
|
32
|
+
* **ci:** honest gate status in skill-lint + self-review comments ([5098465](https://github.com/event4u-app/agent-config/commit/50984659e028c8c0029b1cd1deb8a69bf1c4e61b))
|
|
33
|
+
* **install:** rebuild install bundle with real node_modules paths ([f875244](https://github.com/event4u-app/agent-config/commit/f8752443b1b27bd9471dbf056a65097d898e15de))
|
|
34
|
+
* **install:** rebuild install bundle + reword source-repo comment ([48e9dc2](https://github.com/event4u-app/agent-config/commit/48e9dc2a6f694610322d533b0196346cf07a151d))
|
|
35
|
+
* **tests:** make wrapper-delegation install test hermetic ([8ef5ea2](https://github.com/event4u-app/agent-config/commit/8ef5ea2bdc60f90fde7979bee2dca3d15a2e118e))
|
|
36
|
+
|
|
37
|
+
### Documentation
|
|
38
|
+
|
|
39
|
+
* **create-pr:** document PR-description content settings ([812ae6b](https://github.com/event4u-app/agent-config/commit/812ae6ba84ba5508a71b3ab02c351cad4a3a2e55))
|
|
40
|
+
* subagent prompt-cache break-even + record the follow-up council verdict ([fdba56d](https://github.com/event4u-app/agent-config/commit/fdba56dbe06818c4bc50c5b3e94322e10b34bd0d))
|
|
41
|
+
* **roadmap:** API cost-optimization roadmap + dashboard ([3d1b313](https://github.com/event4u-app/agent-config/commit/3d1b3132b0d0d3a52c7eba555b1e3afd95d5750e))
|
|
42
|
+
* **agent-infra:** API cost-levers guideline + token-optimizer index wiring ([a97d0e7](https://github.com/event4u-app/agent-config/commit/a97d0e7eaa4c61eb4db59f8bdf469d112595b1b5))
|
|
43
|
+
* **roadmap:** archive completed road-to-llm-provider-knowledge-skill ([059aa10](https://github.com/event4u-app/agent-config/commit/059aa10b3405597986c12c0de3da6c767385bb97))
|
|
44
|
+
* **roadmap:** add + archive feedback-9.0-followups roadmap ([c8aa510](https://github.com/event4u-app/agent-config/commit/c8aa5104ac774f77f1354ac9c6c3816096b769fe))
|
|
45
|
+
* **changelog:** repair breaking-surface index + add sync lint ([e333d71](https://github.com/event4u-app/agent-config/commit/e333d7150254310fe569dcb6e0fad2c487568d32))
|
|
46
|
+
|
|
47
|
+
### Refactoring
|
|
48
|
+
|
|
49
|
+
* **install:** retire the consumer bridge marker (ADR-020 amendment) ([2737b04](https://github.com/event4u-app/agent-config/commit/2737b04441b7e807240c979e874d8e2bb3967b9b))
|
|
50
|
+
|
|
51
|
+
### Build
|
|
52
|
+
|
|
53
|
+
* **install:** rebuild bundle with repo-relative module paths ([f30adb5](https://github.com/event4u-app/agent-config/commit/f30adb5a109ac6aee9777bad722ef0146fc208fa))
|
|
54
|
+
* **install:** rebuild install bundle after create_pr settings addition ([a760b9f](https://github.com/event4u-app/agent-config/commit/a760b9f39a41a9621b21ad2fb92851c4a1ea66b2))
|
|
55
|
+
|
|
56
|
+
### Chores
|
|
57
|
+
|
|
58
|
+
* **roadmaps:** archive completed pr-description-tiers roadmap ([2c4615f](https://github.com/event4u-app/agent-config/commit/2c4615fe42129eb8bd33e87a368cbed8f5f1ded7))
|
|
59
|
+
* sync generated guideline count (98 -> 99) for api-cost-levers ([17ce22b](https://github.com/event4u-app/agent-config/commit/17ce22bdfc2d99341d7a3edeaaf80554f4d75f33))
|
|
60
|
+
* **evals:** ratchet behavioural-eval coverage floor to current ([84f42fa](https://github.com/event4u-app/agent-config/commit/84f42fab93d77ad8b0b28ce430b79ae222748719))
|
|
61
|
+
|
|
62
|
+
Tests: 7737 (+21 since 9.0.0)
|
|
63
|
+
|
|
64
|
+
## [9.0.0](https://github.com/event4u-app/agent-config/compare/8.13.0...9.0.0) (2026-07-13)
|
|
65
|
+
|
|
66
|
+
### BREAKING CHANGES
|
|
67
|
+
|
|
68
|
+
* **scoping:** flip consumer rule projection default to scoped (Phase-1 human gate, approved) ([565c91a](https://github.com/event4u-app/agent-config/commit/565c91aa25e4c970d5b37258f497366f33e7a7a9))
|
|
69
|
+
|
|
70
|
+
**Consumer rule projection is scoped by default** (`road-to-request-scoped-rule-load` Phase 1 human gate, 2026-07-13)
|
|
71
|
+
|
|
72
|
+
- **Who is affected:** fresh consumer installs — the settings template now
|
|
73
|
+
ships `projection.rule_workspaces` filled with every consumer workspace, so
|
|
74
|
+
the 16 exclusively-maintainer specification rules (plus the recorded
|
|
75
|
+
`source-of-truth.md` compat exclusion) no longer arrive: 103 → 88 rules,
|
|
76
|
+
−9,880 cl100k tokens (−13.1%) per install. All domain safety floors and
|
|
77
|
+
domain rules keep shipping; kernel rules always ship.
|
|
78
|
+
- **Existing installs:** unchanged until you run `agent-config sync` /
|
|
79
|
+
re-install (settings sync preserves your current value; fill the list to
|
|
80
|
+
opt in). The first session after opting in rebuilds the KV-cache prefix
|
|
81
|
+
once (1.25–2× write cost, one session only).
|
|
82
|
+
- **Quality evidence:** deterministic set-inclusion verification
|
|
83
|
+
(`src/scripts/check_consumer_scope_flip.ts` →
|
|
84
|
+
`internal/bench/reports/2026-07-13-consumer-scoped-default-flip.json`):
|
|
85
|
+
only exclusively-maintainer rules drop; zero golden-set-exercised consumer
|
|
86
|
+
rules affected (90/90 labelled tasks, coverage 86/86).
|
|
87
|
+
- **Rollback:** set `projection.rule_workspaces: []` (= legacy-all).
|
|
88
|
+
|
|
89
|
+
### Features
|
|
90
|
+
|
|
91
|
+
* **product:** pre-build demand gate folded into improve-before-implement — plate complete, archived ([d6b0fcb](https://github.com/event4u-app/agent-config/commit/d6b0fcb9d020f983a98f8cd0c744d758bb758f9a))
|
|
92
|
+
* **skills:** Known-pitfalls sections for docker, terraform, laravel ([4427224](https://github.com/event4u-app/agent-config/commit/442722417f319b7b704c2d0bdc711c38e870f796))
|
|
93
|
+
* **skill-writing,size-enforcement:** Known-pitfalls section standard + sprawl guard ([6276c9f](https://github.com/event4u-app/agent-config/commit/6276c9f24b3166c1ae4360151cf05f2cd29f9b31))
|
|
94
|
+
* **skill:** spreadsheet-authoring — recalc-verification loop + zero-formula-error contract ([fcaf93e](https://github.com/event4u-app/agent-config/commit/fcaf93e8beb36c944b356df04b1203941f8a3271))
|
|
95
|
+
* **skill:** pdf-tools — library-per-task PDF create/transform/fill routing ([11af714](https://github.com/event4u-app/agent-config/commit/11af7140fa999dea0f514ddb32f5a1d6d6e8934b))
|
|
96
|
+
* **skill:** docx-authoring — skeleton-create + unpack/edit/pack-with-validate toolkit ([218f711](https://github.com/event4u-app/agent-config/commit/218f7115359f10c630c239ec02302f6a2eb21a63))
|
|
97
|
+
* **humanizer:** severity-tiered AI-ism taxonomy, stance-preservation, voice-match ([00077d2](https://github.com/event4u-app/agent-config/commit/00077d2488246766317f86110a65e65cab7080b9))
|
|
98
|
+
* **skills:** docx-authoring + pdf-tools — completes the document read→write cycle ([c0688c1](https://github.com/event4u-app/agent-config/commit/c0688c11badc38bd060de89f0585b351ea2d265d))
|
|
99
|
+
* **skill:** launch-readiness epistemics block + fix-loop (contract-backed) ([591c386](https://github.com/event4u-app/agent-config/commit/591c386ae6be8d06b68997a41198166334e7249c))
|
|
100
|
+
* **prelaunch:** finding-ID contract, epistemics, regression gate + suppression ([0f4bff6](https://github.com/event4u-app/agent-config/commit/0f4bff64e12f5a73525ea2272df479672ce7f9aa))
|
|
101
|
+
* **workflow:** Phase 3 merge-conflicts plan-first — plate complete, archived ([3f51f4e](https://github.com/event4u-app/agent-config/commit/3f51f4ed1fa6ed4253788432db468c35678f1c81))
|
|
102
|
+
* **workflow:** Phase 2 — HANDOFF.md convention, resume rule, artifact validation ([5092d5e](https://github.com/event4u-app/agent-config/commit/5092d5ef44ea154817eda4640a526fa0909ed9a9))
|
|
103
|
+
* **workflow:** Phase 1 — TDD mode contracts with diff-checkable Forbidden blocks ([a6c4d70](https://github.com/event4u-app/agent-config/commit/a6c4d7048e24505db80dc04c6e03d8a63bfce3d1))
|
|
104
|
+
* **ci:** bridge-derivation, tools-matrix + host-loadability gates (Phase 4.3/4.4) ([9168bbd](https://github.com/event4u-app/agent-config/commit/9168bbdb455412261bf593dd89f5111085d24fe9))
|
|
105
|
+
* **schema:** optional effort: reasoning-effort pin (Phase 4.2) ([9248f36](https://github.com/event4u-app/agent-config/commit/9248f366d13e79d195bfcd50985fc48313e1b51f))
|
|
106
|
+
* **commands:** argument-hint frontmatter across the command surface (Phase 4.1) ([333a1b3](https://github.com/event4u-app/agent-config/commit/333a1b37bd15ff394c9c82ba4a7a961ce3aaf1c2))
|
|
107
|
+
* **authoring:** U1 description-optimizer loop (held-out split) — plate complete, archived ([a2d7f55](https://github.com/event4u-app/agent-config/commit/a2d7f552a6d28657714914d0a0efa81decb2b57e))
|
|
108
|
+
* **authoring:** U5 self-QA fresh-eyes pattern for output-producing skills ([6295bd7](https://github.com/event4u-app/agent-config/commit/6295bd744dc6dbd96face318956e3925a0b80ca6))
|
|
109
|
+
* **authoring:** U3 tool-grant uplift — scoped grants, disallowed_tools deny-list, numeric thresholds ([7089ac8](https://github.com/event4u-app/agent-config/commit/7089ac8d6ac5121f391650987b5b2c8fb227f6fb))
|
|
110
|
+
* **authoring:** U4 register note + U2 Agent-Skills spec alignment ([6ce3a13](https://github.com/event4u-app/agent-config/commit/6ce3a13b1243fdfb63a184c758a4764ab1dc67d8))
|
|
111
|
+
* **telemetry:** U5 agent-combo facet on the orchestration record ([1aacb46](https://github.com/event4u-app/agent-config/commit/1aacb46458c42f3857b5107d714ca25386133e97))
|
|
112
|
+
* **measurement:** U4 host-loadability smoke — generated trees must actually load ([0d0b014](https://github.com/event4u-app/agent-config/commit/0d0b0141f160f5722d4bba71ba8e017d0445a98a))
|
|
113
|
+
* **evals:** U2 golden-adversarial review pair + not_contains assertion kind ([b5f040a](https://github.com/event4u-app/agent-config/commit/b5f040a8fd90b6012106760c06a67981a2a437a9))
|
|
114
|
+
* **measurement:** U1 loaded-vs-fired utilization report + census-honesty note ([545c2ce](https://github.com/event4u-app/agent-config/commit/545c2ce3f1c0d3894bb9eebd5c87bb8e110ddb2b))
|
|
115
|
+
* **telemetry:** U1a loaded denominator — engagement schema, record CLI, aggregator, renderer ([a549788](https://github.com/event4u-app/agent-config/commit/a5497881cc67475a6cddfc3fb857f675fcb032be))
|
|
116
|
+
* **skill-quality:** add read-only-by-default script-convention lint ([401828d](https://github.com/event4u-app/agent-config/commit/401828df53069331007fe0e28edab8811fa46fa4))
|
|
117
|
+
* **skill-quality:** add eval schema v2 — tool-choice + trajectory_budget ([63a5cdf](https://github.com/event4u-app/agent-config/commit/63a5cdfd433374099ea70e8e10a5b8350ccebb52))
|
|
118
|
+
* **skill-quality:** add description-quality lint gate ([e7acc5e](https://github.com/event4u-app/agent-config/commit/e7acc5ec8744b1e00d2fe9ad89727731d3500147))
|
|
119
|
+
* **scoping:** deterministic held-quality verifier for the consumer scoped-projection flip ([9375e6e](https://github.com/event4u-app/agent-config/commit/9375e6e6f4788f644c031a62c36e956bd49c0ec7))
|
|
120
|
+
* **review:** tally-vs-reasoned boundary + fix-pr-comments dedup ([564efa8](https://github.com/event4u-app/agent-config/commit/564efa8300b07c345c9c618b8d5790f20fde9089))
|
|
121
|
+
* **review:** change-type routing, two-tier output, de-biasing in code-review ([ffad758](https://github.com/event4u-app/agent-config/commit/ffad75807e3ae6dae58087280d47865286d9d437))
|
|
122
|
+
* **team-gate:** managed Review-Gate circuit breaker — never an infinite Claude/Codex loop ([0356b30](https://github.com/event4u-app/agent-config/commit/0356b30f60a00b9fe7b13cdd7dde05ddda3684db))
|
|
123
|
+
* **team-fallback:** read-only multi-host review via team_dispatch + team-review envelope ([ba6ea00](https://github.com/event4u-app/agent-config/commit/ba6ea0062b34cad03dc296a887a7d8edba559d09))
|
|
124
|
+
* **security:** STRIDE table, CI-agent + insecure-defaults coverage, active-probe design note ([260fd2f](https://github.com/event4u-app/agent-config/commit/260fd2fe667e0c605cd042935327b316fa4a9641))
|
|
125
|
+
* **security:** add security-maturity-assessment skill ([657b68f](https://github.com/event4u-app/agent-config/commit/657b68f550bdeff356cfa3e1654a98f69835ec26))
|
|
126
|
+
* **security:** add false-positive gate to bug + security review skills ([4309cb3](https://github.com/event4u-app/agent-config/commit/4309cb35f93eb68deeed523369417ad90c13d86c))
|
|
127
|
+
* **evals:** calibrate finding_floor from the cross-host lower envelope — gate armed ([c19aecf](https://github.com/event4u-app/agent-config/commit/c19aecfb440e3d748935a494400319ff8bd0617a))
|
|
128
|
+
* **bench:** cross-model parity count-pass runner (council-transport re-scope) ([5cef323](https://github.com/event4u-app/agent-config/commit/5cef32329263f1169ed7875cf4cfad0ab982a10c))
|
|
129
|
+
|
|
130
|
+
### Bug Fixes
|
|
131
|
+
|
|
132
|
+
* **humanizer:** reword 'drift' → 'slippage' to clear wing3_vendor_independence false-positive ([66f9179](https://github.com/event4u-app/agent-config/commit/66f91797a0f3cff9c414cb0edfe64b89c916d1a8))
|
|
133
|
+
* **ai-council:** enforce config is user-global only, never project-local ([09b16bb](https://github.com/event4u-app/agent-config/commit/09b16bb559f548baf2760a255e1ab20b48a3ccdd))
|
|
134
|
+
* **merge:** resolve index-roadmap conflict — both quality-gates and workflow-contracts shipped ([c42dce4](https://github.com/event4u-app/agent-config/commit/c42dce428f0c35f01cf2e58046f62be28dc05504))
|
|
135
|
+
* **ci:** use .js import extensions in the new matrix-lint modules (typecheck) ([bf79fe0](https://github.com/event4u-app/agent-config/commit/bf79fe0fd32975b2b1e7d1639bf382874f9b0c18))
|
|
136
|
+
* **schema:** surgical skill-schema edits — restore original formatting ([01243ad](https://github.com/event4u-app/agent-config/commit/01243ad12cf5381a010f1e822b6f0e3bb8a32268))
|
|
137
|
+
* **rules:** P4 Batch B stub consistency — routes_to + fire-time fix-now boundary ([97bed1c](https://github.com/event4u-app/agent-config/commit/97bed1c1dedc0687a9349381949094f850da8e1f))
|
|
138
|
+
* **linear-digest:** drop stale strip_sections for context-hygiene after Batch B migration ([0e705c1](https://github.com/event4u-app/agent-config/commit/0e705c1316a5cfb2e76ca5e0cd958fa95757463c))
|
|
139
|
+
* **tests:** run bench_parity_count tests under vitest (CI runner), not node:test ([5076a68](https://github.com/event4u-app/agent-config/commit/5076a68353f789d35dc2f236090056aa1a958017))
|
|
140
|
+
* **ci:** team status description under the 200-char linter cap ([800d2f4](https://github.com/event4u-app/agent-config/commit/800d2f49fdbd980bf58333f3a80bebe0760768bb))
|
|
141
|
+
* **team-doctor:** expiry-aware auth signal + namespace-resistant plugin identity + gate WARN ([7698386](https://github.com/event4u-app/agent-config/commit/76983863d0a164e20ad2a588fb2e6b8517f00622))
|
|
142
|
+
|
|
143
|
+
### Documentation
|
|
144
|
+
|
|
145
|
+
* **roadmap:** mark skill-quality-gates Phases 1-3 done ([b0c2d43](https://github.com/event4u-app/agent-config/commit/b0c2d43b5a409c69a991191b478c8af28e58a463))
|
|
146
|
+
* **changelog:** breaking-change entry for the scoped consumer default (sync/re-install + one-time KV-prefix rebuild) ([2520859](https://github.com/event4u-app/agent-config/commit/2520859aa3e1842658392596e892b82b16f2b6eb))
|
|
147
|
+
* **roadmaps:** add and archive road-to-batch-b-stub-consistency ([60bf22c](https://github.com/event4u-app/agent-config/commit/60bf22cbbfffdf60e431c147bb5ec2367d2b1fa1))
|
|
148
|
+
* **team:** quota clarity, honest wording, pack move to meta, envelope contract ([6be986e](https://github.com/event4u-app/agent-config/commit/6be986e3ed500d3165a7adec3525203a0fd5b76e))
|
|
149
|
+
* **bench:** cross-model-parity-count claim + benchmark section ([5ff1a4c](https://github.com/event4u-app/agent-config/commit/5ff1a4c9f90344523e8977639296e18128674abc))
|
|
150
|
+
|
|
151
|
+
### Refactoring
|
|
152
|
+
|
|
153
|
+
* **rules:** P4 Batch B part 2 — domain-adoption-policy, minimal-safe-diff, context-hygiene thinned; backlink report + grandfather shrink ([c6eb79c](https://github.com/event4u-app/agent-config/commit/c6eb79cb7383a78e3b48bc46bef4ade01b7d9106))
|
|
154
|
+
* **rules:** P4 Batch B part 1 — active-remediation, artifact-drafting-protocol, framework-neutrality, design-fidelity thinned to stubs ([e382bec](https://github.com/event4u-app/agent-config/commit/e382bec6cc04470e19534c7521a8271c52e0f79e))
|
|
155
|
+
|
|
156
|
+
### Tests
|
|
157
|
+
|
|
158
|
+
* **workspace_inbox:** refresh skill-hint snapshot for docker Known-pitfalls section ([7003101](https://github.com/event4u-app/agent-config/commit/70031011264cc6bcafc8b68a33f8b6cfafa1c7e2))
|
|
159
|
+
* **review:** review-mechanics eval fixtures ([3a74f94](https://github.com/event4u-app/agent-config/commit/3a74f94e729fe6c5f0476be303e11b1d91a80027))
|
|
160
|
+
|
|
161
|
+
### Build
|
|
162
|
+
|
|
163
|
+
* **skill-quality:** wire the two new lints into ci-fast ([c9e85d8](https://github.com/event4u-app/agent-config/commit/c9e85d80f31266f901189f2ee3bdc337ce030551))
|
|
164
|
+
|
|
165
|
+
### Chores
|
|
166
|
+
|
|
167
|
+
* **roadmap:** tool-pitfalls plate complete — archived, index updated ([b93774c](https://github.com/event4u-app/agent-config/commit/b93774c8d130a2e0f6663b0aba24d88e679924a1))
|
|
168
|
+
* refresh condensation hashes ([8a0d974](https://github.com/event4u-app/agent-config/commit/8a0d97437f6257399da5f79cb218671154aa97b4))
|
|
169
|
+
* **roadmap:** document-skills plate complete — archived, index updated ([d96a11e](https://github.com/event4u-app/agent-config/commit/d96a11e5d69bf21c7d6d6d2148b231fb56449a7e))
|
|
170
|
+
* **docs:** skill counts 272 → 274, meta pack regen, condensation hashes ([4115d3a](https://github.com/event4u-app/agent-config/commit/4115d3a08041086251926303ee9e3d6c39437cd8))
|
|
171
|
+
* **generated:** regenerate proof.md + CAPABILITIES.yaml after +2 skills (272→274) ([51eac3e](https://github.com/event4u-app/agent-config/commit/51eac3eb885956ac4ded6f874d4a27645b1c6dc9))
|
|
172
|
+
* **roadmap:** prose-authenticity U1-U5 complete; U6 blocked on decision-revisit-gate ([ebff2d8](https://github.com/event4u-app/agent-config/commit/ebff2d815630ea92a69bd341a21f73aa39fc66ac))
|
|
173
|
+
* **roadmap:** prelaunch-diagnostics plate complete — archived, index updated ([6ca449d](https://github.com/event4u-app/agent-config/commit/6ca449de2e3b4c8c73ef36ca509a9956d57ac087))
|
|
174
|
+
* **roadmap:** skill-quality-gates plate complete — Phase 4 flipped, archived, index updated ([2d89dd3](https://github.com/event4u-app/agent-config/commit/2d89dd3e2c514f3add37176ee86e84e2b218fbb4))
|
|
175
|
+
* **sync:** regenerate meta domain README after condense-memory description update ([d6f8557](https://github.com/event4u-app/agent-config/commit/d6f85574627e124b6b9af8e2b2e3cc2b2731a122))
|
|
176
|
+
* **condense:** re-mark upstream-contribute after skill-writing dep-fold ([6e71ef9](https://github.com/event4u-app/agent-config/commit/6e71ef95daf695b23de2da3fd30c4f840ca1a2b7))
|
|
177
|
+
* **roadmap:** authoring-rigor U2+U4 closed ([b744092](https://github.com/event4u-app/agent-config/commit/b74409267a40e458805a701cc44678bf679041df))
|
|
178
|
+
* **sync:** dist twin of code-review evals after U2 golden pair ([10d67ba](https://github.com/event4u-app/agent-config/commit/10d67ba755ef75ecc2520e2ff242d00a9c8e10fa))
|
|
179
|
+
* **roadmap:** reliability-measurement plate complete — archived, index updated ([5662e80](https://github.com/event4u-app/agent-config/commit/5662e80753a620be34c95680e1d7e4cec56dd0d4))
|
|
180
|
+
* **roadmap:** reliability-measurement U1/U1a/U3 closed ([dc16eaa](https://github.com/event4u-app/agent-config/commit/dc16eaa6e1d19c105b36001f09979e8a08cb8466))
|
|
181
|
+
* **roadmap:** request-scoped-rule-load Phase-1 human gate closed - only trigger-gated Phase-4 park remains ([0f46997](https://github.com/event4u-app/agent-config/commit/0f46997c9829a6d9c3f265ed4d744c3588e7f7be))
|
|
182
|
+
* **counts:** guideline badge + table 91 -> 98 after Batch B guideline homes ([ecad776](https://github.com/event4u-app/agent-config/commit/ecad7764848d8a0309bae2a56c11b3aafd048efc))
|
|
183
|
+
* **roadmap:** complete + archive review-mechanics; refresh hashes ([9ede176](https://github.com/event4u-app/agent-config/commit/9ede1767c451446ec485198da25247821d56b032))
|
|
184
|
+
* **roadmap:** request-scoped-rule-load Phase 5 closed — Batch B done, Batch C skipped-by-tradeoff, backlink report current ([37e73f8](https://github.com/event4u-app/agent-config/commit/37e73f89cd30dc7127293de51cc583ed0118d7b1))
|
|
185
|
+
* **roadmap:** truth-sync the inherited golden-set blocker in request-scoped-rule-load ([2e13966](https://github.com/event4u-app/agent-config/commit/2e1396657d2e9570bb6eebbb02f51413f1b5fad2))
|
|
186
|
+
* **roadmap:** park road-to-token-saving in later/ — all open work operator-gated, judge blocker resolved negative ([51a56bd](https://github.com/event4u-app/agent-config/commit/51a56bdd0fe6b6203bde83792892a88f25a5c8c4))
|
|
187
|
+
* **proof:** regenerate docs/proof.md after claims-ledger update ([63421da](https://github.com/event4u-app/agent-config/commit/63421da76566e2ca38e1f72025c68e49646ec404))
|
|
188
|
+
* **bench:** codex-host lift replication HONEST NULL — discipline_profile default stays; measurement-unblock roadmap complete + archived ([5e11ce0](https://github.com/event4u-app/agent-config/commit/5e11ce09f7846f4875e032db1c6dc236f9a229cb))
|
|
189
|
+
* **pack:** register security-maturity-assessment in engineering-base manifest ([ee89252](https://github.com/event4u-app/agent-config/commit/ee89252794e4979a002de7e2dd682ee90c75d533))
|
|
190
|
+
* sync generated count surfaces + dependent command hashes ([44e064a](https://github.com/event4u-app/agent-config/commit/44e064abecd90d924432fcef958477964ed13fa7))
|
|
191
|
+
* **sync:** meta pack manifest + index + envelope dist projection ([5473ca0](https://github.com/event4u-app/agent-config/commit/5473ca0e9e6446bfff475db8668ff334b9f2295d))
|
|
192
|
+
* **roadmaps:** feedback-8.11-5 executed and archived; team-mode Phases 3+4 complete ([487cbe6](https://github.com/event4u-app/agent-config/commit/487cbe61a2fa52e20c21db66aa9b6a4650aac60b))
|
|
193
|
+
* **roadmap:** regenerate progress dashboard ([d085f71](https://github.com/event4u-app/agent-config/commit/d085f716c25c06fa2edf6561c0c66ba9204acdc9))
|
|
194
|
+
* **roadmap:** archive completed ecosystem-harvest bug-security-rigor ([25982c5](https://github.com/event4u-app/agent-config/commit/25982c55aefd3a8c2b8715f2ac05112e52849bb4))
|
|
195
|
+
* **roadmap:** measurement-unblock Phase 3 complete (build decision + parity pass + armed gate) ([9c0f051](https://github.com/event4u-app/agent-config/commit/9c0f051c91b6a712884fb1408e41c339fc42462f))
|
|
196
|
+
|
|
197
|
+
Tests: 7716 (+158 since 8.13.0)
|
|
198
|
+
|
|
199
|
+
## [8.13.0](https://github.com/event4u-app/agent-config/compare/8.12.0...8.13.0) (2026-07-12)
|
|
200
|
+
|
|
201
|
+
### Features
|
|
202
|
+
|
|
203
|
+
* **backlinks:** orphan-stub correctness check + fan-out info + gated hard-gate list ([fe88ff5](https://github.com/event4u-app/agent-config/commit/fe88ff5c42bd08338c0ab9c83f3e1fdf0f6f7d1c))
|
|
204
|
+
* **team-doctor:** 'team' health check + suppressible setup hint ([22a5c14](https://github.com/event4u-app/agent-config/commit/22a5c141ddaa47994f7d9c150dafa36b0fcb38a8))
|
|
205
|
+
* **team-commands:** /team family — thin fail-closed delegations under ai_team governance ([958c491](https://github.com/event4u-app/agent-config/commit/958c4910bf2276449a99ef2462e78caa718148a5))
|
|
206
|
+
* **team-config:** ai_team contract — default-off block, fail-closed loader, shared quota ([f45c988](https://github.com/event4u-app/agent-config/commit/f45c98860a63d2c8c572a9e121ecaf05d4c34aa9))
|
|
207
|
+
* **pr-create:** harden the freshness gate — regenerate-on-conflict + update freshness ([83104e0](https://github.com/event4u-app/agent-config/commit/83104e0a3a8666d8eb47044c9b9e028a1e60c913))
|
|
208
|
+
|
|
209
|
+
### Bug Fixes
|
|
210
|
+
|
|
211
|
+
* **rules:** restore the concrete verification-tool mapping in the improve-before-implement stub ([a54d89f](https://github.com/event4u-app/agent-config/commit/a54d89f852120e639f25aa059e33baf672255f66))
|
|
212
|
+
|
|
213
|
+
### Documentation
|
|
214
|
+
|
|
215
|
+
* **round4:** strict:false operating conditions + Batch B/C stub-necessity pre-questions ([7961ba4](https://github.com/event4u-app/agent-config/commit/7961ba4dda15d33fe4a8be6a92d4e71b7a4bedb6))
|
|
216
|
+
* **team:** getting-started section — depth complement to the council, no value claims ([6c64fc3](https://github.com/event4u-app/agent-config/commit/6c64fc3acade96c3d1eff3c610677be5a852f18e))
|
|
217
|
+
* **roadmap:** measurement-unblock Phase 2 — codex auth+smoke verified, paired run in flight ([489bdc1](https://github.com/event4u-app/agent-config/commit/489bdc168565c6b27eceeaca8384751e089378ef))
|
|
218
|
+
|
|
219
|
+
### Chores
|
|
220
|
+
|
|
221
|
+
* **counts:** hero badge + browse line 178 -> 183 after the 8.12.0 release merge ([ef396f5](https://github.com/event4u-app/agent-config/commit/ef396f55476ccfed53387a6fbe49201be8e312c0))
|
|
222
|
+
* **counts:** featured-skills command count 178 -> 183 (update_counts anchor) ([13cb8de](https://github.com/event4u-app/agent-config/commit/13cb8de13373e66c26a21689b2a86427ee9ac043))
|
|
223
|
+
* **roadmaps:** feedback-8.11-4 executed and archived; team-mode P1+P2 complete ([dd44aa6](https://github.com/event4u-app/agent-config/commit/dd44aa69fea35d95fadc00936c3ec23caaeb2c1b))
|
|
224
|
+
|
|
225
|
+
Tests: 7558 (+49 since 8.12.0)
|
|
226
|
+
|
|
227
|
+
## [8.12.0](https://github.com/event4u-app/agent-config/compare/8.11.0...8.12.0) (2026-07-12)
|
|
228
|
+
|
|
229
|
+
### Features
|
|
230
|
+
|
|
231
|
+
* **rules:** P4 migration Batch A — 9 rule bodies to their existing homes (−51.7% stub bytes) ([94dc19c](https://github.com/event4u-app/agent-config/commit/94dc19cac62ff21449afd5a373c1363ee3d6215c))
|
|
232
|
+
* **explain-run:** plain-language Summary section ([257d8fc](https://github.com/event4u-app/agent-config/commit/257d8fc4d2ef69e9696f9a143d653a1a0a771e2c))
|
|
233
|
+
* **complexity:** report v2 — proxy honesty, coupling metric, soft-ratchet baseline ([8328bae](https://github.com/event4u-app/agent-config/commit/8328bae0b791da4215fd704a90734123df0f6b13))
|
|
234
|
+
* **bench:** live retrieval benchmark executed — decisive PASS ([25d9f03](https://github.com/event4u-app/agent-config/commit/25d9f03756e33870fbc507bc1bc964c5b6c83403))
|
|
235
|
+
* **bench:** persona-placebo benchmark — executed, HONEST NULL (identity adds nothing) ([000c3e7](https://github.com/event4u-app/agent-config/commit/000c3e77081d7aa39e3d617f98ba67ef27121218))
|
|
236
|
+
* **reports:** complexity report, explain-run v0, rule-backlinks — all report-only with kill criteria ([e718f13](https://github.com/event4u-app/agent-config/commit/e718f1396562e0cb94fab344b75332a73a34ac35))
|
|
237
|
+
* **knowledge:** per-card sensitivity classes, promotion gate, revocation trail (ADR-121) ([a14b1ad](https://github.com/event4u-app/agent-config/commit/a14b1ad54b750d86ff288cd96ad9e76fe58fcdc5))
|
|
238
|
+
* **consumer-matrix:** live hook-lifecycle leg + dist import-graph completeness ([1f1d9e1](https://github.com/event4u-app/agent-config/commit/1f1d9e1f8f8186de51071f47ca20ed649fad01f3))
|
|
239
|
+
* **bench:** length-neutral judge rerun — executed, SECOND INCONCLUSIVE (gate closed-by-diagnosis) ([66ba0a3](https://github.com/event4u-app/agent-config/commit/66ba0a3e7a995fb8f7db1b795d33682328dc8596))
|
|
240
|
+
* **council:** restate pass — the last wiring item (pre-round-1, transport-safe) ([4df6069](https://github.com/event4u-app/agent-config/commit/4df6069e127a0467f5a86aea57ea4c90929746a1))
|
|
241
|
+
* **council:** stance-line repair call in consult (bounded, transport-gated) ([91fd10e](https://github.com/event4u-app/agent-config/commit/91fd10e25429d7d35f460ba8560c76565007b0c6))
|
|
242
|
+
* **council:** debate-gate repair dispatch in run_debate (bounded, policy-gated) ([e7f6380](https://github.com/event4u-app/agent-config/commit/e7f6380639835d61c72b4b89cb79d77a5c90cb9c))
|
|
243
|
+
|
|
244
|
+
### Bug Fixes
|
|
245
|
+
|
|
246
|
+
* **ci:** roadmap-ci-steps-mechanics joins the task-invocation skip class ([659d775](https://github.com/event4u-app/agent-config/commit/659d775099bd67168beac8a5742a4efbe773b690))
|
|
247
|
+
* **ci:** skill description under the 200-char linter cap + modernize a migrated legacy path ([893ce69](https://github.com/event4u-app/agent-config/commit/893ce6922df759ac2432b221e28951a292233a47))
|
|
248
|
+
* **proof:** move the honest-null entry into the build_proof generator ([5c1a12c](https://github.com/event4u-app/agent-config/commit/5c1a12c152d35fd320e40f0173b27f842fb39903))
|
|
249
|
+
* **ci:** regenerate proof.md post-merge + de-literalize example imports ([6ff330d](https://github.com/event4u-app/agent-config/commit/6ff330d5a84c4682fae63eb2331ec3f645473cb4))
|
|
250
|
+
* **claims:** thin-projection honesty + pre-register the council-vs-solo baseline ([6aee669](https://github.com/event4u-app/agent-config/commit/6aee669e311261121f582793e47698e029b0c8ae))
|
|
251
|
+
* **identity:** resolve the placeholder git identity and guard against recurrence ([b17a801](https://github.com/event4u-app/agent-config/commit/b17a801dd16ddda9c3bcfd6b269dc65aff5a5e41))
|
|
252
|
+
* **counts:** regenerate CAPABILITIES.yaml and close the structured-surface drift gap ([55aafb5](https://github.com/event4u-app/agent-config/commit/55aafb58b7f0e775b73a100d0b83f55b13defea0))
|
|
253
|
+
|
|
254
|
+
### Documentation
|
|
255
|
+
|
|
256
|
+
* **posture:** knowledge scaling reality + local_auto_run as deliberate design ([ad9f43b](https://github.com/event4u-app/agent-config/commit/ad9f43baaa52cea533f6e1fd91ca012d95d35e9e))
|
|
257
|
+
* **maintainers:** one-page system map + prepared branch protection ([efe63d0](https://github.com/event4u-app/agent-config/commit/efe63d006ff7ef97b1f4e201c29e53824ef3af95))
|
|
258
|
+
* **claims:** pre-register the utilization-window decision criteria ([4667adf](https://github.com/event4u-app/agent-config/commit/4667adf085af9d2e178932b0a3fc9e2d674d6d2c))
|
|
259
|
+
* **roadmap:** complete + archive road-to-opt-retrieval-and-memory ([cfc8657](https://github.com/event4u-app/agent-config/commit/cfc86578b7033945d227db80d98821aef33b8917))
|
|
260
|
+
* **roadmap:** complete + archive road-to-opt-council-deliberation ([8777a8e](https://github.com/event4u-app/agent-config/commit/8777a8ebf90c2fc32362cfcbe1e58f8bee8f56d7))
|
|
261
|
+
* **proof:** persona-identity-placebo-null — backed claim + honest-null story ([0d0de13](https://github.com/event4u-app/agent-config/commit/0d0de1387b6cd61a0165ec26a1db695172dcc2bd))
|
|
262
|
+
* **rules:** rule-body migration inventory + P4 batches into request-scoped-rule-load ([c5abc40](https://github.com/event4u-app/agent-config/commit/c5abc40e4edc09d92681afbeae5f837f63784e29))
|
|
263
|
+
* **bench:** record the closed-by-diagnosis disposition ([e02f7d7](https://github.com/event4u-app/agent-config/commit/e02f7d765d1aa2d61ae7bd1e879b27a1711fe595))
|
|
264
|
+
* **roadmap:** flip the restate step + the confirmed harness prerequisite ([6415b3e](https://github.com/event4u-app/agent-config/commit/6415b3e672a659e8453159ca7e421d2ce7fdb9da))
|
|
265
|
+
* **roadmap:** flip the stance-repair + chairman-ADR steps ([c1278a0](https://github.com/event4u-app/agent-config/commit/c1278a092027bb1659ba37d3281b9692a2c4066e))
|
|
266
|
+
* **adr:** ADR-120 — council chairman mode supersedes always-host synthesis ([9e593f4](https://github.com/event4u-app/agent-config/commit/9e593f42bcd5ff844332eb7eca4fbb545be7d8fd))
|
|
267
|
+
* **roadmap:** flip the debate-gate repair-dispatch step ([d4bba6b](https://github.com/event4u-app/agent-config/commit/d4bba6b31c1ceca01480f66ea80174a27887ab88))
|
|
268
|
+
|
|
269
|
+
### Chores
|
|
270
|
+
|
|
271
|
+
* **sync:** propagate the shortened skill description into the generated domain README ([ec2a931](https://github.com/event4u-app/agent-config/commit/ec2a931e76b148c0c653dad3353f6f11590edf33))
|
|
272
|
+
* **roadmaps:** feedback-8.11-2 disposition executed and archived ([0037d52](https://github.com/event4u-app/agent-config/commit/0037d521c62699d3757b5e975dafbec54beab1b4))
|
|
273
|
+
* **condense:** record knowledge-card template condensation hash ([7ce68cc](https://github.com/event4u-app/agent-config/commit/7ce68cc38d976a4e10666bdf006db4059d788305))
|
|
274
|
+
* **roadmaps:** feedback-8.11 disposition executed and archived ([960179f](https://github.com/event4u-app/agent-config/commit/960179fa08e343a8e1bb1856bce76e2025abe8d3))
|
|
275
|
+
|
|
276
|
+
Tests: 7509 (+130 since 8.11.0)
|
package/docs/benchmark.md
CHANGED
|
@@ -558,3 +558,27 @@ replication on a per-token-billed key.
|
|
|
558
558
|
|
|
559
559
|
- Runner: `src/scripts/bench_ab_v2_run.ts --host codex` (checkpoint-resumable).
|
|
560
560
|
- Roadmap: `agents/roadmaps/archive/road-to-opt-measurement-unblock.md` Phase 2.
|
|
561
|
+
|
|
562
|
+
## adversarial-verification-council finding coverage — UNBACKED (pending corpus + run)
|
|
563
|
+
|
|
564
|
+
Pre-registered claim `adversarial-council-finding-coverage` (docs/CLAIMS.md,
|
|
565
|
+
ADR-122): on the RESIDUAL defect pool — defects that survive a single strong
|
|
566
|
+
cross-model judge — a cross-vendor skeptic panel (subagent-orchestration Mode 9,
|
|
567
|
+
`adversarial-verification-council`) finds materially more residual defects than
|
|
568
|
+
that judge, at a false-positive rate no worse than baseline on a
|
|
569
|
+
controversial-but-correct control.
|
|
570
|
+
|
|
571
|
+
- **Design (two-stage residual protocol, corpus-validity bar, dual threshold,
|
|
572
|
+
controversial-clean FP control):** [`docs/design/adversarial-council-eval.md`](design/adversarial-council-eval.md).
|
|
573
|
+
- **Gate (locked at pre-registration):** relative residual-recall lift >= +25%
|
|
574
|
+
**AND** absolute >= +8 pp, **AND** panel FP not worse than baseline within
|
|
575
|
+
noise — encoded + tested in
|
|
576
|
+
[`src/scripts/_lib/adversarial_council_gate.ts`](../src/scripts/_lib/adversarial_council_gate.ts).
|
|
577
|
+
- **Status: UNBACKED.** The corpus-validity gate BLOCKS the registered run: the
|
|
578
|
+
existing `internal/bench/orchestration/corpus/` was built for cross-vendor
|
|
579
|
+
*parity* (obvious, model-differentiating defects), not judge-survivable
|
|
580
|
+
residual subtleties, so a run on it would be a measurement artifact (the
|
|
581
|
+
council's Round-1 critique). Resolving the claim needs (1) a curated
|
|
582
|
+
judge-survivable-subtlety corpus with a published distribution, then (2) a
|
|
583
|
+
maintainer-gated paid cross-vendor run. Honest-null on that run keeps the
|
|
584
|
+
surface default-off permanently, like recursive-verification.
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
---
|
|
2
|
+
adr: 122
|
|
3
|
+
status: accepted
|
|
4
|
+
date: 2026-07-14
|
|
5
|
+
decision: adversarial-verification-council
|
|
6
|
+
supersedes: —
|
|
7
|
+
superseded_by: —
|
|
8
|
+
phase: adversarial-verification-council
|
|
9
|
+
type: structural
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# ADR-122 — Adversarial verification council: finding-coverage scope, advisory-only, default-off
|
|
13
|
+
|
|
14
|
+
## Status
|
|
15
|
+
|
|
16
|
+
Accepted (2026-07-14).
|
|
17
|
+
|
|
18
|
+
## Context
|
|
19
|
+
|
|
20
|
+
The verify/council family is mature: the external council engine, multi-round
|
|
21
|
+
debate, chairman mode (ADR-120), stance tally, `verify-repair-loop` (the
|
|
22
|
+
judge→revise→re-judge loop), the seven `judge-*` skills, `judge-synthesis`, the
|
|
23
|
+
`subagent-orchestration` mode set, and the `verify-budget` routing all ship. A
|
|
24
|
+
three-strand research pass (surface map + archived-roadmap autopsy + infra
|
|
25
|
+
inventory, 2026-07-14) confirmed that almost every *decision-consensus*
|
|
26
|
+
mechanism in this space is either built or is a recorded honest-null:
|
|
27
|
+
|
|
28
|
+
- recursive self-correction as a capability/discipline lever — honest-null,
|
|
29
|
+
council-terminal (ADR-106);
|
|
30
|
+
- the judge→revise→re-judge loop — shipped as `verify-repair-loop`;
|
|
31
|
+
- personas / named-figure agents — placebo-null (Δ=0.17, p=0.607); provider
|
|
32
|
+
diversity moved quality ~15× more than persona identity;
|
|
33
|
+
- browser-automation council members — maintainer-killed (council-modes 2c);
|
|
34
|
+
- a `--council` in-flow UX product surface — stub, gated on the
|
|
35
|
+
orchestration-scope decision + a demand signal;
|
|
36
|
+
- "council beats a solo strong model on decision quality" —
|
|
37
|
+
`council-vs-solo-baseline`, pre-registered `unbacked`, spend-gated.
|
|
38
|
+
|
|
39
|
+
The one un-mined, evidence-supported wedge is **adversarial verification as
|
|
40
|
+
defect FINDING coverage** (not decision quality). The `cross-vendor-parity`
|
|
41
|
+
claim is *backed*: different providers surface different real findings on
|
|
42
|
+
multi-file analysis; both catch a planted hollow impl; both stay silent on a
|
|
43
|
+
clean control. No wired surface exists that runs a model-diverse skeptic panel
|
|
44
|
+
adversarially against a real change to maximise defect-finding coverage — the
|
|
45
|
+
nearest kin (`judge-with-debate`, strict-er-wins on one verdict;
|
|
46
|
+
`judge-synthesis`, consume-only consensus) do something categorically different.
|
|
47
|
+
|
|
48
|
+
## Decision
|
|
49
|
+
|
|
50
|
+
Ship an **adversarial verification council** as a distinct, opt-in,
|
|
51
|
+
**advisory-only** surface, scoped to **finding coverage, not decision quality**:
|
|
52
|
+
|
|
53
|
+
1. **A 9th `subagent-orchestration` mode** `adversarial-verification-council`:
|
|
54
|
+
N (default 2) distinct-model skeptics red-team a real, already-verified
|
|
55
|
+
change through the `judge-*` lenses; each returns findings; results are
|
|
56
|
+
reconciled into a findings-by-severity verdict with per-finding provenance and
|
|
57
|
+
a cross-model confidence signal. Distinct from Mode 6 because the output is a
|
|
58
|
+
**findings-union with provenance**, not a strict-er-wins single verdict.
|
|
59
|
+
2. **A machine-readable findings envelope** `adversarial-findings.json` (draft-07,
|
|
60
|
+
hand-validated like `subagent-status.json`) — filling the gap of no shared
|
|
61
|
+
judge-verdict schema.
|
|
62
|
+
3. **Countable reconciliation in TS with tests** (`adversarial_reconcile.ts`):
|
|
63
|
+
dedup, severity-quorum confidence, and false-positive suppression. Never
|
|
64
|
+
LLM-computed prose (anti-lesson). Never gates the change — only ranks and
|
|
65
|
+
annotates findings.
|
|
66
|
+
4. **Opt-in wiring, default-off**: a `subagents.adversarial_council: off|ask|on`
|
|
67
|
+
setting (default `off`); an opt-in escalation tier in `verify-budget` for
|
|
68
|
+
explicitly high-risk changes; an opt-in flag on `/review-changes` (or
|
|
69
|
+
`/judge`). The panel never auto-gates a change (Hard Floor: advisory only).
|
|
70
|
+
5. **Prove-or-drop against a pre-registered finding-coverage claim**
|
|
71
|
+
(`adversarial-council-finding-coverage`, `unbacked` at start). The benchmark
|
|
72
|
+
is a **two-stage residual-detection protocol** (single strong judge first →
|
|
73
|
+
panel on the judge-passed residual subset), on a corpus with published
|
|
74
|
+
judge-survivable subtlety distribution, with a **dual threshold** (relative
|
|
75
|
+
≥ +25% AND absolute ≥ +8 pp residual-recall lift) and a
|
|
76
|
+
**controversial-but-correct FP control**. Honest-null is an accepted outcome
|
|
77
|
+
and keeps the surface inert-by-default permanently.
|
|
78
|
+
|
|
79
|
+
### Skeptic transport (fork F1)
|
|
80
|
+
|
|
81
|
+
Everyday mode uses an in-session subagent panel with enforced model diversity.
|
|
82
|
+
The **registered benchmark run and the opt-in high-risk tier require
|
|
83
|
+
cross-*vendor* skeptics** (via `council_cli.ts`, artefact/diff-as-text,
|
|
84
|
+
read-only) — the backed `cross-vendor-parity` signal is provider-level, so the
|
|
85
|
+
claim cannot rest on same-vendor model diversity alone.
|
|
86
|
+
|
|
87
|
+
## Consequences
|
|
88
|
+
|
|
89
|
+
- The package gains a defect-finding verification surface that composes existing
|
|
90
|
+
primitives — no rebuilt engine, no recursion loop, no persona layer, no
|
|
91
|
+
browser automation, no `--council` UX product.
|
|
92
|
+
- A new shared findings schema exists that future judge-panel work can reuse.
|
|
93
|
+
- The value claim is measurable (finding coverage on a static corpus, unlike
|
|
94
|
+
orchestration value in the no-runtime harness), and its resolution is honest:
|
|
95
|
+
a null keeps the surface off by default, like recursive-verification.
|
|
96
|
+
- Default-off means zero cost/behaviour change until a consumer opts in.
|
|
97
|
+
|
|
98
|
+
## Landmine-clearance (do-not-relitigate map)
|
|
99
|
+
|
|
100
|
+
Each settled decision this roadmap does NOT touch:
|
|
101
|
+
|
|
102
|
+
- **Recursion / re-attempt loop** — not added; the panel is single-pass finding
|
|
103
|
+
generation, not a self-correction loop.
|
|
104
|
+
- **judge→revise→re-judge** — reused (`verify-repair-loop`), not rebuilt.
|
|
105
|
+
- **Council engine / debate / budget / redaction / chairman** — reused, not
|
|
106
|
+
re-proposed.
|
|
107
|
+
- **Personas / named-figure agents / persona panel-mode** — not used; skeptics
|
|
108
|
+
are model-diverse, not persona-diverse.
|
|
109
|
+
- **Browser-automation / web-subscription scraping** — not revived.
|
|
110
|
+
- **`--council` in-flow UX product / verdict-report product layer** — not built;
|
|
111
|
+
the findings envelope is an engineering contract, not a productized report.
|
|
112
|
+
- **council-vs-solo decision-quality claim** — out of scope; the claim here is
|
|
113
|
+
finding coverage, resting on the backed `cross-vendor-parity` signal.
|
|
114
|
+
- **Orchestration value measured in a no-runtime harness** — not claimed; the
|
|
115
|
+
benchmark measures finding coverage on a static planted-defect corpus.
|
|
116
|
+
- **Prose-computed reconciliation** — reconciliation is TS with tests.
|
|
117
|
+
|
|
118
|
+
## Alternatives
|
|
119
|
+
|
|
120
|
+
- **Extend Mode 6 `judge-with-debate`** — rejected: its strict-er-wins single
|
|
121
|
+
verdict is a go/no-go decision, categorically different from a findings-union;
|
|
122
|
+
overloading it would blur two contracts.
|
|
123
|
+
- **Build on the external `ai-council` for the everyday path** — rejected: the
|
|
124
|
+
external council is artefact-only / read-only by Hard-Floor contract; the
|
|
125
|
+
everyday code path is in-session `subagent-orchestration`. External
|
|
126
|
+
cross-vendor is reserved for the registered claim + high-risk tier.
|
|
127
|
+
- **Default-on** — rejected: no evidence yet; default-off until the
|
|
128
|
+
pre-registered claim is `backed`.
|
|
129
|
+
|
|
130
|
+
## References
|
|
131
|
+
|
|
132
|
+
- `agents/roadmaps/road-to-adversarial-verification-council.md` — the roadmap.
|
|
133
|
+
- ADR-106 (recursive-verification honest-null), ADR-117 (subagents.auto flip),
|
|
134
|
+
ADR-120 (council chairman mode), ADR-109 (subagent-v1 contract).
|
|
135
|
+
- `docs/CLAIMS.md#adversarial-council-finding-coverage` — the pre-registered claim.
|
|
136
|
+
- `cross-vendor-parity` (backed) — the evidence the finding-coverage scope rests on.
|
package/docs/decisions/INDEX.md
CHANGED
|
@@ -125,6 +125,7 @@ _Auto-generated by `scripts/adr/regenerate_index.py`. Do not edit._
|
|
|
125
125
|
| [ADR-119](ADR-119-global-knowledge-default-on.md) | Global Knowledge Default On | accepted | 2026-07-12 | 103 |
|
|
126
126
|
| [ADR-120](ADR-120-council-chairman-mode.md) | Council Chairman Mode | accepted | 2026-07-12 | — |
|
|
127
127
|
| [ADR-121](ADR-121-knowledge-sensitivity-classes.md) | Knowledge Sensitivity Classes | accepted | 2026-07-12 | — |
|
|
128
|
+
| [ADR-122](ADR-122-adversarial-verification-council.md) | Adversarial Verification Council | accepted | 2026-07-14 | — |
|
|
128
129
|
| [ADR-200](ADR-200-python-to-typescript-migration.md) | Python To Typescript Migration | accepted | 2026-06-11 | — |
|
|
129
130
|
|
|
130
131
|
## Unnumbered (legacy)
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
# Adversarial verification council eval — two-stage residual-detection design
|
|
2
|
+
|
|
3
|
+
> Design artifact for `road-to-adversarial-verification-council` Phase 4. It
|
|
4
|
+
> pins the benchmark that resolves the pre-registered `adversarial-council-
|
|
5
|
+
> finding-coverage` claim (docs/CLAIMS.md, ADR-122). Writing this design is
|
|
6
|
+
> autonomous; **curating the corpus and running the paid cross-vendor arm is a
|
|
7
|
+
> maintainer cost decision**, gated on the corpus-validity check below.
|
|
8
|
+
|
|
9
|
+
## What the claim is — and is not
|
|
10
|
+
|
|
11
|
+
- **Is:** does a cross-vendor skeptic panel find materially more of the defects
|
|
12
|
+
that **survive a single strong judge** (the residual pool), at a false-positive
|
|
13
|
+
rate no worse than that judge on a controversial-but-correct control?
|
|
14
|
+
- **Is not:** whether the council beats a solo model on *decision quality* — that
|
|
15
|
+
is the separate, `unbacked`, spend-gated `council-vs-solo-baseline`
|
|
16
|
+
(docs/design/council-vs-solo-baseline.md), explicitly out of scope.
|
|
17
|
+
|
|
18
|
+
## The council's load-bearing critique (folded in)
|
|
19
|
+
|
|
20
|
+
The AI-council debate (2026-07-14, anthropic/claude-sonnet-4-5 + openai/gpt-4o)
|
|
21
|
+
converged on one real risk: the existing `cross-model-parity` corpus was built
|
|
22
|
+
to show that different vendors catch different **obvious** things (parity), not
|
|
23
|
+
to simulate the **residual** state after a competent first pass. Running the
|
|
24
|
+
registered claim on it would force an honest-null as a *measurement artifact*,
|
|
25
|
+
not a mechanism result. This design answers that with a two-stage protocol, a
|
|
26
|
+
corpus-subtlety bar, a dual threshold, and a controversial-clean FP control.
|
|
27
|
+
|
|
28
|
+
## Two-stage protocol
|
|
29
|
+
|
|
30
|
+
1. **Stage 1 — single strong judge.** A single cross-model judge runs on every
|
|
31
|
+
planted-defect change. The defects it CATCHES are removed from scope.
|
|
32
|
+
2. **Stage 2 — the panel on the residual.** Only the changes that PASS stage 1
|
|
33
|
+
(defect not caught) proceed to the Mode 9 panel. Recall is measured on this
|
|
34
|
+
**judge-passed residual pool** — the production-relevant quantity.
|
|
35
|
+
|
|
36
|
+
This makes "residual detection" explicit rather than implicit in corpus
|
|
37
|
+
selection.
|
|
38
|
+
|
|
39
|
+
## Corpus-validity gate (blocks the registered run)
|
|
40
|
+
|
|
41
|
+
The corpus must contain **judge-survivable subtleties**, published as a
|
|
42
|
+
distribution before the registered run:
|
|
43
|
+
|
|
44
|
+
- multi-file interaction defects,
|
|
45
|
+
- subtle logic inversions that read as plausible,
|
|
46
|
+
- security masked by correct-looking patterns,
|
|
47
|
+
- edge cases in complex state.
|
|
48
|
+
|
|
49
|
+
Publish the severity/subtlety distribution (share single-file <5 LoC vs
|
|
50
|
+
multi-file interaction). A corpus skewed to trivially-detectable defects fails
|
|
51
|
+
this gate — the registered run does not proceed until it passes.
|
|
52
|
+
|
|
53
|
+
### Assessment of the existing corpus (2026-07-14)
|
|
54
|
+
|
|
55
|
+
`internal/bench/orchestration/corpus/` (5 tasks: orch-01..03, pv-01 hollow,
|
|
56
|
+
pv-02 control) was purpose-built for the parity signal and for A3
|
|
57
|
+
production-validator Gate-A. `pv-01` is a deliberately **obvious** hollow impl
|
|
58
|
+
(a floor sanity check), and none of the five tasks is designed as a
|
|
59
|
+
judge-survivable residual defect. **Conclusion: this corpus does NOT meet the
|
|
60
|
+
subtlety bar** — so the registered run is **blocked** pending a curated
|
|
61
|
+
residual-defect corpus. The claim stays `unbacked` until then (no false
|
|
62
|
+
`backed`).
|
|
63
|
+
|
|
64
|
+
## Controversial-but-correct FP control
|
|
65
|
+
|
|
66
|
+
The clean control includes correct-but-non-obvious cases (real perf/security
|
|
67
|
+
design tradeoffs, uncommon patterns) — not only obviously-clean code — so the
|
|
68
|
+
red-team posture's true FP cost is measured. Panel FP is compared to the
|
|
69
|
+
single-judge FP on the SAME control.
|
|
70
|
+
|
|
71
|
+
## Panel = cross-vendor
|
|
72
|
+
|
|
73
|
+
The registered run and the opt-in high-risk tier use >=2 distinct **providers**
|
|
74
|
+
(e.g. anthropic + openai), via the council transport (`council_cli.ts`,
|
|
75
|
+
artefact/diff-as-text, read-only). The backed `cross-vendor-parity` signal is
|
|
76
|
+
provider-level; same-vendor model diversity is insufficient for the claim.
|
|
77
|
+
|
|
78
|
+
## The gate (locked at pre-registration)
|
|
79
|
+
|
|
80
|
+
Encoded in [`src/scripts/_lib/adversarial_council_gate.ts`](../../src/scripts/_lib/adversarial_council_gate.ts)
|
|
81
|
+
(`evaluateCouncilBench`), covered by `adversarial_council_gate.test.ts`:
|
|
82
|
+
|
|
83
|
+
- (a) relative residual-recall lift >= **+25%**, AND
|
|
84
|
+
- (b) absolute residual-recall lift >= **+8 pp**, AND
|
|
85
|
+
- panel FP not worse than single-judge FP within the noise margin.
|
|
86
|
+
|
|
87
|
+
Both recall thresholds are required — the dual gate guards the base-rate
|
|
88
|
+
compression the council flagged (a high single-judge baseline makes relative
|
|
89
|
+
lift easy but absolute must still clear). Threshold values are **locked**;
|
|
90
|
+
corpus/protocol may be refined *before* the registered run, never the threshold
|
|
91
|
+
after seeing results.
|
|
92
|
+
|
|
93
|
+
## Outcome handling
|
|
94
|
+
|
|
95
|
+
- **Pass** → flip `docs/CLAIMS.md#adversarial-council-finding-coverage` to
|
|
96
|
+
`backed` with the report pointer; document the recommended cross-vendor config.
|
|
97
|
+
- **Honest-null** → record it (ADR-122 addendum + `docs/benchmark.md`), keep the
|
|
98
|
+
surface `off` by default permanently, mark the roadmap null-but-shipped-inert
|
|
99
|
+
(like recursive-verification).
|
|
100
|
+
|
|
101
|
+
## Status
|
|
102
|
+
|
|
103
|
+
- Gate logic: **built + tested** (deterministic TS).
|
|
104
|
+
- Corpus-validity gate: **assessed — existing corpus fails the subtlety bar.**
|
|
105
|
+
- Registered paid cross-vendor run: **deferred**, blocked on curating a
|
|
106
|
+
judge-survivable-subtlety corpus. Claim remains `unbacked`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> Pick the entry that matches what you do day-to-day. Each section names the three skills you will reach for first and shows whether MCP (no terminal) or CLI (terminal) is the simpler install path for that role.
|
|
4
4
|
|
|
5
|
-
`agent-config` ships 275 skills,
|
|
5
|
+
`agent-config` ships 275 skills, 105 governed rules, and 184 commands. You do not need all of them. Each role below filters to the slice that pays back in week one; the rest stays available and shows up on demand when a task references it.
|
|
6
6
|
|
|
7
7
|
> **Taglines at a glance →** [`docs/role-experiences.md`](role-experiences.md) — the one-line pitch per role experience, in one table.
|
|
8
8
|
|
package/docs/getting-started.md
CHANGED
|
@@ -134,7 +134,7 @@ Your agent is now:
|
|
|
134
134
|
- **Respecting your codebase** — no conflicting patterns
|
|
135
135
|
- **Following standards** — consistent code quality
|
|
136
136
|
|
|
137
|
-
This is enforced automatically by
|
|
137
|
+
This is enforced automatically by 105 rules. No configuration needed.
|
|
138
138
|
|
|
139
139
|
---
|
|
140
140
|
|
|
@@ -33,7 +33,7 @@ the host lacks (a static host gives it no runtime attention guarantee, but a
|
|
|
33
33
|
runtime-only system gives it nothing at all here). A runtime-only system contributes *nothing* on these hosts.
|
|
34
34
|
|
|
35
35
|
### 2. Intent routing, not a 500-artefact dump
|
|
36
|
-
A prompt does not load all 275 skills. `dist/router.json` (
|
|
36
|
+
A prompt does not load all 275 skills. `dist/router.json` (101 routed rules, intent →
|
|
37
37
|
skill, keyword/phrase/path triggers) carries the right skill on intent. The
|
|
38
38
|
governance value is *selection discipline* — the host gets the relevant rule
|
|
39
39
|
set, not the whole catalogue as context ballast.
|