@namzu/sdk 52.3.0 → 52.5.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 (176) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/dist/authorization/gate.d.ts +11 -0
  3. package/dist/authorization/gate.d.ts.map +1 -1
  4. package/dist/authorization/gate.js +35 -0
  5. package/dist/authorization/gate.js.map +1 -1
  6. package/dist/authorization/removal.js +11 -6
  7. package/dist/authorization/removal.js.map +1 -1
  8. package/dist/authorization/rules.d.ts.map +1 -1
  9. package/dist/authorization/rules.js +30 -2
  10. package/dist/authorization/rules.js.map +1 -1
  11. package/dist/authorization/shell-paths.d.ts +20 -0
  12. package/dist/authorization/shell-paths.d.ts.map +1 -1
  13. package/dist/authorization/shell-paths.js +254 -52
  14. package/dist/authorization/shell-paths.js.map +1 -1
  15. package/dist/bridge/acp/server.d.ts +8 -0
  16. package/dist/bridge/acp/server.d.ts.map +1 -1
  17. package/dist/bridge/acp/server.js +7 -0
  18. package/dist/bridge/acp/server.js.map +1 -1
  19. package/dist/connector/web/guarded-fetch.d.ts.map +1 -1
  20. package/dist/connector/web/guarded-fetch.js +44 -0
  21. package/dist/connector/web/guarded-fetch.js.map +1 -1
  22. package/dist/manager/resident/outbox.d.ts +4 -4
  23. package/dist/process/kill-tree.d.ts +3 -2
  24. package/dist/process/kill-tree.d.ts.map +1 -1
  25. package/dist/process/kill-tree.js.map +1 -1
  26. package/dist/public-runtime.d.ts +3 -2
  27. package/dist/public-runtime.d.ts.map +1 -1
  28. package/dist/public-runtime.js +4 -1
  29. package/dist/public-runtime.js.map +1 -1
  30. package/dist/public-tools.d.ts +2 -1
  31. package/dist/public-tools.d.ts.map +1 -1
  32. package/dist/public-tools.js +1 -1
  33. package/dist/public-tools.js.map +1 -1
  34. package/dist/public-types.d.ts +1 -0
  35. package/dist/public-types.d.ts.map +1 -1
  36. package/dist/runtime/jobs/registry.d.ts +80 -2
  37. package/dist/runtime/jobs/registry.d.ts.map +1 -1
  38. package/dist/runtime/jobs/registry.js +70 -5
  39. package/dist/runtime/jobs/registry.js.map +1 -1
  40. package/dist/runtime/jobs/websocket-source.d.ts +120 -0
  41. package/dist/runtime/jobs/websocket-source.d.ts.map +1 -0
  42. package/dist/runtime/jobs/websocket-source.js +379 -0
  43. package/dist/runtime/jobs/websocket-source.js.map +1 -0
  44. package/dist/runtime/query/auto-review/classifier.d.ts +130 -0
  45. package/dist/runtime/query/auto-review/classifier.d.ts.map +1 -0
  46. package/dist/runtime/query/auto-review/classifier.js +244 -0
  47. package/dist/runtime/query/auto-review/classifier.js.map +1 -0
  48. package/dist/runtime/query/auto-review/index.d.ts +7 -0
  49. package/dist/runtime/query/auto-review/index.d.ts.map +1 -0
  50. package/dist/runtime/query/auto-review/index.js +4 -0
  51. package/dist/runtime/query/auto-review/index.js.map +1 -0
  52. package/dist/runtime/query/auto-review/prompt.d.ts +20 -0
  53. package/dist/runtime/query/auto-review/prompt.d.ts.map +1 -0
  54. package/dist/runtime/query/auto-review/prompt.js +89 -0
  55. package/dist/runtime/query/auto-review/prompt.js.map +1 -0
  56. package/dist/runtime/query/auto-review/rules.d.ts +49 -0
  57. package/dist/runtime/query/auto-review/rules.d.ts.map +1 -0
  58. package/dist/runtime/query/auto-review/rules.js +81 -0
  59. package/dist/runtime/query/auto-review/rules.js.map +1 -0
  60. package/dist/runtime/query/auto-review/transcript.d.ts +59 -0
  61. package/dist/runtime/query/auto-review/transcript.d.ts.map +1 -0
  62. package/dist/runtime/query/auto-review/transcript.js +116 -0
  63. package/dist/runtime/query/auto-review/transcript.js.map +1 -0
  64. package/dist/runtime/query/auto-review/verdict.d.ts +21 -0
  65. package/dist/runtime/query/auto-review/verdict.d.ts.map +1 -0
  66. package/dist/runtime/query/auto-review/verdict.js +45 -0
  67. package/dist/runtime/query/auto-review/verdict.js.map +1 -0
  68. package/dist/runtime/query/executor.d.ts +7 -0
  69. package/dist/runtime/query/executor.d.ts.map +1 -1
  70. package/dist/runtime/query/executor.js +26 -2
  71. package/dist/runtime/query/executor.js.map +1 -1
  72. package/dist/runtime/query/index.js +2 -2
  73. package/dist/runtime/query/index.js.map +1 -1
  74. package/dist/runtime/query/iteration/phases/context.d.ts +0 -9
  75. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  76. package/dist/runtime/query/iteration/phases/context.js +11 -2
  77. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  78. package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
  79. package/dist/runtime/query/iteration/phases/tool-review.js +39 -0
  80. package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
  81. package/dist/runtime/query/path-escalation.d.ts.map +1 -1
  82. package/dist/runtime/query/path-escalation.js +43 -10
  83. package/dist/runtime/query/path-escalation.js.map +1 -1
  84. package/dist/runtime/query/resume-pending.d.ts.map +1 -1
  85. package/dist/runtime/query/resume-pending.js +14 -0
  86. package/dist/runtime/query/resume-pending.js.map +1 -1
  87. package/dist/runtime/query/review-policy.d.ts +88 -1
  88. package/dist/runtime/query/review-policy.d.ts.map +1 -1
  89. package/dist/runtime/query/review-policy.js +504 -11
  90. package/dist/runtime/query/review-policy.js.map +1 -1
  91. package/dist/runtime/query/steering.d.ts +2 -2
  92. package/dist/runtime/query/steering.d.ts.map +1 -1
  93. package/dist/runtime/query/steering.js +16 -3
  94. package/dist/runtime/query/steering.js.map +1 -1
  95. package/dist/tools/builtins/bash.d.ts.map +1 -1
  96. package/dist/tools/builtins/bash.js +2 -0
  97. package/dist/tools/builtins/bash.js.map +1 -1
  98. package/dist/tools/builtins/classifier-input.d.ts +9 -0
  99. package/dist/tools/builtins/classifier-input.d.ts.map +1 -0
  100. package/dist/tools/builtins/classifier-input.js +20 -0
  101. package/dist/tools/builtins/classifier-input.js.map +1 -0
  102. package/dist/tools/builtins/code-analysis.d.ts +2 -0
  103. package/dist/tools/builtins/code-analysis.d.ts.map +1 -1
  104. package/dist/tools/builtins/code-analysis.js +196 -119
  105. package/dist/tools/builtins/code-analysis.js.map +1 -1
  106. package/dist/tools/builtins/computer-use.d.ts +10 -10
  107. package/dist/tools/builtins/edit.d.ts.map +1 -1
  108. package/dist/tools/builtins/edit.js +12 -0
  109. package/dist/tools/builtins/edit.js.map +1 -1
  110. package/dist/tools/builtins/monitor.d.ts +38 -4
  111. package/dist/tools/builtins/monitor.d.ts.map +1 -1
  112. package/dist/tools/builtins/monitor.js +239 -97
  113. package/dist/tools/builtins/monitor.js.map +1 -1
  114. package/dist/tools/builtins/web.d.ts.map +1 -1
  115. package/dist/tools/builtins/web.js +3 -0
  116. package/dist/tools/builtins/web.js.map +1 -1
  117. package/dist/tools/builtins/write-file.d.ts.map +1 -1
  118. package/dist/tools/builtins/write-file.js +6 -0
  119. package/dist/tools/builtins/write-file.js.map +1 -1
  120. package/dist/tools/defineTool.d.ts +2 -0
  121. package/dist/tools/defineTool.d.ts.map +1 -1
  122. package/dist/tools/defineTool.js +1 -0
  123. package/dist/tools/defineTool.js.map +1 -1
  124. package/dist/types/acp/index.d.ts +7 -0
  125. package/dist/types/acp/index.d.ts.map +1 -1
  126. package/dist/types/code-analysis/index.d.ts +54 -3
  127. package/dist/types/code-analysis/index.d.ts.map +1 -1
  128. package/dist/types/hitl/index.d.ts +45 -1
  129. package/dist/types/hitl/index.d.ts.map +1 -1
  130. package/dist/types/hitl/index.js.map +1 -1
  131. package/dist/types/sandbox/index.d.ts +10 -0
  132. package/dist/types/sandbox/index.d.ts.map +1 -1
  133. package/dist/types/sandbox/index.js.map +1 -1
  134. package/dist/types/tool/index.d.ts +51 -0
  135. package/dist/types/tool/index.d.ts.map +1 -1
  136. package/dist/types/tool/index.js.map +1 -1
  137. package/package.json +4 -2
  138. package/src/authorization/gate.ts +35 -0
  139. package/src/authorization/removal.ts +12 -6
  140. package/src/authorization/rules.ts +27 -2
  141. package/src/authorization/shell-paths.ts +264 -51
  142. package/src/bridge/acp/server.ts +20 -0
  143. package/src/connector/web/guarded-fetch.ts +41 -0
  144. package/src/process/kill-tree.ts +4 -2
  145. package/src/public-runtime.ts +19 -1
  146. package/src/public-tools.ts +3 -0
  147. package/src/public-types.ts +11 -0
  148. package/src/runtime/jobs/registry.ts +162 -13
  149. package/src/runtime/jobs/websocket-source.ts +438 -0
  150. package/src/runtime/query/auto-review/classifier.ts +404 -0
  151. package/src/runtime/query/auto-review/index.ts +23 -0
  152. package/src/runtime/query/auto-review/prompt.ts +97 -0
  153. package/src/runtime/query/auto-review/rules.ts +106 -0
  154. package/src/runtime/query/auto-review/transcript.ts +159 -0
  155. package/src/runtime/query/auto-review/verdict.ts +50 -0
  156. package/src/runtime/query/executor.ts +29 -2
  157. package/src/runtime/query/index.ts +2 -2
  158. package/src/runtime/query/iteration/phases/context.ts +17 -3
  159. package/src/runtime/query/iteration/phases/tool-review.ts +41 -0
  160. package/src/runtime/query/path-escalation.ts +44 -9
  161. package/src/runtime/query/resume-pending.ts +14 -0
  162. package/src/runtime/query/review-policy.ts +591 -14
  163. package/src/runtime/query/steering.ts +32 -6
  164. package/src/tools/builtins/bash.ts +3 -0
  165. package/src/tools/builtins/classifier-input.ts +19 -0
  166. package/src/tools/builtins/code-analysis.ts +211 -119
  167. package/src/tools/builtins/edit.ts +13 -0
  168. package/src/tools/builtins/monitor.ts +297 -123
  169. package/src/tools/builtins/web.ts +3 -0
  170. package/src/tools/builtins/write-file.ts +6 -0
  171. package/src/tools/defineTool.ts +3 -0
  172. package/src/types/acp/index.ts +7 -0
  173. package/src/types/code-analysis/index.ts +51 -3
  174. package/src/types/hitl/index.ts +49 -1
  175. package/src/types/sandbox/index.ts +10 -0
  176. package/src/types/tool/index.ts +44 -0
@@ -0,0 +1,116 @@
1
+ /**
2
+ * What the auto-review classifier is shown of the conversation.
3
+ *
4
+ * Three kinds of entry and no more: the person's own messages, the agent's
5
+ * prose, and one short line per tool call, written by the tool itself
6
+ * (`ToolDefinition.classifierInput`). Tool RESULTS are never included. A result
7
+ * is whatever a command printed or a page said, which is exactly where an
8
+ * injected instruction would sit, and a classifier that read it could be
9
+ * argued out of a block by the text it is supposed to be guarding against.
10
+ * Kernel-written context (project instructions, reminders, compaction summaries)
11
+ * is left out too: it was not written by the person.
12
+ */
13
+ const DEFAULT_ENTRY_CHARS = 2_000;
14
+ /**
15
+ * A file a host inlined into the person's message (`@path`). Its content is
16
+ * whatever the file says, not the person's words, so a second guard removes it
17
+ * even from a message that carries no provenance; the host's own marking
18
+ * (`source`) is the first.
19
+ */
20
+ const INLINED_FILE_BLOCK = /<file\b[^>]*>[\s\S]*?<\/file>/gi;
21
+ function clip(text, limit) {
22
+ return text.length <= limit
23
+ ? text
24
+ : `${text.slice(0, limit)}... [${text.length - limit} more characters]`;
25
+ }
26
+ function parseArguments(raw) {
27
+ try {
28
+ return JSON.parse(raw);
29
+ }
30
+ catch {
31
+ return raw;
32
+ }
33
+ }
34
+ /**
35
+ * The line shown for a call: the tool's own account of it, or the input as
36
+ * compact JSON when the tool has none or its account is empty or throws.
37
+ * `truncated` is true when what the tool (or the JSON) said was longer than
38
+ * `limit`, so a caller judging THIS call can refuse to judge a prefix of it.
39
+ */
40
+ export function projectAction(name, input, tools, limit = DEFAULT_ENTRY_CHARS) {
41
+ const tool = tools?.get(name) ?? tools?.get(name.toLowerCase());
42
+ let text;
43
+ if (tool?.classifierInput !== undefined) {
44
+ try {
45
+ const described = tool.classifierInput(input);
46
+ if (typeof described === 'string' && described.trim() !== '')
47
+ text = described;
48
+ }
49
+ catch {
50
+ // A tool that cannot describe its own call is shown as its input.
51
+ }
52
+ }
53
+ if (text === undefined) {
54
+ try {
55
+ text = JSON.stringify(input) ?? '';
56
+ }
57
+ catch {
58
+ text = String(input);
59
+ }
60
+ }
61
+ return { text: clip(text, limit), truncated: text.length > limit };
62
+ }
63
+ /** {@link projectAction}'s text, for a line of history where a cut is only context. */
64
+ export function projectCall(name, input, tools, limit = DEFAULT_ENTRY_CHARS) {
65
+ return projectAction(name, input, tools, limit).text;
66
+ }
67
+ /** The conversation as the classifier sees it, oldest first. */
68
+ export function projectTranscript(messages, options = {}) {
69
+ const limit = options.maxEntryChars ?? DEFAULT_ENTRY_CHARS;
70
+ const entries = [];
71
+ for (const message of messages) {
72
+ if (message.role === 'user') {
73
+ // A user-role message the kernel wrote (instructions, reminders, a goal
74
+ // round) is not the person speaking.
75
+ if (message.source !== undefined)
76
+ continue;
77
+ if (typeof message.content === 'string') {
78
+ const spoken = message.content.replace(INLINED_FILE_BLOCK, ' ').trim();
79
+ if (spoken !== '')
80
+ entries.push({ kind: 'user', text: clip(spoken, limit) });
81
+ }
82
+ continue;
83
+ }
84
+ if (message.role !== 'assistant')
85
+ continue;
86
+ if (typeof message.content === 'string' && message.content.trim() !== '') {
87
+ entries.push({ kind: 'assistant', text: clip(message.content, limit) });
88
+ }
89
+ for (const call of message.toolCalls ?? []) {
90
+ if (options.excludeCallIds?.has(call.id))
91
+ continue;
92
+ entries.push({
93
+ kind: 'tool',
94
+ name: call.function.name,
95
+ input: projectCall(call.function.name, parseArguments(call.function.arguments), options.tools, limit),
96
+ });
97
+ }
98
+ }
99
+ return entries;
100
+ }
101
+ /**
102
+ * One entry as a line of JSON, with `<` escaped so that nothing in it can
103
+ * close or open an element of the prompt around it.
104
+ */
105
+ export function renderEntry(entry) {
106
+ const body = entry.kind === 'tool' ? { tool: entry.name, input: entry.input } : { [entry.kind]: entry.text };
107
+ return JSON.stringify(body).replaceAll('<', '\\u003c');
108
+ }
109
+ /** The size of a rendered transcript, for the decision whether it is too long. */
110
+ export function renderedLength(lines) {
111
+ let total = 0;
112
+ for (const line of lines)
113
+ total += line.length + 1;
114
+ return total;
115
+ }
116
+ //# sourceMappingURL=transcript.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transcript.js","sourceRoot":"","sources":["../../../../src/runtime/query/auto-review/transcript.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /** Reading the classifier's answer. Anything that is not clearly a verdict is not one. */
2
+ export interface ParsedVerdict {
3
+ readonly block: boolean;
4
+ /** The name of the rule the classifier says applies, for a block. */
5
+ readonly rule?: string;
6
+ /** One plain sentence, for a block. */
7
+ readonly reason?: string;
8
+ }
9
+ /**
10
+ * The verdict in `text`, or `undefined` when there is none to be read.
11
+ *
12
+ * Reasoning in a `<thinking>` element is removed first, so a verdict element
13
+ * the model merely discussed there does not count. Verdicts outside it must
14
+ * agree: an answer that both blocks and allows has no verdict, which the caller
15
+ * treats as a block, so a reply cannot be steered into allow by a verdict
16
+ * element the model was only quoting. The closing tag is optional because the first pass stops on it. A
17
+ * `<thinking>` that never closes means the answer was cut off before it
18
+ * decided, and reads as no verdict.
19
+ */
20
+ export declare function parseVerdict(text: string): ParsedVerdict | undefined;
21
+ //# sourceMappingURL=verdict.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verdict.d.ts","sourceRoot":"","sources":["../../../../src/runtime/query/auto-review/verdict.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAE1F,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;IACvB,qEAAqE;IACrE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,uCAAuC;IACvC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CACxB;AAaD;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAiBpE"}
@@ -0,0 +1,45 @@
1
+ /** Reading the classifier's answer. Anything that is not clearly a verdict is not one. */
2
+ const MAX_FIELD_CHARS = 300;
3
+ function field(text, name) {
4
+ const pattern = new RegExp(`<${name}>([\\s\\S]*?)</${name}>`, 'gi');
5
+ let last;
6
+ for (const match of text.matchAll(pattern))
7
+ last = match[1];
8
+ const value = last?.replace(/\s+/g, ' ').trim();
9
+ if (value === undefined || value === '')
10
+ return undefined;
11
+ return value.length > MAX_FIELD_CHARS ? `${value.slice(0, MAX_FIELD_CHARS)}...` : value;
12
+ }
13
+ /**
14
+ * The verdict in `text`, or `undefined` when there is none to be read.
15
+ *
16
+ * Reasoning in a `<thinking>` element is removed first, so a verdict element
17
+ * the model merely discussed there does not count. Verdicts outside it must
18
+ * agree: an answer that both blocks and allows has no verdict, which the caller
19
+ * treats as a block, so a reply cannot be steered into allow by a verdict
20
+ * element the model was only quoting. The closing tag is optional because the first pass stops on it. A
21
+ * `<thinking>` that never closes means the answer was cut off before it
22
+ * decided, and reads as no verdict.
23
+ */
24
+ export function parseVerdict(text) {
25
+ let visible = text.replace(/<thinking>[\s\S]*?<\/thinking>/gi, ' ');
26
+ if (/<thinking>/i.test(visible))
27
+ return undefined;
28
+ visible = visible.trim();
29
+ const decisions = new Set();
30
+ for (const match of visible.matchAll(/<verdict>\s*(block|allow)\b/gi)) {
31
+ decisions.add(match[1].toLowerCase());
32
+ }
33
+ if (decisions.size !== 1)
34
+ return undefined;
35
+ if (decisions.has('allow'))
36
+ return { block: false };
37
+ const rule = field(visible, 'rule');
38
+ const reason = field(visible, 'reason');
39
+ return {
40
+ block: true,
41
+ ...(rule !== undefined ? { rule } : {}),
42
+ ...(reason !== undefined ? { reason } : {}),
43
+ };
44
+ }
45
+ //# sourceMappingURL=verdict.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verdict.js","sourceRoot":"","sources":["../../../../src/runtime/query/auto-review/verdict.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAU1F,MAAM,eAAe,GAAG,GAAG,CAAA;AAE3B,SAAS,KAAK,CAAC,IAAY,EAAE,IAAY;IACxC,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,IAAI,kBAAkB,IAAI,GAAG,EAAE,IAAI,CAAC,CAAA;IACnE,IAAI,IAAwB,CAAA;IAC5B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IAC3D,MAAM,KAAK,GAAG,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;IAC/C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,SAAS,CAAA;IACzD,OAAO,KAAK,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAA;AACxF,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACxC,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,kCAAkC,EAAE,GAAG,CAAC,CAAA;IACnE,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAA;IACjD,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IACxB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAA;IACnC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAC,EAAE,CAAC;QACvE,SAAS,CAAC,GAAG,CAAE,KAAK,CAAC,CAAC,CAAY,CAAC,WAAW,EAAE,CAAC,CAAA;IAClD,CAAC;IACD,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,SAAS,CAAA;IAC1C,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACnD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IACnC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACvC,OAAO;QACN,KAAK,EAAE,IAAI;QACX,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3C,CAAA;AACF,CAAC"}
@@ -535,6 +535,13 @@ export declare class ToolExecutor {
535
535
  * consumes the registry-owned preparations rather than parsing again.
536
536
  */
537
537
  prepareBatchForReview(response: ChatCompletionResponse, hostModifiedCallIds?: ReadonlySet<string>): Promise<PreparedToolBatch>;
538
+ /**
539
+ * {@link escalationOf}, except that a check which itself throws is not
540
+ * read as "nothing found". The failure becomes an escalation of its own
541
+ * (`unfinishedCheck`), which no mode approves in advance: a call whose
542
+ * safety checks did not run is the one a person must look at.
543
+ */
544
+ private escalationOrUnfinished;
538
545
  /**
539
546
  * What a prepared call reaches past the turn's boundary, decided on the
540
547
  * value that will execute — after repairs and pre-tool hooks, so a hook
@@ -1 +1 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/runtime/query/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/runtime/query/executor.ts"],"names":[],"mappings":"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"}
@@ -535,13 +535,37 @@ export class ToolExecutor {
535
535
  for (const toolCall of response.message.toolCalls ?? []) {
536
536
  const call = await prepareDirectCall(this.admissionHost(), toolCall, !hostModifiedCallIds?.has(toolCall.id));
537
537
  calls.set(toolCall.id, call);
538
- const escalation = await this.escalationOf(call);
538
+ const escalation = await this.escalationOrUnfinished(call);
539
539
  if (escalation)
540
540
  escalations.set(toolCall.id, escalation);
541
541
  }
542
542
  this.config.abortSignal.throwIfAborted();
543
543
  return this.publishPreparedBatch(calls, escalations);
544
544
  }
545
+ /**
546
+ * {@link escalationOf}, except that a check which itself throws is not
547
+ * read as "nothing found". The failure becomes an escalation of its own
548
+ * (`unfinishedCheck`), which no mode approves in advance: a call whose
549
+ * safety checks did not run is the one a person must look at.
550
+ */
551
+ async escalationOrUnfinished(call) {
552
+ try {
553
+ return await this.escalationOf(call);
554
+ }
555
+ catch (error) {
556
+ this.config.abortSignal.throwIfAborted();
557
+ // A fixed sentence and a code, never the error's own message: this text
558
+ // goes into the audit trail and the prompt a person or the classifier
559
+ // reads, and a message can carry a path or a command line.
560
+ const code = error?.code;
561
+ const label = typeof code === 'string' && /^[\w.-]{1,40}$/.test(code)
562
+ ? code
563
+ : error instanceof Error && /^\w{1,40}$/.test(error.name)
564
+ ? error.name
565
+ : 'unknown';
566
+ return { unfinishedCheck: `the safety checks did not finish (${label})` };
567
+ }
568
+ }
545
569
  /**
546
570
  * What a prepared call reaches past the turn's boundary, decided on the
547
571
  * value that will execute — after repairs and pre-tool hooks, so a hook
@@ -672,7 +696,7 @@ export class ToolExecutor {
672
696
  if (changedCallIds.has(toolCall.id)) {
673
697
  const call = await prepareDirectCall(this.admissionHost(), toolCall, false);
674
698
  calls.set(toolCall.id, call);
675
- const escalation = await this.escalationOf(call);
699
+ const escalation = await this.escalationOrUnfinished(call);
676
700
  if (escalation)
677
701
  escalations.set(toolCall.id, escalation);
678
702
  else