@event4u/agent-config 9.28.0 → 9.30.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 (209) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/AGENTS.md +6 -6
  3. package/CHANGELOG.md +172 -5
  4. package/README.md +2 -1
  5. package/agents/templates/.ai-council.yml.example +55 -24
  6. package/dist/agent-src/commands/analyze/inbox.md +22 -1
  7. package/dist/agent-src/commands/cost/report.md +2 -2
  8. package/dist/agent-src/commands/explain-run.md +31 -1
  9. package/dist/agent-src/commands/team/adversarial.md +8 -7
  10. package/dist/agent-src/commands/team/delegate.md +14 -12
  11. package/dist/agent-src/commands/team/review.md +9 -8
  12. package/dist/agent-src/commands/team/status.md +9 -8
  13. package/dist/agent-src/commands/team.md +29 -19
  14. package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +88 -2
  15. package/dist/agent-src/contexts/execution/auto-orchestration-activation.md +29 -21
  16. package/dist/agent-src/contexts/execution/host-capability-manifest.md +26 -15
  17. package/dist/agent-src/contexts/execution/orchestration-telemetry.md +22 -1
  18. package/dist/agent-src/contexts/execution/roadmap-process-loop.md +17 -0
  19. package/dist/agent-src/contexts/execution/subagent-response-contract.md +65 -1
  20. package/dist/agent-src/contexts/execution/subagent-routing.md +13 -11
  21. package/dist/agent-src/contexts/execution/subagent-spawn-contract.md +25 -0
  22. package/dist/agent-src/contexts/execution/subagent-steering.md +6 -3
  23. package/dist/agent-src/rules/delegation-policy.md +11 -7
  24. package/dist/agent-src/rules/preservation-guard.md +9 -0
  25. package/dist/agent-src/rules/settings-ask-protocol.md +8 -7
  26. package/dist/agent-src/rules/token-budget-discipline.md +1 -1
  27. package/dist/agent-src/scripts/roadmap_gates.ts +312 -0
  28. package/dist/agent-src/scripts/update_roadmap_progress.ts +72 -4
  29. package/dist/agent-src/skills/forensics-report/SKILL.md +114 -0
  30. package/dist/agent-src/skills/forensics-report/evals/triggers.json +17 -0
  31. package/dist/agent-src/skills/premortem/SKILL.md +30 -1
  32. package/dist/agent-src/skills/reasoning-orchestrator/SKILL.md +2 -1
  33. package/dist/agent-src/skills/subagent-orchestration/SKILL.md +17 -5
  34. package/dist/agent-src/skills/subagent-orchestration/schemas/subagent-status.json +61 -3
  35. package/dist/agent-src/skills/test-case-discovery/SKILL.md +1 -1
  36. package/dist/agent-src/templates/AGENTS.md +4 -4
  37. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  38. package/dist/agent-src/templates/roadmaps.md +23 -0
  39. package/dist/cli/registry.js +2 -0
  40. package/dist/cli/registry.js.map +1 -1
  41. package/dist/cli-delegate/{chunk-22GCIJ2O.js → chunk-66OVWGB5.js} +1 -1
  42. package/dist/cli-delegate/{chunk-7OMQCH4V.js → chunk-BTJNRUX3.js} +22 -35
  43. package/dist/cli-delegate/{chunk-DVRS2KVR.js → chunk-DDUNNFYX.js} +24 -17
  44. package/dist/cli-delegate/{chunk-PQSAQKHW.js → chunk-EQY4FLJB.js} +3 -3
  45. package/dist/cli-delegate/{chunk-2BE5I2MN.js → chunk-IYTGIG2Y.js} +155 -91
  46. package/dist/cli-delegate/{chunk-GB2FSUEE.js → chunk-LCFJIQ4J.js} +32 -0
  47. package/dist/cli-delegate/{chunk-VSYT7OHO.js → chunk-LVRYBKTI.js} +31 -2
  48. package/dist/cli-delegate/chunk-MMJL4TIX.js +18 -0
  49. package/dist/cli-delegate/{chunk-JXARCGVN.js → chunk-MP3JT3IU.js} +1 -1
  50. package/dist/cli-delegate/chunk-O3CO5BFB.js +161 -0
  51. package/dist/cli-delegate/{chunk-REKCMYOU.js → chunk-PFBV6XRT.js} +36 -20
  52. package/dist/cli-delegate/chunk-RVGBH4XK.js +142 -0
  53. package/dist/cli-delegate/cmd_analyze_session.js +1 -1
  54. package/dist/cli-delegate/cmd_brand_status.js +1 -1
  55. package/dist/cli-delegate/cmd_conformance.js +2803 -137
  56. package/dist/cli-delegate/cmd_doctor.js +10 -5
  57. package/dist/cli-delegate/cmd_explain.js +2 -2
  58. package/dist/cli-delegate/cmd_export.js +4 -4
  59. package/dist/cli-delegate/cmd_handoff.js +88 -8
  60. package/dist/cli-delegate/cmd_mcp_available.js +1 -1
  61. package/dist/cli-delegate/cmd_migrate.js +2 -2
  62. package/dist/cli-delegate/cmd_packs_active.js +2 -2
  63. package/dist/cli-delegate/cmd_prune.js +4 -4
  64. package/dist/cli-delegate/cmd_route_audit.js +3 -2
  65. package/dist/cli-delegate/cmd_route_explain.js +1 -1
  66. package/dist/cli-delegate/cmd_session_recycle.js +177 -0
  67. package/dist/cli-delegate/cmd_settings_get.js +2 -8
  68. package/dist/cli-delegate/cmd_settings_migrate.js +4 -4
  69. package/dist/cli-delegate/cmd_settings_set.js +2 -2
  70. package/dist/cli-delegate/cmd_sync.js +4 -4
  71. package/dist/cli-delegate/cmd_uninstall.js +4 -4
  72. package/dist/cli-delegate/cmd_update.js +1 -1
  73. package/dist/cli-delegate/cmd_upgrade.js +1 -1
  74. package/dist/cli-delegate/cmd_validate.js +4 -4
  75. package/dist/cli-delegate/cmd_versions.js +1 -1
  76. package/dist/discovery/deprecation-report.md +1 -1
  77. package/dist/discovery/discovery-manifest.json +72 -23
  78. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  79. package/dist/discovery/discovery-manifest.summary.md +3 -2
  80. package/dist/discovery/orphan-report.md +1 -1
  81. package/dist/discovery/packs.json +39 -2
  82. package/dist/discovery/trust-report.md +2 -2
  83. package/dist/discovery/workspaces.json +12 -4
  84. package/dist/hooks/dispatch.js +2278 -611
  85. package/dist/install/install.mjs +56 -17
  86. package/dist/mcp/registry-manifest.json +3 -3
  87. package/dist/mcp/server.json +2 -2
  88. package/dist/mcp/server.mjs +4122 -699
  89. package/dist/router.json +1 -1
  90. package/dist/scripts/_lib/agent_settings.js +54 -0
  91. package/dist/scripts/_lib/agent_settings.js.map +1 -1
  92. package/dist/scripts/condense.js +147 -2
  93. package/dist/scripts/condense.js.map +1 -1
  94. package/dist/server/schemas/settings.js +12 -7
  95. package/dist/server/schemas/settings.js.map +1 -1
  96. package/dist/shared/settingsCarveOut.js +0 -9
  97. package/dist/shared/settingsCarveOut.js.map +1 -1
  98. package/dist/shared/settingsClasses.js +11 -9
  99. package/dist/shared/settingsClasses.js.map +1 -1
  100. package/dist/ui/assets/index-B5qGYOJo.js +26 -0
  101. package/dist/ui/assets/index-B5qGYOJo.js.map +1 -0
  102. package/dist/ui/index.html +1 -1
  103. package/docs/contracts/settings-classes.md +58 -12
  104. package/package.json +1 -1
  105. package/src/agent-src/scripts/roadmap_gates.ts +312 -0
  106. package/src/agent-src/scripts/update_roadmap_progress.ts +72 -4
  107. package/src/agent-src/templates/AGENTS.md +4 -4
  108. package/src/config/agent-settings.template.yml +88 -66
  109. package/src/config/discovery/packs.yml +11 -0
  110. package/src/config/discovery/workspaces.yml +1 -1
  111. package/src/config/dispatch-economy-metrics.json +61 -0
  112. package/src/config/evaluator-budgets.json +4 -4
  113. package/src/config/gate-violation-baselines.json +3 -3
  114. package/src/config/hook-token-budget.json +91 -0
  115. package/src/config/recycle-threshold-budget.json +12 -0
  116. package/src/config/rule-enforcement-baseline.json +86 -0
  117. package/src/scripts/_cli/cmd_conformance.ts +31 -44
  118. package/src/scripts/_cli/cmd_doctor.ts +65 -48
  119. package/src/scripts/_cli/cmd_session_recycle.ts +226 -0
  120. package/src/scripts/_dispatch.bash +23 -0
  121. package/src/scripts/_lib/agent_settings.ts +58 -0
  122. package/src/scripts/_lib/auto_dispatch.corpus.test.ts +1 -1
  123. package/src/scripts/_lib/auto_dispatch.ts +23 -18
  124. package/src/scripts/_lib/capsule_trigger.ts +124 -0
  125. package/src/scripts/_lib/host_capability.ts +63 -6
  126. package/src/scripts/_lib/judgment_ladder.ts +634 -0
  127. package/src/scripts/_lib/orchestration_gate.ts +8 -0
  128. package/src/scripts/_lib/orchestration_record.ts +78 -10
  129. package/src/scripts/_lib/orchestration_savings.ts +1 -1
  130. package/src/scripts/_lib/recycle_envelope_paths.ts +35 -0
  131. package/src/scripts/_lib/self_repair.ts +354 -13
  132. package/src/scripts/_lib/self_repair_store.ts +28 -0
  133. package/src/scripts/_lib/session_eol.ts +230 -0
  134. package/src/scripts/_lib/session_role.ts +42 -0
  135. package/src/scripts/_lib/subagent_capsule.ts +341 -0
  136. package/src/scripts/_lib/subagent_response.ts +94 -0
  137. package/src/scripts/_lib/subagent_spawn.ts +13 -0
  138. package/src/scripts/_lib/subagent_steering.ts +9 -4
  139. package/src/scripts/_lib/tier_budget_routing.ts +6 -1
  140. package/src/scripts/_lib/worker_budget.ts +37 -2
  141. package/src/scripts/ai_council/clients.ts +126 -55
  142. package/src/scripts/ai_council/config.ts +94 -6
  143. package/src/scripts/ai_council/handoff.ts +113 -0
  144. package/src/scripts/ai_council/modes.ts +19 -4
  145. package/src/scripts/ai_council/orchestrator.ts +105 -0
  146. package/src/scripts/ai_council/quorum.ts +84 -0
  147. package/src/scripts/ai_council/session.ts +44 -0
  148. package/src/scripts/ai_council/transport_resolver.ts +127 -1
  149. package/src/scripts/ai_team/availability.ts +110 -0
  150. package/src/scripts/ai_team/config.ts +34 -14
  151. package/src/scripts/ai_team/team_dispatch.ts +71 -29
  152. package/src/scripts/ask_transport.ts +221 -0
  153. package/src/scripts/bench_critic_protocol.ts +396 -0
  154. package/src/scripts/bench_hook_injection.ts +234 -0
  155. package/src/scripts/check_adr_frontmatter.ts +84 -40
  156. package/src/scripts/check_branch_freshness.ts +1 -0
  157. package/src/scripts/check_corpus_staleness.ts +18 -4
  158. package/src/scripts/check_detector_corpus.ts +219 -0
  159. package/src/scripts/check_gitignore_freshness.ts +42 -8
  160. package/src/scripts/check_hook_bundle_freshness.ts +24 -1
  161. package/src/scripts/check_kernel_prefix_stability.ts +1 -0
  162. package/src/scripts/check_standing_rule_delivery.ts +73 -32
  163. package/src/scripts/check_static_layer_stability.ts +154 -0
  164. package/src/scripts/check_suppression_hygiene.ts +48 -0
  165. package/src/scripts/condense.ts +162 -2
  166. package/src/scripts/council_cli.ts +401 -25
  167. package/src/scripts/dispatch_economy_report.ts +448 -0
  168. package/src/scripts/dispatch_r2_reviewer.ts +15 -2
  169. package/src/scripts/explain_run.ts +206 -4
  170. package/src/scripts/forensics_report.ts +333 -0
  171. package/src/scripts/generate_settings_reference.ts +1 -0
  172. package/src/scripts/handoff_context_hook.ts +112 -4
  173. package/src/scripts/hook_manifest.yaml +117 -10
  174. package/src/scripts/hooks/concern_registry.ts +8 -0
  175. package/src/scripts/hooks/delegation_nudge_hook.ts +106 -35
  176. package/src/scripts/hooks/dispatch_hook.ts +39 -2
  177. package/src/scripts/hooks/edit_shape_hook.ts +303 -0
  178. package/src/scripts/hooks/orchestration_record_hook.ts +19 -1
  179. package/src/scripts/hooks/reread_guard_hook.ts +314 -0
  180. package/src/scripts/hooks/rtk_wrap_hook.ts +133 -14
  181. package/src/scripts/hooks/session_eol_hook.ts +268 -0
  182. package/src/scripts/hooks/turn_end_gate_hook.ts +507 -0
  183. package/src/scripts/install-hooks.sh +1 -1
  184. package/src/scripts/language_mirror_hook.ts +89 -0
  185. package/src/scripts/lint_decision_impact.ts +14 -1
  186. package/src/scripts/lint_discovery_vocabulary.ts +2 -0
  187. package/src/scripts/lint_hook_manifest.ts +82 -0
  188. package/src/scripts/lint_never_silent.ts +276 -0
  189. package/src/scripts/lint_no_activation_gates.ts +271 -0
  190. package/src/scripts/lint_readme_serial_comma.ts +1 -0
  191. package/src/scripts/lint_rule_enforcement_declaration.ts +347 -0
  192. package/src/scripts/measure_turn_end_gate.ts +194 -0
  193. package/src/scripts/orchestration_record.ts +12 -1
  194. package/src/scripts/rebuild_hook_bundle.ts +178 -0
  195. package/src/scripts/release.ts +74 -2
  196. package/src/scripts/report_conformance_funnel.ts +284 -0
  197. package/src/scripts/report_imperative_density.ts +1 -0
  198. package/src/scripts/routing_doctor.ts +118 -36
  199. package/src/scripts/score_skill_selection.ts +19 -5
  200. package/src/scripts/self_repair_cli.ts +337 -59
  201. package/src/scripts/session_eol_report.ts +261 -0
  202. package/src/scripts/team_events_spike.ts +271 -0
  203. package/src/scripts/team_review_gate_hook.ts +31 -9
  204. package/src/server/schemas/settings.ts +24 -17
  205. package/src/shared/settingsCarveOut.ts +0 -10
  206. package/src/shared/settingsClasses.ts +11 -9
  207. package/src/templates/compact-instructions.md +40 -0
  208. package/dist/ui/assets/index-DmR0mbk4.js +0 -26
  209. package/dist/ui/assets/index-DmR0mbk4.js.map +0 -1
@@ -0,0 +1,114 @@
1
+ ---
2
+ name: forensics-report
3
+ description: "Use when a release review needs machine-derived evidence from git history — hotspot risk and change-coupling analyzers. Triggers on 'hotspot', 'what changes together', 'release forensics'."
4
+ domain: engineering
5
+ model_tier: medium
6
+ workspaces:
7
+ - engineering
8
+ packs:
9
+ - forensics
10
+ lifecycle: experimental
11
+ trust:
12
+ level: experimental
13
+ install:
14
+ default: false
15
+ removable: true
16
+ ---
17
+
18
+ # forensics-report
19
+
20
+ ## When to use
21
+
22
+ - Before or during a **release review**, when machine-derived evidence is
23
+ wanted alongside the human review: "which files are the risk hotspots in
24
+ this release", "what changes together", "release forensics".
25
+ - When intended module boundaries should be checked against what the git
26
+ history actually shows (change-coupling across module lines).
27
+ - The output is **advisory, never a gate** — it points reviewers at places
28
+ worth attention; it never passes or fails anything.
29
+ - NOT for IT-security incident forensics (route to `incident-commander`) and
30
+ NOT for runtime performance hotspots (route to `performance-analysis`).
31
+
32
+ ## Procedure
33
+
34
+ 1. **Pick the range** — the previous release tag to HEAD (`vPREV..HEAD`) or a
35
+ released pair (`vPREV..vNEW`). Pin the range explicitly; a floating range
36
+ breaks determinism.
37
+ 2. **Run the report:**
38
+
39
+ ```bash
40
+ npx tsx node_modules/@event4u/agent-config/src/scripts/forensics_report.ts --range vPREV..vNEW --out report.json
41
+ ```
42
+
43
+ Two deterministic, git-log-based analyzers run, read-only and offline:
44
+ - **Hotspot risk** = normalized change frequency x normalized complexity
45
+ per file over the range.
46
+ - **Change-coupling** = `co_changes(A,B) / min(changes(A), changes(B))`
47
+ per file pair.
48
+ 3. **Optionally feed the release findings ledger:** add
49
+ `--findings-out findings.json`, then ingest via
50
+
51
+ ```bash
52
+ npx tsx node_modules/@event4u/agent-config/src/scripts/check_finding_dispositions.ts --ingest findings.json --release X.Y.Z
53
+ ```
54
+
55
+ which appends to the existing ledger at
56
+ `agents/evidence/release-findings/<version>.json`. Emitted findings are
57
+ `kind: correctness` with `severity: low|medium` — non-blocking for the
58
+ release gate by construction.
59
+ 4. **Read the results:**
60
+ - `hotspots[]` — a hotspot is a place for reviewer attention, NEVER a
61
+ quality verdict. A frequently changed complex file can be exactly right
62
+ as it is; the score says "look here", not "this is bad".
63
+ - `coupling[]` — file pairs that habitually change together.
64
+ - `boundary_contradictions[]` — cross-module coupling above the threshold,
65
+ i.e. a contradiction between intended and actual boundaries. This is a
66
+ finding CLASS to discuss, not a failure.
67
+
68
+ ## Output format
69
+
70
+ 1. Lead with the scanned denominator (`scanned.commits` / `scanned.files`, including skipped bulk commits) — a reader must be able to judge the sample before the findings.
71
+ 2. Present hotspots and coupling as ranked tables with the score interpretation line ("a place to look, not a quality verdict") attached.
72
+ 3. When `--findings-out` was used, state the ingest command and the ledger path the findings landed in.
73
+
74
+ Deterministic JSON with these fields:
75
+
76
+ | Field | Meaning |
77
+ |---|---|
78
+ | `mode` | analyzer mode the run used |
79
+ | `range` | the pinned rev-range analyzed |
80
+ | `scanned` | commit/file counts, including skipped bulk commits |
81
+ | `params` | thresholds and normalization parameters in effect |
82
+ | `hotspots[]` | per-file hotspot entries (path, frequency, complexity, score) |
83
+ | `coupling[]` | file-pair coupling entries (paths, co-change ratio) |
84
+ | `boundary_contradictions[]` | cross-module coupling hits above threshold |
85
+
86
+ Findings emitted via `--findings-out` conform to
87
+ `review-findings.schema.json` (shipped with the package; `kind: correctness`,
88
+ `severity: low|medium`).
89
+
90
+ ## Gotchas
91
+
92
+ - **Bulk commits are coupling noise** — commits touching more than
93
+ `max_commit_files` files (default 50) are skipped by the coupling analyzer
94
+ and counted in the report's `scanned` section.
95
+ - **Only git log + working-tree file metrics are read** — renamed files
96
+ appear as two separate paths, splitting their history across both.
97
+ - **Deterministic only with a pinned range** — `vPREV..vNEW` reproduces;
98
+ "since today" or a date-relative range does not.
99
+
100
+ ## Do NOT
101
+
102
+ - Do NOT build a gate out of this report — the pre-registered value question
103
+ in `docs/CLAIMS.md` (`forensics-pack-value`) decides promotion or closure;
104
+ until then the output stays advisory.
105
+ - Do NOT sell hotspot scores as a code-quality proxy — they measure change
106
+ frequency and complexity, not correctness or craftsmanship.
107
+ - Do NOT emit findings with `severity: high|critical` or
108
+ `kind: security|claim` — that would block the release gate, which this
109
+ analyzer must never do.
110
+
111
+ ## See also
112
+
113
+ - `forensics_report.ts` (this package's scripts tree; consumer path `node_modules/@event4u/agent-config/src/scripts/forensics_report.ts`) — the analyzer implementation.
114
+ - `docs/CLAIMS.md` — the pre-registered `forensics-pack-value` question.
@@ -0,0 +1,17 @@
1
+ {
2
+ "skill": "forensics-report",
3
+ "last_eval": "2026-08-09",
4
+ "description": "5 should-trigger + 5 should-not-trigger. Should-trigger covers DE+EN phrasings for git-history release forensics (hotspot risk, change-coupling, release-review evidence). Should-not-trigger covers near-miss neighbours: security incident forensics (incident-commander), plain git log, runtime performance hotspots (performance-analysis), line blame, security audit.",
5
+ "queries": [
6
+ { "q": "which files are the riskiest hotspots in this release", "trigger": true },
7
+ { "q": "what files always change together", "trigger": true },
8
+ { "q": "run the forensics report for the release review", "trigger": true },
9
+ { "q": "zeig mir hotspot und coupling evidenz für das release", "trigger": true },
10
+ { "q": "machine-derived evidence for the release review", "trigger": true },
11
+ { "q": "do a forensic analysis of the security incident from last night", "trigger": false },
12
+ { "q": "show me the git log for the last week", "trigger": false },
13
+ { "q": "find the performance hotspots in production at runtime", "trigger": false },
14
+ { "q": "who wrote this line — run git blame on it", "trigger": false },
15
+ { "q": "run a security audit on the auth module", "trigger": false }
16
+ ]
17
+ }
@@ -80,6 +80,31 @@ For each top failure mode (sorted by L × I from `risk-officer`):
80
80
  rollout strategy that reduces the likelihood of this failure mode. Keep it
81
81
  executable; flag as `accept` if no practical guardrail exists.
82
82
 
83
+ ### 3b. Compress into the four-part failure register
84
+
85
+ When the pre-mortem accompanies a plan artefact (a roadmap, an ADR, a design
86
+ doc), compress the analysis into the **four-part failure register** — the
87
+ fixed, comparable shape the roadmap template's optional `## Pre-mortem`
88
+ section consumes:
89
+
90
+ 1. **Three most probable causes of death, ranked** — one paragraph each,
91
+ naming the concrete mechanism by which the plan most plausibly dies.
92
+ Mechanisms, not topics: "the gate's two inputs are unmeasurable from this
93
+ corpus" is a cause; "measurement risk" is not.
94
+ 2. **One untested hidden dependency** — the assumption the plan relies on but
95
+ never tests.
96
+ 3. **One modification that makes failure survivable** — a concrete plan change
97
+ that converts a fatal outcome into a recoverable one.
98
+ 4. **One tripwire metric with a horizon** — a measurable signal plus a
99
+ threshold and deadline that says early that cause #1 is materializing.
100
+
101
+ The register was validated blind against this repo's own closed nulls
102
+ (3 of 4 registers named the actual failure cause at rank 1 —
103
+ `agents/evidence/analysis/premortem-blind-retro-validation.md`). The hits were
104
+ all failures of *measurability*; the miss was a mechanism that worked but
105
+ added nothing — weight the register toward "can this experiment answer its
106
+ question" and state redundancy risks explicitly.
107
+
83
108
  ### 4. Optional memory write-back
84
109
 
85
110
  If the analysis surfaces a pattern worth preserving for future decisions:
@@ -96,7 +121,11 @@ If the analysis surfaces a pattern worth preserving for future decisions:
96
121
  1. **Ranked prospective failure modes** — L × I ordered list (from `risk-officer`)
97
122
  2. **Early-warning signal per failure mode** — concrete, observable indicator
98
123
  3. **Preventive guardrails** — one per failure mode (or `accept` with rationale)
99
- 4. **Optional memory candidate** — drafted to `/memory propose` if the pattern
124
+ 4. **Four-part failure register** (when accompanying a plan artefact) — three
125
+ ranked causes of death · one untested hidden dependency · one
126
+ survivable-failure modification · one tripwire metric with a horizon
127
+ (step 3b; feeds the roadmap template's optional `## Pre-mortem` section)
128
+ 5. **Optional memory candidate** — drafted to `/memory propose` if the pattern
100
129
  clears the admission gate (≥ 2 distinct file paths OR ≥ 3 future decisions)
101
130
 
102
131
  ## Do NOT
@@ -82,7 +82,8 @@ Each link **delegates** to the artifact that owns it (no duplication):
82
82
  ([`complexity-first-planning`](../complexity-first-planning/SKILL.md)); dispatch
83
83
  independent subtasks async ([`subagent-orchestration` § RDP](../subagent-orchestration/SKILL.md)),
84
84
  auto-triggered by the [`delegation-policy`](../../rules/delegation-policy.md) rule
85
- (gates on `subagents.enabled`/`auto` + host manifest).
85
+ (gates on the emergency incident switch + host manifest — always-on
86
+ orchestration carries no per-layer on/off setting).
86
87
  5. **audit** — check progress against real tool results
87
88
  ([`verify-before-complete`](../../rules/verify-before-complete.md)).
88
89
  6. **verify** — fresh-context verifier on the structural-complexity gate
@@ -56,15 +56,17 @@ parallel subagents **by default** and keep working while they run (async), rathe
56
56
  than blocking on each return — intervene only if one goes off track. Engage per
57
57
  [`rdp-gate`](../../contexts/execution/rdp-gate.md).
58
58
 
59
- ### Settings-gated auto-dispatch
59
+ ### Always-on auto-dispatch
60
60
 
61
61
  "By default" is governed by the [`delegation-policy`](../../rules/delegation-policy.md)
62
62
  rule — the single source of the auto-trigger. It gates on the activation context
63
63
  ([`auto-orchestration-activation`](../../contexts/execution/auto-orchestration-activation.md)):
64
- dispatch only when `subagents.enabled`, `subagents.auto != off`, the host
64
+ dispatch only when `emergency.orchestration_halt` is not set, the host
65
65
  manifest reports `subagent_spawn: true`, and the task is classified delegable.
66
- `auto: ask` → ask once; `auto: on` → surface mode + per-subtask tiers in one
67
- line; any gate failing → in-session no-op. Never lifts a safety floor.
66
+ A matched signal → dispatch, surfacing mode + per-subtask tiers in one line;
67
+ an ambiguous verdict → ask, always; any gate failing → in-session no-op.
68
+ There is no more per-layer on/off setting (always-on orchestration). Never
69
+ lifts a safety floor.
68
70
 
69
71
  ## Worker-prompt contract
70
72
 
@@ -246,6 +248,16 @@ mechanically. Meaning/required-keys table, why-fixed rationale, and the
246
248
  `NEEDS_CONTEXT`-vs-`BLOCKED` distinction →
247
249
  [`subagent-modes-detail` § Status taxonomy](../../agent-src/contexts/execution/subagent-modes-detail.md).
248
250
 
251
+ **The envelope is the ONLY return channel** (token-economy-dispatch
252
+ Phase 6). A worker writes its full output to disk (runtime artifact dir,
253
+ gitignored) and returns the bounded envelope — `summary` +
254
+ `artifact_paths` + verdict, size caps validator-enforced
255
+ (`_lib/subagent_response.ts`: summary ≤ 2,000 chars, whole envelope
256
+ ≤ 12,000). The orchestrator reads FROM the artifact paths on demand —
257
+ never instructs a worker to paste its full result into the return, and
258
+ never ingests a transcript-shaped return wholesale: dispatching N workers
259
+ grows the orchestrator context by N envelopes, not N transcripts.
260
+
249
261
  ## Dispatch prompts — externalized
250
262
 
251
263
  Each mode's literal dispatch template lives under
@@ -326,7 +338,7 @@ After every auto-dispatched run, write one audit-log-v1 line
326
338
  never hand-author the JSON. Line shape, field semantics, recorder
327
339
  invocation, and `token_delta` sourcing priority →
328
340
  [`orchestration-telemetry` § Emit procedure](../../agent-src/contexts/execution/orchestration-telemetry.md).
329
- Skip emit when `subagents.enabled: false` or `spawn_count == 0`
341
+ Skip emit when `emergency.orchestration_halt` is set or `spawn_count == 0`
330
342
  (in-session run).
331
343
 
332
344
  ## Gotcha
@@ -2,15 +2,15 @@
2
2
  "$schema": "https://json-schema.org/draft-07/schema#",
3
3
  "$id": "https://event4u.dev/agent-config/schemas/subagent-status.json",
4
4
  "title": "Subagent Status Envelope",
5
- "description": "Required wire format for every implementer or judge subagent return. Loaded by /do-and-judge, /do-in-steps, and the subagent-orchestration skill. Hand-validated by tests/test_subagent_status_schema.py (no jsonschema runtime dep).",
5
+ "description": "Required wire format for every implementer or judge subagent return. Loaded by /do-and-judge, /do-in-steps, and the subagent-orchestration skill. No jsonschema runtime dep — the authoritative validators are src/scripts/_lib/subagent_response.ts (body) and src/scripts/_lib/subagent_capsule.ts (CHECKPOINT capsule), covered by tests/scripts/_lib_subagent_response.test.ts and tests/scripts/_lib_subagent_capsule.test.ts.",
6
6
  "type": "object",
7
7
  "required": ["status", "summary"],
8
8
  "additionalProperties": false,
9
9
  "properties": {
10
10
  "status": {
11
11
  "type": "string",
12
- "enum": ["DONE", "DONE_WITH_CONCERNS", "NEEDS_CONTEXT", "BLOCKED"],
13
- "description": "DONE = work shipped, gate green. DONE_WITH_CONCERNS = work shipped but caller must read concerns[]. NEEDS_CONTEXT = paused, blocking_question[] must be answered. BLOCKED = halted, blocking_reason describes why no path forward."
12
+ "enum": ["DONE", "DONE_WITH_CONCERNS", "NEEDS_CONTEXT", "BLOCKED", "CHECKPOINT"],
13
+ "description": "DONE = work shipped, gate green. DONE_WITH_CONCERNS = work shipped but caller must read concerns[]. NEEDS_CONTEXT = paused, blocking_question[] must be answered. BLOCKED = halted, blocking_reason describes why no path forward. CHECKPOINT = the worker reached its budget watermark and hands off a state capsule; done/remaining/generation are required."
14
14
  },
15
15
  "summary": {
16
16
  "type": "string",
@@ -40,6 +40,60 @@
40
40
  "next_action": {
41
41
  "type": "string",
42
42
  "description": "What the caller does now. Optional; orchestrator infers from status when omitted."
43
+ },
44
+ "generation": {
45
+ "type": "integer",
46
+ "minimum": 1,
47
+ "description": "CHECKPOINT only. Generation index in the recycling chain; the first dispatch is 1."
48
+ },
49
+ "done": {
50
+ "type": "array",
51
+ "maxItems": 40,
52
+ "items": {"type": "string", "minLength": 1, "maxLength": 200, "pattern": "^[^\\n\\r]*$"},
53
+ "description": "CHECKPOINT only. What is finished — ref tokens (file:line, id, path), never bodies."
54
+ },
55
+ "remaining": {
56
+ "type": "array",
57
+ "maxItems": 40,
58
+ "items": {"type": "string", "minLength": 1, "maxLength": 240, "pattern": "^[^\\n\\r]*$"},
59
+ "description": "CHECKPOINT only. What is left, one short line each."
60
+ },
61
+ "decisions": {
62
+ "type": "array",
63
+ "maxItems": 40,
64
+ "items": {"type": "string", "minLength": 1, "maxLength": 240, "pattern": "^[^\\n\\r]*$"},
65
+ "description": "CHECKPOINT only. Choices already made that the successor must not silently re-open."
66
+ },
67
+ "open_risks": {
68
+ "type": "array",
69
+ "maxItems": 40,
70
+ "items": {"type": "string", "minLength": 1, "maxLength": 240, "pattern": "^[^\\n\\r]*$"},
71
+ "description": "CHECKPOINT only. Risks still open at handoff."
72
+ },
73
+ "touched_files": {
74
+ "type": "array",
75
+ "maxItems": 40,
76
+ "items": {"type": "string", "minLength": 1, "maxLength": 200, "pattern": "^[^\\n\\r]*$"},
77
+ "description": "CHECKPOINT only. Paths / file:line this generation touched — never diffs."
78
+ },
79
+ "assumptions": {
80
+ "type": "array",
81
+ "maxItems": 40,
82
+ "description": "Stated premises the successor inherits instead of re-deriving. Valid on a CHECKPOINT capsule AND on a completed worker result — unstated assumptions are the first thing compression drops.",
83
+ "items": {
84
+ "type": "object",
85
+ "required": ["statement", "basis", "epistemic_state"],
86
+ "additionalProperties": false,
87
+ "properties": {
88
+ "statement": {"type": "string", "minLength": 1, "maxLength": 240, "pattern": "^[^\\n\\r]*$"},
89
+ "basis": {"type": "string", "minLength": 1, "maxLength": 200, "pattern": "^[^\\n\\r]*$", "description": "Ref token the premise rests on."},
90
+ "epistemic_state": {
91
+ "type": "string",
92
+ "enum": ["verified", "assumed", "gap"],
93
+ "description": "The Evidence-Report buckets from evidence-discipline.md — the capsule does not get a private grading scale."
94
+ }
95
+ }
96
+ }
43
97
  }
44
98
  },
45
99
  "allOf": [
@@ -58,6 +112,10 @@
58
112
  {
59
113
  "if": {"properties": {"status": {"const": "BLOCKED"}}, "required": ["status"]},
60
114
  "then": {"required": ["blocking_reason"]}
115
+ },
116
+ {
117
+ "if": {"properties": {"status": {"const": "CHECKPOINT"}}, "required": ["status"]},
118
+ "then": {"required": ["done", "remaining", "generation"]}
61
119
  }
62
120
  ]
63
121
  }
@@ -61,7 +61,7 @@ Generate ≥ 1 concrete case per HIGH dimension, plus the happy path. Enforce th
61
61
 
62
62
  Widen the list with a second pair of eyes:
63
63
 
64
- - **Subagent path** — when the host supports subagent spawn and subagents are enabled (`subagents.enabled`, `subagents.auto` ≠ off): spawn **one** subagent with an adversarial lens — *"Behavior: {sentence}. Case list so far: {list}. As a security researcher / SRE / chaos engineer: which non-obvious failure mode or abuse vector is missing?"* On security-critical surfaces a **second** subagent with a different lens is allowed; more is waste. Merge only novel cases.
64
+ - **Subagent path** — when the host supports subagent spawn and no emergency halt is set (always-on orchestration: there is no more per-layer on/off setting): spawn **one** subagent with an adversarial lens — *"Behavior: {sentence}. Case list so far: {list}. As a security researcher / SRE / chaos engineer: which non-obvious failure mode or abuse vector is missing?"* On security-critical surfaces a **second** subagent with a different lens is allowed; more is waste. Merge only novel cases.
65
65
  - **Degraded path (mandatory when no subagent runs)** — a self-review pass with an explicit lens shift: re-walk step 2 asking *"what breaks in production? what would an attacker try?"* and emit the same output shape (1–2 additional cases, or explicitly "none found").
66
66
 
67
67
  Unavailability of subagents never skips this step — it only switches the path.
@@ -1,6 +1,6 @@
1
1
  # {{project_name}}
2
2
 
3
- <!-- Fill placeholders or run `/agents init`; delete after. Capability bullets, not paths. Recipes: `.augment/contexts/contracts/agents-md-anatomy.md`. -->
3
+ <!-- Fill placeholders or run `/agents init`; delete after. Recipes: `.augment/contexts/contracts/agents-md-anatomy.md`. -->
4
4
 
5
5
  > {{project_description}}
6
6
 
@@ -8,8 +8,8 @@
8
8
 
9
9
  | Layer | Location | Edits |
10
10
  |---|---|---|
11
- | Installed package | `.augment/`, `dist/agent-src/` | hands-off — managed by `event4u/agent-config` |
12
- | Project layer | `agents/`, `agents/overrides/`, `.agent-settings.yml` | your customizations and config |
11
+ | Installed package | `.augment/`, `dist/agent-src/` | managed by `event4u/agent-config` |
12
+ | Project layer | `agents/`, `agents/overrides/`, `.agent-settings.yml` | your customizations |
13
13
 
14
14
  ## Pointers
15
15
 
@@ -18,7 +18,7 @@
18
18
  - **Skills (on-demand expertise)** — domain skills surfaced by description, invoked on trigger match: [`.augment/skills/`](.augment/skills/).
19
19
  - **Commands (workflows)** — slash-commands the agent runs end-to-end (`/work`, `/create-pr`, …): [`.augment/commands/`](.augment/commands/).
20
20
  - **Project-specific docs** — your own architecture notes, roadmaps, sessions, contexts: [`agents/`](agents/).
21
- - **Delegation & review** — dispatch independent-slice tasks to subagents instead of serial work; a mutating session ends after a neutral cross-model review: [`delegation-policy`](.augment/rules/delegation-policy.md).
21
+ - **Delegation & review** — dispatch independent-slice tasks to subagents instead of serial work; in a team (host-flag gated) the lead coordinates, teammates implement; a mutating session ends after a neutral cross-model review: [`delegation-policy`](.augment/rules/delegation-policy.md).
22
22
 
23
23
  ## Emergency triage — read this when nothing else is reachable
24
24
 
@@ -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: "9.28.0"
42
+ agent_config_version: "9.30.0"
43
43
 
44
44
  # --- Project identity ---
45
45
  project:
@@ -251,6 +251,20 @@ Templates for roadmap files stored in `agents/roadmaps/` or `{module_root}/{Modu
251
251
  `status: draft` roadmaps are exempt until flipped to ready. Enforced
252
252
  by `lint_plan_risk_register` at pre-push + CI.
253
253
 
254
+ 25. **`## Pre-mortem` is optional — and only worth having when it is a
255
+ forecast.** A roadmap MAY carry a `## Pre-mortem` section holding the
256
+ four-part failure register from the
257
+ [`premortem`](../skills/premortem/SKILL.md) skill (three ranked causes
258
+ of death · one untested hidden dependency · one survivable-failure
259
+ modification · one tripwire metric with a horizon). It is deliberately
260
+ NOT required: a failure register written to satisfy a template stops
261
+ being a forecast, and boilerplate in a failure register is worse than
262
+ its absence. Include it when the plan is heavy or irreversible enough
263
+ that a named tripwire changes behaviour; omit it entirely otherwise —
264
+ never ship an empty or perfunctory one. Distinct from rule 24's Risk
265
+ Register: the register ranks *known* risks with mitigations; the
266
+ pre-mortem imagines the *whole plan dead* and reconstructs why.
267
+
254
268
  ---
255
269
 
256
270
  ## Quality Gates (remote CI by default)
@@ -357,6 +371,15 @@ complexity: lightweight
357
371
 
358
372
  {Optional: edge cases, decisions, links to related docs.}
359
373
 
374
+ <!-- ## Pre-mortem — INCLUDE ONLY when the plan is heavy or irreversible
375
+ enough that a failure forecast changes behaviour (rule 25). OMIT
376
+ entirely otherwise — a perfunctory register is worse than none.
377
+ Shape: the four-part failure register from the premortem skill.
378
+ 1. Causes of death, ranked: {three, one paragraph each — mechanisms, not topics}
379
+ 2. Untested hidden dependency: {the assumption the plan never tests}
380
+ 3. Survivable-failure modification: {one concrete plan change}
381
+ 4. Tripwire: {metric + threshold + horizon that says cause #1 is materializing} -->
382
+
360
383
  <!-- ## Provenance — INCLUDE ONLY for source-derived / harvest / capability-adoption
361
384
  roadmaps (rule 19). OMIT entirely for internally-originated roadmaps —
362
385
  do NOT ship an empty Provenance section.
@@ -58,9 +58,11 @@ export const REGISTRY = [
58
58
  { name: 'use', disposition: 'delegate', synopsis: 'Switch the active experience/profile (writes profile.id).' },
59
59
  { name: 'sessions:list', disposition: 'delegate', synopsis: 'List live agent sessions on this repository (shared session register).' },
60
60
  { name: 'sessions:claim', disposition: 'delegate', synopsis: 'Claim a roadmap for this session so other sessions skip it; --release clears it.' },
61
+ { name: 'session:recycle', disposition: 'delegate', synopsis: 'Validate + write the main-session recycle envelope; the successor session resumes from it after /clear.' },
61
62
  { name: 'roadmap:progress', disposition: 'delegate', synopsis: 'Regenerate agents/roadmaps-progress.md from open roadmaps.' },
62
63
  { name: 'roadmap:progress-check', disposition: 'delegate', synopsis: 'Fail if agents/roadmaps-progress.md is stale (for CI).' },
63
64
  { name: 'roadmap:archive', disposition: 'delegate', synopsis: 'Archive completed roadmaps (PR-gate sweep).' },
65
+ { name: 'gates', disposition: 'delegate', synopsis: 'Open decisions that need you, as actions — owner-filtered roadmap blockers; --all, --json.' },
64
66
  { name: 'capabilities:index', disposition: 'delegate', synopsis: 'Regenerate CAPABILITIES.yaml (the package coverage index); --check for CI.' },
65
67
  { name: 'affected', disposition: 'delegate', synopsis: 'Artefacts related to <artefact> via the discovery relation-graph (BFS).' },
66
68
  { name: 'graph-explain', disposition: 'delegate', synopsis: 'Seed on a <concept>, expand 2 hops over the discovery relation-graph with a node budget.' },
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/cli/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/cli/registry.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { createRequire as __acCreateRequire } from 'node:module'; const require
2
2
  import {
3
3
  DEFAULT_PROJECT_FILE,
4
4
  logger
5
- } from "./chunk-GB2FSUEE.js";
5
+ } from "./chunk-LCFJIQ4J.js";
6
6
 
7
7
  // src/scripts/config/profiles.ts
8
8
  import * as fs2 from "node:fs";
@@ -1,28 +1,16 @@
1
1
  import { createRequire as __acCreateRequire } from 'node:module'; const require = globalThis.require ?? __acCreateRequire(import.meta.url);
2
+ import {
3
+ readHookStdin
4
+ } from "./chunk-MMJL4TIX.js";
2
5
  import {
3
6
  load_agent_settings
4
- } from "./chunk-GB2FSUEE.js";
7
+ } from "./chunk-LCFJIQ4J.js";
5
8
 
6
9
  // src/scripts/chat_history.ts
7
10
  import { createHash } from "node:crypto";
8
- import * as fs2 from "node:fs";
11
+ import * as fs from "node:fs";
9
12
  import * as path from "node:path";
10
13
  import { fileURLToPath, pathToFileURL } from "node:url";
11
-
12
- // src/scripts/hooks/hook_stdin.ts
13
- import * as fs from "node:fs";
14
- var _override = null;
15
- function readHookStdin() {
16
- if (_override !== null) return _override;
17
- try {
18
- if (process.stdin.isTTY) return "";
19
- return fs.readFileSync(0, "utf-8");
20
- } catch {
21
- return "";
22
- }
23
- }
24
-
25
- // src/scripts/chat_history.ts
26
14
  var DEFAULT_FILE = "agents/runtime/.agent-chat-history";
27
15
  var DEFAULT_SETTINGS_FILE = ".agent-settings.yml";
28
16
  var SCHEMA_VERSION = 4;
@@ -249,14 +237,14 @@ function derive_session_tag(session_id) {
249
237
  }
250
238
  function _isFile(p) {
251
239
  try {
252
- return fs2.statSync(p).isFile();
240
+ return fs.statSync(p).isFile();
253
241
  } catch {
254
242
  return false;
255
243
  }
256
244
  }
257
245
  function _statSize(p) {
258
246
  try {
259
- return fs2.statSync(p).size;
247
+ return fs.statSync(p).size;
260
248
  } catch {
261
249
  return -1;
262
250
  }
@@ -307,7 +295,7 @@ function _session_tag_enabled() {
307
295
  return (process.env.AGENT_CHAT_HISTORY_SESSION_TAG ?? "true").trim().toLowerCase() !== "false";
308
296
  }
309
297
  function _readLines(p) {
310
- const raw = fs2.readFileSync(p, "utf-8");
298
+ const raw = fs.readFileSync(p, "utf-8");
311
299
  if (raw === "") {
312
300
  return [];
313
301
  }
@@ -353,7 +341,7 @@ function read_header(p) {
353
341
  }
354
342
  let first;
355
343
  try {
356
- const raw = fs2.readFileSync(target, "utf-8");
344
+ const raw = fs.readFileSync(target, "utf-8");
357
345
  first = _strip(raw.split("\n", 1)[0] ?? "");
358
346
  } catch {
359
347
  return null;
@@ -383,8 +371,8 @@ function init(freq = "per_phase", options = {}) {
383
371
  if (_is_replay_mode()) {
384
372
  return header;
385
373
  }
386
- fs2.mkdirSync(path.dirname(target), { recursive: true });
387
- fs2.writeFileSync(target, _pyDumps(header) + "\n", { encoding: "utf-8" });
374
+ fs.mkdirSync(path.dirname(target), { recursive: true });
375
+ fs.writeFileSync(target, _pyDumps(header) + "\n", { encoding: "utf-8" });
388
376
  return header;
389
377
  }
390
378
  function migrate_header(p, options = {}) {
@@ -410,7 +398,7 @@ function migrate_header(p, options = {}) {
410
398
  if (typeof existing.started === "string") {
411
399
  new_header.started = existing.started;
412
400
  }
413
- const raw = fs2.readFileSync(target, "utf-8");
401
+ const raw = fs.readFileSync(target, "utf-8");
414
402
  const lines = _pySplitlines(raw);
415
403
  if (lines.length === 0) {
416
404
  return null;
@@ -465,7 +453,7 @@ function append(entry, options = {}) {
465
453
  if (_is_replay_mode()) {
466
454
  return;
467
455
  }
468
- fs2.appendFileSync(target, _pyDumps(entry) + "\n", { encoding: "utf-8" });
456
+ fs.appendFileSync(target, _pyDumps(entry) + "\n", { encoding: "utf-8" });
469
457
  }
470
458
  function _atomic_write_text(target, text) {
471
459
  if (_is_replay_mode()) {
@@ -475,11 +463,11 @@ function _atomic_write_text(target, text) {
475
463
  const uniq = `${process.pid}.${createHash("sha256").update(`${process.pid}:${Date.now()}:${Math.random()}`).digest("hex").slice(0, 8)}`;
476
464
  const tmp = target.slice(0, target.length - suffix.length) + `${suffix}.${uniq}.tmp`;
477
465
  try {
478
- fs2.writeFileSync(tmp, text, { encoding: "utf-8" });
479
- fs2.renameSync(tmp, target);
466
+ fs.writeFileSync(tmp, text, { encoding: "utf-8" });
467
+ fs.renameSync(tmp, target);
480
468
  } catch (exc) {
481
469
  try {
482
- fs2.unlinkSync(tmp);
470
+ fs.unlinkSync(tmp);
483
471
  } catch {
484
472
  }
485
473
  throw exc;
@@ -509,7 +497,7 @@ function reset_with_entries(entries, freq = "per_phase", options = {}) {
509
497
  const target = options.path ?? file_path();
510
498
  const header = _build_header(freq);
511
499
  const body = _normalize_entries(entries);
512
- fs2.mkdirSync(path.dirname(target), { recursive: true });
500
+ fs.mkdirSync(path.dirname(target), { recursive: true });
513
501
  const lines = [_pyDumps(header), ...body.map((e) => _pyDumps(e))];
514
502
  _atomic_write_text(target, lines.join("\n") + "\n");
515
503
  return header;
@@ -530,7 +518,7 @@ function prepend_entries(entries, options = {}) {
530
518
  return new_lines.length;
531
519
  }
532
520
  function _readLinesKeepNewline(p) {
533
- const raw = fs2.readFileSync(p, "utf-8");
521
+ const raw = fs.readFileSync(p, "utf-8");
534
522
  if (raw === "") {
535
523
  return [];
536
524
  }
@@ -552,8 +540,8 @@ function clear(options = {}) {
552
540
  return;
553
541
  }
554
542
  const target = options.path ?? file_path();
555
- if (fs2.existsSync(target)) {
556
- fs2.unlinkSync(target);
543
+ if (fs.existsSync(target)) {
544
+ fs.unlinkSync(target);
557
545
  }
558
546
  }
559
547
  function read_entries(options = {}) {
@@ -2010,8 +1998,8 @@ function _isCliEntry() {
2010
1998
  return true;
2011
1999
  }
2012
2000
  try {
2013
- const here = fs2.realpathSync(fileURLToPath(import.meta.url));
2014
- const argv = fs2.realpathSync(path.resolve(process.argv[1]));
2001
+ const here = fs.realpathSync(fileURLToPath(import.meta.url));
2002
+ const argv = fs.realpathSync(path.resolve(process.argv[1]));
2015
2003
  return here === argv;
2016
2004
  } catch {
2017
2005
  return false;
@@ -2033,7 +2021,6 @@ if (_invokedDirectly) {
2033
2021
  }
2034
2022
 
2035
2023
  export {
2036
- readHookStdin,
2037
2024
  derive_session_tag,
2038
2025
  read_entries,
2039
2026
  list_sessions