@lannguyensi/harness 0.57.0 → 0.58.1

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 (42) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/README.md +1 -1
  3. package/dist/cli/apply/apply.d.ts +6 -0
  4. package/dist/cli/apply/apply.js +2 -0
  5. package/dist/cli/apply/apply.js.map +1 -1
  6. package/dist/cli/apply/generate-codex-config.js +3 -3
  7. package/dist/cli/apply/generate-codex-config.js.map +1 -1
  8. package/dist/cli/apply/index.d.ts +1 -0
  9. package/dist/cli/apply/index.js +1 -0
  10. package/dist/cli/apply/index.js.map +1 -1
  11. package/dist/cli/apply/install-codex-config.d.ts +65 -0
  12. package/dist/cli/apply/install-codex-config.js +689 -20
  13. package/dist/cli/apply/install-codex-config.js.map +1 -1
  14. package/dist/cli/approve/understanding.d.ts +4 -4
  15. package/dist/cli/index.js +50 -21
  16. package/dist/cli/index.js.map +1 -1
  17. package/dist/cli/pack/hook-codex-user-prompt-submit.d.ts +0 -32
  18. package/dist/cli/pack/hook-codex-user-prompt-submit.js +11 -118
  19. package/dist/cli/pack/hook-codex-user-prompt-submit.js.map +1 -1
  20. package/dist/cli/pack/hook-solution-acceptance.d.ts +55 -0
  21. package/dist/cli/pack/hook-solution-acceptance.js +210 -23
  22. package/dist/cli/pack/hook-solution-acceptance.js.map +1 -1
  23. package/dist/cli/pack/hook-track-active-claim.d.ts +1 -0
  24. package/dist/cli/pack/hook-track-active-claim.js +91 -8
  25. package/dist/cli/pack/hook-track-active-claim.js.map +1 -1
  26. package/dist/cli/validate/checks.js +11 -1
  27. package/dist/cli/validate/checks.js.map +1 -1
  28. package/dist/io/lock.d.ts +26 -0
  29. package/dist/io/lock.js +25 -0
  30. package/dist/io/lock.js.map +1 -1
  31. package/dist/policy-packs/builtin/solution-acceptance-reconnect.d.ts +9 -7
  32. package/dist/policy-packs/builtin/solution-acceptance-reconnect.js +25 -20
  33. package/dist/policy-packs/builtin/solution-acceptance-reconnect.js.map +1 -1
  34. package/dist/policy-packs/builtin/solution-acceptance-runtime.d.ts +43 -4
  35. package/dist/policy-packs/builtin/solution-acceptance-runtime.js +40 -26
  36. package/dist/policy-packs/builtin/solution-acceptance-runtime.js.map +1 -1
  37. package/dist/policy-packs/builtin/understanding-before-execution.js +7 -5
  38. package/dist/policy-packs/builtin/understanding-before-execution.js.map +1 -1
  39. package/dist/runtime/task-providers/agent-tasks.d.ts +65 -3
  40. package/dist/runtime/task-providers/agent-tasks.js +145 -3
  41. package/dist/runtime/task-providers/agent-tasks.js.map +1 -1
  42. package/package.json +4 -1
package/CHANGELOG.md CHANGED
@@ -7,6 +7,51 @@ and this project adheres to [Semantic Versioning](https://semver.org/).
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.58.1] - 2026-09-23
11
+
12
+ ### Fixed
13
+
14
+ - **`harness apply --runtime codex --install` no longer deletes foreign (non harness-owned) tables when a previous install's END marker had drifted past them** (task `6a037359`). `findManagedRange` used to trust `text.indexOf(CODEX_MANAGED_END, begin)` unconditionally: a dogfood run on 2026-09-23 upgrading 0.56.0 to 0.58.0 found the marker sitting after Codex's own `[hooks.state]` trust table, `[marketplaces.*]`, `[plugins.*]` and `[tui]` tables, so the install deleted all of them. The region end is now computed independently of the END marker's position (a new `scanOwnedContentEnd` stops at the first foreign table, the same `NON_HOOK_TABLE_RE` the legacy no-END path already used), a stray END found beyond that point is excised and a fresh one is re-stamped right after the regenerated block, and a comment block Codex (or an operator) attaches to the next foreign table is never folded into the replaced region. A foreign table wedged between two harness hook tables, or a moved/duplicated BEGIN marker, now refuses loudly (`assertNoSplitBlock`) instead of guessing. `harness apply --dry-run --runtime codex --install` and the post-install summary now also name every hook id being removed (a hook id present in the old block absent from the new one) and every foreign section preserved, by its table header. Pinned in `tests/cli/apply/apply-codex-runtime.test.ts` with a fixture shaped like the real evidence file (neutral placeholder paths): the fixture fails against the pre-fix implementation (every foreign table and the trailing operator content are deleted) and passes at head; a dry-run test asserts the named removed-hook-id and preserved-foreign-section lists; a split-block fixture asserts the loud refusal. Mutation probes (`agent-primitives probe --pre 'npm run build'`) restoring blind END trust and removing the stray-END cleanup both killed by the fixture.
15
+
16
+ **Upgrade note:** Codex tracks per-hook trust in `[hooks.state]` (`<config path>:<event>:<group index>:<handler index>` keys, `trusted_hash` computed over a normalized hook identity, not raw source text; see `codex-rs/hooks/src/engine/discovery.rs`'s `hook_hash`/`hook_trust_status` and `codex-rs/hooks/src/lib.rs`'s `hook_key`, openai/codex commit `30fc6864cc1318121eca1843c217fe00ce1212f1`). Harness never writes or forges `trusted_hash`; it only stops deleting the table that holds it. A hook whose emitted command, matcher, or `[[hooks.<Event>]]` table position changes (the key embeds the table's ordinal index for that event) gets a new hash/key and reverts to `Untrusted` until the operator re-approves it in Codex, same as any hand-edited hook; this was already true before this fix, it is just no longer masked by the whole trust table being deleted. The UG Codex `post-tool-use` hook disappearing from an install is separate and expected: it is suppressed under `approval_lifecycle: { mode: session }` (`resolveExpireOnToolMatch`, `src/policy-packs/builtin/understanding-before-execution.ts`), pinned by `tests/policy-packs/expand.test.ts` ("Codex adapter contributes..." for the default-present case, "...suppressed when approval_lifecycle.mode = session..." for the opt-out); re-running the install under `mode: session` correctly removes that stale block, it is not a regression. A command, matcher, or timeout change (also an `async`/`status_message` change) yields a new hash under the SAME key; a position change instead moves which key the entry lives under; either way the affected hook's status reads `Modified` or `Untrusted` and Codex will not run it until re-approved. Separately, a `[hooks.state]` entry can carry a positional `enabled` override for that same key; adding or removing a hook earlier in an event's list shifts every later hook's ordinal index, which can land an operator's own `enabled = false` override onto a DIFFERENT hook than the one they disabled. Review Codex's hook list after any install that changes the hook roster (adds, removes, or reorders a hook for an event), not only after one that changes a single hook's command. Also: since harness 0.57.0 (stay-in-scope became an explicit opt-in), a re-install removes the codex "stay in scope" hook block unless `stay_in_scope` is enabled in the manifest -- expected, not a regression, same class as the `post-tool-use` disappearance above.
17
+
18
+ Also hardened in the same change (task `6a037359`): a dedicated fixture in `tests/cli/apply/apply-codex-runtime.test.ts` for each guard that previously had no fixture exercising it -- an operator comment sitting directly above the first foreign table (stays attached to that table, not folded into the replaced block, and appears exactly once); two harness-managed BEGIN markers (refused, file untouched); a BEGIN with no END where a foreign table is followed further down by a real `# harness hook:` comment (refused, since the block boundaries can no longer be read as a plain line scan); a managed block whose END marker is followed by a trailing operator comment at EOF (kept, not silently replaced away; this holds only when the END marker is present: in a config with no END marker, a trailing comment after the last harness hook table is still read as part of the block and replaced, a known limitation); exact (not `arrayContaining`) equality on `foreignSectionsPreserved` and `removedHookIds`, plus one exact byte-for-byte equality on the whole installed output for the drifted fixture. A CLI-level test (through the built program, not only the library function) asserts `--dry-run`'s and the applied install's own stdout for the removed-hook-block and preserved-foreign-section lines. The refusal itself is more actionable: it names the RESOLVED config path (never a hard-coded `~/.codex`), the first foreign table (its bracketed header only) and the line number of the first line beyond it that still looks like harness content (never that line's own text), and either tells the operator to move that table below the END marker or delete the lines between BEGIN and END (when one exists), or, when there is no END marker at all, to add one after the last harness hook table or move the foreign table below it instead (telling the operator to move something below a marker that does not exist would be nonsensical); a duplicate-BEGIN refusal tells the operator to delete the entire unwanted BEGIN/END pair, including its own marker lines and source-prefix comment, not just the lines between them. Either refusal offers the `.harness-backup-*` restore only as a last resort with an explicit warning that it discards any Codex state (hook trust, marketplaces, plugins) written since that backup; it throws a dedicated `CodexInstallRefusalError` (a `HarnessExitError` at `EX_FAIL`) instead of a plain `Error`, and `--json` emits a structured `{ outcome: "codex-install-refuse", configPath, error }` object on stdout the same way `target-exists-refuse`/`drift-refuse` already do, instead of only the plain-text message reaching stderr. The install's own permissions no longer widen a secret-bearing config: it preserves the EXISTING file's mode for both the rewritten config and its `.harness-backup-*` copy (0640 as well as 0600, pinned), defaulting to `0600` (not `atomicWriteFile`'s own `0644`) only when creating a config that did not exist before. `foreignSectionsPreserved` prints a namespace's ROOT with a wildcard and its table count when more than one table collapses into it (e.g. `[marketplaces.*] (2 tables)`), instead of silently representing several preserved tables as one indistinguishable header; a single table under a root still prints its own full header. The namespace is the header's first key, or its first two keys under `hooks` (e.g. `[hooks.state.*] (27 tables)`, so Codex's trust table is not reported as `hooks`, which also holds the harness-managed hook arrays), with keys split quote-aware and a trailing comment never part of the namespace or of a printed header. Table-header recognition is a full single-line TOML header shape, quote-aware so a key containing `[`, `]`, `.` or `#` (a real path used as a TOML key, e.g. `[projects."/Users/x/Photos [2024]"]`) is still recognized as one header on every managed-range detection path (a drifted END, no END, and the legacy no-BEGIN path), instead of being misread as ending the header early or as still-owned content; a multi-line array's own continuation line inside a still-owned hook table (e.g. ` [1, 2],`) is never misread as a foreign table header ending the region early. The stray-END search matches a whole trimmed line, not a raw substring, so a foreign single-line value that merely contains the END marker text as a substring is never mistaken for the real stray END. A TOML multi-line string is now tracked by its own opening delimiter (`"""` or `'''`), closed only by that same delimiter, with an escaped quote and a delimiter inside a comment or a single-line string ignored, so a foreign table's own multi-line string value (or a still-owned hook table's own multi-line matcher) can contain a line that reads exactly like a comment, a table header, or even the END marker without corrupting the scan.
19
+
20
+ A TOML-parsing safety net now runs after the byte-preserving splice above computes its output, before anything is written: both the current and the about-to-be-written config are parsed with `smol-toml` (a new runtime dependency, pinned `~1.8.0`) and compared. The invariant: both must parse, and once every harness-managed hook event array (`[[hooks.<Event>]]`) is removed from both documents, everything else must come out identical: `[hooks.state]` and every other single-table `hooks.*` key, plus all non-hooks content (`[projects.*]`, `[plugins.*]`, `[marketplaces.*]`, `[mcp_servers.*]`, top-level keys). Any difference refuses via `CodexInstallRefusalError`, naming the first differing key path, with the file left untouched (a `--dry-run` plan hits the same check and reports the same refusal). For that content the net is independent of the header-recognition and multi-line-string fixes above, so a future scanner regression there refuses instead of silently dropping content. It does not cover the hook event arrays themselves: an operator-authored `[[hooks.<Event>]]` entry that the line scan counts as part of the harness-managed block (for example one sitting between the block and a drifted END marker, or after a BEGIN with no END marker) is still replaced without a refusal; tracked as follow-up task `01053b27`. An operator hook entry outside the managed block is kept whatever its header spelling (a trailing comment, a quoted event key). A leading UTF-8 byte order mark is ignored for parsing (the written file keeps it unless the harness block itself starts on the file's first line, which is harmless because Codex's own parser strips it too), and an integer beyond 2^53 (TOML integers are 64-bit) is compared exactly instead of failing the parse. A config the harness parser cannot read refuses with "the TOML parser used by harness could not read this file", the parser's line, column and one-line reason, not a claim that the operator's syntax is wrong; a would-be output that does not parse names an operator-defined inline `hooks` table or inline hook-event array as the likely cause before a harness defect. No refusal quotes a value line of the config or the parser's code frame; only table headers and key paths are named: parse refusals carry only that position and reason (never the parser's code frame, which would echo neighbouring lines such as an API token), and the split-block and duplicate-BEGIN refusals name a line number instead of that line's text.
21
+
22
+ ## [0.58.0] - 2026-09-23
23
+
24
+ ### Fixed
25
+
26
+ - Corrected the 0.57.0 CLI-floor claim: `harness validate` does not execute
27
+ manifest version commands and now refers `tools.cli[].min_version` checks
28
+ to `harness doctor`, while callers supplying `versionProbe` retain comparison
29
+ (task `b32fdea2`).
30
+
31
+ - **Codex `UserPromptSubmit` now injects whenever Codex invokes the hook**
32
+ (task `f062b9f6`). The adapter no longer guesses from stdin prompt-field aliases
33
+ that a blank value represents an inter-agent notification. It still consumes
34
+ stdin, but event dispatch is the injection boundary. Pause remains first;
35
+ disabled-pack and manifest-load failures remain fail-open. A redacted genuine
36
+ Codex 0.156.1 operator fixture backs injection, and blank-prompt input is an
37
+ explicitly synthetic regression case that must still inject.
38
+
39
+ - **`harness.generated/active-claim` no longer clears on a `task_finish` that lands the task in `review`, and `task_merge` is now a tracked, dispatched verb end to end** (task `c86e3c4a`). `claimEffectForAgentTasksTool` (`src/runtime/task-providers/agent-tasks.ts`), the SINGLE decider for this classification, used to treat every `task_finish` as a release, disagreeing with agent-tasks's own documented v2 semantics (the work claim is cleared going to `done`, kept going to `review`); the two disagreeing left a session wedged (`task_start` on another task returns `already_claimed`, `task_abandon` on the review-state task returns `bad_state`, and the completion gate refuses every push/`task_merge` with "no active-claim task id recorded"). It now takes the tool RESULT as an optional third parameter and reads `task_finish`'s resulting `task.status` (via the new exported `taskFinishResultingStatus`, reading the mcp-server v1 receipt `{ ok, task: { id, status }, deviations? }`): only a resulting status of `review` returns `"none"` (keep); `done`, any other resolvable status, and an unreadable result all return `"release"`. `task_abandon` and `task_merge` both always release. `hook-track-active-claim.ts` no longer re-derives any of this locally (the round-1 fix's own local override is gone): it calls the classifier with `event.tool_response` and only presents the returned effect, one decider, no duplicate logic. `task_merge` is also now a member of `ACTIVE_CLAIM_TOOL_NAMES`, which feeds the generated PostToolUse matcher (`understanding-before-execution.ts`'s `TRACK_ACTIVE_CLAIM_MATCH` / `_CODEX`, both Claude and Codex variants) -- previously `task_merge` was untracked there too, so a real `task_merge` tool call never dispatched to this hook at all; every consumer of `ACTIVE_CLAIM_TOOL_NAMES` was enumerated (`rg`) and only these two matcher constants and this hook's own re-export consume it, none of them treating membership as "claim-acquiring" (acquire vs. release is a separate decision made by the classifier), so widening the set changes only which tools dispatch to this hook. The recovery path (`task_start` on the SAME review-state task) still needs no code change: `writeActiveClaim` already overwrites unconditionally. Pinned by: `tests/cli/pack-hook-track-active-claim.test.ts` (finish-to-done clears, finish-to-review keeps, finish-with-no-result and finish-with-malformed-status both fail safe, `task_merge` clears, review-then-restart recovery); `tests/runtime/task-providers/agent-tasks.test.ts` (the classifier's result-aware decision directly, `taskFinishResultingStatus`'s extraction, `task_merge` in `ACTIVE_CLAIM_TOOL_NAMES`); `tests/policy-packs/expand.test.ts` and `tests/cli/apply/generate-codex-config.test.ts` (the generated Claude and Codex matchers both now match `task_merge`, both the exact string and a live regex test, plus a negative control). Mutation probes (`agent-primitives probe --pre 'npm run build'`) reverting to clear-on-every-finish, keeping the marker on `done`, and removing `task_merge` from the tracked set all killed by these fixtures. Upgrade: the review-keep fix is in the hook itself and needs no re-apply; to dispatch `task_merge` to the hook, re-run `harness apply` (and re-merge the generated settings into your live Claude Code settings or Codex config) so the widened PostToolUse matcher is installed.
40
+
41
+ - **Round-2 review fix (commit `8dfba1b`): the round-1 fix was INERT in production -- Claude Code's real MCP `tool_response` is a content-block array, not the plain receipt object round 1 read** (task `c86e3c4a`, HIGH). Live capture, claude 2.1.280: a PostToolUse event for an MCP tool call carries `tool_response` shaped `[{ "type": "text", "text": "<json>" }]`, not `{ ok, task: { status } }` directly; `taskFinishResultingStatus` read only the latter, so `taskFinishResultingStatus(toolResponse)` always answered `null` against the real payload and `claimEffectForAgentTasksTool` always fell to its fail-safe `"release"` branch, exactly reproducing the pre-fix wedge the round-1 fix claimed to close. `taskFinishResultingStatus` (and the new `taskIdFromToolResponse`) now unwrap, recursively: (a) the plain receipt object itself (unchanged, also covers the `include:["task"]` full-task variant); (b) the measured content-block array, first `type: "text"` block JSON-parsed; (c) an MCP `CallToolResult` object, `{ content: [...] }` (plausible on Codex, **UNMEASURED** here); (d) a bare JSON string. Verbatim redacted live capture committed at `tests/fixtures/track-active-claim/real-posttooluse-task-finish-2.1.280.json`; driven end to end through `runPackHookTrackActiveClaimCli` for both the finish-to-review (marker kept) and finish-to-done (marker cleared, only the status changed from the same capture) outcomes, plus an `include:["task"]` full-object receipt inside the same content-block envelope. Also corrected: the fail-safe rationale in `claimEffectForAgentTasksTool`'s doc comment, this entry, and the pack doc previously said releasing-on-unreadable "costs only" an "ergonomic shortcut" -- the marker actually feeds the FAIL-CLOSED completion gate (`hook-solution-acceptance.ts`'s `readActiveClaim`), so releasing is chosen because a KEPT marker for an already-finished task would misroute that gate, at the cost of a possible wedge, not because the marker is low-stakes. An unreadable result's release now also logs a distinct diagnostic naming the shape it fell back from (`unreadable tool_response, shape=array|string|object|absent`), pinned in tests, so it no longer looks identical to an intentional `done` release in the operator's stderr trail. Separately, `task_abandon` / `task_merge` / a non-review `task_finish` now clear the marker only when it already names the SAME task id as the call acted on (input `taskId`, falling back to the result's `task.id`); a mismatch keeps the marker and logs the near-miss (`kept active-claim <B>: <verb> on <A>`) -- round 1 cleared unconditionally, so a caller holding a work-claim marker for task B lost it to an unrelated `task_merge` (or finish/abandon) on task A, including finishing a REVIEW claim on A while B's work claim was live. Class closure: every `tool_response` consumer under `src/cli/pack/` and `src/runtime/` was enumerated (`rg tool_response`); `hook-stay-in-scope.ts`'s `extractTaskId` reads `tool_response.task.id` / `tool_response.id` through the same plain-object-only accessor this hook had before this fix, so it likely has the identical content-block blind spot against a real Claude Code MCP payload -- reported here as a risk/follow-up, not fixed (out of this task's scope). `hook-post-merge-gate-record.ts`'s `tool_response` reads are for the Bash tool (its own separately-measured `{ stdout, stderr, interrupted }` shape, not an MCP content-block array) and are not the same class. New tests: a golden-fixture describe block (real payload assertion, finish-to-review, finish-to-done, `include:["task"]` full-object variant), a defensive-shapes describe block (`CallToolResult` object, bare JSON string), an unreadable-diagnostic describe block (all four shapes plus a negative control), and an id-equality describe block (task_merge / task_abandon on an unrelated id, same-id clear, review-claim-of-another-task, result-`task.id` fallback, no-marker fail-safe). Mutation probes (`agent-primitives probe --pre 'npm run build'`): the content-block/CallToolResult/string unwrap reverted to plain-object-only (killed by the golden fixture), the id-equality check removed (killed by the marker-B fixture), and the unreadable-shape diagnostic removed (killed) -- plus the three round-1 probes replayed at their moved anchor, still killed.
42
+
43
+ ### Changed
44
+
45
+ - **`harness pack hook solution-acceptance`'s completion-gate deny text now distinguishes the three `gate.verdict === null` readings instead of appending the same reconnect-vs-retry paragraph to all three** (task `799de976`). The hook reads grounding-mcp's documented attempt-lock anchor (`<verdict dir>/<id>.attempt-lock`, README "Attempt lock anchor" row at `grounding-mcp-v0.12.0`) via `proper-lockfile`'s own read-only `checkSync` (already a harness dependency; no new one added) to tell "an attempt is live" apart from "never evaluated" and "a marker path exists but what is there was not accepted as a verdict"; liveness is three-valued (`live`, `not-live`, `unknown`, through a read-only `checkFileLock` in `src/io/lock.ts`), and a note never asserts an absent attempt or a missing marker when the check could not read; the full reconnect-vs-retry paragraph (`solution-acceptance-reconnect.ts`) is now appended only for the live-attempt reading, and the other two readings get their own short, reading-named line instead; the paragraph's own wording is corrected to say the hook itself read the anchor and detected the live-attempt reading, not that it cannot tell the three readings apart (its shared facts, `RECONNECT_FACT_*` and `renderReconnectInstructionsSection`, stay byte-identical). A lock directory left behind by a dead process is read as stale using the producer's OWN staleness window (`DEFAULT_ATTEMPT_LOCK_STALE_MS = 30_000`, `grounding-mcp-v0.12.0` `solution-attempt-log.ts:102`, the default `acquireAttemptLock` passes to `proper-lockfile` when no caller overrides `staleMs`), so this hook's "live" reading and the producer's reclamation rule agree as long as the producer keeps that default and no caller overrides it: an operational pin re-checked on every grounding-mcp bump, not a guarantee. `instructions.md` and grounding-mcp's lock layout are unchanged. See `docs/policy-packs/solution-acceptance.md`, "Reading the attempt-lock anchor to distinguish the three readings", for the full decision record and source citations. Pinned in `tests/cli/pack-hook-solution-acceptance.test.ts` (one case per reading, the overlap of a live lock with an unreadable marker, a stale-lock regression, two check-error-path regressions, a symlinked anchor) and in `tests/io/lock.test.ts` and a literal-wording pin in `tests/policy-packs/solution-acceptance-reconnect.test.ts`; mutation probes removing the live-attempt branch, neutralising the stale rule, substituting a hand-copied paragraph, flipping the check-error catch arm, and reverting the corrected wording (`agent-primitives probe --pre 'npm run build'`) all killed.
46
+
47
+ - **Review-round fixes: the deny note now states only what the hook established** (task `799de976`, commit `3d3bddf`; the same defect class recurred in four consecutive rounds, so this round closes the CLASS). Each round's note asserted something the hook had not established, and each fix replaced one guessed cause with a narrower guess that the next reachable state falsified: first "no attempt reads as currently live" where the liveness check had thrown, then "the verdict directory could not be read" where only the lock path was unreadable, then "the verdict directory or the attempt-lock path could not be read" for an id from which NEITHER path can be derived. An id `sanitizeVerdictId` rejects (`.`, `..`, anything sanitizing to an empty basename, reachable from an active claim; the `SOLUTION_VERDICT_ID` path validates through the same function and answers null instead) is now its own `NullVerdictInfo` union member, settled before anything is read and carrying no `liveness` field, so "the id was unusable" has no field left to render as "a path could not be read"; its note names that one fact, points at the active claim, and asks for a usable id instead of repeating `solution_evaluate` for an id that can never be accepted. The remaining unknown-liveness line names no cause at all. Reading (3) no longer says "could not be read or parsed" for a marker `readVerdict` refuses by policy (a symlink, a non-regular file); it names the complete set of ways that read answers null for a present path, at the hook and at the shared reading-label site (`RECONNECT_THREE_READINGS_LABELS`). A state table in `tests/cli/pack-hook-solution-acceptance.test.ts` ("null-verdict deny note: one exact line per reachable state") pins one exact expected line per reachable (id-usability, reading, liveness) combination, nine rows, and asserts no other state's line appears, so this class fails there rather than reaching an agent; it doubles as the checklist for extending the classifier. The stale-lock fixture's back-date is a literal (90 s) rather than derived from `ATTEMPT_LOCK_STALE_MS`, so it discriminates a widened window instead of staying stale under every mutation of the constant it was meant to pin. Mutation probes restoring the guessed cause, narrowing reading (3)'s wording back, and widening the stale window to 300 s (`agent-primitives probe`, the last one scoped to the stale test alone) all killed.
48
+
49
+ - **Round-6 review fix: the deny text is classified from ONE read of the marker** (task `799de976`, commit `244f9c3`). The gate read the marker at the decision site and the deny text classified it again a few statements later, so the two could disagree: a background attempt finishing in that window, the case this pack exists for, made the note tell the agent its fresh marker had been rejected when the gate had simply not seen it yet, and the reasons the note enumerated did not include the one that actually applied. A new `readVerdictDetailed` reports WHY a read yielded no verdict (`invalid-id`, `missing`, the shared reader's `symlink` / `not-regular` / `unreadable`, plus `invalid-record`) in one observation; `readVerdict` is the same function with the reason dropped, so every caller that needs only the gate decision is unchanged. Reading (3) no longer restates a disjunction over the rejection kinds: each kind renders its own line naming what that read established. The lines are a `Record` keyed by the exported `NULL_VERDICT_NOTE_STATES`, so a state with no line fails the build, and the state table's new coverage test fails when a listed state has no fixture, which makes the table a checklist rather than a convention. Two fixtures are added (a schema-invalid record, and a regular file the process may not read), the symlink and directory fixtures now pin their own distinct lines, and the unusable-id remedy names the verb that clears the claim instead of asking for an impossible re-run. The liveness helper loses a `catch` that became unreachable once id usability was settled first: an arm no mutant can kill is worse than no arm. Mutation probes collapsing one rejection line into another, and adding a note state with no fixture, both killed; the removed race itself is not fixture-testable, which is why the fix removes the second observation rather than adding a test for it.
50
+
51
+ ### Added
52
+
53
+ - **Two release-hygiene CI gates: README's release sentence must match `package.json`, and the tagged CHANGELOG section must stay under a size ceiling** (task `3a910716`). `npm run check:readme-release-version` (`scripts/check-readme-release-version.mjs`) fails when README.md's "The current release is `` `vX.Y.Z` ``." sentence names a different version than `package.json`, wired into `ci.yml` next to `check:changelog-coverage`. `npm run check:release-notes-size` (`scripts/check-release-notes-size.mjs`) measures the CHANGELOG.md section for `package.json`'s version the same way `release.yml`'s awk extraction does and fails above a 115,000-character ceiling (the `0.57.0` section measured 110,880 characters when this gate was written; GitHub's release/tag body limit is roughly 125,000); `release.yml` runs the same measurement again at tag time, next to its existing empty-notes guard, so an oversized section is caught both before the tag and at release time. CONTRIBUTING.md's Releasing section now lists the release-prep steps in order (`npm version --no-git-tag-version`, CHANGELOG heading insertion, README sentence, bundle re-verification, the checks above, PR, merge, read the merge commit's CI, annotated tag). Also fixed two stale line-number citations of `CHANGELOG.md` (a `:141` in `docs/okf/log.md`, an `:18` in `src/cli/approve/understanding.ts`) into the repo's shift-proof `` `CHANGELOG.md:#x.y.z` `` heading-anchor form.
54
+
10
55
  ## [0.57.0] - 2026-09-21
11
56
 
12
57
  ### Fixed
package/README.md CHANGED
@@ -224,7 +224,7 @@ the `&`-as-command-boundary trigger fix in `v0.43.0`, per-policy
224
224
  cross-repository attribution for `${REPO}`/`${BRANCH}` preflight
225
225
  facts in `v0.44.0`, and `apply --runtime codex|opencode` next-steps
226
226
  hints in `v0.46.0`.
227
- The current release is `v0.57.0`.
227
+ The current release is `v0.58.1`.
228
228
 
229
229
  The phase-by-phase plan with acceptance criteria lives in
230
230
  [`docs/ROADMAP.md`](docs/ROADMAP.md); what shipped in each version is
@@ -98,6 +98,12 @@ export interface CodexConfigInstallOutcome {
98
98
  written: boolean;
99
99
  summary: string;
100
100
  backupPath?: string;
101
+ /** Hook ids present in the old managed block but absent from the new
102
+ * one (task 6a037359). */
103
+ removedHookIds: string[];
104
+ /** Foreign table headers preserved from a stray-END drift cleanup
105
+ * (task 6a037359). */
106
+ foreignSectionsPreserved: string[];
101
107
  }
102
108
  export interface ApplyResult {
103
109
  manifestPath: string;
@@ -113,6 +113,8 @@ function codexInstallOutcome(result) {
113
113
  changed: result.changed,
114
114
  written: "written" in result ? result.written : false,
115
115
  summary: result.summary,
116
+ removedHookIds: result.removedHookIds,
117
+ foreignSectionsPreserved: result.foreignSectionsPreserved,
116
118
  ...("backupPath" in result && result.backupPath !== undefined
117
119
  ? { backupPath: result.backupPath }
118
120
  : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/cli/apply/apply.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/cli/apply/apply.ts"],"names":[],"mappings":"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"}
@@ -46,15 +46,15 @@ const HEADER = [
46
46
  "# Operator-owned settings (model, auth, sandbox profile, MCP servers)",
47
47
  "# stay in your own config; harness owns hook wiring only.",
48
48
  "#",
49
- "# Wire format the harness adapter scripts expect on stdin (per",
49
+ "# Wire format the tool-event adapter scripts expect on stdin (per",
50
50
  '# docs/policy-packs/understanding-before-execution.md "Adapter notes /',
51
51
  '# Codex"):',
52
52
  "#",
53
53
  "# { session_id?: string, tool_name?: string, raw_input?: any, event?: string }",
54
54
  "#",
55
55
  "# PreToolUse blocker exit-code contract: 0 = allow, 2 = block (with reason",
56
- "# on stderr). UserPromptSubmit injector emits the instruction template on",
57
- "# stdout for Codex to prepend to additional_instructions.",
56
+ "# on stderr). UserPromptSubmit emits developer-context instructions on stdout",
57
+ "# whenever Codex invokes that event; it does not inspect stdin to suppress turns.",
58
58
  "",
59
59
  ].join("\n");
60
60
  // Control-character regex covering U+0000..U+001F + U+007F. Constructed
@@ -1 +1 @@
1
- {"version":3,"file":"generate-codex-config.js","sourceRoot":"","sources":["../../../src/cli/apply/generate-codex-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-codex-config.js","sourceRoot":"","sources":["../../../src/cli/apply/generate-codex-config.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export { apply, CODEX_CONFIG_BASENAME, OPENCODE_CONFIG_BASENAME, DRIFT_HINT_MESSAGE, GENERATED_DIRNAME, MANIFEST_BASENAME, MEMORY_BASENAME, SETTINGS_BASENAME, type ApplyOptions, type ApplyOutcome, type ApplyResult, type CodexConfigInstallOutcome, type FileApplyOutcome, } from "./apply.js";
2
+ export { CodexInstallRefusalError } from "./install-codex-config.js";
2
3
  export { formatNextSteps, type NextStepsContext } from "./next-steps.js";
3
4
  export { generateCodexConfig, type CodexConfigResult } from "./generate-codex-config.js";
4
5
  export { generateOpencodeConfig, OPENCODE_GENERATED_HEADER_LINE, type OpencodeConfigResult, type OpencodeLocalMcpServer, type OpencodeDisabledMcpServer, type OpencodeMcpEntry, } from "./generate-opencode-config.js";
@@ -1,4 +1,5 @@
1
1
  export { apply, CODEX_CONFIG_BASENAME, OPENCODE_CONFIG_BASENAME, DRIFT_HINT_MESSAGE, GENERATED_DIRNAME, MANIFEST_BASENAME, MEMORY_BASENAME, SETTINGS_BASENAME, } from "./apply.js";
2
+ export { CodexInstallRefusalError } from "./install-codex-config.js";
2
3
  export { formatNextSteps } from "./next-steps.js";
3
4
  export { generateCodexConfig } from "./generate-codex-config.js";
4
5
  export { generateOpencodeConfig, OPENCODE_GENERATED_HEADER_LINE, } from "./generate-opencode-config.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/apply/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,GAMlB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,eAAe,EAAyB,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAA0B,MAAM,4BAA4B,CAAC;AACzF,OAAO,EACL,sBAAsB,EACtB,8BAA8B,GAK/B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC3B,sBAAsB,EACtB,sBAAsB,EACtB,0BAA0B,EAC1B,uBAAuB,GAGxB,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/apply/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,GAMlB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAyB,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAA0B,MAAM,4BAA4B,CAAC;AACzF,OAAO,EACL,sBAAsB,EACtB,8BAA8B,GAK/B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC3B,sBAAsB,EACtB,sBAAsB,EACtB,0BAA0B,EAC1B,uBAAuB,GAGxB,MAAM,2BAA2B,CAAC"}
@@ -1,6 +1,20 @@
1
+ import { HarnessExitError } from "../exit-codes.js";
1
2
  export declare const CODEX_MANAGED_SOURCE_PREFIX = "# Harness Codex hook wiring.";
2
3
  export declare const CODEX_MANAGED_BEGIN = "# BEGIN harness-managed codex hooks";
3
4
  export declare const CODEX_MANAGED_END = "# END harness-managed codex hooks";
5
+ /**
6
+ * Thrown instead of a plain `Error` when the install refuses rather than
7
+ * guesses (a duplicate/moved BEGIN marker, or a foreign table wedged
8
+ * inside the managed block). Extends `HarnessExitError` so it carries the
9
+ * repo's own exit-code convention (`EX_FAIL`) through `run()`'s top-level
10
+ * catch without the generic "return 70" branch, and the CLI action can
11
+ * recognize it by type to emit a structured `--json` error the same way
12
+ * the other apply refusals (`target-exists-refuse`, `drift-refuse`) do.
13
+ */
14
+ export declare class CodexInstallRefusalError extends HarnessExitError {
15
+ readonly configPath: string;
16
+ constructor(message: string, configPath: string);
17
+ }
4
18
  export interface CodexConfigInstallPlan {
5
19
  configPath: string;
6
20
  generatedPath: string;
@@ -8,6 +22,23 @@ export interface CodexConfigInstallPlan {
8
22
  nextContent: string;
9
23
  changed: boolean;
10
24
  summary: string;
25
+ /**
26
+ * Hook ids (the `# harness hook: <id>` comment text) that were present
27
+ * in the old managed block and are absent from the new one. Reported so
28
+ * an operator whose manifest still declares a pack does not silently
29
+ * lose a hook (task 6a037359).
30
+ */
31
+ removedHookIds: string[];
32
+ /**
33
+ * Foreign (non harness-owned) table headers that sat between the old
34
+ * managed block and a stray END marker, one representative header per
35
+ * distinct namespace (see `collectForeignSectionHeaders`). Populated
36
+ * only when the previous install's END marker had drifted past foreign
37
+ * content (the task-6a037359 bug): these are the sections that would
38
+ * have been deleted under the old blind-END-trust logic and are now
39
+ * preserved byte-for-byte instead.
40
+ */
41
+ foreignSectionsPreserved: string[];
11
42
  }
12
43
  export interface CodexConfigInstallResult extends CodexConfigInstallPlan {
13
44
  backupPath?: string;
@@ -22,6 +53,40 @@ export interface CodexConfigInstallOptions {
22
53
  }
23
54
  export declare function defaultCodexConfigPath(homeDir?: string): string;
24
55
  export declare function validateCodexManagedConfig(content: string): void;
56
+ /**
57
+ * The TOML-semantic safety net (task 6a037359). The byte-preserving text
58
+ * splice in `planCodexConfigInstall` stays the source of truth for what gets
59
+ * WRITTEN; before it is written, `currentContent` and `nextContent` are
60
+ * both parsed and compared, and the install refuses rather than writes when
61
+ * the comparison finds a change outside what the installer owns. It exists
62
+ * to catch a scanner defect (a shape the line-based scan above mishandles)
63
+ * that would otherwise silently drop or alter operator- or Codex-owned
64
+ * content.
65
+ *
66
+ * The invariant: both documents must parse, and once every ARRAY-valued key
67
+ * directly under `hooks` (the `[[hooks.<Event>]]` event arrays) is removed
68
+ * from both, what remains must be deep-equal. What remains is everything
69
+ * outside the hook event arrays: `hooks.state` and every other single-table
70
+ * `hooks.*` key, plus all non-hooks content (top-level keys, `projects`,
71
+ * `plugins`, `marketplaces`, `mcp_servers`, `tui`, ...). A refusal names the
72
+ * first differing key path.
73
+ *
74
+ * What it does NOT check: the hook event arrays themselves. The installer
75
+ * rewrites its own entries there, and telling an operator-authored entry
76
+ * from a harness-written one would need the same line-level reading of the
77
+ * file this net is meant to be independent of. An operator-authored
78
+ * `[[hooks.<Event>]]` entry that the line scan wrongly counts as part of
79
+ * the harness-managed block is therefore replaced without a refusal
80
+ * (follow-up task 01053b27).
81
+ *
82
+ * Parsing goes through `parseToml` (a leading byte order mark ignored,
83
+ * 64-bit integers kept as `bigint`). A document that does not parse refuses
84
+ * with the parser's line, column and one-line reason only, never the
85
+ * document's own text (`describeTomlParseError`). This function never
86
+ * touches the file, and a `--dry-run` plan reports the same refusal a real
87
+ * install would (both go through `planCodexConfigInstall`).
88
+ */
89
+ export declare function assertConfigSemanticInvariant(currentContent: string, nextContent: string, configPath: string): void;
25
90
  export declare function planCodexConfigInstall(opts: CodexConfigInstallOptions): CodexConfigInstallPlan;
26
91
  export declare function writeCodexConfigInstall(plan: CodexConfigInstallPlan, opts?: {
27
92
  now?: Date;