@namzu/sdk 1.2.0 → 1.4.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 (127) hide show
  1. package/CHANGELOG.md +99 -0
  2. package/dist/compaction/__tests__/verifier-empty-reply.test.d.ts +12 -0
  3. package/dist/compaction/__tests__/verifier-empty-reply.test.d.ts.map +1 -0
  4. package/dist/compaction/__tests__/verifier-empty-reply.test.js +73 -0
  5. package/dist/compaction/__tests__/verifier-empty-reply.test.js.map +1 -0
  6. package/dist/compaction/verifier.d.ts.map +1 -1
  7. package/dist/compaction/verifier.js +10 -1
  8. package/dist/compaction/verifier.js.map +1 -1
  9. package/dist/config/__tests__/compaction-budget-schema.test.d.ts +18 -0
  10. package/dist/config/__tests__/compaction-budget-schema.test.d.ts.map +1 -0
  11. package/dist/config/__tests__/compaction-budget-schema.test.js +96 -0
  12. package/dist/config/__tests__/compaction-budget-schema.test.js.map +1 -0
  13. package/dist/config/runtime.d.ts.map +1 -1
  14. package/dist/config/runtime.js +20 -11
  15. package/dist/config/runtime.js.map +1 -1
  16. package/dist/manager/run/persistence.d.ts +2 -1
  17. package/dist/manager/run/persistence.d.ts.map +1 -1
  18. package/dist/manager/run/persistence.js +3 -1
  19. package/dist/manager/run/persistence.js.map +1 -1
  20. package/dist/provider/__tests__/errors.test.d.ts +2 -0
  21. package/dist/provider/__tests__/errors.test.d.ts.map +1 -0
  22. package/dist/provider/__tests__/errors.test.js +61 -0
  23. package/dist/provider/__tests__/errors.test.js.map +1 -0
  24. package/dist/provider/__tests__/registry.test.d.ts +5 -0
  25. package/dist/provider/__tests__/registry.test.d.ts.map +1 -1
  26. package/dist/provider/__tests__/registry.test.js +186 -1
  27. package/dist/provider/__tests__/registry.test.js.map +1 -1
  28. package/dist/provider/errors.d.ts +108 -0
  29. package/dist/provider/errors.d.ts.map +1 -0
  30. package/dist/provider/errors.js +311 -0
  31. package/dist/provider/errors.js.map +1 -0
  32. package/dist/provider/index.d.ts +3 -1
  33. package/dist/provider/index.d.ts.map +1 -1
  34. package/dist/provider/index.js +2 -1
  35. package/dist/provider/index.js.map +1 -1
  36. package/dist/provider/registry.d.ts +81 -1
  37. package/dist/provider/registry.d.ts.map +1 -1
  38. package/dist/provider/registry.js +173 -7
  39. package/dist/provider/registry.js.map +1 -1
  40. package/dist/public-runtime.d.ts +11 -11
  41. package/dist/public-runtime.d.ts.map +1 -1
  42. package/dist/public-runtime.js +11 -11
  43. package/dist/public-runtime.js.map +1 -1
  44. package/dist/registry/tool/execute.d.ts.map +1 -1
  45. package/dist/registry/tool/execute.js +5 -2
  46. package/dist/registry/tool/execute.js.map +1 -1
  47. package/dist/registry/tool/execute.test.js +11 -0
  48. package/dist/registry/tool/execute.test.js.map +1 -1
  49. package/dist/runtime/query/__tests__/stream-recovery.test.js +54 -1
  50. package/dist/runtime/query/__tests__/stream-recovery.test.js.map +1 -1
  51. package/dist/runtime/query/iteration/phases/compaction-safe-cut.test.d.ts +32 -0
  52. package/dist/runtime/query/iteration/phases/compaction-safe-cut.test.d.ts.map +1 -0
  53. package/dist/runtime/query/iteration/phases/compaction-safe-cut.test.js +152 -0
  54. package/dist/runtime/query/iteration/phases/compaction-safe-cut.test.js.map +1 -0
  55. package/dist/runtime/query/iteration/phases/compaction.d.ts.map +1 -1
  56. package/dist/runtime/query/iteration/phases/compaction.js +52 -12
  57. package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
  58. package/dist/runtime/query/iteration/stream-turn.d.ts.map +1 -1
  59. package/dist/runtime/query/iteration/stream-turn.js +11 -5
  60. package/dist/runtime/query/iteration/stream-turn.js.map +1 -1
  61. package/dist/runtime/query/result.d.ts.map +1 -1
  62. package/dist/runtime/query/result.js +11 -1
  63. package/dist/runtime/query/result.js.map +1 -1
  64. package/dist/tools/builtins/__tests__/edit.test.js +54 -0
  65. package/dist/tools/builtins/__tests__/edit.test.js.map +1 -1
  66. package/dist/tools/builtins/edit.d.ts +1 -1
  67. package/dist/tools/builtins/edit.d.ts.map +1 -1
  68. package/dist/tools/builtins/edit.js +11 -13
  69. package/dist/tools/builtins/edit.js.map +1 -1
  70. package/dist/tools/coordinator/__tests__/task-list.test.js +14 -0
  71. package/dist/tools/coordinator/__tests__/task-list.test.js.map +1 -1
  72. package/dist/tools/coordinator/agent.d.ts +6 -8
  73. package/dist/tools/coordinator/agent.d.ts.map +1 -1
  74. package/dist/tools/coordinator/agent.js.map +1 -1
  75. package/dist/tools/coordinator/index.d.ts.map +1 -1
  76. package/dist/tools/coordinator/index.js +11 -32
  77. package/dist/tools/coordinator/index.js.map +1 -1
  78. package/dist/tools/defineTool.d.ts +1 -0
  79. package/dist/tools/defineTool.d.ts.map +1 -1
  80. package/dist/tools/defineTool.js +1 -0
  81. package/dist/tools/defineTool.js.map +1 -1
  82. package/dist/types/provider/config.d.ts +33 -0
  83. package/dist/types/provider/config.d.ts.map +1 -1
  84. package/dist/types/provider/error.d.ts +22 -0
  85. package/dist/types/provider/error.d.ts.map +1 -0
  86. package/dist/types/provider/error.js +2 -0
  87. package/dist/types/provider/error.js.map +1 -0
  88. package/dist/types/provider/index.d.ts +2 -1
  89. package/dist/types/provider/index.d.ts.map +1 -1
  90. package/dist/types/run/entity.d.ts +2 -0
  91. package/dist/types/run/entity.d.ts.map +1 -1
  92. package/dist/types/run/events.d.ts +2 -0
  93. package/dist/types/run/events.d.ts.map +1 -1
  94. package/dist/types/run/events.js.map +1 -1
  95. package/dist/types/tool/index.d.ts +6 -0
  96. package/dist/types/tool/index.d.ts.map +1 -1
  97. package/package.json +1 -1
  98. package/src/compaction/__tests__/verifier-empty-reply.test.ts +96 -0
  99. package/src/compaction/verifier.ts +10 -1
  100. package/src/config/__tests__/compaction-budget-schema.test.ts +114 -0
  101. package/src/config/runtime.ts +20 -11
  102. package/src/manager/run/persistence.ts +3 -1
  103. package/src/provider/__tests__/errors.test.ts +85 -0
  104. package/src/provider/__tests__/registry.test.ts +266 -1
  105. package/src/provider/errors.ts +344 -0
  106. package/src/provider/index.ts +22 -1
  107. package/src/provider/registry.ts +202 -7
  108. package/src/public-runtime.ts +55 -10
  109. package/src/registry/tool/execute.test.ts +14 -0
  110. package/src/registry/tool/execute.ts +5 -2
  111. package/src/runtime/query/__tests__/stream-recovery.test.ts +64 -1
  112. package/src/runtime/query/iteration/phases/compaction-safe-cut.test.ts +186 -0
  113. package/src/runtime/query/iteration/phases/compaction.ts +54 -12
  114. package/src/runtime/query/iteration/stream-turn.ts +11 -6
  115. package/src/runtime/query/result.ts +11 -1
  116. package/src/tools/builtins/__tests__/edit.test.ts +76 -0
  117. package/src/tools/builtins/edit.ts +12 -12
  118. package/src/tools/coordinator/__tests__/task-list.test.ts +16 -0
  119. package/src/tools/coordinator/agent.ts +6 -8
  120. package/src/tools/coordinator/index.ts +11 -34
  121. package/src/tools/defineTool.ts +2 -0
  122. package/src/types/provider/config.ts +36 -0
  123. package/src/types/provider/error.ts +29 -0
  124. package/src/types/provider/index.ts +8 -0
  125. package/src/types/run/entity.ts +2 -0
  126. package/src/types/run/events.ts +7 -1
  127. package/src/types/tool/index.ts +6 -0
@@ -1 +1 @@
1
- {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/registry/tool/execute.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACX,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAElB,MAAM,2BAA2B,CAAA;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,YAAY,EAAE,mBAAmB,EAAE,CAAA;AAmCnC,qBAAa,YAAa,SAAQ,eAAe,CAAC,cAAc,CAAC;IAChE,OAAO,CAAC,YAAY,CAA2C;IAC/D,OAAO,CAAC,UAAU,CAAC,CAAgB;gBAEvB,MAAM,CAAC,EAAE,kBAAkB;IAK9B,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI;IAChD,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,gBAAgB,GAAG,IAAI;IACrE,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,YAAY,CAAC,EAAE,gBAAgB,GAAG,IAAI;IA2BjF,OAAO,CAAC,WAAW;IAaV,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAK/B,KAAK,IAAI,IAAI;IAKtB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI;IAQ/B,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI;IAQ5B,UAAU,IAAI,IAAI;IASlB,YAAY,IAAI,OAAO;IAOvB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAI/C;;;;;;;;;;;;;;;;;;;OAmBG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,EAAE;IAkC/C,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAelD,cAAc,IAAI,MAAM,GAAG,IAAI;IAK/B,SAAS,IAAI,MAAM,EAAE;IAIrB,eAAe,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM;IAuC7C,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE;IAyBjD,gBAAgB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE;IAIlD,OAAO,CACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,OAAO,EACjB,OAAO,EAAE,WAAW,GAClB,OAAO,CAAC,mBAAmB,CAAC;IA4I/B,OAAO,CAAC,iBAAiB;CAIzB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,MAAM,CAO9E"}
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/registry/tool/execute.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACX,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAElB,MAAM,2BAA2B,CAAA;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,YAAY,EAAE,mBAAmB,EAAE,CAAA;AAmCnC,qBAAa,YAAa,SAAQ,eAAe,CAAC,cAAc,CAAC;IAChE,OAAO,CAAC,YAAY,CAA2C;IAC/D,OAAO,CAAC,UAAU,CAAC,CAAgB;gBAEvB,MAAM,CAAC,EAAE,kBAAkB;IAK9B,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI;IAChD,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,gBAAgB,GAAG,IAAI;IACrE,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,YAAY,CAAC,EAAE,gBAAgB,GAAG,IAAI;IA2BjF,OAAO,CAAC,WAAW;IAaV,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAK/B,KAAK,IAAI,IAAI;IAKtB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI;IAQ/B,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI;IAQ5B,UAAU,IAAI,IAAI;IASlB,YAAY,IAAI,OAAO;IAOvB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAI/C;;;;;;;;;;;;;;;;;;;OAmBG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,EAAE;IAkC/C,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAelD,cAAc,IAAI,MAAM,GAAG,IAAI;IAK/B,SAAS,IAAI,MAAM,EAAE;IAIrB,eAAe,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM;IAuC7C,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE;IAyBjD,gBAAgB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE;IAIlD,OAAO,CACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,OAAO,EACjB,OAAO,EAAE,WAAW,GAClB,OAAO,CAAC,mBAAmB,CAAC;IA+I/B,OAAO,CAAC,iBAAiB;CAIzB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,MAAM,CAO9E"}
@@ -311,9 +311,12 @@ Executable tool names, descriptions, and JSON input schemas are attached through
311
311
  !Array.isArray(rawInput) &&
312
312
  Object.keys(rawInput).length === 0);
313
313
  const requiredHint = describeRequiredInput(tool.inputSchema);
314
+ const recoveryHint = tool.validationErrorHint?.trim()
315
+ ? ` ${tool.validationErrorHint.trim()}`
316
+ : '';
314
317
  const enrichedMessage = isEmptyInput
315
- ? `Tool "${toolName}" was called with no arguments. ${requiredHint} Retry the call with the required parameters populated.`
316
- : `Validation failed for "${toolName}": ${errorMessage}. ${requiredHint}`;
318
+ ? `Tool "${toolName}" was called with no arguments. ${requiredHint}${recoveryHint} Retry the call with the required parameters populated.`
319
+ : `Validation failed for "${toolName}": ${errorMessage}. ${requiredHint}${recoveryHint}`;
317
320
  this.log.error(`Tool input validation failed: ${toolName}`, {
318
321
  errors: errorMessage,
319
322
  empty: isEmptyInput,
@@ -1 +1 @@
1
- {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/registry/tool/execute.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/registry/tool/execute.ts"],"names":[],"mappings":"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"}
@@ -369,6 +369,17 @@ describe('ToolRegistry — execute', () => {
369
369
  expect(result.error).toMatch(/Validation failed for "strict"/);
370
370
  expect(result.error).toContain('Expected string, received number');
371
371
  });
372
+ it('appends a tool-specific recovery hint to validation failures', async () => {
373
+ const r = new ToolRegistry();
374
+ r.register(makeTool('strict', {
375
+ inputSchema: z.object({ required: z.string() }),
376
+ validationErrorHint: 'Retry with {"required":"value"}.',
377
+ }));
378
+ const result = await r.execute('strict', { required: 123 }, makeContext());
379
+ expect(result.success).toBe(false);
380
+ expect(result.error).toContain('Required: required: string.');
381
+ expect(result.error).toContain('Retry with {"required":"value"}.');
382
+ });
372
383
  it('empty-args validation lists required params with descriptions', async () => {
373
384
  const r = new ToolRegistry();
374
385
  r.register(makeTool('needs', {
@@ -1 +1 @@
1
- {"version":3,"file":"execute.test.js","sourceRoot":"","sources":["../../../src/registry/tool/execute.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute.test.js","sourceRoot":"","sources":["../../../src/registry/tool/execute.test.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { tmpdir } from 'node:os';
3
3
  import { join } from 'node:path';
4
4
  import { afterEach, describe, expect, it, vi } from 'vitest';
5
5
  import { z } from 'zod';
6
+ import { ProviderRequestError } from '../../../provider/errors.js';
6
7
  import { ToolRegistry } from '../../../registry/tool/execute.js';
7
8
  import { createUserMessage } from '../../../types/message/index.js';
8
9
  import { drainQuery } from '../index.js';
@@ -61,6 +62,18 @@ class IdleDuringToolInputProvider {
61
62
  };
62
63
  }
63
64
  }
65
+ class ClassifiedFailureProvider {
66
+ id = 'classified-failure';
67
+ name = 'Classified Failure Provider';
68
+ async *chatStream() {
69
+ yield await Promise.reject(new ProviderRequestError({
70
+ kind: 'throttle',
71
+ providerId: 'classified-failure',
72
+ status: 429,
73
+ retryAfterMs: 2000,
74
+ }));
75
+ }
76
+ }
64
77
  describe('query stream recovery', () => {
65
78
  let workdirs = [];
66
79
  afterEach(async () => {
@@ -69,7 +82,10 @@ describe('query stream recovery', () => {
69
82
  });
70
83
  it('turns an idle stream with partial tool JSON into retryable tool feedback', async () => {
71
84
  const provider = new IdleDuringToolInputProvider();
72
- const actualWrite = vi.fn(async () => ({ success: true, output: 'should not run' }));
85
+ const actualWrite = vi.fn(async () => ({
86
+ success: true,
87
+ output: 'should not run',
88
+ }));
73
89
  const tools = new ToolRegistry();
74
90
  tools.register({
75
91
  name: 'write_file',
@@ -122,5 +138,42 @@ describe('query stream recovery', () => {
122
138
  expect(completedTool?.type === 'tool_completed' ? completedTool.result : '').toContain('call was cut off');
123
139
  expect(completedTool?.type === 'tool_completed' ? completedTool.result : '').toContain('extend it with edit using insertLine');
124
140
  });
141
+ it('preserves classified provider metadata through the primary run boundary', async () => {
142
+ const workingDirectory = await mkdtemp(join(tmpdir(), 'namzu-provider-error-'));
143
+ workdirs.push(workingDirectory);
144
+ const events = [];
145
+ const run = await drainQuery({
146
+ provider: new ClassifiedFailureProvider(),
147
+ tools: new ToolRegistry(),
148
+ runConfig: {
149
+ model: 'mock-model',
150
+ timeoutMs: 5_000,
151
+ tokenBudget: 100_000,
152
+ maxIterations: 1,
153
+ maxResponseTokens: 256,
154
+ },
155
+ agentId: 'agent_test',
156
+ agentName: 'Test Agent',
157
+ messages: [createUserMessage('fail with classified metadata')],
158
+ workingDirectory,
159
+ sessionId: 'ses_provider_error',
160
+ threadId: 'thd_provider_error',
161
+ projectId: 'prj_provider_error',
162
+ tenantId: 'tnt_provider_error',
163
+ }, (event) => {
164
+ events.push(event);
165
+ });
166
+ expect(run.status).toBe('failed');
167
+ expect(run.lastProviderError).toEqual({
168
+ kind: 'throttle',
169
+ providerId: 'classified-failure',
170
+ status: 429,
171
+ retryAfterMs: 2000,
172
+ });
173
+ expect(events.find((event) => event.type === 'run_failed')).toMatchObject({
174
+ type: 'run_failed',
175
+ providerError: run.lastProviderError,
176
+ });
177
+ });
125
178
  });
126
179
  //# sourceMappingURL=stream-recovery.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stream-recovery.test.js","sourceRoot":"","sources":["../../../../src/runtime/query/__tests__/stream-recovery.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream-recovery.test.js","sourceRoot":"","sources":["../../../../src/runtime/query/__tests__/stream-recovery.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * The UNBOUNDED CUT.
3
+ *
4
+ * `runCompactionCheck` snaps the naive recent-window boundary
5
+ * (`messages.length - keepRecentMessages`) FORWARD via `findSafeTrimIndex` so a
6
+ * tool pair is never split. But `findSafeTrimIndex` only ever walks forward, and
7
+ * its leading-`tool`-message skip has no stop short of `messages.length` — so
8
+ * whenever the whole suffix from the naive index to the end is `tool` messages,
9
+ * the cut lands ON `messages.length`, `recentMessages` comes back EMPTY, and
10
+ * `[...preservedSystem, compactionMessage]` replaces the ENTIRE recent window.
11
+ * What is left is a transcript with no non-system message at all.
12
+ *
13
+ * The shape that produces it: ONE assistant turn that fans out
14
+ * `>= keepRecentMessages` parallel tool calls, measured at the START of the next
15
+ * iteration — which is exactly where `runCompactionCheck` runs (iteration/index.ts,
16
+ * after `refreshWorkingMemory`, before the model call), i.e. immediately after
17
+ * those results were appended.
18
+ *
19
+ * The `olderMessages.length < 1` guard at :117 cannot fire: `olderMessages` is
20
+ * the whole transcript in exactly this situation.
21
+ *
22
+ * Symmetrically, when the naive index lands BELOW `systemMessages.length` the
23
+ * cut sits inside the system prefix and the leading prompts are duplicated into
24
+ * `recentMessages`.
25
+ *
26
+ * The invariant these tests pin is the one a cut taken AT OR BELOW naive gives
27
+ * for free: a pass never removes more than the naive cut would, so at least
28
+ * `keepRecentMessages` original messages survive verbatim — or, when no safe cut
29
+ * exists at all, the pass is skipped and the transcript is untouched.
30
+ */
31
+ export {};
32
+ //# sourceMappingURL=compaction-safe-cut.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compaction-safe-cut.test.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/query/iteration/phases/compaction-safe-cut.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG"}
@@ -0,0 +1,152 @@
1
+ /**
2
+ * The UNBOUNDED CUT.
3
+ *
4
+ * `runCompactionCheck` snaps the naive recent-window boundary
5
+ * (`messages.length - keepRecentMessages`) FORWARD via `findSafeTrimIndex` so a
6
+ * tool pair is never split. But `findSafeTrimIndex` only ever walks forward, and
7
+ * its leading-`tool`-message skip has no stop short of `messages.length` — so
8
+ * whenever the whole suffix from the naive index to the end is `tool` messages,
9
+ * the cut lands ON `messages.length`, `recentMessages` comes back EMPTY, and
10
+ * `[...preservedSystem, compactionMessage]` replaces the ENTIRE recent window.
11
+ * What is left is a transcript with no non-system message at all.
12
+ *
13
+ * The shape that produces it: ONE assistant turn that fans out
14
+ * `>= keepRecentMessages` parallel tool calls, measured at the START of the next
15
+ * iteration — which is exactly where `runCompactionCheck` runs (iteration/index.ts,
16
+ * after `refreshWorkingMemory`, before the model call), i.e. immediately after
17
+ * those results were appended.
18
+ *
19
+ * The `olderMessages.length < 1` guard at :117 cannot fire: `olderMessages` is
20
+ * the whole transcript in exactly this situation.
21
+ *
22
+ * Symmetrically, when the naive index lands BELOW `systemMessages.length` the
23
+ * cut sits inside the system prefix and the leading prompts are duplicated into
24
+ * `recentMessages`.
25
+ *
26
+ * The invariant these tests pin is the one a cut taken AT OR BELOW naive gives
27
+ * for free: a pass never removes more than the naive cut would, so at least
28
+ * `keepRecentMessages` original messages survive verbatim — or, when no safe cut
29
+ * exists at all, the pass is skipped and the transcript is untouched.
30
+ */
31
+ import { describe, expect, it, vi } from 'vitest';
32
+ import { WorkingStateManager } from '../../../../compaction/manager.js';
33
+ import { CompactionConfigSchema } from '../../../../config/runtime.js';
34
+ import { createAssistantMessage, createSystemMessage, createToolMessage, createUserMessage, } from '../../../../types/message/index.js';
35
+ import { runCompactionCheck } from './compaction.js';
36
+ function makeLogger() {
37
+ const self = {
38
+ info: vi.fn(),
39
+ warn: vi.fn(),
40
+ error: vi.fn(),
41
+ debug: vi.fn(),
42
+ child: vi.fn(),
43
+ };
44
+ self.child = vi.fn(() => self);
45
+ return self;
46
+ }
47
+ /** Long enough that a handful of messages overflow a tiny budget. */
48
+ const FILLER = 'x'.repeat(200);
49
+ const KEEP_RECENT = 4;
50
+ function makeCtx(opts) {
51
+ const config = CompactionConfigSchema.parse({
52
+ strategy: 'structured',
53
+ llmVerification: false,
54
+ keepRecentMessages: KEEP_RECENT,
55
+ ...(opts.contextWindowTokens !== undefined
56
+ ? { contextWindowTokens: opts.contextWindowTokens }
57
+ : {}),
58
+ });
59
+ const manager = new WorkingStateManager(config);
60
+ manager.addDecision('built the report as .docx');
61
+ return {
62
+ runConfig: { tokenBudget: opts.tokenBudget ?? 0 },
63
+ compactionConfig: config,
64
+ workingStateManager: manager,
65
+ log: makeLogger(),
66
+ runMgr: {
67
+ id: 'run_1',
68
+ currentIteration: 3,
69
+ messages: opts.messages,
70
+ },
71
+ };
72
+ }
73
+ function toolCall(id) {
74
+ return { id, type: 'function', function: { name: 'read', arguments: '{}' } };
75
+ }
76
+ /** How many of the ORIGINAL messages survived the pass, by identity. */
77
+ function survivorCount(before, after) {
78
+ const kept = new Set(after);
79
+ return before.filter((m) => kept.has(m)).length;
80
+ }
81
+ /**
82
+ * The exact shape the iteration loop holds when `runCompactionCheck` runs: the
83
+ * user's turn, one assistant that fanned out four parallel tool calls, and the
84
+ * four results that just landed. The next thing that happens is the model call —
85
+ * with whatever this function leaves behind.
86
+ */
87
+ function buildParallelFanOutTail() {
88
+ return [
89
+ createSystemMessage(`STATIC SYSTEM PROMPT ${FILLER}`, 'cache'),
90
+ createUserMessage(`please rename the heading to Q3 ${FILLER}`),
91
+ createAssistantMessage(`reading the sources ${FILLER}`, [
92
+ toolCall('a'),
93
+ toolCall('b'),
94
+ toolCall('c'),
95
+ toolCall('d'),
96
+ ]),
97
+ createToolMessage(`result a ${FILLER}`, 'a'),
98
+ createToolMessage(`result b ${FILLER}`, 'b'),
99
+ createToolMessage(`result c ${FILLER}`, 'c'),
100
+ createToolMessage(`result d ${FILLER}`, 'd'),
101
+ ];
102
+ }
103
+ describe('compaction — the unbounded cut', () => {
104
+ it('keeps at least keepRecentMessages messages verbatim when the tail is a parallel tool fan-out', async () => {
105
+ const messages = buildParallelFanOutTail();
106
+ const before = [...messages];
107
+ const ctx = makeCtx({ messages, contextWindowTokens: 100 });
108
+ await runCompactionCheck(ctx);
109
+ expect(survivorCount(before, messages)).toBeGreaterThanOrEqual(KEEP_RECENT);
110
+ });
111
+ it('never leaves a system-only transcript (nothing for the next turn to answer)', async () => {
112
+ const messages = buildParallelFanOutTail();
113
+ const ctx = makeCtx({ messages, contextWindowTokens: 100 });
114
+ await runCompactionCheck(ctx);
115
+ const nonSystem = messages.filter((m) => m.role !== 'system');
116
+ expect(nonSystem.length).toBeGreaterThan(0);
117
+ });
118
+ it('skips the pass, leaving the transcript intact, when no safe cut exists at or below naive', async () => {
119
+ // System prefix, then a single assistant fanning out six parallel calls.
120
+ // Every candidate boundary at or below naive splits that one pair-set, so
121
+ // there is nothing safe to cut to — skipping beats deleting the turn.
122
+ const ids = ['a', 'b', 'c', 'd', 'e', 'f'];
123
+ const messages = [
124
+ createSystemMessage(`STATIC SYSTEM PROMPT ${FILLER}`, 'cache'),
125
+ createAssistantMessage(`fanning out ${FILLER}`, ids.map(toolCall)),
126
+ ...ids.map((id) => createToolMessage(`result ${id} ${FILLER}`, id)),
127
+ ];
128
+ const before = [...messages];
129
+ const ctx = makeCtx({ messages, contextWindowTokens: 100 });
130
+ await runCompactionCheck(ctx);
131
+ expect(messages).toEqual(before);
132
+ });
133
+ it('does not duplicate the leading system prompts when the naive cut lands inside them', async () => {
134
+ // Legacy (tokenBudget) path: five leading system messages and only three
135
+ // conversational ones, so naive = 8 - 4 = 4 < systemMessages.length = 5.
136
+ const messages = [
137
+ createSystemMessage(`SYS-1 ${FILLER}`, 'cache'),
138
+ createSystemMessage(`SYS-2 ${FILLER}`),
139
+ createSystemMessage(`SYS-3 ${FILLER}`),
140
+ createSystemMessage(`SYS-4 ${FILLER}`),
141
+ createSystemMessage(`SYS-5 UNIQUE-MARKER ${FILLER}`),
142
+ createUserMessage(`user 0 ${FILLER}`),
143
+ createAssistantMessage(`assistant 0 ${FILLER}`),
144
+ createUserMessage(`user 1 ${FILLER}`),
145
+ ];
146
+ const ctx = makeCtx({ messages, tokenBudget: 100 });
147
+ await runCompactionCheck(ctx);
148
+ const marker = messages.filter((m) => m.content?.includes('UNIQUE-MARKER'));
149
+ expect(marker).toHaveLength(1);
150
+ });
151
+ });
152
+ //# sourceMappingURL=compaction-safe-cut.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compaction-safe-cut.test.js","sourceRoot":"","sources":["../../../../../src/runtime/query/iteration/phases/compaction-safe-cut.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"compaction.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/query/iteration/phases/compaction.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAMpD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE/E;AA6BD,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwI7E"}
1
+ {"version":3,"file":"compaction.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/query/iteration/phases/compaction.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAMpD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE/E;AA6BD,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkL7E"}
@@ -86,18 +86,58 @@ export async function runCompactionCheck(ctx) {
86
86
  }
87
87
  if (systemMessages.length === 0)
88
88
  return;
89
- // Tool-pair atomicity guard. A naive cut at `length - keepRecentMessages`
90
- // can land BETWEEN an assistant-with-toolCalls (which would be dropped into
91
- // `olderMessages`) and its `tool` results (kept in `recentMessages`),
92
- // leaving orphaned `tool_result` blocks at the head of the recent window.
93
- // The Anthropic provider then emits a `tool_result` with no matching
94
- // `tool_use` and the API rejects the next turn with a 400 so compaction,
95
- // whose whole job is to keep a long run alive, instead kills it. Snap the
96
- // boundary FORWARD to a safe point (existing `findSafeTrimIndex`, previously
97
- // only wired to the unused ConversationManager strategy classes) so no pair
98
- // is split. Any message this moves out of the recent window is already
99
- // represented in the extracted WorkingState the summary is built from.
100
- const keepStart = findSafeTrimIndex(messages, messages.length - config.keepRecentMessages);
89
+ // Tool-pair atomicity guard, taken DOWNWARD.
90
+ //
91
+ // A naive cut at `length - keepRecentMessages` can land BETWEEN an
92
+ // assistant-with-toolCalls (dropped into `olderMessages`) and its `tool`
93
+ // results (kept in `recentMessages`), leaving orphaned `tool_result` blocks at
94
+ // the head of the recent window. The Anthropic provider then emits a
95
+ // `tool_result` with no matching `tool_use` and the API rejects the next turn
96
+ // with a 400 — so compaction, whose whole job is to keep a long run alive,
97
+ // instead kills it.
98
+ //
99
+ // Snapping FORWARD via `findSafeTrimIndex` fixes the orphan and introduces a
100
+ // worse failure. That walk skips leading `tool` messages with no stop short of
101
+ // `messages.length`, so whenever the entire suffix from the naive index is
102
+ // `tool` messages, the boundary lands ON `messages.length`: `recentMessages`
103
+ // comes back EMPTY and `[...preservedSystem, compactionMessage]` replaces the
104
+ // whole recent window. The model is then asked to answer a conversation whose
105
+ // last turn — including the user's own message — was deleted, and it answers a
106
+ // question nobody asked. The shape is routine, not exotic: one assistant turn
107
+ // fanning out `>= keepRecentMessages` parallel tool calls, measured at the
108
+ // start of the very next iteration, which is exactly where this runs. The
109
+ // `olderMessages` floor guard below cannot catch it either — in that shape
110
+ // `olderMessages` is the whole transcript.
111
+ //
112
+ // So take the LARGEST safe boundary AT OR BELOW naive instead. A cut that low
113
+ // removes no more than the naive cut would, so at least `keepRecentMessages`
114
+ // original messages always survive verbatim, and the transcript can never be
115
+ // reduced to system messages alone. `findSafeTrimIndex(m, k) === k` is the
116
+ // safety predicate — reused rather than reimplemented, so the function itself
117
+ // (public API, other callers) is untouched.
118
+ const naiveKeepStart = messages.length - config.keepRecentMessages;
119
+ let keepStart = -1;
120
+ for (let candidate = naiveKeepStart; candidate > systemMessages.length; candidate--) {
121
+ if (findSafeTrimIndex(messages, candidate) === candidate) {
122
+ keepStart = candidate;
123
+ break;
124
+ }
125
+ }
126
+ // No safe boundary at or below naive. Either every candidate splits a pair-set
127
+ // (one assistant fanning out more calls than the recent window holds), or naive
128
+ // itself sits inside the leading system prefix — which would otherwise
129
+ // duplicate those prompts into `recentMessages`. Skipping costs one iteration's
130
+ // worth of context headroom; cutting anyway costs the live turn. The condition
131
+ // is self-clearing: the next assistant message moves naive past the tool block.
132
+ if (keepStart < 0) {
133
+ ctx.log.debug('Skipping compaction — no safe cut at or below the naive boundary', {
134
+ runId: ctx.runMgr.id,
135
+ naiveKeepStart,
136
+ systemMessages: systemMessages.length,
137
+ messageCount: messages.length,
138
+ });
139
+ return;
140
+ }
101
141
  const recentMessages = messages.slice(keepStart);
102
142
  const olderMessages = messages.slice(systemMessages.length, keepStart);
103
143
  // D7: nothing meaningful to compact — skip instead of thrashing the