@lannguyensi/harness 0.51.0 → 0.53.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 (95) hide show
  1. package/CHANGELOG.md +182 -0
  2. package/dist/cli/approve/understanding.d.ts +46 -0
  3. package/dist/cli/approve/understanding.js +50 -22
  4. package/dist/cli/approve/understanding.js.map +1 -1
  5. package/dist/cli/audit.d.ts +29 -0
  6. package/dist/cli/audit.js +130 -17
  7. package/dist/cli/audit.js.map +1 -1
  8. package/dist/cli/delegate/index.d.ts +63 -0
  9. package/dist/cli/delegate/index.js +313 -0
  10. package/dist/cli/delegate/index.js.map +1 -0
  11. package/dist/cli/doctor/auto-approve-mode.d.ts +37 -0
  12. package/dist/cli/doctor/auto-approve-mode.js +80 -0
  13. package/dist/cli/doctor/auto-approve-mode.js.map +1 -0
  14. package/dist/cli/doctor/bypass-without-auto-approve.d.ts +38 -0
  15. package/dist/cli/doctor/bypass-without-auto-approve.js +89 -0
  16. package/dist/cli/doctor/bypass-without-auto-approve.js.map +1 -0
  17. package/dist/cli/doctor/codex-config-drift.d.ts +28 -0
  18. package/dist/cli/doctor/codex-config-drift.js +240 -0
  19. package/dist/cli/doctor/codex-config-drift.js.map +1 -0
  20. package/dist/cli/doctor/format.js +39 -1
  21. package/dist/cli/doctor/format.js.map +1 -1
  22. package/dist/cli/doctor/index.js +68 -7
  23. package/dist/cli/doctor/index.js.map +1 -1
  24. package/dist/cli/doctor/settings-drift.d.ts +6 -0
  25. package/dist/cli/doctor/settings-drift.js +20 -6
  26. package/dist/cli/doctor/settings-drift.js.map +1 -1
  27. package/dist/cli/doctor/types.d.ts +54 -0
  28. package/dist/cli/doctor/types.js.map +1 -1
  29. package/dist/cli/doctor/ug-auto-approvals.js +18 -43
  30. package/dist/cli/doctor/ug-auto-approvals.js.map +1 -1
  31. package/dist/cli/doctor/ug-delegations.d.ts +26 -0
  32. package/dist/cli/doctor/ug-delegations.js +112 -0
  33. package/dist/cli/doctor/ug-delegations.js.map +1 -0
  34. package/dist/cli/doctor/understanding-mode-env.d.ts +2 -0
  35. package/dist/cli/doctor/understanding-mode-env.js +5 -2
  36. package/dist/cli/doctor/understanding-mode-env.js.map +1 -1
  37. package/dist/cli/gc/index.d.ts +13 -2
  38. package/dist/cli/gc/index.js +203 -1
  39. package/dist/cli/gc/index.js.map +1 -1
  40. package/dist/cli/index.js +133 -7
  41. package/dist/cli/index.js.map +1 -1
  42. package/dist/cli/init/composer.js +9 -0
  43. package/dist/cli/init/composer.js.map +1 -1
  44. package/dist/cli/init/profiles.d.ts +2 -2
  45. package/dist/cli/init/profiles.js +11 -0
  46. package/dist/cli/init/profiles.js.map +1 -1
  47. package/dist/cli/init/templates.d.ts +1 -1
  48. package/dist/cli/init/templates.js +11 -0
  49. package/dist/cli/init/templates.js.map +1 -1
  50. package/dist/cli/pack/approve-escape.js +16 -7
  51. package/dist/cli/pack/approve-escape.js.map +1 -1
  52. package/dist/cli/pack/auto-approve-path.d.ts +17 -0
  53. package/dist/cli/pack/auto-approve-path.js +56 -3
  54. package/dist/cli/pack/auto-approve-path.js.map +1 -1
  55. package/dist/cli/pack/hook-pre-tool-use.d.ts +25 -0
  56. package/dist/cli/pack/hook-pre-tool-use.js +335 -3
  57. package/dist/cli/pack/hook-pre-tool-use.js.map +1 -1
  58. package/dist/cli/pack/index.d.ts +1 -0
  59. package/dist/cli/pack/index.js +1 -0
  60. package/dist/cli/pack/index.js.map +1 -1
  61. package/dist/cli/pack/transcript-report-scan.d.ts +71 -0
  62. package/dist/cli/pack/transcript-report-scan.js +359 -0
  63. package/dist/cli/pack/transcript-report-scan.js.map +1 -0
  64. package/dist/cli/pack/upgrade.d.ts +32 -0
  65. package/dist/cli/pack/upgrade.js +273 -0
  66. package/dist/cli/pack/upgrade.js.map +1 -0
  67. package/dist/cli/smoke/index.d.ts +18 -1
  68. package/dist/cli/smoke/index.js +54 -0
  69. package/dist/cli/smoke/index.js.map +1 -1
  70. package/dist/io/read-json-dir-entries.d.ts +36 -0
  71. package/dist/io/read-json-dir-entries.js +38 -0
  72. package/dist/io/read-json-dir-entries.js.map +1 -0
  73. package/dist/policy-packs/builtin/understanding-before-execution/auto-approve-default.d.ts +35 -0
  74. package/dist/policy-packs/builtin/understanding-before-execution/auto-approve-default.js +86 -0
  75. package/dist/policy-packs/builtin/understanding-before-execution/auto-approve-default.js.map +1 -0
  76. package/dist/policy-packs/builtin/understanding-before-execution/auto-approve.d.ts +76 -2
  77. package/dist/policy-packs/builtin/understanding-before-execution/auto-approve.js +139 -2
  78. package/dist/policy-packs/builtin/understanding-before-execution/auto-approve.js.map +1 -1
  79. package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.d.ts +237 -0
  80. package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js +647 -0
  81. package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js.map +1 -0
  82. package/dist/policy-packs/builtin/understanding-before-execution/index.d.ts +4 -1
  83. package/dist/policy-packs/builtin/understanding-before-execution/index.js +26 -1
  84. package/dist/policy-packs/builtin/understanding-before-execution/index.js.map +1 -1
  85. package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.d.ts +71 -0
  86. package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.js +169 -0
  87. package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.js.map +1 -0
  88. package/dist/policy-packs/builtin/understanding-before-execution.d.ts +19 -0
  89. package/dist/policy-packs/builtin/understanding-before-execution.js +29 -0
  90. package/dist/policy-packs/builtin/understanding-before-execution.js.map +1 -1
  91. package/dist/runtime/approval-signing.js +28 -0
  92. package/dist/runtime/approval-signing.js.map +1 -1
  93. package/dist/runtime/git-context.js +7 -1
  94. package/dist/runtime/git-context.js.map +1 -1
  95. package/package.json +1 -1
@@ -8,7 +8,10 @@ export { APPROVED_LEDGER_TAG_PREFIX, approvedLedgerTagFor, isPolicyDecisionRow,
8
8
  export { APPROVAL_MARKER_DIRNAME, approvalMarkerPathFor, type ApprovalMarker, writeApprovalMarker, type MarkerCheck, type CheckApprovalMarkerOptions, checkApprovalMarker, clearApprovalMarker, } from "./markers.js";
9
9
  export { type PersistedReport, REPORTS_DIR_ENV, defaultReportsDir, reportsDirForManifest, listPersistedReports, TOLERANT_FALLBACK_MAX_AGE_MS, TOLERANT_FALLBACK_FUTURE_SKEW_MS, type FindReportOptions, type FindReportSelection, selectReportForSession, selectNewestStrictSessionReport, findLatestReportForSession, type PersistedReportEvidence, expirePersistedReport, checkPersistedReport, } from "./persisted-reports.js";
10
10
  export { type ApprovalLifecycle, parseApprovalLifecycle } from "./lifecycle.js";
11
- export { AUTO_APPROVED_BY_PREFIX, CLAUDE_CODE_HARNESS, autoApprovedByFor, type ParsedAutoApprovedBy, parseAutoApprovedBy, autoApprovedLedgerTagFor, type AutoApproveConfig, parseAutoApprove, permissionModeAllowed, harnessAllowed, AUTO_APPROVE_HARNESS_VALUES, DEFAULT_AUTO_APPROVE_HARNESSES, } from "./auto-approve.js";
11
+ export { AUTO_APPROVED_BY_PREFIX, CLAUDE_CODE_HARNESS, autoApprovedByFor, type ParsedAutoApprovedBy, parseAutoApprovedBy, autoApprovedLedgerTagFor, type AutoApproveConfig, parseAutoApprove, permissionModeAllowed, harnessAllowed, AUTO_APPROVE_HARNESS_VALUES, DEFAULT_AUTO_APPROVE_HARNESSES, DEFAULT_REPORT_SCAN_MAX_WAIT_MS, REPORT_SCAN_MAX_WAIT_CEILING_MS, parseReportScanMaxWait, } from "./auto-approve.js";
12
+ export { type AutoApproveDefaultConfig, defaultAutoApproveConfig, renderAutoApproveSnippet, } from "./auto-approve-default.js";
13
+ export { PERMISSION_MODE_OBSERVATION_DIRNAME, listPermissionModeObservations, permissionModeObservationPathFor, recordPermissionModeObservation, sanitizeForDisplay, type PermissionModeObservation, type PermissionModeObservationsResult, } from "./permission-mode-observations.js";
12
14
  export { APPROVAL_MARKER_TASK_PREFIX, taskApprovalMarkerPathFor, writeTaskApprovalMarker, checkActiveClaimApprovalMarker, type OperatorMarkerApproval, checkOperatorApprovalMarkers, clearTaskApprovalMarker, } from "./task-markers.js";
13
15
  export { DEFAULT_BASH_TOOL_NAMES, toolNameMatchesAny, bashCommandMatchesAny, extractBashCommandFromToolInput, extractTaskIdFromToolInput, extractTasksTransitionStatusFromToolInput, type PostToolUseBoundaryMatch, matchPostToolUseBoundary, type ApplyPostToolUseExpiryResult, applyPostToolUseExpiry, describePostToolUseExpiry, } from "./post-tool-use-boundary.js";
14
16
  export { ACTIVE_CLAIM_FILENAME, activeClaimPathFor, writeActiveClaim, readActiveClaim, clearActiveClaim, } from "./active-claim.js";
17
+ export { DELEGATION_MARKER_DIRNAME, ADOPTION_LEDGER_DIRNAME, delegationMarkerIdFor, delegationMarkerPathFor, hashDelegationCwd, type DelegationApprovedByFields, buildDelegationApprovedBy, type ParsedDelegationApprovedBy, type DelegationApprovedByParse, parseDelegationApprovedBy, type WriteDelegationMarkerOptions, type WriteDelegationMarkerResult, writeDelegationMarker, type DelegationRefusalReason, type DelegationVerification, type VerifyDelegationOptions, verifyDelegation, } from "./delegation-markers.js";
@@ -39,8 +39,33 @@ export { APPROVED_LEDGER_TAG_PREFIX, approvedLedgerTagFor, isPolicyDecisionRow,
39
39
  export { APPROVAL_MARKER_DIRNAME, approvalMarkerPathFor, writeApprovalMarker, checkApprovalMarker, clearApprovalMarker, } from "./markers.js";
40
40
  export { REPORTS_DIR_ENV, defaultReportsDir, reportsDirForManifest, listPersistedReports, TOLERANT_FALLBACK_MAX_AGE_MS, TOLERANT_FALLBACK_FUTURE_SKEW_MS, selectReportForSession, selectNewestStrictSessionReport, findLatestReportForSession, expirePersistedReport, checkPersistedReport, } from "./persisted-reports.js";
41
41
  export { parseApprovalLifecycle } from "./lifecycle.js";
42
- export { AUTO_APPROVED_BY_PREFIX, CLAUDE_CODE_HARNESS, autoApprovedByFor, parseAutoApprovedBy, autoApprovedLedgerTagFor, parseAutoApprove, permissionModeAllowed, harnessAllowed, AUTO_APPROVE_HARNESS_VALUES, DEFAULT_AUTO_APPROVE_HARNESSES, } from "./auto-approve.js";
42
+ export { AUTO_APPROVED_BY_PREFIX, CLAUDE_CODE_HARNESS, autoApprovedByFor, parseAutoApprovedBy, autoApprovedLedgerTagFor, parseAutoApprove, permissionModeAllowed, harnessAllowed, AUTO_APPROVE_HARNESS_VALUES, DEFAULT_AUTO_APPROVE_HARNESSES, DEFAULT_REPORT_SCAN_MAX_WAIT_MS, REPORT_SCAN_MAX_WAIT_CEILING_MS, parseReportScanMaxWait, } from "./auto-approve.js";
43
+ // D-004 shipped default (task 8f637efd): the one `auto_approve` snippet
44
+ // `harness init`, `harness pack upgrade understanding-before-execution`
45
+ // and `harness doctor`'s missing-auto_approve finding all render from,
46
+ // see auto-approve-default.ts's module header for why.
47
+ //
48
+ // `AUTO_APPROVE_DEFAULT_WHEN`, `AUTO_APPROVE_DEFAULT_HARNESSES`, and
49
+ // `AUTO_APPROVE_COMMENT_LINES` are deliberately NOT re-exported here
50
+ // (review round 2 F7): every caller outside this module wants the
51
+ // already-assembled `defaultAutoApproveConfig()` / `renderAutoApproveSnippet()`,
52
+ // never the three raw pieces; grepped before dropping them (task
53
+ // 8f637efd, review round 2) and confirmed no consumer outside
54
+ // auto-approve-default.ts itself used the bare re-export.
55
+ export { defaultAutoApproveConfig, renderAutoApproveSnippet, } from "./auto-approve-default.js";
56
+ // Hook-side `permission_mode` observation feeding `harness doctor`'s
57
+ // missing-`auto_approve` finding (task 8f637efd), see
58
+ // permission-mode-observations.ts's module header.
59
+ export { PERMISSION_MODE_OBSERVATION_DIRNAME, listPermissionModeObservations, permissionModeObservationPathFor, recordPermissionModeObservation, sanitizeForDisplay, } from "./permission-mode-observations.js";
43
60
  export { APPROVAL_MARKER_TASK_PREFIX, taskApprovalMarkerPathFor, writeTaskApprovalMarker, checkActiveClaimApprovalMarker, checkOperatorApprovalMarkers, clearTaskApprovalMarker, } from "./task-markers.js";
44
61
  export { DEFAULT_BASH_TOOL_NAMES, toolNameMatchesAny, bashCommandMatchesAny, extractBashCommandFromToolInput, extractTaskIdFromToolInput, extractTasksTransitionStatusFromToolInput, matchPostToolUseBoundary, applyPostToolUseExpiry, describePostToolUseExpiry, } from "./post-tool-use-boundary.js";
45
62
  export { ACTIVE_CLAIM_FILENAME, activeClaimPathFor, writeActiveClaim, readActiveClaim, clearActiveClaim, } from "./active-claim.js";
63
+ // Slice 3 of docs/decisions/2026-08-27-ug-auto-mode-approval.md: signed
64
+ // PRE-AUTHORIZATIONS for `claude -p` child sessions. Deliberately a
65
+ // separate artifact kind with its own directory and its own verifier:
66
+ // `checkApprovalMarker` cannot consume one and must not (see
67
+ // delegation-markers.ts for why). Exported through the shim because the
68
+ // slice's later consumers (the `harness delegate` verb and the child's
69
+ // PreToolUse hook) import every sibling gate symbol through it.
70
+ export { DELEGATION_MARKER_DIRNAME, ADOPTION_LEDGER_DIRNAME, delegationMarkerIdFor, delegationMarkerPathFor, hashDelegationCwd, buildDelegationApprovedBy, parseDelegationApprovedBy, writeDelegationMarker, verifyDelegation, } from "./delegation-markers.js";
46
71
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/policy-packs/builtin/understanding-before-execution/index.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,EAAE;AACF,mEAAmE;AACnE,sEAAsE;AACtE,EAAE;AACF,yEAAyE;AACzE,wEAAwE;AACxE,uEAAuE;AACvE,oEAAoE;AACpE,qEAAqE;AACrE,yEAAyE;AACzE,uEAAuE;AACvE,oEAAoE;AACpE,qEAAqE;AACrE,sEAAsE;AACtE,uEAAuE;AACvE,sEAAsE;AACtE,oEAAoE;AACpE,yEAAyE;AACzE,gEAAgE;AAChE,0EAA0E;AAC1E,yEAAyE;AACzE,uEAAuE;AACvE,yEAAyE;AACzE,uEAAuE;AACvE,sEAAsE;AACtE,kEAAkE;AAClE,wEAAwE;AACxE,yDAAyD;AACzD,qEAAqE;AACrE,sEAAsE;AACtE,uEAAuE;AACvE,EAAE;AACF,uEAAuE;AACvE,sEAAsE;AACtE,oEAAoE;AACpE,sEAAsE;AActE,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EAErB,mBAAmB,EAGnB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAEL,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,4BAA4B,EAC5B,gCAAgC,EAGhC,sBAAsB,EACtB,+BAA+B,EAC/B,0BAA0B,EAE1B,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAA0B,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAEhF,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,iBAAiB,EAEjB,mBAAmB,EACnB,wBAAwB,EAExB,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EACd,2BAA2B,EAC3B,8BAA8B,GAC/B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,uBAAuB,EACvB,8BAA8B,EAE9B,4BAA4B,EAC5B,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,EAC1B,yCAAyC,EAEzC,wBAAwB,EAExB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACjB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/policy-packs/builtin/understanding-before-execution/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ export declare const PERMISSION_MODE_OBSERVATION_DIRNAME = ".permission-mode-observations";
2
+ export interface PermissionModeObservation {
3
+ sessionId: string;
4
+ permissionMode: string;
5
+ observedAt: string;
6
+ }
7
+ /**
8
+ * `sessionId` is validated with the SAME `rejectMalformedSessionId` used
9
+ * for the approval marker path (`markers.ts`'s `approvalMarkerPathFor`):
10
+ * a value carrying `/`, `\`, `..`, or that is empty/blank throws rather
11
+ * than being joined into the path (review round 3, F1: the earlier
12
+ * version of this function trusted the caller's own empty-string check
13
+ * and joined `sessionId` verbatim, letting a crafted `session_id` on the
14
+ * hook's stdin write outside `<generatedDir>/.permission-mode-observations/`).
15
+ */
16
+ export declare function permissionModeObservationPathFor(generatedDir: string, sessionId: string): string;
17
+ /**
18
+ * Best-effort write/update of the per-session observation.
19
+ *
20
+ * `permissionMode` must be a non-empty string; any other shape (absent,
21
+ * non-string, empty) is a silent no-op: there is nothing to observe.
22
+ * `sessionId` is NOT trusted as pre-validated (review round 3, F1): the
23
+ * caller (`hook-pre-tool-use.ts`) only rejects an EMPTY session id
24
+ * before this is reached, and `session_id` on the hook's stdin payload
25
+ * is otherwise attacker-controllable input to a CLI invocation, not a
26
+ * value this function may assume is already path-safe. A malformed id
27
+ * (path separators, `..`, blank) makes `permissionModeObservationPathFor`
28
+ * throw; that throw is treated exactly like any other write failure
29
+ * below: one `stderr` warning, never escalated into a block, never
30
+ * thrown out of this function.
31
+ */
32
+ export declare function recordPermissionModeObservation(generatedDir: string, sessionId: string, permissionMode: unknown, stderr: {
33
+ write(s: string): unknown;
34
+ }, now?: () => Date): void;
35
+ export interface PermissionModeObservationsResult {
36
+ /** Whether `<generatedDir>/.permission-mode-observations/` exists at all. */
37
+ dirPresent: boolean;
38
+ /** Newest `windowSize` readable observations, newest `observedAt` first. */
39
+ entries: PermissionModeObservation[];
40
+ /** Files present but unparseable / missing a required field. */
41
+ unreadableCount: number;
42
+ }
43
+ /**
44
+ * Strip C0/DEL control characters (including ESC, which could otherwise
45
+ * smuggle an ANSI escape sequence into a terminal) and cap the length,
46
+ * mirroring `persisted-reports.ts`'s `sanitizeDetailValue` for the same
47
+ * reason: `bypass-without-auto-approve.ts` embeds an observation's
48
+ * `sessionId` directly into a doctor finding's `message`, the surface an
49
+ * operator reads (review round 3, F1). This is independent of
50
+ * `permissionModeObservationPathFor`'s write-time
51
+ * `rejectMalformedSessionId` guard: that guard rejects path-traversal
52
+ * shapes, not control characters, and a directory entry's on-disk
53
+ * filename (or the `sessionId` field inside it) is never itself
54
+ * constrained to be display-safe: POSIX filenames may contain any byte
55
+ * but `/` and NUL, and the JSON body's `sessionId` field is a plain
56
+ * string with no such constraint either.
57
+ */
58
+ export declare function sanitizeForDisplay(value: string): string;
59
+ /**
60
+ * Read-side: the newest `windowSize` per-session observations, newest
61
+ * first by `observedAt`. Mirrors `ug-auto-approvals.ts`'s own
62
+ * read-and-window convention (missing dir / empty dir / all-unreadable
63
+ * all resolve to an empty-ish result, never throw: this is a doctor
64
+ * read, not a gate decision). Every returned `sessionId` has already
65
+ * been through {@link sanitizeForDisplay}, so every consumer (today,
66
+ * `bypass-without-auto-approve.ts`'s finding `message`) gets a
67
+ * doctor-output-safe value without having to sanitize it itself.
68
+ */
69
+ export declare function listPermissionModeObservations(generatedDir: string, opts: {
70
+ windowSize: number;
71
+ }): PermissionModeObservationsResult;
@@ -0,0 +1,169 @@
1
+ // Hook-side observation of PreToolUse `permission_mode` (task 8f637efd,
2
+ // docs/decisions/2026-08-27-ug-auto-mode-approval.md's "Amendment:
3
+ // install default"). One small per-session record under
4
+ // `<generatedDir>/.permission-mode-observations/<sessionId>`.
5
+ //
6
+ // WHY A NEW ARTEFACT, NOT THE LEDGER OR THE PERSISTED REPORT. `harness
7
+ // doctor`'s missing-`auto_approve` finding needs to know whether a
8
+ // session actually ran under `bypassPermissions`, and the evidence-ledger
9
+ // trust boundary this pack already enforces for approval
10
+ // (docs/okf/evidence-ledger-trust-boundary.md) applies here too: a fact
11
+ // the AGENT can write (a ledger row, a report field) proves nothing about
12
+ // what the harness process observed. `permission_mode` on the PreToolUse
13
+ // payload is a T1 signal (composed by Claude Code itself, not by the
14
+ // model: same trust class the auto-approval path already relies on,
15
+ // see the ADR's "Signal sources per harness" table), so the write side
16
+ // here is the SAME hook, at the SAME point in its decision order, using
17
+ // the SAME field. The record carries no payload content beyond the
18
+ // mode itself: (sessionId, permissionMode, observedAt), nothing else.
19
+ //
20
+ // WHERE IT IS WRITTEN. `hook-pre-tool-use.ts` calls
21
+ // `recordPermissionModeObservation` once per PreToolUse invocation that
22
+ // reaches the same point `attemptAutoApproval` already runs at
23
+ // (auto-approve-path.ts's module header explains why that point matters:
24
+ // every call that reaches it has already been declined by the signed
25
+ // marker check, the read-only Bash exemption, the recovery-commit
26
+ // exemption, and the escape `ask`: so it is exactly the call that would
27
+ // otherwise need approval). A session whose first tool call already
28
+ // matches a still-valid marker never reaches this point and is therefore
29
+ // never observed for that session; this is an accepted coverage gap
30
+ // (documented at the call site), not a silent failure: the finding this
31
+ // feeds targets the ADR's Mac-mini incident shape (a marker EXPIRED or
32
+ // never existed, the call fell through to the block/auto-approve
33
+ // attempt, and `permission_mode` WAS on the payload at that instant),
34
+ // not perfect per-session coverage.
35
+ //
36
+ // FAIL-OPEN ON WRITE ERRORS. A failed write is one stderr warning line,
37
+ // never escalated into a block: this is telemetry for `harness doctor`,
38
+ // never a gate input, and the write happens on the same fail-open
39
+ // posture every other best-effort write in this pack already uses
40
+ // (`writePendingApproval`, the marker writers).
41
+ //
42
+ // UNSIGNED: ADVISORY ONLY, NOT PROOF (review round 3, F2). Unlike the
43
+ // approval marker (`markers.ts`), this record is NOT HMAC-signed. It is
44
+ // written by the hook PROCESS from whatever `session_id`/`permission_mode`
45
+ // appear on the invocation's PreToolUse payload; that only proves the
46
+ // hook was invoked with that payload, not that any particular session
47
+ // actually ran under that mode: an already-approved session (or anything
48
+ // else able to invoke `harness pack hook pre-tool-use` with crafted
49
+ // stdin) can write, or forge, an observation. That is why
50
+ // `checkBypassWithoutAutoApprove` (bypass-without-auto-approve.ts) is
51
+ // wired as an advisory `harness doctor` finding ONLY: it can never gate a
52
+ // tool call or mint an approval, and the operator who reads the finding
53
+ // is the one who decides what to do about it. A possible future
54
+ // hardening, not done here, is signing the observation the same way
55
+ // approval markers are signed.
56
+ import * as path from "node:path";
57
+ import { atomicWriteFile } from "../../../io/atomic-write.js";
58
+ import { readJsonDirEntriesRejectingSymlinks } from "../../../io/read-json-dir-entries.js";
59
+ import { rejectMalformedSessionId } from "../../../runtime/reject-malformed-session-id.js";
60
+ export const PERMISSION_MODE_OBSERVATION_DIRNAME = ".permission-mode-observations";
61
+ /**
62
+ * `sessionId` is validated with the SAME `rejectMalformedSessionId` used
63
+ * for the approval marker path (`markers.ts`'s `approvalMarkerPathFor`):
64
+ * a value carrying `/`, `\`, `..`, or that is empty/blank throws rather
65
+ * than being joined into the path (review round 3, F1: the earlier
66
+ * version of this function trusted the caller's own empty-string check
67
+ * and joined `sessionId` verbatim, letting a crafted `session_id` on the
68
+ * hook's stdin write outside `<generatedDir>/.permission-mode-observations/`).
69
+ */
70
+ export function permissionModeObservationPathFor(generatedDir, sessionId) {
71
+ rejectMalformedSessionId(sessionId);
72
+ return path.join(generatedDir, PERMISSION_MODE_OBSERVATION_DIRNAME, sessionId);
73
+ }
74
+ /**
75
+ * Best-effort write/update of the per-session observation.
76
+ *
77
+ * `permissionMode` must be a non-empty string; any other shape (absent,
78
+ * non-string, empty) is a silent no-op: there is nothing to observe.
79
+ * `sessionId` is NOT trusted as pre-validated (review round 3, F1): the
80
+ * caller (`hook-pre-tool-use.ts`) only rejects an EMPTY session id
81
+ * before this is reached, and `session_id` on the hook's stdin payload
82
+ * is otherwise attacker-controllable input to a CLI invocation, not a
83
+ * value this function may assume is already path-safe. A malformed id
84
+ * (path separators, `..`, blank) makes `permissionModeObservationPathFor`
85
+ * throw; that throw is treated exactly like any other write failure
86
+ * below: one `stderr` warning, never escalated into a block, never
87
+ * thrown out of this function.
88
+ */
89
+ export function recordPermissionModeObservation(generatedDir, sessionId, permissionMode, stderr, now = () => new Date()) {
90
+ if (typeof permissionMode !== "string" || permissionMode.length === 0)
91
+ return;
92
+ if (sessionId.length === 0)
93
+ return;
94
+ const record = {
95
+ sessionId,
96
+ permissionMode,
97
+ observedAt: now().toISOString(),
98
+ };
99
+ try {
100
+ atomicWriteFile(permissionModeObservationPathFor(generatedDir, sessionId), `${JSON.stringify(record)}\n`);
101
+ }
102
+ catch (err) {
103
+ stderr.write(`harness pack hook: failed to write permission-mode observation for session ${sanitizeForDisplay(sessionId)} (${err.message}), continuing.\n`);
104
+ }
105
+ }
106
+ function isValidObservation(value) {
107
+ if (value === null || typeof value !== "object" || Array.isArray(value))
108
+ return false;
109
+ const obj = value;
110
+ return (typeof obj["sessionId"] === "string" &&
111
+ typeof obj["permissionMode"] === "string" &&
112
+ typeof obj["observedAt"] === "string" &&
113
+ !Number.isNaN(Date.parse(obj["observedAt"])));
114
+ }
115
+ /** Cap applied to a sanitized `sessionId` before it reaches doctor output. */
116
+ const DISPLAY_VALUE_MAX_LENGTH = 200;
117
+ /**
118
+ * Strip C0/DEL control characters (including ESC, which could otherwise
119
+ * smuggle an ANSI escape sequence into a terminal) and cap the length,
120
+ * mirroring `persisted-reports.ts`'s `sanitizeDetailValue` for the same
121
+ * reason: `bypass-without-auto-approve.ts` embeds an observation's
122
+ * `sessionId` directly into a doctor finding's `message`, the surface an
123
+ * operator reads (review round 3, F1). This is independent of
124
+ * `permissionModeObservationPathFor`'s write-time
125
+ * `rejectMalformedSessionId` guard: that guard rejects path-traversal
126
+ * shapes, not control characters, and a directory entry's on-disk
127
+ * filename (or the `sessionId` field inside it) is never itself
128
+ * constrained to be display-safe: POSIX filenames may contain any byte
129
+ * but `/` and NUL, and the JSON body's `sessionId` field is a plain
130
+ * string with no such constraint either.
131
+ */
132
+ export function sanitizeForDisplay(value) {
133
+ const flattened = value.replace(/[\x00-\x1f\x7f]/g, " ");
134
+ return flattened.length > DISPLAY_VALUE_MAX_LENGTH
135
+ ? `${flattened.slice(0, DISPLAY_VALUE_MAX_LENGTH)}...`
136
+ : flattened;
137
+ }
138
+ /**
139
+ * Read-side: the newest `windowSize` per-session observations, newest
140
+ * first by `observedAt`. Mirrors `ug-auto-approvals.ts`'s own
141
+ * read-and-window convention (missing dir / empty dir / all-unreadable
142
+ * all resolve to an empty-ish result, never throw: this is a doctor
143
+ * read, not a gate decision). Every returned `sessionId` has already
144
+ * been through {@link sanitizeForDisplay}, so every consumer (today,
145
+ * `bypass-without-auto-approve.ts`'s finding `message`) gets a
146
+ * doctor-output-safe value without having to sanitize it itself.
147
+ */
148
+ export function listPermissionModeObservations(generatedDir, opts) {
149
+ const dir = path.join(generatedDir, PERMISSION_MODE_OBSERVATION_DIRNAME);
150
+ const { dirPresent, entries: readable, unreadableCount } = readJsonDirEntriesRejectingSymlinks(dir, {
151
+ parse: (raw) => isValidObservation(raw)
152
+ ? {
153
+ ...raw,
154
+ sessionId: sanitizeForDisplay(raw.sessionId),
155
+ // `observedAt` only has to satisfy Date.parse, which accepts
156
+ // parenthesised trailing text, so it is display-sanitised too
157
+ // (review round 3: a crafted timestamp reached doctor output raw).
158
+ observedAt: sanitizeForDisplay(raw.observedAt),
159
+ }
160
+ : null,
161
+ });
162
+ readable.sort((a, b) => Date.parse(b.observedAt) - Date.parse(a.observedAt));
163
+ return {
164
+ dirPresent,
165
+ entries: readable.slice(0, opts.windowSize),
166
+ unreadableCount,
167
+ };
168
+ }
169
+ //# sourceMappingURL=permission-mode-observations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission-mode-observations.js","sourceRoot":"","sources":["../../../../src/policy-packs/builtin/understanding-before-execution/permission-mode-observations.ts"],"names":[],"mappings":"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"}
@@ -126,15 +126,28 @@ export declare const configSchema: z.ZodObject<{
126
126
  auto_approve: z.ZodOptional<z.ZodObject<{
127
127
  when: z.ZodArray<z.ZodString, "many">;
128
128
  harnesses: z.ZodOptional<z.ZodEffects<z.ZodArray<z.ZodEnum<["claude-code", "codex"]>, "many">, ("claude-code" | "codex")[], ("claude-code" | "codex")[]>>;
129
+ report_scan: z.ZodOptional<z.ZodObject<{
130
+ max_wait: z.ZodEffects<z.ZodString, string, string>;
131
+ }, "strict", z.ZodTypeAny, {
132
+ max_wait: string;
133
+ }, {
134
+ max_wait: string;
135
+ }>>;
129
136
  require_report: z.ZodLiteral<true>;
130
137
  }, "strict", z.ZodTypeAny, {
131
138
  when: string[];
132
139
  require_report: true;
133
140
  harnesses?: ("claude-code" | "codex")[] | undefined;
141
+ report_scan?: {
142
+ max_wait: string;
143
+ } | undefined;
134
144
  }, {
135
145
  when: string[];
136
146
  require_report: true;
137
147
  harnesses?: ("claude-code" | "codex")[] | undefined;
148
+ report_scan?: {
149
+ max_wait: string;
150
+ } | undefined;
138
151
  }>>;
139
152
  ux: z.ZodOptional<z.ZodObject<{
140
153
  cannot: z.ZodString;
@@ -221,6 +234,9 @@ export declare const configSchema: z.ZodObject<{
221
234
  when: string[];
222
235
  require_report: true;
223
236
  harnesses?: ("claude-code" | "codex")[] | undefined;
237
+ report_scan?: {
238
+ max_wait: string;
239
+ } | undefined;
224
240
  } | undefined;
225
241
  }, {
226
242
  producers?: ({
@@ -254,6 +270,9 @@ export declare const configSchema: z.ZodObject<{
254
270
  when: string[];
255
271
  require_report: true;
256
272
  harnesses?: ("claude-code" | "codex")[] | undefined;
273
+ report_scan?: {
274
+ max_wait: string;
275
+ } | undefined;
257
276
  } | undefined;
258
277
  }>;
259
278
  export interface ResolvePackOptions {
@@ -16,6 +16,16 @@ import { profileToSettingsPermissions } from "../permission-translator.js";
16
16
  import { DEFAULT_RUNTIME } from "../runtime.js";
17
17
  import { isKnownProfileName, resolveProfile, KNOWN_PROFILE_NAMES, } from "./permission-profiles.js";
18
18
  import { AUTO_APPROVE_HARNESS_VALUES, REPORTS_DIR_ENV, } from "./understanding-before-execution-runtime.js";
19
+ // Through the `understanding-before-execution/index.ts` aggregator, not
20
+ // through the concern-scoped `auto-approve.ts` sibling directly (review
21
+ // fix): the prior direct import contradicted the
22
+ // precedent every other symbol at this call site already follows (the
23
+ // `AUTO_APPROVE_HARNESS_VALUES` / `REPORTS_DIR_ENV` import just above).
24
+ // `parseReportScanMaxWait` is now part of the shim's pinned public surface
25
+ // (tests/policy-packs/ube-export-surface.test.ts), alongside
26
+ // `DEFAULT_REPORT_SCAN_MAX_WAIT_MS` and `REPORT_SCAN_MAX_WAIT_CEILING_MS`,
27
+ // which this file only names in comments and so does not import.
28
+ import { parseReportScanMaxWait } from "./understanding-before-execution/index.js";
19
29
  import { SHELL_ALIASES } from "../../runtime/tool-name-aliases.js";
20
30
  // Env var the npm-backed `understanding-gate-claude-hook` bin reads to find
21
31
  // the harness pause sentinel (`src/runtime/pause-sentinel.ts`,
@@ -248,6 +258,11 @@ export const configSchema = z
248
258
  // `require_report` is required and must be literal `true` in v1 (ADR
249
259
  // threat model (b) item 3: rejecting `false` here makes a future
250
260
  // relaxation a visible schema change instead of a silent default).
261
+ // `report_scan.max_wait` (slice 3) bounds the child's transcript poll
262
+ // under `claude -p`; it is optional, defaults to
263
+ // `DEFAULT_REPORT_SCAN_MAX_WAIT_MS` when absent, and is range-checked
264
+ // here so an over-long bound is a `harness validate` error rather
265
+ // than a hook that parks a session.
251
266
  // Runtime parsing/validation lives in
252
267
  // `./understanding-before-execution/auto-approve.ts`.
253
268
  auto_approve: z
@@ -260,6 +275,20 @@ export const configSchema = z
260
275
  message: "harnesses must not contain duplicate entries",
261
276
  })
262
277
  .optional(),
278
+ report_scan: z
279
+ .object({
280
+ // Parsed by the SAME function the runtime hook uses, so the
281
+ // lint-time gate and the hook cannot drift on the grammar,
282
+ // the zero/negative rejection, or the hard ceiling.
283
+ max_wait: z.string().min(1).superRefine((value, ctx) => {
284
+ const parsed = parseReportScanMaxWait(value);
285
+ if (!parsed.ok) {
286
+ ctx.addIssue({ code: z.ZodIssueCode.custom, message: parsed.reason });
287
+ }
288
+ }),
289
+ })
290
+ .strict()
291
+ .optional(),
263
292
  require_report: z.literal(true),
264
293
  })
265
294
  .strict()
@@ -1 +1 @@
1
- {"version":3,"file":"understanding-before-execution.js","sourceRoot":"","sources":["../../../src/policy-packs/builtin/understanding-before-execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"understanding-before-execution.js","sourceRoot":"","sources":["../../../src/policy-packs/builtin/understanding-before-execution.ts"],"names":[],"mappings":"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"}
@@ -66,6 +66,34 @@
66
66
  // report it used, declines on a forged marker, and applies only
67
67
  // after every existing exemption branch has declined. The pack's
68
68
  // doctor listing of `auto-mode:` markers is the audit surface for it.
69
+ // - THIRD SIGNED ARTIFACT KIND (agent-tasks/37ad0b05, ADR
70
+ // docs/decisions/2026-08-27-ug-auto-mode-approval.md, slice 3): a
71
+ // DELEGATION is a third kind of thing this module signs, alongside
72
+ // the approval marker and the branch-protection marker, and it is
73
+ // not an approval, it is a pre-authorization a parent session
74
+ // issues for a `claude -p` child before the child's own report even
75
+ // exists. It is written to its own directory,
76
+ // `<generatedDir>/.delegations/`, never `.approvals/`, under
77
+ // markerId `delegation-<child-sid>` (`delegation-markers.ts`), so a
78
+ // copy of one into the other directory fails signature verification
79
+ // on markerId mismatch in both directions. Every binding (parent
80
+ // session, cwd, task, expiry, and, in the fallback shape, the
81
+ // launcher-supplied report's path) is packed into the signed
82
+ // `approvedBy` string rather than a new signed field, for the same
83
+ // no-migration reason the auto-marker's source lives there too. On
84
+ // a delegation, unlike on an approval marker, `reportContentHash`
85
+ // does NOT mean "the persisted report the operator approved", it
86
+ // means, when present at all, the sha256 of the launcher-supplied
87
+ // report FILE the parent wrote at spawn time (a file that need
88
+ // never become a persisted report byte-for-byte). A reader that
89
+ // consumes `reportContentHash` has to branch on the artifact kind
90
+ // (`.approvals/` vs. `.delegations/`, or the markerId prefix)
91
+ // before deciding what the hash refers to; treating the two
92
+ // uniformly would misread one of them. `harness delegate` is
93
+ // therefore a SECOND CLI writer into the signing scheme, beside the
94
+ // `harness approve` verbs: same key, same HMAC primitive, a
95
+ // different markerId namespace and a different meaning for one of
96
+ // the four signed fields.
69
97
  // - Given the agent and operator share one OS user account on this
70
98
  // machine, this is deliberately pragmatic defense-in-depth, not a hard
71
99
  // authorization boundary. It is documented here in full rather than
@@ -1 +1 @@
1
- {"version":3,"file":"approval-signing.js","sourceRoot":"","sources":["../../src/runtime/approval-signing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"approval-signing.js","sourceRoot":"","sources":["../../src/runtime/approval-signing.ts"],"names":[],"mappings":"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"}
@@ -138,7 +138,13 @@ export function resolveGitContext(cwd) {
138
138
  const match = HEAD_REF_RE.exec(head);
139
139
  if (match) {
140
140
  branch = match[1].trim();
141
- sha = resolveBranchSha(entry.gitDir, branch);
141
+ // `refs/heads/<branch>` and `packed-refs` are not duplicated in
142
+ // a linked worktree's private gitdir; they live in the shared
143
+ // common dir (see `resolveCommonDir`'s doc comment). Routing
144
+ // through it here is a no-op for the main checkout (no
145
+ // `commondir` file, `resolveCommonDir` returns `gitDir`
146
+ // unchanged).
147
+ sha = resolveBranchSha(resolveCommonDir(entry.gitDir), branch);
142
148
  }
143
149
  else if (SHA_RE.test(head)) {
144
150
  // Detached HEAD: the file contains the raw sha directly.