@lannguyensi/harness 0.58.2 → 0.59.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.
- package/CHANGELOG.md +32 -3
- package/README.md +70 -266
- package/dist/cli/apply/apply.d.ts +56 -2
- package/dist/cli/apply/apply.js +229 -15
- package/dist/cli/apply/apply.js.map +1 -1
- package/dist/cli/apply/index.d.ts +1 -1
- package/dist/cli/apply/index.js +1 -1
- package/dist/cli/apply/index.js.map +1 -1
- package/dist/cli/apply/install-codex-config.d.ts +15 -0
- package/dist/cli/apply/install-codex-config.js +156 -11
- package/dist/cli/apply/install-codex-config.js.map +1 -1
- package/dist/cli/delegate/index.js +11 -5
- package/dist/cli/delegate/index.js.map +1 -1
- package/dist/cli/index.js +13 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init/composer.js +1 -0
- package/dist/cli/init/composer.js.map +1 -1
- package/dist/cli/init/interactive.js +14 -5
- package/dist/cli/init/interactive.js.map +1 -1
- package/dist/cli/init/profiles.js +1 -0
- package/dist/cli/init/profiles.js.map +1 -1
- package/dist/cli/init/templates.js +1 -0
- package/dist/cli/init/templates.js.map +1 -1
- package/dist/cli/pack/hook-codex-post-tool-use.js +2 -2
- package/dist/cli/pack/hook-codex-post-tool-use.js.map +1 -1
- package/dist/cli/pack/hook-codex-pre-tool-use.js +8 -1
- package/dist/cli/pack/hook-codex-pre-tool-use.js.map +1 -1
- package/dist/cli/pack/hook-post-tool-use.js +16 -4
- package/dist/cli/pack/hook-post-tool-use.js.map +1 -1
- package/dist/cli/pack/hook-pre-tool-use.js +11 -1
- package/dist/cli/pack/hook-pre-tool-use.js.map +1 -1
- package/dist/cli/pack/hook-solution-acceptance-writeguard.js +6 -0
- package/dist/cli/pack/hook-solution-acceptance-writeguard.js.map +1 -1
- package/dist/cli/pack/hook-solution-acceptance.d.ts +70 -2
- package/dist/cli/pack/hook-solution-acceptance.js +81 -28
- package/dist/cli/pack/hook-solution-acceptance.js.map +1 -1
- package/dist/cli/pack/remove.js +8 -6
- package/dist/cli/pack/remove.js.map +1 -1
- package/dist/cli/smoke/index.js +12 -1
- package/dist/cli/smoke/index.js.map +1 -1
- package/dist/io/last-apply.d.ts +1 -0
- package/dist/io/last-apply.js +8 -1
- package/dist/io/last-apply.js.map +1 -1
- package/dist/policy-packs/builtin/solution-acceptance-runtime.d.ts +4 -2
- package/dist/policy-packs/builtin/solution-acceptance-runtime.js +87 -3
- package/dist/policy-packs/builtin/solution-acceptance-runtime.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/active-claim.js +7 -2
- package/dist/policy-packs/builtin/understanding-before-execution/active-claim.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js +2 -1
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/index.d.ts +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/index.js +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/index.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.js +2 -1
- package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/lifecycle.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/markers.d.ts +24 -1
- package/dist/policy-packs/builtin/understanding-before-execution/markers.js +20 -2
- package/dist/policy-packs/builtin/understanding-before-execution/markers.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.d.ts +31 -9
- package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js +29 -19
- package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/task-markers.d.ts +50 -0
- package/dist/policy-packs/builtin/understanding-before-execution/task-markers.js +46 -6
- package/dist/policy-packs/builtin/understanding-before-execution/task-markers.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution.js +11 -7
- package/dist/policy-packs/builtin/understanding-before-execution.js.map +1 -1
- package/dist/runtime/approval-signing.d.ts +7 -0
- package/dist/runtime/approval-signing.js +31 -4
- package/dist/runtime/approval-signing.js.map +1 -1
- package/dist/runtime/task-providers/agent-tasks.d.ts +12 -1
- package/dist/runtime/task-providers/agent-tasks.js +12 -0
- package/dist/runtime/task-providers/agent-tasks.js.map +1 -1
- package/package.json +1 -1
|
@@ -12,6 +12,17 @@ export interface ApprovalMarker {
|
|
|
12
12
|
* (possibly `null`) on a marker `checkApprovalMarker` returns.
|
|
13
13
|
*/
|
|
14
14
|
reportContentHash?: string | null;
|
|
15
|
+
/**
|
|
16
|
+
* Task binding (task 5018c0c4): the active-claim task id this approval
|
|
17
|
+
* was granted for, `null` when no claim was held at approval time.
|
|
18
|
+
* Signed. On write, omitted means "resolve it now from the active-claim
|
|
19
|
+
* file" (see `writeApprovalMarker`). On a marker `checkApprovalMarker`
|
|
20
|
+
* returns, the property is ABSENT for a marker that carries no binding
|
|
21
|
+
* (one written by a release before the binding existed); the gate's
|
|
22
|
+
* session-marker reader (`checkSessionApprovalMarker`) refuses such a
|
|
23
|
+
* marker.
|
|
24
|
+
*/
|
|
25
|
+
claimTaskId?: string | null;
|
|
15
26
|
}
|
|
16
27
|
/**
|
|
17
28
|
* Operator-side: write the marker file the gate consults. Atomic so a
|
|
@@ -22,12 +33,24 @@ export interface ApprovalMarker {
|
|
|
22
33
|
* approve CLI rather than as a generally importable verb.
|
|
23
34
|
*
|
|
24
35
|
* The marker is HMAC-signed (harness/f9485cc7) over (sessionId,
|
|
25
|
-
* approvedAt, approvedBy, reportContentHash)
|
|
36
|
+
* approvedAt, approvedBy, reportContentHash), plus the claimTaskId every
|
|
37
|
+
* marker this writer signs carries (see `canonicalPayload`), using an operator-side key
|
|
26
38
|
* lazily generated at `<generatedDir>/.approval-signing.key` — see
|
|
27
39
|
* `src/runtime/approval-signing.ts` for the key-management contract and
|
|
28
40
|
* the honest trust model. Mode 0600 on the marker file itself, best-
|
|
29
41
|
* effort (matches the signing key's own permission convention); this is
|
|
30
42
|
* defense-in-depth alongside the signature, not a substitute for it.
|
|
43
|
+
*
|
|
44
|
+
* Task binding (task 5018c0c4): every marker this writer signs records
|
|
45
|
+
* the task id of the active claim at the moment of writing (`null` when
|
|
46
|
+
* none is held), unless the caller passes `claimTaskId` explicitly. The
|
|
47
|
+
* binding is resolved here, at the one writer, so no approve path (the
|
|
48
|
+
* `harness approve understanding` CLI, the hook's auto-approval path)
|
|
49
|
+
* can mint an unbound session marker. Only the understanding gate's
|
|
50
|
+
* session-marker reader enforces it, and only outside
|
|
51
|
+
* `approval_lifecycle: { mode: session }` (the field is written in every
|
|
52
|
+
* mode so a later mode change takes effect); the branch-protection marker, which
|
|
53
|
+
* shares this writer under its own id, carries the field unused.
|
|
31
54
|
*/
|
|
32
55
|
export declare function writeApprovalMarker(generatedDir: string, sessionId: string, marker: ApprovalMarker): string;
|
|
33
56
|
export interface MarkerCheck {
|
|
@@ -11,6 +11,7 @@ import { readRegularFileRejectingSymlink } from "../../../io/read-regular-file.j
|
|
|
11
11
|
import { signMarker, verifyMarkerSignature } from "../../../runtime/approval-signing.js";
|
|
12
12
|
import { rejectMalformedSessionId } from "../../../runtime/reject-malformed-session-id.js";
|
|
13
13
|
import { safeJsonParse } from "../../../io/safe-json-parse.js";
|
|
14
|
+
import { readActiveClaim } from "./active-claim.js";
|
|
14
15
|
export const APPROVAL_MARKER_DIRNAME = ".approvals";
|
|
15
16
|
/** Filesystem path of the per-session approval marker. */
|
|
16
17
|
export function approvalMarkerPathFor(generatedDir, sessionId) {
|
|
@@ -26,16 +27,29 @@ export function approvalMarkerPathFor(generatedDir, sessionId) {
|
|
|
26
27
|
* approve CLI rather than as a generally importable verb.
|
|
27
28
|
*
|
|
28
29
|
* The marker is HMAC-signed (harness/f9485cc7) over (sessionId,
|
|
29
|
-
* approvedAt, approvedBy, reportContentHash)
|
|
30
|
+
* approvedAt, approvedBy, reportContentHash), plus the claimTaskId every
|
|
31
|
+
* marker this writer signs carries (see `canonicalPayload`), using an operator-side key
|
|
30
32
|
* lazily generated at `<generatedDir>/.approval-signing.key` — see
|
|
31
33
|
* `src/runtime/approval-signing.ts` for the key-management contract and
|
|
32
34
|
* the honest trust model. Mode 0600 on the marker file itself, best-
|
|
33
35
|
* effort (matches the signing key's own permission convention); this is
|
|
34
36
|
* defense-in-depth alongside the signature, not a substitute for it.
|
|
37
|
+
*
|
|
38
|
+
* Task binding (task 5018c0c4): every marker this writer signs records
|
|
39
|
+
* the task id of the active claim at the moment of writing (`null` when
|
|
40
|
+
* none is held), unless the caller passes `claimTaskId` explicitly. The
|
|
41
|
+
* binding is resolved here, at the one writer, so no approve path (the
|
|
42
|
+
* `harness approve understanding` CLI, the hook's auto-approval path)
|
|
43
|
+
* can mint an unbound session marker. Only the understanding gate's
|
|
44
|
+
* session-marker reader enforces it, and only outside
|
|
45
|
+
* `approval_lifecycle: { mode: session }` (the field is written in every
|
|
46
|
+
* mode so a later mode change takes effect); the branch-protection marker, which
|
|
47
|
+
* shares this writer under its own id, carries the field unused.
|
|
35
48
|
*/
|
|
36
49
|
export function writeApprovalMarker(generatedDir, sessionId, marker) {
|
|
37
50
|
const filePath = approvalMarkerPathFor(generatedDir, sessionId);
|
|
38
|
-
const
|
|
51
|
+
const claimTaskId = marker.claimTaskId !== undefined ? marker.claimTaskId : readActiveClaim(generatedDir);
|
|
52
|
+
const signed = signMarker(generatedDir, sessionId, { ...marker, claimTaskId });
|
|
39
53
|
atomicWriteFile(filePath, `${JSON.stringify(signed, null, 2)}\n`, { mode: 0o600 });
|
|
40
54
|
return filePath;
|
|
41
55
|
}
|
|
@@ -188,6 +202,10 @@ export function checkApprovalMarker(generatedDir, sessionId, opts = {}) {
|
|
|
188
202
|
const approvedBy = obj["approvedBy"];
|
|
189
203
|
const reportContentHash = typeof obj["reportContentHash"] === "string" ? obj["reportContentHash"] : null;
|
|
190
204
|
const marker = { approvedAt, approvedBy, reportContentHash };
|
|
205
|
+
// Signature verification above already rejected a malformed binding.
|
|
206
|
+
if (Object.prototype.hasOwnProperty.call(obj, "claimTaskId")) {
|
|
207
|
+
marker.claimTaskId = obj["claimTaskId"];
|
|
208
|
+
}
|
|
191
209
|
if (opts.maxAgeMs !== undefined) {
|
|
192
210
|
const approvedAtMs = Date.parse(approvedAt);
|
|
193
211
|
if (Number.isFinite(approvedAtMs)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markers.js","sourceRoot":"","sources":["../../../../src/policy-packs/builtin/understanding-before-execution/markers.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,6EAA6E;AAC7E,sEAAsE;AACtE,iDAAiD;AACjD,uEAAuE;AACvE,kCAAkC;AAElC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AACzF,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"markers.js","sourceRoot":"","sources":["../../../../src/policy-packs/builtin/understanding-before-execution/markers.ts"],"names":[],"mappings":"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"}
|
package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.d.ts
CHANGED
|
@@ -53,22 +53,44 @@ export declare function extractTasksTransitionStatusFromToolInput(toolInput: unk
|
|
|
53
53
|
export interface PostToolUseBoundaryMatch {
|
|
54
54
|
/** Final match decision: `toolNameMatched || bashRegex !== undefined`. */
|
|
55
55
|
matched: boolean;
|
|
56
|
-
/** Tool-name match, refined by the
|
|
56
|
+
/** Tool-name match, refined by the active-claim decider (a claim
|
|
57
|
+
* lifecycle verb the decider says keeps the work claim does not
|
|
58
|
+
* count, see `claimKeptByDecider`). */
|
|
57
59
|
toolNameMatched: boolean;
|
|
58
|
-
/** Tool-name match BEFORE the
|
|
59
|
-
*
|
|
60
|
-
*
|
|
60
|
+
/** Tool-name match BEFORE the active-claim decider filter: lets the
|
|
61
|
+
* caller distinguish "not in the list" from "in the list, but the
|
|
62
|
+
* work claim is kept" for its diagnostic. */
|
|
61
63
|
rawToolNameMatched: boolean;
|
|
64
|
+
/** True when the tool is an agent-tasks claim lifecycle verb and
|
|
65
|
+
* `claimEffectForAgentTasksTool` returned `"none"` for it (a
|
|
66
|
+
* `task_finish` whose result landed in `review`, a legacy
|
|
67
|
+
* `tasks_transition` to a status other than `done`). */
|
|
68
|
+
claimKeptByDecider: boolean;
|
|
62
69
|
/** The `expire_on_bash_match` regex the command satisfied, if any. */
|
|
63
70
|
bashRegex: RegExp | undefined;
|
|
64
71
|
}
|
|
65
72
|
/**
|
|
66
|
-
* Decide whether `toolName` (+ its `tool_input`
|
|
67
|
-
* configured `approval_lifecycle` boundaries. Pure
|
|
68
|
-
* access. Callers branch on `.matched` before touching
|
|
69
|
-
* state (see `applyPostToolUseExpiry`).
|
|
73
|
+
* Decide whether `toolName` (+ its `tool_input` and `tool_response`)
|
|
74
|
+
* crosses one of the configured `approval_lifecycle` boundaries. Pure,
|
|
75
|
+
* no filesystem access. Callers branch on `.matched` before touching
|
|
76
|
+
* marker/report state (see `applyPostToolUseExpiry`).
|
|
77
|
+
*
|
|
78
|
+
* The approval marker expires on the same boundary as the active-claim
|
|
79
|
+
* marker (task 5018c0c4): for an agent-tasks claim lifecycle verb
|
|
80
|
+
* (`ACTIVE_CLAIM_TOOL_NAMES`) the one decider,
|
|
81
|
+
* `claimEffectForAgentTasksTool`, is asked with the tool RESULT, and a
|
|
82
|
+
* `"none"` (claim kept) answer means "not a boundary". So a
|
|
83
|
+
* `task_finish` that lands the task in `review` keeps the approval,
|
|
84
|
+
* while `done`, `task_abandon`, `task_merge` and a `tasks_transition`
|
|
85
|
+
* to `done` expire it. There is no second local classification here.
|
|
86
|
+
* The decider's own fail-safe direction is `"release"` for an absent or
|
|
87
|
+
* unreadable `task_finish` result, which here means EXPIRE: the safe
|
|
88
|
+
* side of a gate. An `"acquire"` answer (`task_start`, only reachable
|
|
89
|
+
* when an operator lists it explicitly) and a tool the decider does not
|
|
90
|
+
* track (`pull_requests_merge`, `task_submit_pr`, any non-agent-tasks
|
|
91
|
+
* tool) keep the plain list-membership behaviour.
|
|
70
92
|
*/
|
|
71
|
-
export declare function matchPostToolUseBoundary(toolName: string, toolInput: unknown, lifecycle: Pick<ApprovalLifecycle, "expireOnToolMatch" | "expireOnBashMatch">, bashToolNames?: ReadonlySet<string
|
|
93
|
+
export declare function matchPostToolUseBoundary(toolName: string, toolInput: unknown, lifecycle: Pick<ApprovalLifecycle, "expireOnToolMatch" | "expireOnBashMatch">, bashToolNames?: ReadonlySet<string>, toolResponse?: unknown): PostToolUseBoundaryMatch;
|
|
72
94
|
export interface ApplyPostToolUseExpiryResult {
|
|
73
95
|
/** Did the session marker exist before this call cleared it? */
|
|
74
96
|
wasMarkerPresent: boolean;
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
// the re-exported public surface.
|
|
6
6
|
import * as fs from "node:fs";
|
|
7
7
|
import { expandToolNameAliases } from "../../../runtime/tool-name-aliases.js";
|
|
8
|
-
import {
|
|
8
|
+
import { ACTIVE_CLAIM_TOOL_NAMES, claimEffectForAgentTasksTool, taskIdFromInput, tasksTransitionStatusFromInput, } from "../../../runtime/task-providers/agent-tasks.js";
|
|
9
9
|
import { approvalMarkerPathFor, clearApprovalMarker } from "./markers.js";
|
|
10
10
|
import { expirePersistedReport } from "./persisted-reports.js";
|
|
11
11
|
import { clearTaskApprovalMarker, taskApprovalMarkerPathFor } from "./task-markers.js";
|
|
@@ -96,27 +96,36 @@ export function extractTasksTransitionStatusFromToolInput(toolInput) {
|
|
|
96
96
|
return tasksTransitionStatusFromInput(toolInput);
|
|
97
97
|
}
|
|
98
98
|
/**
|
|
99
|
-
* Decide whether `toolName` (+ its `tool_input`
|
|
100
|
-
* configured `approval_lifecycle` boundaries. Pure
|
|
101
|
-
* access. Callers branch on `.matched` before touching
|
|
102
|
-
* state (see `applyPostToolUseExpiry`).
|
|
99
|
+
* Decide whether `toolName` (+ its `tool_input` and `tool_response`)
|
|
100
|
+
* crosses one of the configured `approval_lifecycle` boundaries. Pure,
|
|
101
|
+
* no filesystem access. Callers branch on `.matched` before touching
|
|
102
|
+
* marker/report state (see `applyPostToolUseExpiry`).
|
|
103
|
+
*
|
|
104
|
+
* The approval marker expires on the same boundary as the active-claim
|
|
105
|
+
* marker (task 5018c0c4): for an agent-tasks claim lifecycle verb
|
|
106
|
+
* (`ACTIVE_CLAIM_TOOL_NAMES`) the one decider,
|
|
107
|
+
* `claimEffectForAgentTasksTool`, is asked with the tool RESULT, and a
|
|
108
|
+
* `"none"` (claim kept) answer means "not a boundary". So a
|
|
109
|
+
* `task_finish` that lands the task in `review` keeps the approval,
|
|
110
|
+
* while `done`, `task_abandon`, `task_merge` and a `tasks_transition`
|
|
111
|
+
* to `done` expire it. There is no second local classification here.
|
|
112
|
+
* The decider's own fail-safe direction is `"release"` for an absent or
|
|
113
|
+
* unreadable `task_finish` result, which here means EXPIRE: the safe
|
|
114
|
+
* side of a gate. An `"acquire"` answer (`task_start`, only reachable
|
|
115
|
+
* when an operator lists it explicitly) and a tool the decider does not
|
|
116
|
+
* track (`pull_requests_merge`, `task_submit_pr`, any non-agent-tasks
|
|
117
|
+
* tool) keep the plain list-membership behaviour.
|
|
103
118
|
*/
|
|
104
|
-
export function matchPostToolUseBoundary(toolName, toolInput, lifecycle, bashToolNames = DEFAULT_BASH_TOOL_NAMES) {
|
|
119
|
+
export function matchPostToolUseBoundary(toolName, toolInput, lifecycle, bashToolNames = DEFAULT_BASH_TOOL_NAMES, toolResponse) {
|
|
105
120
|
const rawToolNameMatched = toolNameMatchesAny(toolName, lifecycle.expireOnToolMatch);
|
|
106
|
-
//
|
|
107
|
-
//
|
|
108
|
-
// to
|
|
109
|
-
// review / missing status keep the marker. The task-provider adapter
|
|
110
|
-
// applies the same alias expansion as the general match above:
|
|
111
|
-
// a Codex dotted/server-variant `tasks_transition`
|
|
112
|
-
// tool_name must still get the status filter applied, otherwise it
|
|
113
|
-
// would fall through to the unconditional `true` branch below and
|
|
114
|
-
// clear the marker on ANY status — a worse bug than a missed match
|
|
121
|
+
// Alias-aware membership (a Codex dotted/server-variant tool_name is
|
|
122
|
+
// still a claim verb), so a variant `tasks_transition` cannot fall
|
|
123
|
+
// through to plain membership and clear the marker on ANY status
|
|
115
124
|
// (review finding on task a1348c89).
|
|
116
|
-
const
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
const toolNameMatched = rawToolNameMatched &&
|
|
125
|
+
const claimKeptByDecider = rawToolNameMatched &&
|
|
126
|
+
toolNameMatchesAny(toolName, ACTIVE_CLAIM_TOOL_NAMES) &&
|
|
127
|
+
claimEffectForAgentTasksTool(toolName, toolInput, toolResponse) === "none";
|
|
128
|
+
const toolNameMatched = rawToolNameMatched && !claimKeptByDecider;
|
|
120
129
|
// Bash check only runs when the event is actually a Bash(-alias) call;
|
|
121
130
|
// an MCP tool whose name happens to match a regex is not a Bash
|
|
122
131
|
// boundary.
|
|
@@ -127,6 +136,7 @@ export function matchPostToolUseBoundary(toolName, toolInput, lifecycle, bashToo
|
|
|
127
136
|
matched: toolNameMatched || bashRegex !== undefined,
|
|
128
137
|
toolNameMatched,
|
|
129
138
|
rawToolNameMatched,
|
|
139
|
+
claimKeptByDecider,
|
|
130
140
|
bashRegex,
|
|
131
141
|
};
|
|
132
142
|
}
|
package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post-tool-use-boundary.js","sourceRoot":"","sources":["../../../../src/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,+EAA+E;AAC/E,2EAA2E;AAC3E,uEAAuE;AACvE,kCAAkC;AAElC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EACL,4BAA4B,EAC5B,eAAe,EACf,8BAA8B,
|
|
1
|
+
{"version":3,"file":"post-tool-use-boundary.js","sourceRoot":"","sources":["../../../../src/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,+EAA+E;AAC/E,2EAA2E;AAC3E,uEAAuE;AACvE,kCAAkC;AAElC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,eAAe,EACf,8BAA8B,GAC/B,MAAM,gDAAgD,CAAC;AAExD,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEvF,wEAAwE;AACxE,wEAAwE;AACxE,gEAAgE;AAChE,uEAAuE;AACvE,mEAAmE;AACnE,uEAAuE;AACvE,qEAAqE;AACrE,oEAAoE;AACpE,uEAAuE;AACvE,qEAAqE;AACrE,4BAA4B;AAC5B,wEAAwE;AAExE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAwB,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,kBAAkB,CAChC,QAAgB,EAChB,QAA2B;IAE3B,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IACrC,OAAO,qBAAqB,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;AAChF,CAAC;AAED;;;kCAGkC;AAClC,MAAM,UAAU,qBAAqB,CACnC,OAAe,EACf,QAA2B;IAE3B,IAAI,OAAO,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IACrC,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,EAAE,CAAC;IAClC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CAAC,SAAkB;IACzC,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACpF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,SAAoC,CAAC;AAC9C,CAAC;AAED;mBACmB;AACnB,MAAM,UAAU,+BAA+B,CAAC,SAAkB;IAChE,MAAM,OAAO,GAAG,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACxD,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;AACpD,CAAC;AAED;;6BAE6B;AAC7B,MAAM,UAAU,0BAA0B,CAAC,SAAkB;IAC3D,OAAO,eAAe,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC;AAED;;;iBAGiB;AACjB,MAAM,UAAU,yCAAyC,CAAC,SAAkB;IAC1E,OAAO,8BAA8B,CAAC,SAAS,CAAC,CAAC;AACnD,CAAC;AAsBD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,wBAAwB,CACtC,QAAgB,EAChB,SAAkB,EAClB,SAA6E,EAC7E,gBAAqC,uBAAuB,EAC5D,YAAsB;IAEtB,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,QAAQ,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;IACrF,qEAAqE;IACrE,mEAAmE;IACnE,iEAAiE;IACjE,qCAAqC;IACrC,MAAM,kBAAkB,GACtB,kBAAkB;QAClB,kBAAkB,CAAC,QAAQ,EAAE,uBAAuB,CAAC;QACrD,4BAA4B,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,CAAC,KAAK,MAAM,CAAC;IAC7E,MAAM,eAAe,GAAG,kBAAkB,IAAI,CAAC,kBAAkB,CAAC;IAClE,uEAAuE;IACvE,gEAAgE;IAChE,YAAY;IACZ,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC3C,CAAC,CAAC,qBAAqB,CACnB,+BAA+B,CAAC,SAAS,CAAC,EAC1C,SAAS,CAAC,iBAAiB,CAC5B;QACH,CAAC,CAAC,SAAS,CAAC;IACd,OAAO;QACL,OAAO,EAAE,eAAe,IAAI,SAAS,KAAK,SAAS;QACnD,eAAe;QACf,kBAAkB;QAClB,kBAAkB;QAClB,SAAS;KACV,CAAC;AACJ,CAAC;AAgBD;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CACpC,YAAoB,EACpB,SAAiB,EACjB,SAAkB,EAClB,eAAwB,EACxB,UAAkB,EAClB,GAAU;IAEV,MAAM,UAAU,GAAG,qBAAqB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAClE,MAAM,gBAAgB,GAAG,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IACnD,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAE7C,+DAA+D;IAC/D,sEAAsE;IACtE,oEAAoE;IACpE,aAAa;IACb,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;QACrD,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;YAClB,MAAM,cAAc,GAAG,yBAAyB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YACvE,IAAI,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;gBAClC,uBAAuB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;gBAC9C,iBAAiB,GAAG,IAAI,CAAC;gBACzB,aAAa,GAAG,MAAM,CAAC;YACzB,CAAC;QACH,CAAC;IACH,CAAC;IAED,mEAAmE;IACnE,qEAAqE;IACrE,qEAAqE;IACrE,oEAAoE;IACpE,sEAAsE;IACtE,eAAe;IACf,MAAM,YAAY,GAAG,qBAAqB,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;IAEvE,OAAO;QACL,gBAAgB;QAChB,iBAAiB;QACjB,aAAa;QACb,sBAAsB,EAAE,YAAY,CAAC,EAAE;QACvC,YAAY;KACb,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CACvC,SAAiB,EACjB,SAAiB,EACjB,QAAgB,EAChB,SAA6B,EAC7B,MAAoC;IAEpC,MAAM,WAAW,GAAG,SAAS,KAAK,SAAS;QACzC,CAAC,CAAC,eAAe,SAAS,CAAC,MAAM,GAAG;QACpC,CAAC,CAAC,WAAW,CAAC;IAChB,MAAM,QAAQ,GAAG,MAAM,CAAC,iBAAiB;QACvC,CAAC,CAAC,uCAAuC,MAAM,CAAC,aAAa,EAAE;QAC/D,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE;QACvC,CAAC,CAAC,8BAA8B,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE;QAC9D,CAAC,CAAC,sCAAsC,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;IACxE,OAAO,MAAM,CAAC,gBAAgB;QAC5B,CAAC,CAAC,GAAG,SAAS,yCAAyC,SAAS,UAAU,QAAQ,KAAK,WAAW,IAAI,QAAQ,GAAG,UAAU,EAAE;QAC7H,CAAC,CAAC,GAAG,SAAS,KAAK,QAAQ,YAAY,WAAW,sCAAsC,SAAS,GAAG,QAAQ,GAAG,UAAU,EAAE,CAAC;AAChI,CAAC"}
|
|
@@ -32,6 +32,48 @@ export declare function writeTaskApprovalMarker(generatedDir: string, taskId: st
|
|
|
32
32
|
* difference is the filename suffix derived from `active-claim`.
|
|
33
33
|
*/
|
|
34
34
|
export declare function checkActiveClaimApprovalMarker(generatedDir: string, opts?: CheckApprovalMarkerOptions): MarkerCheck;
|
|
35
|
+
export interface SessionMarkerCheck extends MarkerCheck {
|
|
36
|
+
/**
|
|
37
|
+
* True when a validly signed session marker existed but was refused
|
|
38
|
+
* because of its task binding (task 5018c0c4): it was granted for a
|
|
39
|
+
* different active claim than the current one, or it carries no
|
|
40
|
+
* binding at all (written by a release before the binding existed).
|
|
41
|
+
* `matched`, `expired` and `forged` are all false in that case: the
|
|
42
|
+
* gate treats it exactly like a missing marker.
|
|
43
|
+
*/
|
|
44
|
+
bindingRefused: boolean;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Gate-side: the session-keyed marker, accepted only while it belongs to
|
|
48
|
+
* the current task (task 5018c0c4, operator decision: bind the session
|
|
49
|
+
* marker to the task). `writeApprovalMarker` records the active-claim
|
|
50
|
+
* task id at approval time (`null` when none was held); this reader
|
|
51
|
+
* compares it with the active claim NOW and refuses the marker when the
|
|
52
|
+
* two differ, so an approval never carries over to another task, even
|
|
53
|
+
* when the previous task completed outside the session where no
|
|
54
|
+
* PostToolUse hook could expire it (a merge in the UI, a webhook moving
|
|
55
|
+
* the task to done). A marker without the binding field (older release)
|
|
56
|
+
* is refused too: one fresh approve re-binds it.
|
|
57
|
+
*
|
|
58
|
+
* The binding is checked BEFORE the `maxAgeMs` verdict is passed on, so a
|
|
59
|
+
* marker that belongs to another task never reads as `expired` (that
|
|
60
|
+
* signal means "this task's own approval aged out" and opens the
|
|
61
|
+
* recovery-git-commit exemption, see src/runtime/recovery-git-commit.ts).
|
|
62
|
+
*
|
|
63
|
+
* `opts.taskBinding` is required so every reader states it: pass
|
|
64
|
+
* `!lifecycle.legacyMode`. Under `approval_lifecycle: { mode: session }`
|
|
65
|
+
* (operator decision on task 5018c0c4) the binding is NOT applied: the
|
|
66
|
+
* documented contract of that mode is one approval for the whole
|
|
67
|
+
* session, bounded only by `max_age`, so a bound or unbound session
|
|
68
|
+
* marker counts for every task there. The writer still records
|
|
69
|
+
* `claimTaskId` in every mode, so switching away from `mode: session`
|
|
70
|
+
* takes effect on the next check without a re-approve.
|
|
71
|
+
*/
|
|
72
|
+
export interface CheckSessionApprovalMarkerOptions extends CheckApprovalMarkerOptions {
|
|
73
|
+
/** Apply the claimed-task binding (false under `mode: session`). */
|
|
74
|
+
taskBinding: boolean;
|
|
75
|
+
}
|
|
76
|
+
export declare function checkSessionApprovalMarker(generatedDir: string, sessionId: string, opts: CheckSessionApprovalMarkerOptions): SessionMarkerCheck;
|
|
35
77
|
export interface OperatorMarkerApproval {
|
|
36
78
|
matched: boolean;
|
|
37
79
|
/** Which marker satisfied the gate; null when neither matched. */
|
|
@@ -61,6 +103,14 @@ export interface OperatorMarkerApproval {
|
|
|
61
103
|
* attempt distinctly from the routine "not approved yet" case.
|
|
62
104
|
*/
|
|
63
105
|
forged: boolean;
|
|
106
|
+
/**
|
|
107
|
+
* True when the session marker was refused only because of its task
|
|
108
|
+
* binding (`SessionMarkerCheck.bindingRefused`, task 5018c0c4): it
|
|
109
|
+
* belongs to another task, or predates the binding. Always false when
|
|
110
|
+
* `matched` is true. Lets the PreToolUse hooks say "the approval
|
|
111
|
+
* belongs to another task" instead of "no approval marker".
|
|
112
|
+
*/
|
|
113
|
+
sessionBindingRefused: boolean;
|
|
64
114
|
}
|
|
65
115
|
/**
|
|
66
116
|
* Shared marker resolution for the Claude and Codex understanding-gate
|
|
@@ -24,11 +24,15 @@ import { APPROVAL_MARKER_DIRNAME, checkApprovalMarker, } from "./markers.js";
|
|
|
24
24
|
// (different surface, different acceptance criteria). Without per-task
|
|
25
25
|
// markers a multi-task session re-uses the first task's approval for
|
|
26
26
|
// every subsequent task. The expire_on_tool_match PostToolUse hook
|
|
27
|
-
//
|
|
28
|
-
//
|
|
29
|
-
//
|
|
30
|
-
//
|
|
31
|
-
// marker
|
|
27
|
+
// deletes the session marker on a listed completion boundary (a
|
|
28
|
+
// `task_finish` to done, `task_abandon`, `task_merge`, ...), but if
|
|
29
|
+
// delivery is unreliable (e.g. PostToolUse skipped for an MCP tool) or
|
|
30
|
+
// the task completes outside the session (a merge in the UI), the file
|
|
31
|
+
// persists. A task-keyed marker side-steps that delivery concern because
|
|
32
|
+
// the next task's id is different even if the previous marker file
|
|
33
|
+
// outlives its scope; outside `mode: session` the session marker gets
|
|
34
|
+
// the same property from its signed task binding
|
|
35
|
+
// (`checkSessionApprovalMarker`, task 5018c0c4).
|
|
32
36
|
export const APPROVAL_MARKER_TASK_PREFIX = "task-";
|
|
33
37
|
/**
|
|
34
38
|
* Reject taskIds that would escape the approvals/ namespace via path
|
|
@@ -115,6 +119,36 @@ export function checkActiveClaimApprovalMarker(generatedDir, opts = {}) {
|
|
|
115
119
|
forged: check.forged,
|
|
116
120
|
};
|
|
117
121
|
}
|
|
122
|
+
function describeClaim(taskId) {
|
|
123
|
+
return taskId === null ? "no claimed task" : `task ${taskId}`;
|
|
124
|
+
}
|
|
125
|
+
export function checkSessionApprovalMarker(generatedDir, sessionId, opts) {
|
|
126
|
+
const { taskBinding, ...ageOpts } = opts;
|
|
127
|
+
const check = checkApprovalMarker(generatedDir, sessionId, ageOpts);
|
|
128
|
+
if (check.marker === null || !taskBinding) {
|
|
129
|
+
// Absent, unreadable, forged, or a malformed session id: nothing to
|
|
130
|
+
// bind, the plain verdict stands. Same under `mode: session`, where
|
|
131
|
+
// the binding does not apply.
|
|
132
|
+
return { ...check, bindingRefused: false };
|
|
133
|
+
}
|
|
134
|
+
const refused = (detail) => ({
|
|
135
|
+
matched: false,
|
|
136
|
+
detail,
|
|
137
|
+
marker: null,
|
|
138
|
+
expired: false,
|
|
139
|
+
forged: false,
|
|
140
|
+
bindingRefused: true,
|
|
141
|
+
});
|
|
142
|
+
if (!Object.prototype.hasOwnProperty.call(check.marker, "claimTaskId")) {
|
|
143
|
+
return refused(`session approval marker for ${sessionId} carries no task binding (written by a harness release before approvals were bound to the claimed task); approve once more to bind it to ${describeClaim(readActiveClaim(generatedDir))}`);
|
|
144
|
+
}
|
|
145
|
+
const boundTo = check.marker.claimTaskId ?? null;
|
|
146
|
+
const current = readActiveClaim(generatedDir);
|
|
147
|
+
if (boundTo !== current) {
|
|
148
|
+
return refused(`session approval for ${sessionId} belongs to another task: it was granted for ${describeClaim(boundTo)}, the active claim is now ${describeClaim(current)}; approve the Understanding Report for this task`);
|
|
149
|
+
}
|
|
150
|
+
return { ...check, bindingRefused: false };
|
|
151
|
+
}
|
|
118
152
|
/**
|
|
119
153
|
* Shared marker resolution for the Claude and Codex understanding-gate
|
|
120
154
|
* PreToolUse hooks (task e7c2ec3c): parse `approval_lifecycle` from the
|
|
@@ -139,9 +173,13 @@ export function checkOperatorApprovalMarkers(generatedDir, sessionId, packConfig
|
|
|
139
173
|
taskCheckDetail: taskMarker.detail,
|
|
140
174
|
expired: false,
|
|
141
175
|
forged: false,
|
|
176
|
+
sessionBindingRefused: false,
|
|
142
177
|
};
|
|
143
178
|
}
|
|
144
|
-
const sessionMarker =
|
|
179
|
+
const sessionMarker = checkSessionApprovalMarker(generatedDir, sessionId, {
|
|
180
|
+
...ageOpts,
|
|
181
|
+
taskBinding: !lifecycle.legacyMode,
|
|
182
|
+
});
|
|
145
183
|
if (sessionMarker.matched) {
|
|
146
184
|
return {
|
|
147
185
|
matched: true,
|
|
@@ -150,6 +188,7 @@ export function checkOperatorApprovalMarkers(generatedDir, sessionId, packConfig
|
|
|
150
188
|
taskCheckDetail: taskMarker.detail,
|
|
151
189
|
expired: false,
|
|
152
190
|
forged: false,
|
|
191
|
+
sessionBindingRefused: false,
|
|
153
192
|
};
|
|
154
193
|
}
|
|
155
194
|
return {
|
|
@@ -171,6 +210,7 @@ export function checkOperatorApprovalMarkers(generatedDir, sessionId, packConfig
|
|
|
171
210
|
// the caller even though the overall result is (correctly) unmatched
|
|
172
211
|
// — mirrors the `expired` OR-merge above.
|
|
173
212
|
forged: taskMarker.forged || sessionMarker.forged,
|
|
213
|
+
sessionBindingRefused: sessionMarker.bindingRefused,
|
|
174
214
|
};
|
|
175
215
|
}
|
|
176
216
|
/** Clear a specific task-scoped marker. Used by the post-tool-use hook. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-markers.js","sourceRoot":"","sources":["../../../../src/policy-packs/builtin/understanding-before-execution/task-markers.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,0EAA0E;AAC1E,+DAA+D;AAC/D,uEAAuE;AACvE,kCAAkC;AAElC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EACL,uBAAuB,EAEvB,mBAAmB,GAGpB,MAAM,cAAc,CAAC;AAEtB,qEAAqE;AACrE,oEAAoE;AACpE,kEAAkE;AAClE,mEAAmE;AACnE,uEAAuE;AACvE,iEAAiE;AACjE,uEAAuE;AACvE,6BAA6B;AAC7B,EAAE;AACF,yEAAyE;AACzE,mEAAmE;AACnE,uEAAuE;AACvE,qEAAqE;AACrE,mEAAmE;AACnE,uEAAuE;AACvE,sEAAsE;AACtE,
|
|
1
|
+
{"version":3,"file":"task-markers.js","sourceRoot":"","sources":["../../../../src/policy-packs/builtin/understanding-before-execution/task-markers.ts"],"names":[],"mappings":"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"}
|
|
@@ -249,7 +249,7 @@ export const configSchema = z
|
|
|
249
249
|
// check on PreToolUse (`checkApprovalMarker`'s `max_age`
|
|
250
250
|
// comparison), not by a PostToolUse hook — `max_age` still
|
|
251
251
|
// applies under `mode: session`, which only opts out of the
|
|
252
|
-
// PostToolUse boundary hooks.
|
|
252
|
+
// PostToolUse boundary hooks and the session marker's task binding.
|
|
253
253
|
max_age: z.string().min(1).optional(),
|
|
254
254
|
})
|
|
255
255
|
.strict()
|
|
@@ -698,8 +698,9 @@ function buildHooks(runtime, pack, mode, opts = {}) {
|
|
|
698
698
|
// PostToolUse marker-expiry (task a1348c89, widened by task
|
|
699
699
|
// bea04a03). Same boundary-tool list as the Claude hook below
|
|
700
700
|
// (resolveExpireOnToolMatch) so Codex expires on the identical
|
|
701
|
-
//
|
|
702
|
-
// pull_requests_merge / tasks_transition
|
|
701
|
+
// configured set (agent-tasks task_finish / task_abandon /
|
|
702
|
+
// task_merge / pull_requests_merge / tasks_transition in the
|
|
703
|
+
// scaffolds), but a DIFFERENT
|
|
703
704
|
// `match` builder (`codexPostToolUseMatchPattern`, not
|
|
704
705
|
// `postToolUseMatchPattern`): see that function's own doc comment
|
|
705
706
|
// for why the Claude builder's anchored regex form silently
|
|
@@ -728,7 +729,7 @@ function buildHooks(runtime, pack, mode, opts = {}) {
|
|
|
728
729
|
command: wrap(COMMAND_POST_TOOL_USE_CODEX),
|
|
729
730
|
blocking: false,
|
|
730
731
|
budget_ms: 2000,
|
|
731
|
-
description: "Codex adapter: expire the approval marker AND the persisted report after a task-completion boundary tool
|
|
732
|
+
description: "Codex adapter: expire the approval marker AND the persisted report after a task-completion boundary tool listed in approval_lifecycle.expire_on_tool_match (scaffolds: agent-tasks task_finish / task_abandon / task_merge / pull_requests_merge / tasks_transition; a task_finish that lands in review keeps the approval) or an expire_on_bash_match shell command. Forces a fresh Understanding Report on the next task.",
|
|
732
733
|
};
|
|
733
734
|
return [hook];
|
|
734
735
|
})(),
|
|
@@ -849,8 +850,11 @@ function buildHooks(runtime, pack, mode, opts = {}) {
|
|
|
849
850
|
// configured task-boundary tools, and (task bea04a03) on a Bash call
|
|
850
851
|
// when `approval_lifecycle.expire_on_bash_match` carries at least one
|
|
851
852
|
// pattern, and deletes the approval marker so the next Edit / Write /
|
|
852
|
-
// Bash forces a fresh Understanding Report.
|
|
853
|
-
//
|
|
853
|
+
// Bash forces a fresh Understanding Report. The runtime tool list is
|
|
854
|
+
// the configured expire_on_tool_match (scaffolds: agent-tasks
|
|
855
|
+
// task_finish / task_abandon / task_merge / pull_requests_merge /
|
|
856
|
+
// tasks_transition); DEFAULT_BOUNDARY_TOOL_NAMES only shapes the
|
|
857
|
+
// emitted matcher when no list is configured.
|
|
854
858
|
// Operators on other task systems override the list via
|
|
855
859
|
// config.approval_lifecycle.expire_on_tool_match; setting
|
|
856
860
|
// `approval_lifecycle: { mode: session }` opts out entirely and
|
|
@@ -880,7 +884,7 @@ function buildHooks(runtime, pack, mode, opts = {}) {
|
|
|
880
884
|
command: wrap(POST_TOOL_USE_COMMAND_CLAUDE),
|
|
881
885
|
blocking: false,
|
|
882
886
|
budget_ms: 2000,
|
|
883
|
-
description: "Expire the approval marker AND the persisted report after a task-completion boundary tool
|
|
887
|
+
description: "Expire the approval marker AND the persisted report after a task-completion boundary tool listed in approval_lifecycle.expire_on_tool_match (scaffolds: agent-tasks task_finish / task_abandon / task_merge / pull_requests_merge / tasks_transition; a task_finish that lands in review keeps the approval) or an expire_on_bash_match Bash command. Forces a fresh Understanding Report on the next task.",
|
|
884
888
|
};
|
|
885
889
|
return [hook];
|
|
886
890
|
})(),
|
|
@@ -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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"}
|