@namzu/sdk 56.2.0 → 57.1.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 (199) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/dist/agents/QueryAgent.d.ts.map +1 -1
  3. package/dist/agents/QueryAgent.js +2 -0
  4. package/dist/agents/QueryAgent.js.map +1 -1
  5. package/dist/agents/index.d.ts +1 -0
  6. package/dist/agents/index.d.ts.map +1 -1
  7. package/dist/agents/index.js +1 -0
  8. package/dist/agents/index.js.map +1 -1
  9. package/dist/agents/plan.d.ts +20 -0
  10. package/dist/agents/plan.d.ts.map +1 -0
  11. package/dist/agents/plan.js +27 -0
  12. package/dist/agents/plan.js.map +1 -0
  13. package/dist/compaction/dangling.d.ts +12 -1
  14. package/dist/compaction/dangling.d.ts.map +1 -1
  15. package/dist/compaction/dangling.js +17 -3
  16. package/dist/compaction/dangling.js.map +1 -1
  17. package/dist/compaction/index.d.ts +3 -2
  18. package/dist/compaction/index.d.ts.map +1 -1
  19. package/dist/compaction/index.js.map +1 -1
  20. package/dist/compaction/manager.d.ts +16 -0
  21. package/dist/compaction/manager.d.ts.map +1 -1
  22. package/dist/compaction/manager.js +55 -0
  23. package/dist/compaction/manager.js.map +1 -1
  24. package/dist/compaction/manual.d.ts +9 -0
  25. package/dist/compaction/manual.d.ts.map +1 -1
  26. package/dist/compaction/manual.js +64 -16
  27. package/dist/compaction/manual.js.map +1 -1
  28. package/dist/compaction/model-summary.d.ts +101 -0
  29. package/dist/compaction/model-summary.d.ts.map +1 -0
  30. package/dist/compaction/model-summary.js +333 -0
  31. package/dist/compaction/model-summary.js.map +1 -0
  32. package/dist/compaction/restore.d.ts +51 -0
  33. package/dist/compaction/restore.d.ts.map +1 -0
  34. package/dist/compaction/restore.js +123 -0
  35. package/dist/compaction/restore.js.map +1 -0
  36. package/dist/compaction/types.d.ts +22 -0
  37. package/dist/compaction/types.d.ts.map +1 -1
  38. package/dist/compaction/verifier.d.ts +6 -1
  39. package/dist/compaction/verifier.d.ts.map +1 -1
  40. package/dist/compaction/verifier.js +3 -3
  41. package/dist/compaction/verifier.js.map +1 -1
  42. package/dist/compaction/wire.d.ts +3 -1
  43. package/dist/compaction/wire.d.ts.map +1 -1
  44. package/dist/compaction/wire.js +16 -0
  45. package/dist/compaction/wire.js.map +1 -1
  46. package/dist/config/runtime.d.ts +62 -0
  47. package/dist/config/runtime.d.ts.map +1 -1
  48. package/dist/config/runtime.js +16 -0
  49. package/dist/config/runtime.js.map +1 -1
  50. package/dist/index.d.ts +1 -1
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/plugin/shell-hook.d.ts +19 -1
  53. package/dist/plugin/shell-hook.d.ts.map +1 -1
  54. package/dist/plugin/shell-hook.js +21 -5
  55. package/dist/plugin/shell-hook.js.map +1 -1
  56. package/dist/prompt/coding-agent-doctrine.d.ts +2 -2
  57. package/dist/prompt/coding-agent-doctrine.d.ts.map +1 -1
  58. package/dist/prompt/coding-agent-doctrine.js +5 -3
  59. package/dist/prompt/coding-agent-doctrine.js.map +1 -1
  60. package/dist/provider/errors.d.ts +3 -0
  61. package/dist/provider/errors.d.ts.map +1 -1
  62. package/dist/provider/errors.js +23 -3
  63. package/dist/provider/errors.js.map +1 -1
  64. package/dist/provider/fallback.d.ts.map +1 -1
  65. package/dist/provider/fallback.js +34 -3
  66. package/dist/provider/fallback.js.map +1 -1
  67. package/dist/provider/retry.d.ts +12 -5
  68. package/dist/provider/retry.d.ts.map +1 -1
  69. package/dist/provider/retry.js +22 -8
  70. package/dist/provider/retry.js.map +1 -1
  71. package/dist/public-runtime.d.ts +5 -2
  72. package/dist/public-runtime.d.ts.map +1 -1
  73. package/dist/public-runtime.js +4 -1
  74. package/dist/public-runtime.js.map +1 -1
  75. package/dist/public-types.d.ts +1 -1
  76. package/dist/public-types.d.ts.map +1 -1
  77. package/dist/runtime/jobs/registry.d.ts +42 -0
  78. package/dist/runtime/jobs/registry.d.ts.map +1 -1
  79. package/dist/runtime/jobs/registry.js +77 -0
  80. package/dist/runtime/jobs/registry.js.map +1 -1
  81. package/dist/runtime/query/calls-that-never-started.d.ts +12 -0
  82. package/dist/runtime/query/calls-that-never-started.d.ts.map +1 -0
  83. package/dist/runtime/query/calls-that-never-started.js +41 -0
  84. package/dist/runtime/query/calls-that-never-started.js.map +1 -0
  85. package/dist/runtime/query/executor/tool-call-admission.d.ts +2 -2
  86. package/dist/runtime/query/executor/tool-call-admission.d.ts.map +1 -1
  87. package/dist/runtime/query/executor/tool-call-admission.js +13 -9
  88. package/dist/runtime/query/executor/tool-call-admission.js.map +1 -1
  89. package/dist/runtime/query/executor.d.ts +11 -0
  90. package/dist/runtime/query/executor.d.ts.map +1 -1
  91. package/dist/runtime/query/executor.js +48 -0
  92. package/dist/runtime/query/executor.js.map +1 -1
  93. package/dist/runtime/query/file-evidence-context.js +1 -1
  94. package/dist/runtime/query/file-evidence-context.js.map +1 -1
  95. package/dist/runtime/query/index.d.ts +12 -0
  96. package/dist/runtime/query/index.d.ts.map +1 -1
  97. package/dist/runtime/query/index.js +9 -0
  98. package/dist/runtime/query/index.js.map +1 -1
  99. package/dist/runtime/query/iteration/phases/compaction.d.ts.map +1 -1
  100. package/dist/runtime/query/iteration/phases/compaction.js +66 -1
  101. package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
  102. package/dist/runtime/query/iteration/phases/context.d.ts +5 -0
  103. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  104. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  105. package/dist/runtime/query/iteration/stream-turn.d.ts.map +1 -1
  106. package/dist/runtime/query/iteration/stream-turn.js +45 -25
  107. package/dist/runtime/query/iteration/stream-turn.js.map +1 -1
  108. package/dist/runtime/query/prepare-turn.d.ts.map +1 -1
  109. package/dist/runtime/query/prepare-turn.js +10 -1
  110. package/dist/runtime/query/prepare-turn.js.map +1 -1
  111. package/dist/scheduler/completion-inbox.js +3 -3
  112. package/dist/scheduler/completion-inbox.js.map +1 -1
  113. package/dist/scheduler/local.js +1 -1
  114. package/dist/scheduler/local.js.map +1 -1
  115. package/dist/tools/admit-facts.d.ts.map +1 -1
  116. package/dist/tools/admit-facts.js +1 -0
  117. package/dist/tools/admit-facts.js.map +1 -1
  118. package/dist/tools/builtins/bash.d.ts +42 -1
  119. package/dist/tools/builtins/bash.d.ts.map +1 -1
  120. package/dist/tools/builtins/bash.js +115 -48
  121. package/dist/tools/builtins/bash.js.map +1 -1
  122. package/dist/tools/builtins/read-file.d.ts.map +1 -1
  123. package/dist/tools/builtins/read-file.js +55 -5
  124. package/dist/tools/builtins/read-file.js.map +1 -1
  125. package/dist/tools/file-read-tracker.d.ts.map +1 -1
  126. package/dist/tools/file-read-tracker.js +28 -0
  127. package/dist/tools/file-read-tracker.js.map +1 -1
  128. package/dist/types/agent/base.d.ts +14 -0
  129. package/dist/types/agent/base.d.ts.map +1 -1
  130. package/dist/types/agent/scheduler.d.ts +8 -0
  131. package/dist/types/agent/scheduler.d.ts.map +1 -1
  132. package/dist/types/errors/catalog.d.ts +3 -0
  133. package/dist/types/errors/catalog.d.ts.map +1 -1
  134. package/dist/types/errors/catalog.js +24 -2
  135. package/dist/types/errors/catalog.js.map +1 -1
  136. package/dist/types/plugin/index.d.ts +2 -2
  137. package/dist/types/provider/error.d.ts +7 -0
  138. package/dist/types/provider/error.d.ts.map +1 -1
  139. package/dist/types/provider/errors.d.ts +24 -0
  140. package/dist/types/provider/errors.d.ts.map +1 -1
  141. package/dist/types/provider/errors.js +101 -1
  142. package/dist/types/provider/errors.js.map +1 -1
  143. package/dist/types/provider/stream.d.ts +6 -0
  144. package/dist/types/provider/stream.d.ts.map +1 -1
  145. package/dist/types/session/events.d.ts +8 -0
  146. package/dist/types/session/events.d.ts.map +1 -1
  147. package/dist/types/session/events.js.map +1 -1
  148. package/dist/types/tool/index.d.ts +54 -0
  149. package/dist/types/tool/index.d.ts.map +1 -1
  150. package/dist/types/tool/index.js.map +1 -1
  151. package/dist/types/tool/presentation.d.ts +4 -0
  152. package/dist/types/tool/presentation.d.ts.map +1 -1
  153. package/package.json +1 -1
  154. package/src/agents/QueryAgent.ts +2 -0
  155. package/src/agents/index.ts +1 -0
  156. package/src/agents/plan.ts +30 -0
  157. package/src/compaction/dangling.ts +35 -3
  158. package/src/compaction/index.ts +5 -0
  159. package/src/compaction/manager.ts +53 -0
  160. package/src/compaction/manual.ts +110 -40
  161. package/src/compaction/model-summary.ts +412 -0
  162. package/src/compaction/restore.ts +159 -0
  163. package/src/compaction/types.ts +25 -0
  164. package/src/compaction/verifier.ts +3 -3
  165. package/src/compaction/wire.ts +26 -1
  166. package/src/config/runtime.ts +16 -0
  167. package/src/index.ts +2 -0
  168. package/src/plugin/shell-hook.ts +33 -5
  169. package/src/prompt/coding-agent-doctrine.ts +5 -3
  170. package/src/provider/errors.ts +27 -3
  171. package/src/provider/fallback.ts +34 -2
  172. package/src/provider/retry.ts +30 -10
  173. package/src/public-runtime.ts +12 -0
  174. package/src/public-types.ts +3 -0
  175. package/src/runtime/jobs/registry.ts +105 -0
  176. package/src/runtime/query/calls-that-never-started.ts +37 -0
  177. package/src/runtime/query/executor/tool-call-admission.ts +12 -9
  178. package/src/runtime/query/executor.ts +51 -0
  179. package/src/runtime/query/file-evidence-context.ts +1 -1
  180. package/src/runtime/query/index.ts +23 -0
  181. package/src/runtime/query/iteration/phases/compaction.ts +65 -1
  182. package/src/runtime/query/iteration/phases/context.ts +7 -0
  183. package/src/runtime/query/iteration/stream-turn.ts +47 -25
  184. package/src/runtime/query/prepare-turn.ts +10 -1
  185. package/src/scheduler/completion-inbox.ts +3 -3
  186. package/src/scheduler/local.ts +1 -1
  187. package/src/tools/admit-facts.ts +1 -0
  188. package/src/tools/builtins/bash.ts +149 -54
  189. package/src/tools/builtins/read-file.ts +66 -4
  190. package/src/tools/file-read-tracker.ts +25 -1
  191. package/src/types/agent/base.ts +16 -0
  192. package/src/types/agent/scheduler.ts +9 -0
  193. package/src/types/errors/catalog.ts +31 -2
  194. package/src/types/provider/error.ts +7 -0
  195. package/src/types/provider/errors.ts +120 -1
  196. package/src/types/provider/stream.ts +6 -0
  197. package/src/types/session/events.ts +8 -0
  198. package/src/types/tool/index.ts +56 -0
  199. package/src/types/tool/presentation.ts +4 -0
@@ -189,6 +189,18 @@ export interface BackgroundJobRegistryRef {
189
189
  id: string;
190
190
  status: string;
191
191
  };
192
+ /**
193
+ * Offer a foreground command this call is waiting on for hand-over to the
194
+ * background, until the returned function is called. `background` is asked
195
+ * to take the command over (`user`: the person asked; `message`: a message
196
+ * from the person must reach the model) and says whether it did. Optional:
197
+ * a host without it never moves a running command, and the call keeps the
198
+ * kill.
199
+ */
200
+ registerForeground?(entry: {
201
+ command: string;
202
+ background(reason: 'user' | 'message'): boolean;
203
+ }): () => void;
192
204
  /**
193
205
  * Resolves once the process exists or failed to start (`error` says why).
194
206
  * Optional: a host that cannot tell may omit it, and `bash` then replies
@@ -355,6 +367,19 @@ export interface FileReadTracker {
355
367
  * referencing a body it has been told is stale, without a check of its own.
356
368
  */
357
369
  recordDriftObserved?(key: string): void;
370
+ /**
371
+ * Optional note of the last read of one window of a file: the call whose
372
+ * receipt shows it, the fingerprint of that receipt, and the fingerprint of
373
+ * the whole body at the time.
374
+ *
375
+ * Lets a repeat read of the same window answer "unchanged" instead of
376
+ * returning the lines again. Only the read tool writes it, and it is only
377
+ * trusted together with {@link ToolContext.receiptVisible}: a receipt that
378
+ * has since been cleared, summarised away or edited is no answer.
379
+ */
380
+ recordReadWindow?(key: string, window: string, entry: ReadWindowEntry): void;
381
+ /** What {@link recordReadWindow} last noted for this window of this file. */
382
+ readWindow?(key: string, window: string): ReadWindowEntry | undefined;
358
383
  /** Whether a refused mutation has reported this path stale since the last observation. */
359
384
  driftObserved?(key: string): boolean;
360
385
  /**
@@ -369,6 +394,14 @@ export interface FileReadTracker {
369
394
  */
370
395
  fingerprint?(key: string): string | undefined;
371
396
  }
397
+ /** The last read of one window of a file; see {@link FileReadTracker.recordReadWindow}. */
398
+ export interface ReadWindowEntry {
399
+ readonly callId: string;
400
+ /** Fingerprint of the exact text the read returned. */
401
+ readonly renderedFingerprint: string;
402
+ /** Fingerprint of the whole file body at that read. */
403
+ readonly contentFingerprint: string;
404
+ }
372
405
  export interface ToolPauseOption {
373
406
  readonly id: string;
374
407
  readonly label: string;
@@ -538,6 +571,27 @@ export interface ToolContext {
538
571
  */
539
572
  codeAnalysis?: CodeAnalysisProvider;
540
573
  fileReadTracker?: FileReadTracker;
574
+ /**
575
+ * Whether the receipt of an earlier call is still, byte for byte, in the
576
+ * conversation the model is shown. Absent when the host cannot say; a tool
577
+ * must then treat the answer as no.
578
+ */
579
+ receiptVisible?: (callId: string, renderedFingerprint: string) => boolean;
580
+ /**
581
+ * The conversation this call belongs to, read live: the messages the model
582
+ * is shown right now, including the assistant message that issued this
583
+ * call, and the system prompt assembled for the current iteration.
584
+ *
585
+ * Absent when the host cannot say. A tool that needs it (one that starts a
586
+ * delegate which continues this conversation) must then refuse rather than
587
+ * start the delegate without the context it was asked to inherit. Read
588
+ * only: the arrays are the turn's own and a tool must copy before it
589
+ * changes anything.
590
+ */
591
+ conversation?: {
592
+ messages(): readonly import('../message/index.js').Message[];
593
+ systemPrompt(): string | undefined;
594
+ };
541
595
  /**
542
596
  * Where work that outlives this call is held.
543
597
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/tool/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/tool/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/tool/index.ts"],"names":[],"mappings":"AA20CA,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/tool/index.ts"],"names":[],"mappings":"AAm4CA,cAAc,aAAa,CAAA"}
@@ -144,6 +144,8 @@ export type ToolFacts = {
144
144
  };
145
145
  /** The command was handed to a background job instead of being waited on. */
146
146
  readonly background?: true;
147
+ /** The command was already running when it was handed over (a key, a message, an interrupt or its timeout). */
148
+ readonly continued?: true;
147
149
  } | {
148
150
  readonly kind: 'read';
149
151
  readonly path: string;
@@ -154,6 +156,8 @@ export type ToolFacts = {
154
156
  readonly returnedLines?: number;
155
157
  /** Only a window of the file was returned. */
156
158
  readonly partial?: boolean;
159
+ /** The lines were not repeated: an earlier read of the same lines still holds. */
160
+ readonly unchanged?: boolean;
157
161
  } | {
158
162
  readonly kind: 'search';
159
163
  readonly pattern: string;
@@ -1 +1 @@
1
- {"version":3,"file":"presentation.d.ts","sourceRoot":"","sources":["../../../src/types/tool/presentation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"presentation.d.ts","sourceRoot":"","sources":["../../../src/types/tool/presentation.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@namzu/sdk",
3
- "version": "56.2.0",
3
+ "version": "57.1.0",
4
4
  "description": "Open-source AI kernel for TypeScript: runs an agent the way an operating system runs a process, with an identity and a budget, scheduled tool calls and checkpointed turns.",
5
5
  "license": "FSL-1.1-MIT",
6
6
  "engines": {
@@ -35,6 +35,8 @@ const configRoutes = {
35
35
  inboundMessages: 'query',
36
36
  durableInbound: 'query',
37
37
  projectInstructionContext: 'query',
38
+ postCompactionContext: 'query',
39
+ compactionSummaryRoute: 'query',
38
40
  allowedTools: 'special',
39
41
  toolResultGuardrails: 'query',
40
42
  deniedTools: 'special',
@@ -34,3 +34,4 @@ export type {
34
34
  SkippedAgentFile,
35
35
  } from './file-definitions.js'
36
36
  export { EXPLORE_AGENT_DESCRIPTION, EXPLORE_AGENT_ID, EXPLORE_AGENT_PROMPT } from './explore.js'
37
+ export { PLAN_AGENT_DESCRIPTION, PLAN_AGENT_ID, PLAN_AGENT_PROMPT } from './plan.js'
@@ -0,0 +1,30 @@
1
+ /**
2
+ * The delegate that plans without touching anything.
3
+ *
4
+ * A parent that wants a design before it changes code has two bad options:
5
+ * plan in its own context, which spends the window on exploration, or hand
6
+ * the whole job to a delegate that can also edit. This type is the third:
7
+ * the same roster as `explore` (`EXPLORE_AGENT_ID`, built by filtering each
8
+ * contributing toolset with `isTrustedReadOnly`), under a prompt that asks
9
+ * for a step plan naming the files it touches and the risks it sees. The
10
+ * roster is the host's to build; only the identity and the prompt live here.
11
+ */
12
+
13
+ export const PLAN_AGENT_ID = 'plan'
14
+
15
+ export const PLAN_AGENT_DESCRIPTION =
16
+ 'A read-only sub-agent that studies the code and returns a step plan with the files it touches and the risks.'
17
+
18
+ /**
19
+ * What a plan delegate is told. It states its limits in the first person so a
20
+ * model does not describe a change as made, and fixes the shape of the answer
21
+ * because the parent acts on the steps and opens the files.
22
+ */
23
+ export const PLAN_AGENT_PROMPT = [
24
+ 'You are a read-only sub-agent dispatched to plan a change: you study the code and return a plan, never the change itself.',
25
+ 'You cannot see the parent conversation — work only from the prompt you were given.',
26
+ 'You have reading and searching tools only. You cannot edit, write or run commands, and you must not describe a change as made.',
27
+ 'Read first: find the code the change touches, the patterns it should follow and the tests that cover it. Prefer what the code already does over a design of your own.',
28
+ 'Return the plan in this shape: a one-paragraph approach; numbered steps in the order to do them, each naming the files it changes; the files to read or change first, as paths with line numbers where it helps; the risks and open questions, including what could break and how to check it.',
29
+ 'Say plainly what you could not determine. End with the plan; do not ask the parent questions.',
30
+ ].join('\n')
@@ -231,6 +231,8 @@ export interface ToolHistoryRepairReport {
231
231
  readonly orphanedToolResultsRemoved: number
232
232
  /** Error results inserted for calls whose durable outcome is unavailable. */
233
233
  readonly syntheticToolResultsInserted: number
234
+ /** Of those, the results that say the call never started. Absent when none. */
235
+ readonly neverRanToolResultsInserted?: number
234
236
  }
235
237
 
236
238
  /** A repaired copy and the exact changes made to it. */
@@ -274,7 +276,30 @@ function validateToolCallIds(messages: readonly Message[]): void {
274
276
  }
275
277
  }
276
278
 
277
- function unknownOutcomeResult(call: ToolCall, assistant: AssistantMessage): ToolMessage {
279
+ /** What is known about the unanswered calls of a history being repaired. */
280
+ export interface ToolHistoryRepairOptions {
281
+ /**
282
+ * Ids of calls known never to have started (queued, or waiting for a
283
+ * person's approval, when the session ended). Their synthetic result says
284
+ * nothing ran, instead of calling the outcome unknown.
285
+ */
286
+ readonly neverRan?: ReadonlySet<string>
287
+ }
288
+
289
+ function unknownOutcomeResult(
290
+ call: ToolCall,
291
+ assistant: AssistantMessage,
292
+ neverRan: boolean,
293
+ ): ToolMessage {
294
+ if (neverRan) {
295
+ return {
296
+ role: CONSTANTS.TOOL_ROLE,
297
+ toolCallId: call.id,
298
+ isError: true,
299
+ content: `The \`${call.function.name}\` call did not run: the session ended before it started (it may have been waiting for the user's approval, which was never given). Nothing was changed. If it is still needed, call it again.`,
300
+ ...(assistant.timestamp !== undefined ? { timestamp: assistant.timestamp } : {}),
301
+ }
302
+ }
278
303
  return {
279
304
  role: CONSTANTS.TOOL_ROLE,
280
305
  toolCallId: call.id,
@@ -294,13 +319,17 @@ function unknownOutcomeResult(call: ToolCall, assistant: AssistantMessage): Tool
294
319
  * fail closed: changing ids or tool calls would invalidate opaque native replay
295
320
  * state carried by the assistant message.
296
321
  */
297
- export function repairToolMessageHistory(messages: readonly Message[]): ToolHistoryRepairResult {
322
+ export function repairToolMessageHistory(
323
+ messages: readonly Message[],
324
+ options: ToolHistoryRepairOptions = {},
325
+ ): ToolHistoryRepairResult {
298
326
  validateToolCallIds(messages)
299
327
 
300
328
  const repaired: Message[] = []
301
329
  let duplicateToolResultsRemoved = 0
302
330
  let orphanedToolResultsRemoved = 0
303
331
  let syntheticToolResultsInserted = 0
332
+ let neverRanToolResultsInserted = 0
304
333
  let index = 0
305
334
 
306
335
  while (index < messages.length) {
@@ -352,8 +381,10 @@ export function repairToolMessageHistory(messages: readonly Message[]): ToolHist
352
381
 
353
382
  for (const call of calls) {
354
383
  if (answered.has(call.id)) continue
355
- repaired.push(unknownOutcomeResult(call, assistant))
384
+ const neverRan = options.neverRan?.has(call.id) === true
385
+ repaired.push(unknownOutcomeResult(call, assistant, neverRan))
356
386
  syntheticToolResultsInserted++
387
+ if (neverRan) neverRanToolResultsInserted++
357
388
  }
358
389
  index = resultEnd
359
390
  }
@@ -364,6 +395,7 @@ export function repairToolMessageHistory(messages: readonly Message[]): ToolHist
364
395
  duplicateToolResultsRemoved,
365
396
  orphanedToolResultsRemoved,
366
397
  syntheticToolResultsInserted,
398
+ ...(neverRanToolResultsInserted > 0 ? { neverRanToolResultsInserted } : {}),
367
399
  },
368
400
  }
369
401
  }
@@ -4,6 +4,9 @@ export type {
4
4
  FileSlot,
5
5
  PinSlot,
6
6
  PlanSlot,
7
+ RestorableFile,
8
+ RestorableSkill,
9
+ RestorableState,
7
10
  ToolResultSlot,
8
11
  WorkingState,
9
12
  WorkingStatePin,
@@ -11,6 +14,7 @@ export type {
11
14
 
12
15
  export type {
13
16
  DanglingResult,
17
+ ToolHistoryRepairOptions,
14
18
  ToolHistoryRepairReport,
15
19
  ToolHistoryRepairResult,
16
20
  } from './dangling.js'
@@ -37,6 +41,7 @@ export {
37
41
  } from './extractor.js'
38
42
 
39
43
  export { buildVerifiedSummary } from './verifier.js'
44
+ export type { CompactionSummaryRoute, CompactionSummaryRouter } from './model-summary.js'
40
45
  export type { CompactionVerificationOptions } from './verifier.js'
41
46
 
42
47
  export {
@@ -4,10 +4,18 @@ import type {
4
4
  FileSlot,
5
5
  PinSlot,
6
6
  PlanSlot,
7
+ RestorableState,
7
8
  ToolResultSlot,
8
9
  WorkingState,
9
10
  } from './types.js'
10
11
 
12
+ /** Skills kept for restoring; the oldest is dropped past this. */
13
+ export const MAX_RESTORABLE_SKILLS = 8
14
+ /** Files kept for restoring; the oldest is dropped past this. */
15
+ export const MAX_RESTORABLE_FILES = 12
16
+ /** Characters of one skill or file kept for restoring (a little over the 5,000 tokens a restore shows, so the cut is visible). */
17
+ export const MAX_RESTORABLE_CHARS = 24_000
18
+
11
19
  /** Pins kept at most; the oldest is dropped past this, and the drop is counted. */
12
20
  export const MAX_PINS = 40
13
21
  /** Characters one pin may carry; a pin is a fact, not a document. */
@@ -23,6 +31,10 @@ export function truncateStateText(text: string, max: number): string {
23
31
  return `${head}${marker}`
24
32
  }
25
33
 
34
+ function normalizeRestorablePath(path: string): string {
35
+ return path.trim().replace(/^\.\//, '')
36
+ }
37
+
26
38
  function createEmptyState(): WorkingState {
27
39
  return {
28
40
  task: '',
@@ -90,6 +102,47 @@ export class WorkingStateManager {
90
102
  }
91
103
  }
92
104
 
105
+ private restorableState(): RestorableState {
106
+ if (!this.state.restorable) this.state.restorable = { skills: [], files: [] }
107
+ return this.state.restorable
108
+ }
109
+
110
+ /**
111
+ * Remember a skill's instructions so a compaction can put them back.
112
+ * `append` adds a later page of a skill that arrives in pages.
113
+ */
114
+ recordSkillBody(name: string, body: string, append = false): void {
115
+ const key = name.trim()
116
+ if (key.length === 0 || body.trim().length === 0) return
117
+ const restorable = this.restorableState()
118
+ const index = restorable.skills.findIndex((skill) => skill.name === key)
119
+ const previous = index >= 0 ? restorable.skills[index] : undefined
120
+ const joined = append && previous ? `${previous.body}${body}` : body
121
+ if (index >= 0) restorable.skills.splice(index, 1)
122
+ restorable.skills.push({ name: key, body: joined.slice(0, MAX_RESTORABLE_CHARS) })
123
+ while (restorable.skills.length > MAX_RESTORABLE_SKILLS) restorable.skills.shift()
124
+ }
125
+
126
+ /** Remember what a read returned so a compaction can put it back. */
127
+ recordFileText(path: string, text: string): void {
128
+ const key = normalizeRestorablePath(path)
129
+ if (key.length === 0 || text.trim().length === 0) return
130
+ const restorable = this.restorableState()
131
+ const index = restorable.files.findIndex((file) => file.path === key)
132
+ if (index >= 0) restorable.files.splice(index, 1)
133
+ restorable.files.push({ path: key, text: text.slice(0, MAX_RESTORABLE_CHARS) })
134
+ while (restorable.files.length > MAX_RESTORABLE_FILES) restorable.files.shift()
135
+ }
136
+
137
+ /** A file that was changed after it was read no longer has a body worth restoring. */
138
+ forgetFileText(path: string): void {
139
+ const files = this.state.restorable?.files
140
+ if (!files) return
141
+ const key = normalizeRestorablePath(path)
142
+ const index = files.findIndex((file) => file.path === key)
143
+ if (index >= 0) files.splice(index, 1)
144
+ }
145
+
93
146
  addDecision(decision: string): void {
94
147
  this.pushWithEviction('decisions', this.state.decisions, decision, this.config.maxListSize)
95
148
  }
@@ -16,7 +16,13 @@ import {
16
16
  extractFromUserMessage,
17
17
  } from './extractor.js'
18
18
  import { WorkingStateManager } from './manager.js'
19
+ import {
20
+ type CompactionSummaryRouter,
21
+ replaceableSummaries,
22
+ summarizeWithModel,
23
+ } from './model-summary.js'
19
24
  import { planCompaction } from './plan.js'
25
+ import { recordRestorable, renderRestoredContext } from './restore.js'
20
26
  import { findRetainedIndices } from './retention.js'
21
27
  import { buildCompactionMessage, isCompactionMessage } from './summary.js'
22
28
  import { type CompactionVerificationOptions, buildVerifiedSummary } from './verifier.js'
@@ -69,6 +75,35 @@ export interface CompactNowInput extends CompactionVerificationOptions {
69
75
  * model at the originals ({@link COMPACTION_RECOVERY_NOTE}). Absent adds none.
70
76
  */
71
77
  readonly recoveryNote?: string
78
+ /** Text the host wants carried across, such as where its plan file is; added to the restored context. */
79
+ readonly restoreNote?: string
80
+ /**
81
+ * Names the model that writes the summary. Its tokens come back in
82
+ * {@link CompactionResult.usage}. Absent, or when its call fails, the
83
+ * summary is built from the extracted state as before.
84
+ */
85
+ readonly summaryRoute?: CompactionSummaryRouter
86
+ }
87
+
88
+ /** The model-written summary of `span` for a host-triggered pass, if one can be had. */
89
+ async function modelWrittenBody(
90
+ input: CompactNowInput,
91
+ manager: WorkingStateManager,
92
+ span: readonly Message[],
93
+ earlier: readonly Message[],
94
+ onUsage: (usage: TokenUsage) => void,
95
+ ): Promise<string | undefined> {
96
+ return summarizeWithModel({
97
+ manager,
98
+ olderMessages: span,
99
+ previousSummaries: replaceableSummaries(earlier),
100
+ config: input.config,
101
+ resolveRoute: input.summaryRoute,
102
+ onUsage,
103
+ signal: input.signal,
104
+ streamIdleTimeoutMs: input.streamIdleTimeoutMs,
105
+ instructions: input.instructions,
106
+ })
72
107
  }
73
108
 
74
109
  async function publishManualCompaction(
@@ -116,6 +151,23 @@ function splice(
116
151
  return { messages: [...preservedSystem, summary, ...retainedOlder, ...recentMessages], summary }
117
152
  }
118
153
 
154
+ /** The summary with the loaded skills and read files put back after it. */
155
+ function withRestoredContext(
156
+ body: string,
157
+ manager: WorkingStateManager,
158
+ input: CompactNowInput,
159
+ ): string {
160
+ const window = resolveContextWindow(
161
+ input.contextWindowTokens ?? input.config.contextWindowTokens,
162
+ input.model,
163
+ )
164
+ const restored = renderRestoredContext(manager.getState(), {
165
+ contextWindowTokens: window.tokens,
166
+ ...(input.restoreNote ? { hostNote: input.restoreNote } : {}),
167
+ })
168
+ return restored ? `${body}\n\n${restored}` : body
169
+ }
170
+
119
171
  /** Build the state a host-triggered pass is about to replace. */
120
172
  function populateWorkingState(
121
173
  manager: WorkingStateManager,
@@ -124,6 +176,7 @@ function populateWorkingState(
124
176
  ): void {
125
177
  let firstUser = true
126
178
  const toolNames = new Map<string, string>()
179
+ const toolInputs = new Map<string, unknown>()
127
180
 
128
181
  for (const message of messages) {
129
182
  switch (message.role) {
@@ -139,17 +192,26 @@ function populateWorkingState(
139
192
  if (message.content) extractFromAssistantMessage(manager, message.content, config)
140
193
  for (const call of message.toolCalls ?? []) {
141
194
  toolNames.set(call.id, call.function.name)
195
+ try {
196
+ toolInputs.set(call.id, JSON.parse(call.function.arguments))
197
+ } catch {
198
+ // Unparseable arguments restore nothing.
199
+ }
142
200
  extractFromToolCall(manager, call.function.name, call.function.arguments)
143
201
  }
144
202
  break
145
- case 'tool':
146
- extractFromToolResult(
147
- manager,
148
- toolNames.get(message.toolCallId) ?? 'tool',
149
- toolResultToText(message.content),
150
- message.isError === true,
151
- )
203
+ case 'tool': {
204
+ const toolName = toolNames.get(message.toolCallId) ?? 'tool'
205
+ const text = toolResultToText(message.content)
206
+ extractFromToolResult(manager, toolName, text, message.isError === true)
207
+ recordRestorable(manager, {
208
+ toolName,
209
+ input: toolInputs.get(message.toolCallId),
210
+ output: text,
211
+ success: message.isError !== true,
212
+ })
152
213
  break
214
+ }
153
215
  case 'system':
154
216
  break
155
217
  }
@@ -200,25 +262,28 @@ export async function compactNow(input: CompactNowInput): Promise<CompactionResu
200
262
  const manager = new WorkingStateManager(input.config)
201
263
  populateWorkingState(manager, plan.olderMessages, input.config)
202
264
  let usage: TokenUsage = { ...EMPTY_TOKEN_USAGE }
203
- const body = await buildVerifiedSummary(
204
- manager,
205
- [...plan.olderMessages],
206
- input.provider,
207
- input.config,
208
- (reported) => {
209
- usage = accumulateTokenUsage(usage, reported)
210
- },
211
- input.model ?? '',
212
- {
213
- signal: input.signal,
214
- streamIdleTimeoutMs: input.streamIdleTimeoutMs,
215
- instructions: input.instructions,
216
- },
217
- )
265
+ const onUsage = (reported: TokenUsage) => {
266
+ usage = accumulateTokenUsage(usage, reported)
267
+ }
268
+ const body =
269
+ (await modelWrittenBody(input, manager, plan.olderMessages, plan.systemMessages, onUsage)) ??
270
+ (await buildVerifiedSummary(
271
+ manager,
272
+ [...plan.olderMessages],
273
+ input.provider,
274
+ input.config,
275
+ onUsage,
276
+ input.model ?? '',
277
+ {
278
+ signal: input.signal,
279
+ streamIdleTimeoutMs: input.streamIdleTimeoutMs,
280
+ instructions: input.instructions,
281
+ },
282
+ ))
218
283
 
219
284
  const { messages, summary } = splice(
220
285
  preservedSystem,
221
- body,
286
+ withRestoredContext(body, manager, input),
222
287
  retainedOlder,
223
288
  plan.recentMessages,
224
289
  input.recoveryNote,
@@ -230,7 +295,6 @@ export async function compactNow(input: CompactNowInput): Promise<CompactionResu
230
295
  usage,
231
296
  })
232
297
  }
233
-
234
298
  export interface CompactRegionInput extends CompactNowInput {
235
299
  /** First index to summarise, inclusive. */
236
300
  readonly start: number
@@ -293,25 +357,31 @@ export async function compactRegion(input: CompactRegionInput): Promise<Compacti
293
357
  const manager = new WorkingStateManager(input.config)
294
358
  populateWorkingState(manager, messages.slice(start, end), input.config)
295
359
  let usage: TokenUsage = { ...EMPTY_TOKEN_USAGE }
296
- const body = await buildVerifiedSummary(
297
- manager,
298
- messages.slice(start, end),
299
- input.provider,
300
- input.config,
301
- (reported) => {
302
- usage = accumulateTokenUsage(usage, reported)
303
- },
304
- input.model ?? '',
305
- {
306
- signal: input.signal,
307
- streamIdleTimeoutMs: input.streamIdleTimeoutMs,
308
- instructions: input.instructions,
309
- },
310
- )
360
+ const onUsage = (reported: TokenUsage) => {
361
+ usage = accumulateTokenUsage(usage, reported)
362
+ }
363
+ const body =
364
+ (await modelWrittenBody(input, manager, messages.slice(start, end), [], onUsage)) ??
365
+ (await buildVerifiedSummary(
366
+ manager,
367
+ messages.slice(start, end),
368
+ input.provider,
369
+ input.config,
370
+ onUsage,
371
+ input.model ?? '',
372
+ {
373
+ signal: input.signal,
374
+ streamIdleTimeoutMs: input.streamIdleTimeoutMs,
375
+ instructions: input.instructions,
376
+ },
377
+ ))
311
378
 
312
379
  // Same cross-run ownership as compactNow: a selected region has been
313
380
  // replaced outside a turn, so its only surviving account is pinned.
314
- const summary = { ...buildCompactionMessage(body, input.recoveryNote), retain: true }
381
+ const summary = {
382
+ ...buildCompactionMessage(withRestoredContext(body, manager, input), input.recoveryNote),
383
+ retain: true,
384
+ }
315
385
  const out = [...messages.slice(0, start), summary, ...retainedSelected, ...messages.slice(end)]
316
386
 
317
387
  // Checked after the splice, not only before it. The edges being