@event4u/agent-config 8.11.0 → 8.13.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 (87) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/AGENTS.md +1 -0
  3. package/CHANGELOG.md +64 -266
  4. package/README.md +2 -2
  5. package/dist/agent-src/commands/pr/create.md +26 -0
  6. package/dist/agent-src/commands/team/adversarial.md +96 -0
  7. package/dist/agent-src/commands/team/delegate.md +109 -0
  8. package/dist/agent-src/commands/team/review.md +84 -0
  9. package/dist/agent-src/commands/team/status.md +92 -0
  10. package/dist/agent-src/commands/team.md +147 -0
  11. package/dist/agent-src/contexts/execution/roadmap-ci-steps-mechanics.md +117 -0
  12. package/dist/agent-src/contexts/execution/roadmap-process-loop.md +106 -94
  13. package/dist/agent-src/rules/architecture.md +6 -51
  14. package/dist/agent-src/rules/code-comment-discipline.md +10 -94
  15. package/dist/agent-src/rules/decision-revisit-gate.md +9 -77
  16. package/dist/agent-src/rules/improve-before-implement.md +8 -65
  17. package/dist/agent-src/rules/no-roadmap-references.md +13 -77
  18. package/dist/agent-src/rules/persona-governance.md +5 -47
  19. package/dist/agent-src/rules/provider-lifecycle-discipline.md +6 -32
  20. package/dist/agent-src/rules/roadmap-ci-steps-policy.md +21 -104
  21. package/dist/agent-src/rules/untrusted-input-defense.md +3 -75
  22. package/dist/agent-src/skills/agent-docs-writing/SKILL.md +83 -0
  23. package/dist/agent-src/skills/decision-review/SKILL.md +86 -0
  24. package/dist/agent-src/skills/module-detect-on-the-fly/SKILL.md +58 -1
  25. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  26. package/dist/agent-src/templates/contexts/knowledge-card.md +12 -0
  27. package/dist/discovery/deprecation-report.md +1 -1
  28. package/dist/discovery/discovery-manifest.json +159 -21
  29. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  30. package/dist/discovery/discovery-manifest.summary.md +3 -3
  31. package/dist/discovery/orphan-report.md +1 -1
  32. package/dist/discovery/packs.json +11 -6
  33. package/dist/discovery/trust-report.md +2 -2
  34. package/dist/discovery/workspaces.json +10 -5
  35. package/dist/install/install.mjs +38 -0
  36. package/dist/mcp/registry-manifest.json +2 -2
  37. package/dist/router.json +1 -1
  38. package/dist/server/schemas/settings.js +7 -0
  39. package/dist/server/schemas/settings.js.map +1 -1
  40. package/docs/CLAIMS.md +31 -3
  41. package/docs/architecture.md +2 -2
  42. package/docs/archive/CHANGELOG-pre-8.12.0.md +304 -0
  43. package/docs/benchmark.md +39 -0
  44. package/docs/catalog.md +10 -4
  45. package/docs/command-flows.md +6 -1
  46. package/docs/contracts/ai-council-config.md +9 -4
  47. package/docs/contracts/ai-team-config.md +191 -0
  48. package/docs/contracts/command-clusters.md +1 -0
  49. package/docs/contracts/persona-schema.md +49 -0
  50. package/docs/contracts/provider-lifecycle.md +29 -4
  51. package/docs/decisions/ADR-120-council-chairman-mode.md +70 -0
  52. package/docs/decisions/ADR-121-knowledge-sensitivity-classes.md +90 -0
  53. package/docs/decisions/INDEX.md +2 -0
  54. package/docs/design/council-vs-solo-baseline.md +92 -0
  55. package/docs/design/utilization-window-criteria.md +51 -0
  56. package/docs/featured-skills.md +1 -1
  57. package/docs/getting-started-by-role.md +3 -1
  58. package/docs/getting-started.md +31 -1
  59. package/docs/guidelines/agent-infra/agent-interaction-and-decision-quality.md +68 -0
  60. package/docs/guidelines/agent-infra/rule-body-migration-inventory.md +241 -0
  61. package/docs/guidelines/agent-infra/untrusted-input-spotlighting.md +80 -3
  62. package/docs/guidelines/code-clarity.md +86 -1
  63. package/docs/maintainers/branch-protection.md +105 -0
  64. package/docs/maintainers/system-map.md +85 -0
  65. package/docs/proof.md +15 -4
  66. package/package.json +1 -1
  67. package/src/config/agent-settings.template.yml +49 -0
  68. package/src/scripts/_cli/cmd_doctor.ts +291 -1
  69. package/src/scripts/_lib/claude_plugin.ts +39 -4
  70. package/src/scripts/_lib/knowledge_global.ts +44 -0
  71. package/src/scripts/_lib/knowledge_global_promote.ts +150 -0
  72. package/src/scripts/ai_council/orchestrator.ts +188 -1
  73. package/src/scripts/ai_team/config.ts +162 -0
  74. package/src/scripts/bench_persona_placebo.ts +308 -0
  75. package/src/scripts/bench_quality_rerun.ts +357 -0
  76. package/src/scripts/build_proof.ts +9 -0
  77. package/src/scripts/check_artefact_count_messaging.ts +56 -0
  78. package/src/scripts/check_knowledge_cards.ts +33 -4
  79. package/src/scripts/check_portability.ts +1 -0
  80. package/src/scripts/complexity_report.ts +776 -0
  81. package/src/scripts/consumer_matrix.ts +251 -12
  82. package/src/scripts/council_cli.ts +56 -1
  83. package/src/scripts/explain_run.ts +593 -0
  84. package/src/scripts/install.ts +39 -0
  85. package/src/scripts/knowledge_global_cli.ts +234 -45
  86. package/src/scripts/rule_backlinks.ts +350 -0
  87. package/src/server/schemas/settings.ts +17 -0
@@ -270,6 +270,89 @@ mv agents/tmp/<filename> agents/tmp.old/<filename>
270
270
 
271
271
  See `docs/contracts/agents-layout.md § User Inbox Workflow`.
272
272
 
273
+ ## Transient-reference discipline — mechanics (migrated from the `no-roadmap-references` rule)
274
+
275
+ Body of [`no-roadmap-references`](../../rules/no-roadmap-references.md)
276
+ (per P4 of `road-to-kernel-and-router.md`). The Iron Law — never link a
277
+ specific `agents/roadmaps/` or `agents/runtime/council/` file from a stable
278
+ artifact — stays in the rule; the pattern catalog lives here.
279
+
280
+ ### Forbidden patterns
281
+
282
+ These paths must not appear inside a stable artifact:
283
+
284
+ - `agents/roadmaps/<file>.md`, `agents/roadmaps/archive/<file>.md`,
285
+ `agents/roadmaps/skipped/<file>.md`
286
+ - `agents/runtime/council/questions/<file>.md`,
287
+ `agents/runtime/council/responses/<file>.json`,
288
+ `agents/runtime/council/sessions/<file>.json` or `<timestamp>/...`
289
+
290
+ Stable artifact = any file under `src/{rules,skills,domains}/`,
291
+ `src/agent-src/{contexts,templates,personas}/`, `agents/settings/contexts/`,
292
+ `docs/guidelines/`, `docs/contracts/`, `docs/architecture.md`,
293
+ `docs/customization.md`, `docs/getting-started.md`, `docs/catalog.md`,
294
+ `AGENTS.md`, `README.md`, `copilot-instructions.md`.
295
+
296
+ CI enforcement: `scripts/check_no_roadmap_refs.ts` (roadmap layer)
297
+ and `scripts/check_council_references.ts` (council layer) — both
298
+ fail the build on any new violation.
299
+
300
+ ### Allowed patterns
301
+
302
+ - `agents/roadmaps/` and `agents/runtime/council/` subdirs as **directory**
303
+ mentions (talking about the layer, not a specific file)
304
+ - Roadmap → roadmap references (siblings within the transient layer)
305
+ - The `ai-council` skill and `/council:*` commands documenting the
306
+ output path schema
307
+ - Inline council convergence summary — e.g. *"Council
308
+ (claude-sonnet-4-5 + gpt-4o, 2026-05-06) converged on …"* with
309
+ date + members, no filepath
310
+ - Council sessions, `agents/runtime/.agent-chat-history`, commit messages, PR
311
+ descriptions — transient by construction, not part of the package
312
+ surface
313
+
314
+ ### Structural carve-outs (immutable inputs / decision provenance)
315
+
316
+ Two source/target shapes are exempt from the council-link ban
317
+ because the target is **immutable input** or **decision provenance**,
318
+ not transient drafting state. The linter implements these directly
319
+ (`STRUCTURAL_CARVEOUTS` in `scripts/check_council_references.ts`);
320
+ they do **not** need an inline `<!-- council-ref-allowed: ... -->`
321
+ pragma.
322
+
323
+ | Source | Target | Why |
324
+ | --- | --- | --- |
325
+ | `agents/settings/contexts/evaluation-*.md` | `agents/runtime/council/questions/<question>.md` | Question file is a frozen function-parameter / spend-gate input, not documentation. |
326
+ | `docs/contracts/*.md` | `agents/runtime/council/sessions/<ts>/synthesis.md` | Synthesis is the audit-trail receipt; contract inlines the decision body itself. |
327
+
328
+ Driven by the 2026-05-14 P3.4 council round (claude-sonnet-4-5 +
329
+ gpt-4o, converged on rule refactor over escape-hatch overuse). Any
330
+ other source/target combination still needs an inline pragma or
331
+ inline-summary rewrite.
332
+
333
+ ### What to do instead
334
+
335
+ When a stable artifact needs to cite a transient finding:
336
+
337
+ 1. Identify the durable conclusion — decision, contract, lesson,
338
+ mechanic.
339
+ 2. Promote it to a context file under `agents/settings/contexts/` (ADR,
340
+ mechanics doc, locked decision). The roadmap or council session
341
+ can then point at the context, not the other way around.
342
+ 3. Reference the context from the stable artifact.
343
+ 4. For council convergences specifically: inline a convergence-summary
344
+ block (members, date, cost if relevant — see
345
+ [`ai-council`](../ai-council/SKILL.md) § Output format) instead of
346
+ linking the session JSON.
347
+
348
+ Failure modes:
349
+
350
+ - *"I'll just link to the roadmap, it's evidence."* The roadmap
351
+ gets archived, then deleted, then the link rots. **Promote first,
352
+ link second.**
353
+ - *"I'll just link to the session JSON, it's evidence."* The session
354
+ is gone in 7 days. **Inline first, link never.**
355
+
273
356
  ## Do NOT
274
357
 
275
358
  - Do NOT create docs unless there's a real need (new module, significant change).
@@ -173,8 +173,94 @@ strengthening evidence.
173
173
  `skipped` (stale — age > `review_after_days`), surface them to
174
174
  the user; do not silently use stale entries as if they were current.
175
175
 
176
+ ## Decision-revisit gate — mechanics (migrated from the `decision-revisit-gate` rule)
177
+
178
+ Body of [`decision-revisit-gate`](../../rules/decision-revisit-gate.md)
179
+ (per P4 of `road-to-kernel-and-router.md`). The Iron Law — benefit blocked
180
+ by a lock → surface + offer re-evaluation, never silent compliance — stays
181
+ in the rule; the lock catalog, fire steps, and failure modes live here.
182
+
183
+ ### What counts as a "lock"
184
+
185
+ - An eval verdict recorded as an honest null (a mechanism was tested,
186
+ showed no lift, and the disposition says "don't rebuild without new
187
+ evidence").
188
+ - A memory entry or `agents/settings/contexts/` note tagged "don't
189
+ relitigate" / "settled" / a locked council convergence.
190
+ - A budget or frugality-canon line (`token-budget-discipline`,
191
+ `telegraph-speak`, thin-projector trimming) that rejects a change on
192
+ cost grounds alone.
193
+ - An ADR whose decision is being cited as a blocker for the current change.
194
+ - A **hard structural cap** (kernel size, per-domain persona cap, rich-skill
195
+ ratio). A change that genuinely *qualifies* to cross the cap — e.g. a new
196
+ rule that truly meets the kernel-membership inclusion criteria — triggers a
197
+ **cap-raise proposal + maintainer/council approval**, never a silent
198
+ downgrade of the rule to fit the old number (e.g. demoting a must-always-fire
199
+ rule to `auto` just because the kernel says 9). Fitting the cap is not a
200
+ reason to weaken a qualifying rule; but a rule that does **not** meet the
201
+ criteria stays out — the cap is not the reason, the criteria are.
202
+
203
+ ### What to do when it fires
204
+
205
+ 1. **Mechanism-match check — do this FIRST.** A verdict settles the
206
+ *mechanism it tested*, not every future proposal that resembles it.
207
+ Before applying the lock, verify the blocked change is actually the
208
+ same mechanism — not merely a similar-sounding one. A null on
209
+ hardened blocking enforcement does not automatically cover
210
+ discretionary contextual nudges; a null on one architecture does not
211
+ cover a materially different one. If the mechanism differs, the lock
212
+ does not apply — proceed, noting the distinction.
213
+ 2. **If the mechanism genuinely matches**, do not silently comply.
214
+ Surface, in one short block:
215
+ - What change is blocked.
216
+ - Which lock blocks it (cite the memory/context/ADR).
217
+ - Under what conditions the lock was recorded (date, evidence, or
218
+ "maintainer decision" if settled-by-decision rather than
219
+ settled-by-evidence).
220
+ - What has changed since (new evidence, new model generation, new
221
+ tooling, repeated encounters) that makes revisiting worth the cost.
222
+ 3. **Offer numbered options** (per [`user-interaction`](../../rules/user-interaction.md)),
223
+ always including: re-evaluate the lock in the AI council. Other
224
+ options: keep the lock as-is, or proceed without the blocked change.
225
+ 4. **On re-evaluation:** run this skill's Procedure above for the
226
+ backward audit and route to [`ai-council`](../ai-council/SKILL.md)
227
+ for the debate mechanics. The rule owns the obligation to surface;
228
+ this skill and the council own the procedure.
229
+ 5. **Record the outcome** with scope + `revisit-if` per
230
+ [`ai-council`](../ai-council/SKILL.md)'s convergence-summary
231
+ contract — every re-evaluated lock gets a fresh, correctly-scoped
232
+ disposition, not a re-statement of the old one.
233
+
234
+ ### When NOT to fire
235
+
236
+ - The blocked change has no real benefit — the gate is not a lever to
237
+ reopen every settled question; [`no-cheap-questions`](../../rules/no-cheap-questions.md)
238
+ still governs whether the resulting numbered-options block is a real
239
+ question or noise. A revisit-offer with a genuine trade-off is never
240
+ a "cheap question" under that rule — but a revisit-offer with no
241
+ actual case for change is.
242
+ - The mechanism-match check (step 1) shows the lock is the same
243
+ mechanism and no new evidence exists — apply the lock, no surfacing
244
+ needed; this is the lock working as intended.
245
+ - The user already declined a revisit on this exact lock this
246
+ conversation — per [`scope-control § Decline = silence`](../../rules/scope-control.md),
247
+ do not re-ask.
248
+
249
+ ### Failure modes
250
+
251
+ - Treating a "don't relitigate" memory as permanently closed instead of
252
+ as settled-under-conditions-X.
253
+ - Applying a null verdict to a superficially similar but architecturally
254
+ different mechanism without running the mechanism-match check.
255
+ - Letting the token-frugality canon auto-reject a net-positive change
256
+ without surfacing the trade-off — see [`token-budget-discipline`](../../rules/token-budget-discipline.md)'s
257
+ value-over-budget clause.
258
+ - Silently dropping a good idea because "we already decided this" —
259
+ the canonical failure the gate exists to stop.
260
+
176
261
  ## See also
177
262
 
263
+ - [`decision-revisit-gate`](../../rules/decision-revisit-gate.md) — the rule whose migrated mechanics live above.
178
264
  - [`decision-record`](../decision-record/SKILL.md) — forward flow: lock a new choice.
179
265
  - [`adr-create`](../adr-create/SKILL.md) — file the ADR after a decision is locked.
180
266
  - [`blameless-post-mortem`](../blameless-post-mortem/SKILL.md) — incident review; may hand off to decision-review when a prior architectural choice is implicated.
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  model_tier: medium
3
3
  name: module-detect-on-the-fly
4
- description: "Use when editing a file under a module-shaped path (`Modules/*`, `packages/*`, `apps/*`, `internal/*`) while `modules.enabled` is `false` — asks the user once whether to enable the config."
4
+ description: "Use when editing a module-shaped path (`Modules/*`, `packages/*`, `apps/*`) while `modules.enabled` is false — asks once to enable it; also the project/stack + task-runner detection reference."
5
5
  domain: process
6
6
  workspaces:
7
7
  - agent-config-maintainer
@@ -119,6 +119,63 @@ Confirm both flags via `get_modules_config()` before running detection.
119
119
  the options block, continue the work and treat the project as flat
120
120
  for the rest of the session.
121
121
 
122
+ ## Project & module detection reference
123
+
124
+ _Origin: migrated from `src/rules/architecture.md` per the P4 pattern of `road-to-kernel-and-router.md`. The rule keeps the Iron-Law block, General Principles, and the ADR paragraph; the detection mechanics live here._
125
+
126
+ ### Project detection
127
+
128
+ Detect the current project type from the **Git remote URL**, **directory name**, or **project files**:
129
+
130
+ - **PHP** — `composer.json` (framework slot: Laravel via `artisan`, Symfony via `bin/console`, standalone otherwise).
131
+ - **JS / TS** — `package.json` (framework slot: Next.js via `next` dep, Nuxt via `nuxt`, Express / Fastify / NestJS via deps; plain Node otherwise).
132
+ - **Python** — `pyproject.toml` / `requirements.txt` (framework slot: Django via `django`, FastAPI via `fastapi`, Flask via `flask`).
133
+ - **Go** — `go.mod` (framework slot: `gin`, `echo`, `fiber`, stdlib `net/http`).
134
+ - **Ruby** — `Gemfile` (framework slot: Rails via `rails` gem, Sinatra otherwise).
135
+ - **Rust** — `Cargo.toml` (framework slot: `axum`, `actix-web`, `rocket`).
136
+ - Check `AGENTS.md` or `agents/` for project-specific documentation.
137
+
138
+ Tooling lives in a runner file at the project root — detect once and reuse the result:
139
+ `Taskfile.yml` → `task`, `Makefile` → `make`, `package.json` `scripts:` → `npm` / `pnpm` / `yarn`, `pyproject.toml` `[tool.poetry.scripts]` or `[project.scripts]` → `poetry` / `uv`, framework CLIs (`artisan`, `bin/console`, `manage.py`, `bin/rails`) when the matching manifest is present.
140
+
141
+ ### Project-specific architecture docs
142
+
143
+ Each project documents its own architecture in `./agents/` and/or `AGENTS.md`.
144
+ **Always read those files** before making structural decisions. Do not rely on
145
+ generic rules for project-specific directory layouts, database conventions, or
146
+ module systems.
147
+
148
+ ### Module-level documentation
149
+
150
+ Some projects use a module system (e.g. `app/Modules/` in Laravel, `apps/`/`packages/` in a Turborepo, `src/modules/` in NestJS, `internal/` in Go).
151
+ Module roots and the per-module agent-docs folder are configured via
152
+ `modules.root_paths` and `modules.agent_folder` in `.agent-settings.yml`
153
+ (resolve at runtime via `scripts/_lib/agent_settings.ts::enumerate_modules()`).
154
+ Modules may have their own agent docs under
155
+ `{module_root}/*/{agent_folder}/` (Laravel shape: `app/Modules/*/agents/`) with:
156
+
157
+ - Module descriptions and feature docs
158
+ - Module-specific roadmaps (`agents/roadmaps/`)
159
+ - Module-specific documentation (`Docs/`)
160
+
161
+ When working on a module, **always check for module-level agent docs** first.
162
+
163
+ ### Packages
164
+
165
+ Packages (Composer, npm, etc.) may also use `./agents/` in their root
166
+ for package-specific docs and roadmaps. Treat them the same way as projects.
167
+
168
+ ### Build / task runner detection
169
+
170
+ Projects use either `Makefile` or `Taskfile.yml` (or both) for common commands.
171
+ **Always check which one exists** and read it to discover available targets for
172
+ testing, quality checks, container access, migrations, etc.
173
+
174
+ - `Makefile` → use `make <target>`
175
+ - `Taskfile.yml` → use `task <target>`
176
+
177
+ Prefer these targets over raw `docker compose exec` commands when available.
178
+
122
179
  ## See also
123
180
 
124
181
  - `module-management` — the active skill once modules are configured.
@@ -39,7 +39,7 @@ schema_version: 1
39
39
  # CI guard: a release bump of `package.json` must update this value
40
40
  # in lockstep — see scripts/check_template_pin_drift.ts (road-to-
41
41
  # portable-runtime-and-update-check P3.3).
42
- agent_config_version: "8.11.0"
42
+ agent_config_version: "8.13.0"
43
43
 
44
44
  # --- Project identity ---
45
45
  project:
@@ -7,6 +7,18 @@ trust: durable
7
7
  # Optional for project-local cards; required (plus a provenance footer) once a
8
8
  # card is promoted to the global store. Resolve via knowledge_global.classify_tier.
9
9
  tier: "<public | vendor | proprietary>"
10
+ # sensitivity — orthogonal to tier: WHETHER this card may ever leave the
11
+ # project at all (tier is WHERE it came from). Phase 1, road-to-feedback-8.11
12
+ # / successor note to ADR-119. Three machine-anchored classes:
13
+ # prohibited = contains redaction-class content; never leaves the repo
14
+ # (machine-derived from the redaction scan — never hand-set).
15
+ # project = DEFAULT. Stays project-local; promotion refused unless a
16
+ # human explicitly reclassifies the card to `shareable`.
17
+ # shareable = eligible for the global store; must pass redaction AND
18
+ # carry full promotion provenance (see the footer once
19
+ # promoted: source_repo, owner, review_after, promotion_reason).
20
+ # Required (and machine-checked) once a card is promoted to the global store.
21
+ sensitivity: "project"
10
22
  origin: "<brief description — e.g. npm package / remote API / legacy DB>"
11
23
  url: "<canonical upstream URL>"
12
24
  ref: "<pinned version tag or commit SHA — never blind main>"
@@ -1,6 +1,6 @@
1
1
  # Discovery — Deprecation Report
2
2
 
3
- - Generated: `2026-07-12T08:25:51Z`
3
+ - Generated: `2026-07-12T14:25:15Z`
4
4
  - Deprecated artefacts: **0**
5
5
 
6
6
  _None. Tree is clean._
@@ -2024,7 +2024,7 @@
2024
2024
  },
2025
2025
  {
2026
2026
  "category": "command",
2027
- "checksum": "sha256:57001272400472ee91d091050cef080e05394a147e67f1971874de2f5d670edd",
2027
+ "checksum": "sha256:9f1ae0db940f8c5a403f3df582469edf9e2446219f4849185ae4eba5227f993d",
2028
2028
  "install": {
2029
2029
  "default": true,
2030
2030
  "removable": false
@@ -4352,6 +4352,144 @@
4352
4352
  "agent-config-maintainer"
4353
4353
  ]
4354
4354
  },
4355
+ {
4356
+ "category": "command",
4357
+ "checksum": "sha256:b472efccd7c1db983883ce44afa9ad883c323b8858d3c203632e6c51c16466d9",
4358
+ "install": {
4359
+ "default": true,
4360
+ "removable": false
4361
+ },
4362
+ "lifecycle": "active",
4363
+ "name": "team-adversarial",
4364
+ "pack": "product-reasoning",
4365
+ "packs": [
4366
+ "product-reasoning"
4367
+ ],
4368
+ "path": "src/domains/meta/team/adversarial/command.md",
4369
+ "slug": "team-adversarial",
4370
+ "tier": 2,
4371
+ "trust": {
4372
+ "confidence": "high",
4373
+ "human_review_required": false,
4374
+ "level": "core"
4375
+ },
4376
+ "visibility": "internal",
4377
+ "workspaces": [
4378
+ "agent-config-maintainer"
4379
+ ]
4380
+ },
4381
+ {
4382
+ "category": "command",
4383
+ "checksum": "sha256:d0ef6440619190d2126fcd9432c8b2a28acc7bf5abcc7322415374c03d31ea8b",
4384
+ "install": {
4385
+ "default": true,
4386
+ "removable": false
4387
+ },
4388
+ "intent": "Route a cross-model team-mode request (review, adversarial, delegate, status) to the official plugin under ai_team governance",
4389
+ "lifecycle": "active",
4390
+ "name": "team",
4391
+ "pack": "product-reasoning",
4392
+ "packs": [
4393
+ "product-reasoning"
4394
+ ],
4395
+ "path": "src/domains/meta/team/command.md",
4396
+ "replaces": [],
4397
+ "routes_to": [
4398
+ "team-review",
4399
+ "team-adversarial",
4400
+ "team-delegate",
4401
+ "team-status"
4402
+ ],
4403
+ "slug": "team",
4404
+ "tier": 2,
4405
+ "trust": {
4406
+ "confidence": "high",
4407
+ "human_review_required": false,
4408
+ "level": "core"
4409
+ },
4410
+ "visibility": "internal",
4411
+ "workspaces": [
4412
+ "agent-config-maintainer"
4413
+ ]
4414
+ },
4415
+ {
4416
+ "category": "command",
4417
+ "checksum": "sha256:095eaeae4b525edd4d86846335ac590386b4e033ff6282d8671e9528471d324b",
4418
+ "install": {
4419
+ "default": true,
4420
+ "removable": false
4421
+ },
4422
+ "lifecycle": "active",
4423
+ "name": "team-delegate",
4424
+ "pack": "product-reasoning",
4425
+ "packs": [
4426
+ "product-reasoning"
4427
+ ],
4428
+ "path": "src/domains/meta/team/delegate/command.md",
4429
+ "slug": "team-delegate",
4430
+ "tier": 2,
4431
+ "trust": {
4432
+ "confidence": "high",
4433
+ "human_review_required": false,
4434
+ "level": "core"
4435
+ },
4436
+ "visibility": "internal",
4437
+ "workspaces": [
4438
+ "agent-config-maintainer"
4439
+ ]
4440
+ },
4441
+ {
4442
+ "category": "command",
4443
+ "checksum": "sha256:fef3a8bd83dedb36612c0bf9e906803d9990f30cb3d79a3823e2933bb1621f73",
4444
+ "install": {
4445
+ "default": true,
4446
+ "removable": false
4447
+ },
4448
+ "lifecycle": "active",
4449
+ "name": "team-review",
4450
+ "pack": "product-reasoning",
4451
+ "packs": [
4452
+ "product-reasoning"
4453
+ ],
4454
+ "path": "src/domains/meta/team/review/command.md",
4455
+ "slug": "team-review",
4456
+ "tier": 2,
4457
+ "trust": {
4458
+ "confidence": "high",
4459
+ "human_review_required": false,
4460
+ "level": "core"
4461
+ },
4462
+ "visibility": "internal",
4463
+ "workspaces": [
4464
+ "agent-config-maintainer"
4465
+ ]
4466
+ },
4467
+ {
4468
+ "category": "command",
4469
+ "checksum": "sha256:98fb734d3ed484b1663e48bd9b417640fbdfc83ba8af6945db7b01e5d84da3fb",
4470
+ "install": {
4471
+ "default": true,
4472
+ "removable": false
4473
+ },
4474
+ "lifecycle": "active",
4475
+ "name": "team-status",
4476
+ "pack": "product-reasoning",
4477
+ "packs": [
4478
+ "product-reasoning"
4479
+ ],
4480
+ "path": "src/domains/meta/team/status/command.md",
4481
+ "slug": "team-status",
4482
+ "tier": 2,
4483
+ "trust": {
4484
+ "confidence": "high",
4485
+ "human_review_required": false,
4486
+ "level": "core"
4487
+ },
4488
+ "visibility": "internal",
4489
+ "workspaces": [
4490
+ "agent-config-maintainer"
4491
+ ]
4492
+ },
4355
4493
  {
4356
4494
  "category": "command",
4357
4495
  "checksum": "sha256:76d6fe9b4bb7441d9ca243174b805687b81b3db51af5a78305deb775afe42e85",
@@ -4945,7 +5083,7 @@
4945
5083
  },
4946
5084
  {
4947
5085
  "category": "rule",
4948
- "checksum": "sha256:e0cedb7e0bd96806a7eae9b750add16d04e00dc8e62ee7adff8c44ca0c231489",
5086
+ "checksum": "sha256:93f763246cf4e462db9c4d54fc033ffb9c0ce5865a2e25b6b0381a84308f04ff",
4949
5087
  "install": {
4950
5088
  "default": true,
4951
5089
  "removable": false
@@ -5177,7 +5315,7 @@
5177
5315
  },
5178
5316
  {
5179
5317
  "category": "rule",
5180
- "checksum": "sha256:e9251d55c8c1d4c9841c3e374833b1bc986acfc1a666ba77604d885133bad5eb",
5318
+ "checksum": "sha256:c642c0a5798b5bfed082b9c2e86e4c3f8830e2971d1bba12df59094e060ee6da",
5181
5319
  "install": {
5182
5320
  "default": true,
5183
5321
  "removable": false
@@ -5382,7 +5520,7 @@
5382
5520
  },
5383
5521
  {
5384
5522
  "category": "rule",
5385
- "checksum": "sha256:4e3fc01547374c7d76af3b02a77e0667ad10544c63c035ba34b78e90fedaee11",
5523
+ "checksum": "sha256:f09f13f41eab26421f29cc731f8b1b737f9f37079c913416ba686bc9d45a8bc2",
5386
5524
  "install": {
5387
5525
  "default": true,
5388
5526
  "removable": false
@@ -5867,7 +6005,7 @@
5867
6005
  },
5868
6006
  {
5869
6007
  "category": "rule",
5870
- "checksum": "sha256:e8d150ab415cdaf12ef8132617eadc395d7efdf01f10b579da2288c794bc9bfc",
6008
+ "checksum": "sha256:51bf5ae688035e892666c069150e72cedd5d1aca8521a48d02efe6a70c2286ee",
5871
6009
  "install": {
5872
6010
  "default": true,
5873
6011
  "removable": false
@@ -6329,7 +6467,7 @@
6329
6467
  },
6330
6468
  {
6331
6469
  "category": "rule",
6332
- "checksum": "sha256:da3379d2b9d801b5a6ee309934494cc0c03ea60a11d9af129130388801ca3f2f",
6470
+ "checksum": "sha256:b4f586610cd51268c9bdb8360a798642244d9b2d2521bf5100298bbdce1ec3fc",
6333
6471
  "install": {
6334
6472
  "default": true,
6335
6473
  "removable": false
@@ -6465,7 +6603,7 @@
6465
6603
  },
6466
6604
  {
6467
6605
  "category": "rule",
6468
- "checksum": "sha256:21910e7a90c08dd9da8a40e7c7be640529a4e4051644ed3744d6147cb8e98381",
6606
+ "checksum": "sha256:3878d1b74420f68e2681b636718f60a3a8b3cb224cd5df1b74936d824e74bf6c",
6469
6607
  "install": {
6470
6608
  "default": true,
6471
6609
  "removable": false
@@ -6549,7 +6687,7 @@
6549
6687
  },
6550
6688
  {
6551
6689
  "category": "rule",
6552
- "checksum": "sha256:ea7e4237e99f269ed95efd37f673e8b85b726030ba6f926b3fb4a998677b2fe8",
6690
+ "checksum": "sha256:d6e74bc3809c7b9d0a692bafae238c905e16c812fa4ffe884d37dbb419e3f90d",
6553
6691
  "install": {
6554
6692
  "default": true,
6555
6693
  "removable": false
@@ -6616,7 +6754,7 @@
6616
6754
  },
6617
6755
  {
6618
6756
  "category": "rule",
6619
- "checksum": "sha256:d3cb7efd6c419f13ace8126264f1a1f2c01d9d445f80c451022c0bb811902fa1",
6757
+ "checksum": "sha256:db20269002f94ba1564050797367485a33264fba95a37cef8dfe23cba460e4d0",
6620
6758
  "install": {
6621
6759
  "default": true,
6622
6760
  "removable": false
@@ -7174,7 +7312,7 @@
7174
7312
  },
7175
7313
  {
7176
7314
  "category": "rule",
7177
- "checksum": "sha256:37983317316d9ff13f9bea53a8177a19252655e8b82dba4391f107785b3a4e79",
7315
+ "checksum": "sha256:1a7625fcb13e1268adf9cfe417a3b3de13edd1d4a60a9a849345ab7e2120c102",
7178
7316
  "install": {
7179
7317
  "default": true,
7180
7318
  "removable": false
@@ -7386,7 +7524,7 @@
7386
7524
  },
7387
7525
  {
7388
7526
  "category": "skill",
7389
- "checksum": "sha256:4709fc13a7ccb37a335f229f97c407497ad4fdbd85f15900f5de504fff0c022a",
7527
+ "checksum": "sha256:88c6ff8281b0ee68b5d6d9402bd4b39087f7fb05e5ad92957fd24a63ee0f4032",
7390
7528
  "install": {
7391
7529
  "default": true,
7392
7530
  "removable": false
@@ -8640,7 +8778,7 @@
8640
8778
  },
8641
8779
  {
8642
8780
  "category": "skill",
8643
- "checksum": "sha256:a76ad1dc72b58db24793cf28f4d80abb5dc1300783baca29d3df299ceea6410e",
8781
+ "checksum": "sha256:21fe1e1cab3bf7e739a0e3dbfe48ec60c0da59caae1c791b7003e1ccb1f6f42e",
8644
8782
  "install": {
8645
8783
  "default": false,
8646
8784
  "removable": true
@@ -10642,7 +10780,7 @@
10642
10780
  },
10643
10781
  {
10644
10782
  "category": "skill",
10645
- "checksum": "sha256:d3b4d5038ff32f3c24ee7b66c76833ea0486c82ad51332b7009cc60479d9d484",
10783
+ "checksum": "sha256:da0978b98607af3fb63fee16e5fa45e9b79a62803678518fbedd6aec3165e647",
10646
10784
  "install": {
10647
10785
  "default": true,
10648
10786
  "removable": false
@@ -13277,7 +13415,7 @@
13277
13415
  "workspaces": []
13278
13416
  }
13279
13417
  ],
13280
- "checksum": "sha256:2e4ae6b3ee79b3233182c1b5fb33c5566263418e004db05c76963e26ec7e1d63",
13418
+ "checksum": "sha256:4d464b4e3eaa81d6d437c9387901b1853cf43b0ba47e32a7d347a9648f1ea769",
13281
13419
  "deprecations": [
13282
13420
  {
13283
13421
  "key": "tier",
@@ -13420,7 +13558,7 @@
13420
13558
  "reason": "scaffold template for ticket-bundle tickets (ADR-101); carries no runtime frontmatter — emit-tickets fills it in per ticket"
13421
13559
  }
13422
13560
  ],
13423
- "generated_at": "2026-07-12T08:25:51Z",
13561
+ "generated_at": "2026-07-12T14:25:15Z",
13424
13562
  "packs": [
13425
13563
  {
13426
13564
  "artefact_count": 105,
@@ -14163,7 +14301,7 @@
14163
14301
  ]
14164
14302
  },
14165
14303
  {
14166
- "artefact_count": 11,
14304
+ "artefact_count": 16,
14167
14305
  "description": "Interactive reasoning surfaces (council, challenge-me, grill-me) — classified `product` in the flow surface-map.",
14168
14306
  "domain": "meta",
14169
14307
  "human_review_required": 0,
@@ -14179,7 +14317,7 @@
14179
14317
  "trust_level_default": "core",
14180
14318
  "trust_summary": {
14181
14319
  "advisory": 0,
14182
- "core": 11,
14320
+ "core": 16,
14183
14321
  "experimental": 0,
14184
14322
  "professional": 0,
14185
14323
  "restricted": 0
@@ -14192,27 +14330,27 @@
14192
14330
  "scanner_version": "c24312e116f8",
14193
14331
  "stats": {
14194
14332
  "by_category": {
14195
- "command": 178,
14333
+ "command": 183,
14196
14334
  "rule": 104,
14197
14335
  "skill": 271,
14198
14336
  "subagent": 1,
14199
14337
  "template": 1
14200
14338
  },
14201
14339
  "by_lifecycle": {
14202
- "active": 539,
14340
+ "active": 544,
14203
14341
  "archived": 0,
14204
14342
  "deprecated": 0,
14205
14343
  "experimental": 16
14206
14344
  },
14207
14345
  "by_trust_level": {
14208
14346
  "advisory": 8,
14209
- "core": 429,
14347
+ "core": 434,
14210
14348
  "experimental": 20,
14211
14349
  "professional": 98,
14212
14350
  "restricted": 0
14213
14351
  },
14214
14352
  "documented_unassigned_count": 26,
14215
- "total_artefacts": 555,
14353
+ "total_artefacts": 560,
14216
14354
  "unassigned_count": 0
14217
14355
  },
14218
14356
  "unassigned": [],
@@ -1 +1 @@
1
- 359effcea577be7f6892e96e07d5bebced7efc6d4803bbac0a8e7661daf3ceb8 discovery-manifest.json
1
+ dcc729a9420f9603c704a072c529d664ed459c82e951e058ff133b3e34b46b60 discovery-manifest.json
@@ -1,8 +1,8 @@
1
1
  # Discovery Manifest — Summary
2
2
 
3
- - Generated: `2026-07-12T08:25:51Z`
3
+ - Generated: `2026-07-12T14:25:15Z`
4
4
  - Scanner: `c24312e116f8`
5
- - Artefacts: **555**
5
+ - Artefacts: **560**
6
6
  - Unassigned: **0**
7
7
 
8
8
  ## `engineering` — Engineering
@@ -106,5 +106,5 @@
106
106
  | `meta` — Meta | 265 |
107
107
  | `memory` — Memory | 9 |
108
108
  | `analytics` — Analytics | 4 |
109
- | `product-reasoning` — Product Reasoning | 11 |
109
+ | `product-reasoning` — Product Reasoning | 16 |
110
110
 
@@ -1,6 +1,6 @@
1
1
  # Discovery — Orphan Report
2
2
 
3
- - Generated: `2026-07-12T08:25:51Z`
3
+ - Generated: `2026-07-12T14:25:15Z`
4
4
  - Orphan artefacts: **0**
5
5
 
6
6
  > An orphan is an artefact whose declared pack has no other members.