@lannguyensi/harness 0.56.0 → 0.58.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 (126) hide show
  1. package/CHANGELOG.md +186 -0
  2. package/README.md +1 -1
  3. package/dist/cli/apply/apply.js +4 -3
  4. package/dist/cli/apply/apply.js.map +1 -1
  5. package/dist/cli/apply/generate-codex-config.js +3 -3
  6. package/dist/cli/apply/generate-codex-config.js.map +1 -1
  7. package/dist/cli/apply/generate-memory-index.js +20 -10
  8. package/dist/cli/apply/generate-memory-index.js.map +1 -1
  9. package/dist/cli/apply/generate-settings.d.ts +7 -0
  10. package/dist/cli/apply/generate-settings.js +10 -1
  11. package/dist/cli/apply/generate-settings.js.map +1 -1
  12. package/dist/cli/approve/understanding.d.ts +4 -4
  13. package/dist/cli/doctor/format.js +68 -2
  14. package/dist/cli/doctor/format.js.map +1 -1
  15. package/dist/cli/doctor/index.d.ts +6 -0
  16. package/dist/cli/doctor/index.js +214 -28
  17. package/dist/cli/doctor/index.js.map +1 -1
  18. package/dist/cli/doctor/session-start-preflight-setup-version.d.ts +83 -0
  19. package/dist/cli/doctor/session-start-preflight-setup-version.js +114 -0
  20. package/dist/cli/doctor/session-start-preflight-setup-version.js.map +1 -0
  21. package/dist/cli/doctor/types.d.ts +35 -4
  22. package/dist/cli/doctor/types.js +2 -1
  23. package/dist/cli/doctor/types.js.map +1 -1
  24. package/dist/cli/doctor/ug-delegations.js +9 -0
  25. package/dist/cli/doctor/ug-delegations.js.map +1 -1
  26. package/dist/cli/explain-policy.d.ts +67 -0
  27. package/dist/cli/explain-policy.js +140 -3
  28. package/dist/cli/explain-policy.js.map +1 -1
  29. package/dist/cli/gc/index.js +28 -14
  30. package/dist/cli/gc/index.js.map +1 -1
  31. package/dist/cli/index.d.ts +1 -0
  32. package/dist/cli/index.js +10 -7
  33. package/dist/cli/index.js.map +1 -1
  34. package/dist/cli/init/composer.js +4 -3
  35. package/dist/cli/init/composer.js.map +1 -1
  36. package/dist/cli/init/dependencies.js +15 -9
  37. package/dist/cli/init/dependencies.js.map +1 -1
  38. package/dist/cli/init/templates.d.ts +1 -0
  39. package/dist/cli/init/templates.js +30 -4
  40. package/dist/cli/init/templates.js.map +1 -1
  41. package/dist/cli/list.js +19 -0
  42. package/dist/cli/list.js.map +1 -1
  43. package/dist/cli/loader.js +16 -1
  44. package/dist/cli/loader.js.map +1 -1
  45. package/dist/cli/pack/hook-bootstrap.js +2 -1
  46. package/dist/cli/pack/hook-bootstrap.js.map +1 -1
  47. package/dist/cli/pack/hook-codex-user-prompt-submit.d.ts +0 -32
  48. package/dist/cli/pack/hook-codex-user-prompt-submit.js +11 -118
  49. package/dist/cli/pack/hook-codex-user-prompt-submit.js.map +1 -1
  50. package/dist/cli/pack/hook-pre-tool-use.js +34 -7
  51. package/dist/cli/pack/hook-pre-tool-use.js.map +1 -1
  52. package/dist/cli/pack/hook-solution-acceptance.d.ts +55 -0
  53. package/dist/cli/pack/hook-solution-acceptance.js +222 -16
  54. package/dist/cli/pack/hook-solution-acceptance.js.map +1 -1
  55. package/dist/cli/pack/hook-stay-in-scope.d.ts +5 -26
  56. package/dist/cli/pack/hook-stay-in-scope.js +62 -274
  57. package/dist/cli/pack/hook-stay-in-scope.js.map +1 -1
  58. package/dist/cli/pack/hook-track-active-claim.d.ts +1 -0
  59. package/dist/cli/pack/hook-track-active-claim.js +107 -43
  60. package/dist/cli/pack/hook-track-active-claim.js.map +1 -1
  61. package/dist/cli/session-start/index.d.ts +32 -1
  62. package/dist/cli/session-start/index.js +142 -12
  63. package/dist/cli/session-start/index.js.map +1 -1
  64. package/dist/cli/validate/checks.d.ts +0 -2
  65. package/dist/cli/validate/checks.js +30 -30
  66. package/dist/cli/validate/checks.js.map +1 -1
  67. package/dist/io/harness-lock.js +11 -1
  68. package/dist/io/harness-lock.js.map +1 -1
  69. package/dist/io/lock.d.ts +26 -0
  70. package/dist/io/lock.js +25 -0
  71. package/dist/io/lock.js.map +1 -1
  72. package/dist/io/project-name.d.ts +115 -0
  73. package/dist/io/project-name.js +158 -0
  74. package/dist/io/project-name.js.map +1 -0
  75. package/dist/io/read-json-dir-entries.js +10 -0
  76. package/dist/io/read-json-dir-entries.js.map +1 -1
  77. package/dist/io/version-compare.d.ts +59 -0
  78. package/dist/io/version-compare.js +67 -0
  79. package/dist/io/version-compare.js.map +1 -1
  80. package/dist/policy-packs/builtin/solution-acceptance-reconnect.d.ts +50 -0
  81. package/dist/policy-packs/builtin/solution-acceptance-reconnect.js +151 -0
  82. package/dist/policy-packs/builtin/solution-acceptance-reconnect.js.map +1 -0
  83. package/dist/policy-packs/builtin/solution-acceptance-runtime.d.ts +43 -4
  84. package/dist/policy-packs/builtin/solution-acceptance-runtime.js +43 -39
  85. package/dist/policy-packs/builtin/solution-acceptance-runtime.js.map +1 -1
  86. package/dist/policy-packs/builtin/solution-acceptance.js +4 -2
  87. package/dist/policy-packs/builtin/solution-acceptance.js.map +1 -1
  88. package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js +15 -0
  89. package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js.map +1 -1
  90. package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.js +5 -7
  91. package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.js.map +1 -1
  92. package/dist/policy-packs/builtin/understanding-before-execution/markers.js +23 -0
  93. package/dist/policy-packs/builtin/understanding-before-execution/markers.js.map +1 -1
  94. package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js +8 -17
  95. package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js.map +1 -1
  96. package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.d.ts +129 -0
  97. package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.js +166 -0
  98. package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.js.map +1 -0
  99. package/dist/policy-packs/builtin/understanding-before-execution.d.ts +129 -0
  100. package/dist/policy-packs/builtin/understanding-before-execution.js +44 -57
  101. package/dist/policy-packs/builtin/understanding-before-execution.js.map +1 -1
  102. package/dist/policy-packs/version-check.d.ts +8 -1
  103. package/dist/policy-packs/version-check.js +10 -6
  104. package/dist/policy-packs/version-check.js.map +1 -1
  105. package/dist/probes/memory.d.ts +34 -0
  106. package/dist/probes/memory.js +87 -14
  107. package/dist/probes/memory.js.map +1 -1
  108. package/dist/runtime/git-context.d.ts +125 -0
  109. package/dist/runtime/git-context.js +164 -1
  110. package/dist/runtime/git-context.js.map +1 -1
  111. package/dist/runtime/index.d.ts +1 -1
  112. package/dist/runtime/index.js +1 -1
  113. package/dist/runtime/index.js.map +1 -1
  114. package/dist/runtime/task-providers/agent-tasks.d.ts +90 -0
  115. package/dist/runtime/task-providers/agent-tasks.js +231 -0
  116. package/dist/runtime/task-providers/agent-tasks.js.map +1 -0
  117. package/dist/runtime/workflow-policies.d.ts +1 -0
  118. package/dist/runtime/workflow-policies.js +8 -8
  119. package/dist/runtime/workflow-policies.js.map +1 -1
  120. package/dist/schema/index.d.ts +19 -0
  121. package/dist/schema/index.js +5 -0
  122. package/dist/schema/index.js.map +1 -1
  123. package/dist/schema/session-start-preflight.d.ts +10 -0
  124. package/dist/schema/session-start-preflight.js +106 -0
  125. package/dist/schema/session-start-preflight.js.map +1 -0
  126. package/package.json +7 -2
@@ -1 +1 @@
1
- {"version":3,"file":"hook-solution-acceptance.js","sourceRoot":"","sources":["../../../src/cli/pack/hook-solution-acceptance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook-solution-acceptance.js","sourceRoot":"","sources":["../../../src/cli/pack/hook-solution-acceptance.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,11 @@
1
+ import { type StayInScopeMatchedRule } from "../../policy-packs/builtin/understanding-before-execution/stay-in-scope-config.js";
2
+ import type { Manifest } from "../../schema/index.js";
1
3
  import type { LoaderOptions } from "../loader.js";
2
- export declare const TOOL_NAME_TASK_CREATE = "mcp__agent-tasks__task_create";
3
- export declare const TOOL_NAME_TASKS_CREATE = "mcp__agent-tasks__tasks_create";
4
- export declare const TOOL_NAME_TASKS_UPDATE = "mcp__agent-tasks__tasks_update";
5
- export declare const STAY_IN_SCOPE_TOOLS: readonly string[];
6
4
  export declare const STAY_IN_SCOPE_DISABLED_ENV = "STAY_IN_SCOPE_DISABLED";
7
5
  export declare const STAY_IN_SCOPE_LOG_ENV = "STAY_IN_SCOPE_LOG";
8
6
  export declare const REMINDERS_SUBDIR = "reminders";
9
7
  export declare const STAY_IN_SCOPE_LOG_BASENAME = "stay-in-scope.log";
10
- export type MatchedRule = "label" | "hintergrund-marker" | "explicit-marker" | "none";
8
+ export type MatchedRule = StayInScopeMatchedRule;
11
9
  export interface StayInScopeAuditRecord {
12
10
  ts: string;
13
11
  taskId: string | null;
@@ -18,41 +16,22 @@ export interface StayInScopeAuditRecord {
18
16
  matchedRule: MatchedRule;
19
17
  }
20
18
  export interface PackHookStayInScopeOptions extends LoaderOptions {
19
+ pack?: string;
21
20
  generatedDir?: string;
22
- /**
23
- * Override the audit log path. Defaults to
24
- * `resolveHomeDir().path/reminders/stay-in-scope.log`, with
25
- * `STAY_IN_SCOPE_LOG` env taking precedence over the resolved default
26
- * (but losing to an explicit option here, so tests can pin the path).
27
- */
28
21
  logPath?: string;
29
22
  stdin?: NodeJS.ReadableStream;
30
23
  stderr?: NodeJS.WritableStream;
31
- /** Override "now" for deterministic test output. */
32
24
  now?: Date;
33
- /** Override env lookup (tests). */
34
25
  env?: NodeJS.ProcessEnv;
26
+ manifest?: Manifest;
35
27
  }
36
28
  export interface PackHookStayInScopeResult {
37
29
  exitCode: number;
38
- /** Did the just-completed tool's payload match the reminder rules? */
39
30
  matched: boolean;
40
- /** Which match path fired ("none" when matched=false). */
41
31
  matchedRule: MatchedRule;
42
- /** Was the audit row appended successfully? */
43
32
  logged: boolean;
44
- /** Was the second-order heuristic positive? */
45
33
  secondOrder: boolean;
46
- /** Resolved audit log path, or null if logging was skipped/failed. */
47
34
  logPath: string | null;
48
- /** Diagnostic line emitted to stderr. */
49
35
  diagnostic: string;
50
36
  }
51
- export interface MatchEvaluation {
52
- matched: boolean;
53
- matchedRule: MatchedRule;
54
- secondOrder: boolean;
55
- }
56
- export declare function evaluateMatch(labels: readonly string[], description: string): MatchEvaluation;
57
37
  export declare function runPackHookStayInScopeCli(opts?: PackHookStayInScopeOptions): Promise<PackHookStayInScopeResult>;
58
- export declare function extractParentPrUrl(description: string): string | null;
@@ -1,237 +1,55 @@
1
- // `harness pack hook stay-in-scope` — soft reminder on review-derived task
2
- // creation.
3
- //
4
- // PostToolUse hook for the understanding-before-execution pack. Receives
5
- // the Claude Code event JSON on stdin and, when the just-completed tool
6
- // was an agent-tasks task-create / task-update verb AND the payload looks
7
- // like a review-derived follow-up, emits a single stderr reminder line +
8
- // appends one JSONL audit row.
9
- //
10
- // Why a soft reminder and not a hard block:
11
- // - PostToolUse cannot block by construction (the tool already ran).
12
- // - The rule being enforced ("small reviewer findings stay inline in
13
- // the same PR; follow-up tasks are for scope-out only") is
14
- // judgment-shaped, not a syntactic invariant. Hard-blocking would
15
- // either over-fire on legitimate trigger-bound scope-outs or accept
16
- // trivial self-attestation ("scope-out: yes") that erodes the rule.
17
- // - The audit log gives a 2-week dogfood window: count how often the
18
- // reminder fires vs. how often those tasks get abandoned. That
19
- // ratio is the signal for whether to escalate to a hard gate.
20
- //
21
- // Match criteria (any one is sufficient):
22
- // 1. `tool_input.labels` contains a token matching
23
- // /(from-review|followup|reviewer-finding|review-finding)/i
24
- // 2. `tool_input.description` contains a "follow-up from review"
25
- // textual marker (`Vorgaenger-PR:` / `Vorgänger-PR:` /
26
- // `Review-Subagent`, or `## Hintergrund` ... `Review` within 200
27
- // chars).
28
- //
29
- // Second-order heuristic: when both a review-shaped label AND a
30
- // `Vorgaenger-PR.*#<n>` reference are present, the new task is itself
31
- // a follow-up that traces back to another follow-up. The reminder
32
- // upgrades to `[stay-in-scope: SECOND-ORDER]` since user-memory
33
- // `feedback_reviewer_findings_stay_in_scope` explicitly forbids
34
- // follow-ups spawning further follow-ups. Heuristic, not exact —
35
- // resolving the parent task and checking its labels would need an
36
- // agent-tasks roundtrip, which is out of scope for v1.
37
- //
38
- // Failure mode mirrors the other pack hooks: every error path resolves
39
- // to no-op + stderr log. A reminder that can't write its audit log
40
- // must NEVER escalate into a hook failure that disrupts the agent's
41
- // turn — the reminder is informational, the tool already ran.
42
- //
43
- // Disable knob: `STAY_IN_SCOPE_DISABLED=1` short-circuits to no-op AFTER
44
- // pause-sentinel evaluation, so an operator who pauses harness still
45
- // sees the standard pause notice instead of stay-in-scope's silence.
46
- //
47
- // Codex parity (task cf4cdc93): this hook is now also wired on the
48
- // Codex adapter (`understanding-before-execution.ts`, `runtime ===
49
- // "codex"` branch), reusing this exact command — no Codex-specific CLI
50
- // verb is needed. The tool-name watch-list check is alias-aware
51
- // (`toolNameMatchesAny`, not a raw `.includes`): a Codex session can
52
- // emit an MCP tool name in a variant form for the identical tool
53
- // (server hyphen/underscore swap, the `mcp__server__.tool` dotted
54
- // form), and the emitted Codex matcher is alias-EXPANDED at
55
- // `harness apply` time (`expandCodexHookMatchPattern`) so the
56
- // dispatcher DOES invoke this hook for a variant — a raw membership
57
- // check here would then silently miss it, the exact bug class task
58
- // a1348c89 fixed once already for the marker-expiry PostToolUse hook.
59
- //
60
- // Review finding on task cf4cdc93 (empirically confirmed, MEDIUM): the
61
- // event envelope's field NAMES also vary across the tolerated Codex
62
- // synonyms — `tool` as well as `tool_name`, `raw_input` as well as
63
- // `tool_input` (`hook-codex-post-tool-use.ts`'s own doc comment and
64
- // `docs/policy-packs/understanding-before-execution.md`'s wire-format
65
- // block both document this). A payload shaped `{ tool, raw_input }`
66
- // used to silently no-op here. Now mirrored via the same shared
67
- // helpers (`hook-bootstrap.ts`'s `pickString` / `resolveToolInput`) the
68
- // sibling `codex-post-tool-use` hook already used. This does NOT touch
69
- // the `tool_response` taskId fallback below (a Claude-side convenience
70
- // for the create-call shape where the task UUID is only known after
71
- // the server roundtrip) — the Codex envelope may not carry
72
- // `tool_response` at all, and that fallback correctly stays a no-op in
73
- // that case rather than being folded into the tool_input/raw_input
74
- // resolution.
1
+ // `harness pack hook stay-in-scope` is an optional, informational
2
+ // PostToolUse integration. It reads its complete behavior from the current
3
+ // pack configuration so a stale generated hook safely no-ops after disable.
75
4
  import * as fs from "node:fs";
76
5
  import * as path from "node:path";
77
6
  import { resolveHomeDir } from "../../runtime/home-dir.js";
78
7
  import { toolNameMatchesAny } from "../../policy-packs/builtin/understanding-before-execution-runtime.js";
79
- import { checkHookPause, pickString, readStdin, resolveToolInput, } from "./hook-bootstrap.js";
80
- export const TOOL_NAME_TASK_CREATE = "mcp__agent-tasks__task_create";
81
- export const TOOL_NAME_TASKS_CREATE = "mcp__agent-tasks__tasks_create";
82
- export const TOOL_NAME_TASKS_UPDATE = "mcp__agent-tasks__tasks_update";
83
- export const STAY_IN_SCOPE_TOOLS = [
84
- TOOL_NAME_TASK_CREATE,
85
- TOOL_NAME_TASKS_CREATE,
86
- TOOL_NAME_TASKS_UPDATE,
87
- ];
8
+ import { evaluateStayInScopeMatch, extractConfiguredParentUrl, resolveStayInScopeConfig, } from "../../policy-packs/builtin/understanding-before-execution/stay-in-scope-config.js";
9
+ import { checkHookPause, loadManifestOrInjected, pickString, readStdin, resolveToolInput, } from "./hook-bootstrap.js";
10
+ const PACK_NAME = "understanding-before-execution";
88
11
  export const STAY_IN_SCOPE_DISABLED_ENV = "STAY_IN_SCOPE_DISABLED";
89
12
  export const STAY_IN_SCOPE_LOG_ENV = "STAY_IN_SCOPE_LOG";
90
13
  export const REMINDERS_SUBDIR = "reminders";
91
14
  export const STAY_IN_SCOPE_LOG_BASENAME = "stay-in-scope.log";
92
- const LABEL_REVIEW_REGEX = /(from-review|followup|reviewer-finding|review-finding)/i;
93
- // Inline description markers, checked case-sensitively for the
94
- // literal source (Vorgänger-PR) and accent-stripped alternative
95
- // (Vorgaenger-PR). `Review-Subagent` matches both the German task
96
- // template ("Aus Review-Subagent ...") and English variations.
97
- const DESCRIPTION_MARKERS = [
98
- "Vorgänger-PR:",
99
- "Vorgaenger-PR:",
100
- "Review-Subagent",
101
- ];
102
- // "## Hintergrund" followed by "Review" within 200 characters catches
103
- // the existing German task body convention without insisting on the
104
- // explicit marker keywords above. The 200-char window keeps it tight
105
- // enough that a totally unrelated body that happens to use both words
106
- // far apart doesn't trigger.
107
- const HINTERGRUND_REVIEW_WINDOW = 200;
108
- // Second-order heuristic: a follow-up whose body references a
109
- // parent PR by number AND carries review-shaped labels is itself
110
- // likely a follow-up-of-a-follow-up. The regex is intentionally loose
111
- // (Vorgänger-PR / Vorgaenger-PR / `parent PR` / Parent-PR, optional
112
- // punctuation) so common author variants all match.
113
- const PARENT_PR_REGEX = /(?:Vorg(?:ä|ae)nger-PR|parent[\s-]+PR)\s*[:#-]?\s*#?\d+/i;
114
15
  function noop(diagnostic, stderr, partial = {}) {
115
16
  stderr.write(`${diagnostic}\n`);
116
- return {
117
- exitCode: 0,
118
- matched: false,
119
- matchedRule: "none",
120
- logged: false,
121
- secondOrder: false,
122
- logPath: null,
123
- diagnostic,
124
- ...partial,
125
- };
17
+ return { exitCode: 0, matched: false, matchedRule: "none", logged: false, secondOrder: false, logPath: null, diagnostic, ...partial };
18
+ }
19
+ function objectValue(input, key) {
20
+ return typeof input === "object" && input !== null && !Array.isArray(input)
21
+ ? input[key]
22
+ : undefined;
126
23
  }
127
24
  function extractLabels(toolInput) {
128
- if (typeof toolInput !== "object" ||
129
- toolInput === null ||
130
- Array.isArray(toolInput)) {
131
- return [];
132
- }
133
- const labels = toolInput["labels"];
134
- if (!Array.isArray(labels))
135
- return [];
136
- return labels.filter((v) => typeof v === "string");
25
+ const labels = objectValue(toolInput, "labels");
26
+ return Array.isArray(labels) ? labels.filter((value) => typeof value === "string") : [];
137
27
  }
138
28
  function extractDescription(toolInput) {
139
- if (typeof toolInput !== "object" ||
140
- toolInput === null ||
141
- Array.isArray(toolInput)) {
142
- return "";
143
- }
144
- const d = toolInput["description"];
145
- return typeof d === "string" ? d : "";
29
+ const description = objectValue(toolInput, "description");
30
+ return typeof description === "string" ? description : "";
146
31
  }
147
32
  function extractTitle(toolInput) {
148
- if (typeof toolInput !== "object" ||
149
- toolInput === null ||
150
- Array.isArray(toolInput)) {
151
- return null;
152
- }
153
- const t = toolInput["title"];
154
- return typeof t === "string" && t.length > 0 ? t : null;
33
+ const title = objectValue(toolInput, "title");
34
+ return typeof title === "string" && title.length > 0 ? title : null;
155
35
  }
156
- // Pull a taskId out of either the (resolved) tool input — tool_input,
157
- // with the raw_input Codex-shim fallback already applied by the caller
158
- // — for tasks_update, or the tool_response (the typical create-call
159
- // shape, where the task UUID is only known after the server
160
- // roundtrip). Returns null when neither surface carries one.
161
- //
162
- // `toolResponse` is read as-is, NOT resolved through the tool_input/
163
- // raw_input fallback: `tool_response` is a Claude Code convention (the
164
- // MCP call's return value) that the Codex PostToolUse envelope may not
165
- // carry at all (see `docs/policy-packs/understanding-before-execution.md`
166
- // "Adapter notes / Codex" — the documented Codex envelope names
167
- // `tool_response` nowhere). Folding it into the same resolution as the
168
- // tool_input/raw_input synonym pair would be wrong: a Codex event
169
- // simply has no equivalent field, so this half of the fallback
170
- // correctly stays a no-op there rather than being widened to "resolve
171
- // from something else".
172
36
  function extractTaskId(toolInput, toolResponse) {
173
- const fromInput = (() => {
174
- if (typeof toolInput !== "object" ||
175
- toolInput === null ||
176
- Array.isArray(toolInput)) {
177
- return null;
178
- }
179
- const tid = toolInput["taskId"];
180
- return typeof tid === "string" && tid.length > 0 ? tid : null;
181
- })();
182
- if (fromInput !== null)
183
- return fromInput;
184
- if (typeof toolResponse !== "object" ||
185
- toolResponse === null ||
186
- Array.isArray(toolResponse)) {
187
- return null;
188
- }
189
- const respObj = toolResponse;
190
- // The server response wraps the task under `task` for task_create and
191
- // task_finish, but at the top level for some bulk verbs. Probe both
192
- // shapes; fall back to null on miss.
193
- const wrapped = respObj["task"];
194
- if (typeof wrapped === "object" &&
195
- wrapped !== null &&
196
- !Array.isArray(wrapped)) {
197
- const tid = wrapped["id"];
198
- if (typeof tid === "string" && tid.length > 0)
199
- return tid;
200
- }
201
- const directId = respObj["id"];
37
+ const taskId = objectValue(toolInput, "taskId");
38
+ if (typeof taskId === "string" && taskId.length > 0)
39
+ return taskId;
40
+ const wrappedId = objectValue(objectValue(toolResponse, "task"), "id");
41
+ if (typeof wrappedId === "string" && wrappedId.length > 0)
42
+ return wrappedId;
43
+ const directId = objectValue(toolResponse, "id");
202
44
  return typeof directId === "string" && directId.length > 0 ? directId : null;
203
45
  }
204
- function hintergrundReviewMatch(description) {
205
- const idx = description.indexOf("## Hintergrund");
206
- if (idx === -1)
207
- return false;
208
- const window = description.slice(idx, idx + HINTERGRUND_REVIEW_WINDOW);
209
- return /Review/i.test(window);
210
- }
211
- export function evaluateMatch(labels, description) {
212
- const labelMatch = labels.some((l) => LABEL_REVIEW_REGEX.test(l));
213
- const explicitMarker = DESCRIPTION_MARKERS.some((m) => description.includes(m));
214
- const hintergrundMarker = !explicitMarker && hintergrundReviewMatch(description);
215
- let matchedRule = "none";
216
- if (labelMatch)
217
- matchedRule = "label";
218
- else if (explicitMarker)
219
- matchedRule = "explicit-marker";
220
- else if (hintergrundMarker)
221
- matchedRule = "hintergrund-marker";
222
- const matched = matchedRule !== "none";
223
- const secondOrder = labelMatch && PARENT_PR_REGEX.test(description);
224
- return { matched, matchedRule, secondOrder };
225
- }
226
46
  function resolveLogPath(opts, env) {
227
- if (typeof opts.logPath === "string" && opts.logPath.length > 0) {
47
+ if (typeof opts.logPath === "string" && opts.logPath.length > 0)
228
48
  return opts.logPath;
229
- }
230
- const fromEnv = env[STAY_IN_SCOPE_LOG_ENV];
231
- if (typeof fromEnv === "string" && fromEnv.length > 0) {
232
- return fromEnv;
233
- }
234
- const home = resolveHomeDir(opts.homeDir !== undefined ? { homeDir: opts.homeDir } : {});
49
+ const configured = env[STAY_IN_SCOPE_LOG_ENV];
50
+ if (typeof configured === "string" && configured.length > 0)
51
+ return configured;
52
+ const home = resolveHomeDir(opts.homeDir === undefined ? {} : { homeDir: opts.homeDir });
235
53
  return path.join(home.path, REMINDERS_SUBDIR, STAY_IN_SCOPE_LOG_BASENAME);
236
54
  }
237
55
  function appendAuditRow(logPath, record) {
@@ -240,99 +58,69 @@ function appendAuditRow(logPath, record) {
240
58
  fs.appendFileSync(logPath, `${JSON.stringify(record)}\n`, "utf8");
241
59
  return { ok: true };
242
60
  }
243
- catch (err) {
244
- return { ok: false, reason: err.message };
61
+ catch (error) {
62
+ return { ok: false, reason: error.message };
245
63
  }
246
64
  }
247
65
  export async function runPackHookStayInScopeCli(opts = {}) {
248
66
  const stdin = opts.stdin ?? process.stdin;
249
67
  const stderr = opts.stderr ?? process.stderr;
250
68
  const env = opts.env ?? process.env;
251
- const raw = await readStdin(stdin);
252
- let event = {};
69
+ let event;
253
70
  try {
254
- event = JSON.parse(raw.trim() || "{}");
71
+ const parsed = JSON.parse((await readStdin(stdin)).trim() || "{}");
72
+ if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
73
+ return noop("harness pack hook stay-in-scope: malformed event JSON, skipping", stderr);
74
+ }
75
+ event = parsed;
255
76
  }
256
77
  catch {
257
78
  return noop("harness pack hook stay-in-scope: malformed event JSON, skipping", stderr);
258
79
  }
259
- // Pause sentinel — operator pause silences this reminder so a debug
260
- // A/B-test doesn't fan out reminder noise the operator already knows
261
- // about.
262
80
  if (checkHookPause("stay-in-scope", stderr, opts, opts.generatedDir).paused) {
263
81
  return noop("harness paused; stay-in-scope skipping without evaluating.", stderr);
264
82
  }
265
- // Operator opt-out via env. Evaluated AFTER pause so a paused harness
266
- // still announces pause (the canonical operator-state signal) instead
267
- // of silently swallowing it.
268
83
  if (env[STAY_IN_SCOPE_DISABLED_ENV] === "1") {
269
84
  return noop(`harness pack hook stay-in-scope: ${STAY_IN_SCOPE_DISABLED_ENV}=1, skipping`, stderr);
270
85
  }
86
+ let manifest;
87
+ try {
88
+ ({ manifest } = loadManifestOrInjected(opts, opts.manifest));
89
+ }
90
+ catch (error) {
91
+ return noop(`harness pack hook stay-in-scope: manifest load failed (${error.message}), skipping`, stderr);
92
+ }
93
+ const declared = manifest.policy_packs.find((pack) => pack.name === (opts.pack ?? PACK_NAME));
94
+ const config = declared?.enabled ? resolveStayInScopeConfig(declared.config["stay_in_scope"]) : null;
95
+ if (config === null) {
96
+ return noop("harness pack hook stay-in-scope: integration absent, disabled, or invalid, skipping", stderr);
97
+ }
271
98
  const toolName = pickString(event.tool_name, event.tool) ?? "";
272
- if (toolName === "" || !toolNameMatchesAny(toolName, STAY_IN_SCOPE_TOOLS)) {
99
+ if (!toolNameMatchesAny(toolName, config.tools)) {
273
100
  return noop(`harness pack hook stay-in-scope: tool ${toolName || "(missing)"} not in watch list, skipping`, stderr);
274
101
  }
275
102
  const toolInput = resolveToolInput(event);
276
103
  const labels = extractLabels(toolInput);
277
104
  const description = extractDescription(toolInput);
278
- const evaluation = evaluateMatch(labels, description);
105
+ const evaluation = evaluateStayInScopeMatch(config, labels, description);
279
106
  if (!evaluation.matched) {
280
- return noop(`harness pack hook stay-in-scope: ${toolName} payload carries no review-shaped label or description marker, skipping`, stderr);
107
+ return noop(`harness pack hook stay-in-scope: ${toolName} payload carries no configured marker, skipping`, stderr);
281
108
  }
282
109
  const taskId = extractTaskId(toolInput, event.tool_response);
283
- const title = extractTitle(toolInput);
284
- const now = (opts.now ?? new Date()).toISOString();
285
110
  const record = {
286
- ts: now,
287
- taskId,
288
- title,
289
- labels,
290
- parentPrUrl: extractParentPrUrl(description),
291
- secondOrder: evaluation.secondOrder,
292
- matchedRule: evaluation.matchedRule,
111
+ ts: (opts.now ?? new Date()).toISOString(), taskId, title: extractTitle(toolInput), labels,
112
+ parentPrUrl: extractConfiguredParentUrl(config, description, evaluation.parentReference),
113
+ secondOrder: evaluation.secondOrder, matchedRule: evaluation.matchedRule,
293
114
  };
294
115
  const logPath = resolveLogPath(opts, env);
295
116
  const appendResult = appendAuditRow(logPath, record);
296
- const prefix = evaluation.secondOrder
297
- ? "[stay-in-scope: SECOND-ORDER]"
298
- : "[stay-in-scope]";
299
- const taskIdNote = taskId !== null ? ` task=${taskId}` : "";
300
- const secondOrderNote = evaluation.secondOrder
301
- ? " A follow-up of a follow-up: user-memory feedback_reviewer_findings_stay_in_scope forbids this — please fold this work into the immediate parent PR."
302
- : " War der Finding inline-fixbar im Parent-PR? Falls ja: task_abandon + Patch im Parent. (feedback_reviewer_findings_stay_in_scope)";
303
- const stderrLine = `${prefix} follow-up created from review context${taskIdNote}.${secondOrderNote}`;
304
- stderr.write(`${stderrLine}\n`);
305
- const logNote = appendResult.ok
306
- ? `; audit appended to ${logPath}`
307
- : `; audit append FAILED (${appendResult.reason})`;
117
+ const prefix = evaluation.secondOrder ? "[stay-in-scope: SECOND-ORDER]" : "[stay-in-scope]";
118
+ const taskIdNote = taskId === null ? "" : ` task=${taskId}`;
119
+ const configuredMessage = evaluation.secondOrder ? config.messages.secondOrder : config.messages.reminder;
120
+ stderr.write(`${prefix} follow-up created from review context${taskIdNote}. ${configuredMessage}\n`);
121
+ const logNote = appendResult.ok ? `; audit appended to ${logPath}` : `; audit append FAILED (${appendResult.reason})`;
308
122
  const diagnostic = `harness pack hook stay-in-scope: matched=${evaluation.matchedRule} secondOrder=${evaluation.secondOrder}${logNote}`;
309
123
  stderr.write(`${diagnostic}\n`);
310
- return {
311
- exitCode: 0,
312
- matched: true,
313
- matchedRule: evaluation.matchedRule,
314
- logged: appendResult.ok,
315
- secondOrder: evaluation.secondOrder,
316
- logPath: appendResult.ok ? logPath : null,
317
- diagnostic,
318
- };
319
- }
320
- // Best-effort GitHub PR URL extraction from a description body. Looks
321
- // for an https://github.com/<owner>/<repo>/pull/<n> URL first (most
322
- // reliable), then for `(Vorg(ä|ae)nger-PR|parent[\s-]+PR) ... #<n>`
323
- // shorthand which is what the German task bodies usually carry. Returns
324
- // null on miss.
325
- export function extractParentPrUrl(description) {
326
- const fullUrl = description.match(/https?:\/\/github\.com\/[\w.-]+\/[\w.-]+\/pull\/\d+/);
327
- if (fullUrl !== null)
328
- return fullUrl[0];
329
- // Shorthand: just the number, no repo. Return a `#<n>` token so the
330
- // audit log preserves the reference even though we can't resolve it
331
- // to a URL without an agent-tasks roundtrip (out of scope for v1).
332
- const shorthand = description.match(/(?:Vorg(?:ä|ae)nger-PR|parent[\s-]+PR)\s*[:#-]?\s*(#?\d+)/i);
333
- if (shorthand !== null && typeof shorthand[1] === "string") {
334
- return shorthand[1].startsWith("#") ? shorthand[1] : `#${shorthand[1]}`;
335
- }
336
- return null;
124
+ return { exitCode: 0, matched: true, matchedRule: evaluation.matchedRule, logged: appendResult.ok, secondOrder: evaluation.secondOrder, logPath: appendResult.ok ? logPath : null, diagnostic };
337
125
  }
338
126
  //# sourceMappingURL=hook-stay-in-scope.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hook-stay-in-scope.js","sourceRoot":"","sources":["../../../src/cli/pack/hook-stay-in-scope.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,YAAY;AACZ,EAAE;AACF,yEAAyE;AACzE,wEAAwE;AACxE,0EAA0E;AAC1E,yEAAyE;AACzE,+BAA+B;AAC/B,EAAE;AACF,4CAA4C;AAC5C,uEAAuE;AACvE,uEAAuE;AACvE,+DAA+D;AAC/D,sEAAsE;AACtE,wEAAwE;AACxE,wEAAwE;AACxE,uEAAuE;AACvE,mEAAmE;AACnE,kEAAkE;AAClE,EAAE;AACF,0CAA0C;AAC1C,qDAAqD;AACrD,iEAAiE;AACjE,mEAAmE;AACnE,4DAA4D;AAC5D,sEAAsE;AACtE,eAAe;AACf,EAAE;AACF,gEAAgE;AAChE,sEAAsE;AACtE,kEAAkE;AAClE,gEAAgE;AAChE,gEAAgE;AAChE,iEAAiE;AACjE,kEAAkE;AAClE,uDAAuD;AACvD,EAAE;AACF,uEAAuE;AACvE,mEAAmE;AACnE,oEAAoE;AACpE,8DAA8D;AAC9D,EAAE;AACF,yEAAyE;AACzE,qEAAqE;AACrE,qEAAqE;AACrE,EAAE;AACF,mEAAmE;AACnE,mEAAmE;AACnE,uEAAuE;AACvE,gEAAgE;AAChE,qEAAqE;AACrE,iEAAiE;AACjE,kEAAkE;AAClE,4DAA4D;AAC5D,8DAA8D;AAC9D,oEAAoE;AACpE,mEAAmE;AACnE,sEAAsE;AACtE,EAAE;AACF,uEAAuE;AACvE,oEAAoE;AACpE,mEAAmE;AACnE,oEAAoE;AACpE,sEAAsE;AACtE,oEAAoE;AACpE,gEAAgE;AAChE,wEAAwE;AACxE,uEAAuE;AACvE,uEAAuE;AACvE,oEAAoE;AACpE,2DAA2D;AAC3D,uEAAuE;AACvE,mEAAmE;AACnE,cAAc;AAEd,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sEAAsE,CAAC;AAC1G,OAAO,EACL,cAAc,EACd,UAAU,EACV,SAAS,EACT,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAG7B,MAAM,CAAC,MAAM,qBAAqB,GAAG,+BAA+B,CAAC;AACrE,MAAM,CAAC,MAAM,sBAAsB,GAAG,gCAAgC,CAAC;AACvE,MAAM,CAAC,MAAM,sBAAsB,GAAG,gCAAgC,CAAC;AAEvE,MAAM,CAAC,MAAM,mBAAmB,GAAsB;IACpD,qBAAqB;IACrB,sBAAsB;IACtB,sBAAsB;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,wBAAwB,CAAC;AACnE,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AACzD,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAC;AAC5C,MAAM,CAAC,MAAM,0BAA0B,GAAG,mBAAmB,CAAC;AAE9D,MAAM,kBAAkB,GACtB,yDAAyD,CAAC;AAE5D,+DAA+D;AAC/D,gEAAgE;AAChE,kEAAkE;AAClE,+DAA+D;AAC/D,MAAM,mBAAmB,GAAsB;IAC7C,eAAe;IACf,gBAAgB;IAChB,iBAAiB;CAClB,CAAC;AAEF,sEAAsE;AACtE,oEAAoE;AACpE,qEAAqE;AACrE,sEAAsE;AACtE,6BAA6B;AAC7B,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAEtC,8DAA8D;AAC9D,iEAAiE;AACjE,sEAAsE;AACtE,oEAAoE;AACpE,oDAAoD;AACpD,MAAM,eAAe,GAAG,0DAA0D,CAAC;AA4DnF,SAAS,IAAI,CACX,UAAkB,EAClB,MAA6B,EAC7B,UAA8C,EAAE;IAEhD,MAAM,CAAC,KAAK,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC;IAChC,OAAO;QACL,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,MAAM;QACnB,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,KAAK;QAClB,OAAO,EAAE,IAAI;QACb,UAAU;QACV,GAAG,OAAO;KACX,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,SAAkB;IACvC,IACE,OAAO,SAAS,KAAK,QAAQ;QAC7B,SAAS,KAAK,IAAI;QAClB,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EACxB,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,MAAM,GAAI,SAAqC,CAAC,QAAQ,CAAC,CAAC;IAChE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IACtC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAkB;IAC5C,IACE,OAAO,SAAS,KAAK,QAAQ;QAC7B,SAAS,KAAK,IAAI;QAClB,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EACxB,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,CAAC,GAAI,SAAqC,CAAC,aAAa,CAAC,CAAC;IAChE,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,YAAY,CAAC,SAAkB;IACtC,IACE,OAAO,SAAS,KAAK,QAAQ;QAC7B,SAAS,KAAK,IAAI;QAClB,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EACxB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,CAAC,GAAI,SAAqC,CAAC,OAAO,CAAC,CAAC;IAC1D,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1D,CAAC;AAED,sEAAsE;AACtE,uEAAuE;AACvE,oEAAoE;AACpE,4DAA4D;AAC5D,6DAA6D;AAC7D,EAAE;AACF,qEAAqE;AACrE,uEAAuE;AACvE,uEAAuE;AACvE,0EAA0E;AAC1E,gEAAgE;AAChE,uEAAuE;AACvE,kEAAkE;AAClE,+DAA+D;AAC/D,sEAAsE;AACtE,wBAAwB;AACxB,SAAS,aAAa,CAAC,SAAkB,EAAE,YAAqB;IAC9D,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE;QACtB,IACE,OAAO,SAAS,KAAK,QAAQ;YAC7B,SAAS,KAAK,IAAI;YAClB,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EACxB,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,GAAG,GAAI,SAAqC,CAAC,QAAQ,CAAC,CAAC;QAC7D,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAChE,CAAC,CAAC,EAAE,CAAC;IACL,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAEzC,IACE,OAAO,YAAY,KAAK,QAAQ;QAChC,YAAY,KAAK,IAAI;QACrB,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAC3B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,YAAuC,CAAC;IACxD,sEAAsE;IACtE,oEAAoE;IACpE,qCAAqC;IACrC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,IACE,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EACvB,CAAC;QACD,MAAM,GAAG,GAAI,OAAmC,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC;IAC5D,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/E,CAAC;AAED,SAAS,sBAAsB,CAAC,WAAmB;IACjD,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAClD,IAAI,GAAG,KAAK,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7B,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,yBAAyB,CAAC,CAAC;IACvE,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAQD,MAAM,UAAU,aAAa,CAC3B,MAAyB,EACzB,WAAmB;IAEnB,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,cAAc,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACpD,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CACxB,CAAC;IACF,MAAM,iBAAiB,GAAG,CAAC,cAAc,IAAI,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAEjF,IAAI,WAAW,GAAgB,MAAM,CAAC;IACtC,IAAI,UAAU;QAAE,WAAW,GAAG,OAAO,CAAC;SACjC,IAAI,cAAc;QAAE,WAAW,GAAG,iBAAiB,CAAC;SACpD,IAAI,iBAAiB;QAAE,WAAW,GAAG,oBAAoB,CAAC;IAE/D,MAAM,OAAO,GAAG,WAAW,KAAK,MAAM,CAAC;IACvC,MAAM,WAAW,GAAG,UAAU,IAAI,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAEpE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;AAC/C,CAAC;AAED,SAAS,cAAc,CACrB,IAAgC,EAChC,GAAsB;IAEtB,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,MAAM,OAAO,GAAG,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAC3C,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtD,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,MAAM,IAAI,GAAG,cAAc,CACzB,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAC5D,CAAC;IACF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,0BAA0B,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,cAAc,CACrB,OAAe,EACf,MAA8B;IAE9B,IAAI,CAAC;QACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAClE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IACtB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAG,GAAa,CAAC,OAAO,EAAE,CAAC;IACvD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,OAAmC,EAAE;IAErC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IAEpC,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,KAAK,GAAkB,EAAE,CAAC;IAC9B,IAAI,CAAC;QACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,CAAkB,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CACT,iEAAiE,EACjE,MAAM,CACP,CAAC;IACJ,CAAC;IAED,oEAAoE;IACpE,qEAAqE;IACrE,SAAS;IACT,IAAI,cAAc,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,CAAC;QAC5E,OAAO,IAAI,CACT,4DAA4D,EAC5D,MAAM,CACP,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,sEAAsE;IACtE,6BAA6B;IAC7B,IAAI,GAAG,CAAC,0BAA0B,CAAC,KAAK,GAAG,EAAE,CAAC;QAC5C,OAAO,IAAI,CACT,oCAAoC,0BAA0B,cAAc,EAC5E,MAAM,CACP,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC/D,IAAI,QAAQ,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,EAAE,CAAC;QAC1E,OAAO,IAAI,CACT,yCAAyC,QAAQ,IAAI,WAAW,8BAA8B,EAC9F,MAAM,CACP,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACtD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO,IAAI,CACT,oCAAoC,QAAQ,yEAAyE,EACrH,MAAM,CACP,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IAC7D,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAEnD,MAAM,MAAM,GAA2B;QACrC,EAAE,EAAE,GAAG;QACP,MAAM;QACN,KAAK;QACL,MAAM;QACN,WAAW,EAAE,kBAAkB,CAAC,WAAW,CAAC;QAC5C,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,WAAW,EAAE,UAAU,CAAC,WAAW;KACpC,CAAC;IAEF,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAErD,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW;QACnC,CAAC,CAAC,+BAA+B;QACjC,CAAC,CAAC,iBAAiB,CAAC;IACtB,MAAM,UAAU,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5D,MAAM,eAAe,GAAG,UAAU,CAAC,WAAW;QAC5C,CAAC,CAAC,sJAAsJ;QACxJ,CAAC,CAAC,mIAAmI,CAAC;IACxI,MAAM,UAAU,GAAG,GAAG,MAAM,yCAAyC,UAAU,IAAI,eAAe,EAAE,CAAC;IACrG,MAAM,CAAC,KAAK,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC;IAEhC,MAAM,OAAO,GAAG,YAAY,CAAC,EAAE;QAC7B,CAAC,CAAC,uBAAuB,OAAO,EAAE;QAClC,CAAC,CAAC,0BAA0B,YAAY,CAAC,MAAM,GAAG,CAAC;IACrD,MAAM,UAAU,GAAG,4CAA4C,UAAU,CAAC,WAAW,gBAAgB,UAAU,CAAC,WAAW,GAAG,OAAO,EAAE,CAAC;IACxI,MAAM,CAAC,KAAK,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC;IAEhC,OAAO;QACL,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,MAAM,EAAE,YAAY,CAAC,EAAE;QACvB,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;QACzC,UAAU;KACX,CAAC;AACJ,CAAC;AAED,sEAAsE;AACtE,oEAAoE;AACpE,oEAAoE;AACpE,wEAAwE;AACxE,gBAAgB;AAChB,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAC/B,qDAAqD,CACtD,CAAC;IACF,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;IACxC,oEAAoE;IACpE,oEAAoE;IACpE,mEAAmE;IACnE,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CACjC,4DAA4D,CAC7D,CAAC;IACF,IAAI,SAAS,KAAK,IAAI,IAAI,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC3D,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"hook-stay-in-scope.js","sourceRoot":"","sources":["../../../src/cli/pack/hook-stay-in-scope.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export declare const TOOL_NAME_TASK_START = "mcp__agent-tasks__task_start";
4
4
  export declare const TOOL_NAME_TASK_FINISH = "mcp__agent-tasks__task_finish";
5
5
  export declare const TOOL_NAME_TASK_ABANDON = "mcp__agent-tasks__task_abandon";
6
6
  export declare const TOOL_NAME_TASKS_TRANSITION = "mcp__agent-tasks__tasks_transition";
7
+ export declare const TOOL_NAME_TASK_MERGE = "mcp__agent-tasks__task_merge";
7
8
  export declare const TRACK_ACTIVE_CLAIM_TOOLS: readonly string[];
8
9
  export interface PackHookTrackActiveClaimOptions extends LoaderOptions {
9
10
  pack?: string;