@event4u/agent-config 9.36.0 → 10.0.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 (79) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +57 -0
  3. package/agents/templates/.ai-council.yml.example +31 -51
  4. package/dist/agent-src/commands/analyze/conformance.md +15 -4
  5. package/dist/agent-src/rules/session-canary.md +28 -0
  6. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  7. package/dist/cli-delegate/{chunk-SFGARMAB.js → chunk-2H5SE7DU.js} +24 -4
  8. package/dist/cli-delegate/{chunk-U7CMAIOC.js → chunk-3JUTT26I.js} +1 -1
  9. package/dist/cli-delegate/{chunk-JP53LNVT.js → chunk-HJSKTMIF.js} +6 -14
  10. package/dist/cli-delegate/{chunk-QEEB4LHO.js → chunk-LRXJK6GN.js} +1 -1
  11. package/dist/cli-delegate/{chunk-NR7HSN3P.js → chunk-NX5AXSLD.js} +3 -3
  12. package/dist/cli-delegate/{chunk-AG47LAGQ.js → chunk-TVGXH7VA.js} +1 -1
  13. package/dist/cli-delegate/{chunk-55RI5UXK.js → chunk-XT2YTJCZ.js} +22 -18
  14. package/dist/cli-delegate/{chunk-JEJABGKB.js → chunk-XTC5ARB6.js} +16 -12
  15. package/dist/cli-delegate/cmd_analyze_session.js +1 -1
  16. package/dist/cli-delegate/cmd_brand_status.js +1 -1
  17. package/dist/cli-delegate/cmd_conformance.js +1037 -196
  18. package/dist/cli-delegate/cmd_doctor.js +3 -3
  19. package/dist/cli-delegate/cmd_explain.js +2 -2
  20. package/dist/cli-delegate/cmd_export.js +4 -4
  21. package/dist/cli-delegate/cmd_handoff.js +3 -3
  22. package/dist/cli-delegate/cmd_mcp_available.js +1 -1
  23. package/dist/cli-delegate/cmd_migrate.js +2 -2
  24. package/dist/cli-delegate/cmd_packs_active.js +2 -2
  25. package/dist/cli-delegate/cmd_prune.js +4 -4
  26. package/dist/cli-delegate/cmd_route_audit.js +2 -2
  27. package/dist/cli-delegate/cmd_route_explain.js +1 -1
  28. package/dist/cli-delegate/cmd_session_recycle.js +1 -1
  29. package/dist/cli-delegate/cmd_settings_get.js +1 -1
  30. package/dist/cli-delegate/cmd_settings_migrate.js +4 -4
  31. package/dist/cli-delegate/cmd_settings_set.js +1 -1
  32. package/dist/cli-delegate/cmd_sync.js +4 -4
  33. package/dist/cli-delegate/cmd_uninstall.js +4 -4
  34. package/dist/cli-delegate/cmd_update.js +1 -1
  35. package/dist/cli-delegate/cmd_upgrade.js +1 -1
  36. package/dist/cli-delegate/cmd_validate.js +4 -4
  37. package/dist/cli-delegate/cmd_versions.js +1 -1
  38. package/dist/discovery/deprecation-report.md +1 -1
  39. package/dist/discovery/discovery-manifest.json +4 -4
  40. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  41. package/dist/discovery/discovery-manifest.summary.md +1 -1
  42. package/dist/discovery/dormancy-report.md +1 -1
  43. package/dist/discovery/orphan-report.md +1 -1
  44. package/dist/discovery/packs.json +2 -2
  45. package/dist/discovery/trust-report.md +1 -1
  46. package/dist/discovery/workspaces.json +2 -2
  47. package/dist/hooks/dispatch.js +125 -89
  48. package/dist/install/install.mjs +22 -26
  49. package/dist/mcp/registry-manifest.json +1 -1
  50. package/dist/mcp/server.json +2 -2
  51. package/dist/mcp/server.mjs +1556 -613
  52. package/dist/scripts/_lib/agent_settings.js +39 -25
  53. package/dist/scripts/_lib/agent_settings.js.map +1 -1
  54. package/dist/scripts/condense.js +15 -2
  55. package/dist/scripts/condense.js.map +1 -1
  56. package/dist/server/routes/wizard.js +23 -3
  57. package/dist/server/routes/wizard.js.map +1 -1
  58. package/dist/server/schemas/settings.js +6 -6
  59. package/dist/server/schemas/settings.js.map +1 -1
  60. package/docs/contracts/settings-classes.md +14 -9
  61. package/package.json +1 -1
  62. package/src/config/agent-settings.template.yml +6 -36
  63. package/src/config/ci-local-parity.yml +44 -0
  64. package/src/scripts/_lib/agent_settings.ts +39 -25
  65. package/src/scripts/_lib/environment_detector.ts +52 -1
  66. package/src/scripts/ai_council/config.ts +62 -24
  67. package/src/scripts/before_complete_hook.ts +39 -0
  68. package/src/scripts/check_bridge_derivation.ts +89 -3
  69. package/src/scripts/check_ci_local_parity.ts +74 -0
  70. package/src/scripts/check_references.ts +15 -1
  71. package/src/scripts/condense.ts +16 -2
  72. package/src/scripts/conformance_scan.ts +200 -9
  73. package/src/scripts/council_cli.ts +95 -3
  74. package/src/scripts/hook_manifest.yaml +12 -6
  75. package/src/scripts/hooks/block_no_verify.ts +82 -9
  76. package/src/scripts/hooks/turn_end_gate_hook.ts +138 -105
  77. package/src/scripts/probe_promissory_closing.ts +180 -0
  78. package/src/scripts/probe_session_canary.ts +180 -0
  79. package/src/server/schemas/settings.ts +6 -14
@@ -529,20 +529,12 @@ export const settingsSchema = z.object({
529
529
  'PreToolUse code-graph nudge (ADR-124 Phase 4). Default off. When on AND a native code-graph cache or a consumer-shipped graph.json/SCIP index is present, warns once per session (never blocks) as the agent is about to Grep/Glob or Read a source file — query the graph first for who-calls/where-used/impact questions (or rebuild if stale, build if absent). Source G’s strict block-first-read mode is deliberately un-ported.',
530
530
  ),
531
531
  }).default({}),
532
- turn_end_gate: z.object({
533
- enabled: z.boolean().default(false).describe(
534
- 'Stop-slot turn-end gate (road-to-conformance-round5 Phase 3). Default off, and it is the only concern that can REFUSE a turn-end rather than a tool call — so it soaks behind an explicit opt-in before it binds. Round 5 measured the reason: both blocking carriers reached zero violations, neither advisory carrier did, and 19 wrong-language replies survived a pin that had fired 26-35 seconds earlier. A refused turn continues in the SAME turn and is never refused twice.',
535
- ),
536
- promissory: z.boolean().default(true).describe(
537
- 'Detector A of the turn-end gate: refuse a turn whose closing paragraph promises work not yet performed while asking the user nothing (20 measured occurrences). No fire rate is quoted here on purpose: the measured rate moved twice while the instrument itself was being corrected, so a number in a shipped description would be a moving target. Re-derive it with `measure-turn-end-gate --store <transcript dir>` against your own corpus before arming the gate. Inert while hooks.turn_end_gate.enabled is false.',
538
- ),
539
- language: z.boolean().default(true).describe(
540
- 'Detector B of the turn-end gate: refuse a turn whose reply is not in the pinned language (19 measured occurrences). Fenced code, inline code, quoted tool output, tables, URLs and paths are stripped first, and the remainder is then scored LEAD-FIRST by the same classifier that sets the pin — so the verdict usually comes from the reply opening, not from all of it. Sharing that classifier is deliberate: it stops the pin and the detector disagreeing about a turn. Accepted opt-in spellings for the switches below include YAML true/false and yes/no/on/off. Inert while hooks.turn_end_gate.enabled is false.',
541
- ),
542
- verification: z.boolean().default(true).describe(
543
- 'Detector C of the turn-end gate: refuse a turn that changed a file and then ran nothing that could have checked it — no test, type-check, lint or build call follows the LAST edit. Ordering is the point: a run before the final edit did not exercise it, which is the freshness clause verify-before-complete states. Read off the turn tool calls, not the prose, because a reply cannot say whether an edit was verified. Deliberately narrow on what counts as verification — a missed detection costs one unguarded turn, a false refusal teaches you to switch the gate off. No fire rate is quoted: none has been measured yet. Inert while hooks.turn_end_gate.enabled is false.',
544
- ),
545
- }).default({}),
532
+ // `turn_end_gate` is deliberately ABSENT. The stop-slot turn-end gate is
533
+ // always armed (2026-08-12) and has no settings surface: whether it
534
+ // fires is decided by each detector's own trigger conditions, not by a
535
+ // flag. A leftover `hooks.turn_end_gate.*` block from an older install
536
+ // warns once on stderr and is ignored — see REMOVED_KEYS in
537
+ // `src/scripts/_lib/agent_settings.ts`.
546
538
  }),
547
539
  decision_engine: z.object({
548
540
  surface_traces: z.boolean().default(false).describe(