@animalabs/context-manager 0.5.1 → 0.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/context-manager.d.ts.map +1 -1
- package/dist/src/context-manager.js +25 -6
- package/dist/src/context-manager.js.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/message-store.d.ts.map +1 -1
- package/dist/src/message-store.js +7 -36
- package/dist/src/message-store.js.map +1 -1
- package/dist/src/normalize-tool-messages.d.ts +73 -0
- package/dist/src/normalize-tool-messages.d.ts.map +1 -0
- package/dist/src/normalize-tool-messages.js +128 -0
- package/dist/src/normalize-tool-messages.js.map +1 -0
- package/dist/src/strategies/autobiographical.d.ts +53 -0
- package/dist/src/strategies/autobiographical.d.ts.map +1 -1
- package/dist/src/strategies/autobiographical.js +178 -43
- package/dist/src/strategies/autobiographical.js.map +1 -1
- package/dist/src/types/strategy.d.ts +17 -6
- package/dist/src/types/strategy.d.ts.map +1 -1
- package/dist/src/types/strategy.js.map +1 -1
- package/dist/test/chunker-tool-boundary.test.d.ts +12 -0
- package/dist/test/chunker-tool-boundary.test.d.ts.map +1 -0
- package/dist/test/chunker-tool-boundary.test.js +89 -0
- package/dist/test/chunker-tool-boundary.test.js.map +1 -0
- package/dist/test/compression-shape-invariants.test.d.ts +22 -0
- package/dist/test/compression-shape-invariants.test.d.ts.map +1 -0
- package/dist/test/compression-shape-invariants.test.js +312 -0
- package/dist/test/compression-shape-invariants.test.js.map +1 -0
- package/dist/test/normalize-tool-messages.test.d.ts +2 -0
- package/dist/test/normalize-tool-messages.test.d.ts.map +1 -0
- package/dist/test/normalize-tool-messages.test.js +168 -0
- package/dist/test/normalize-tool-messages.test.js.map +1 -0
- package/dist/test/recall-cap.test.d.ts +2 -0
- package/dist/test/recall-cap.test.d.ts.map +1 -0
- package/dist/test/recall-cap.test.js +103 -0
- package/dist/test/recall-cap.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/context-manager.ts +25 -6
- package/src/index.ts +3 -0
- package/src/message-store.ts +12 -38
- package/src/normalize-tool-messages.ts +132 -0
- package/src/strategies/autobiographical.ts +194 -41
- package/src/types/strategy.ts +17 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autobiographical.d.ts","sourceRoot":"","sources":["../../../src/strategies/autobiographical.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"autobiographical.d.ts","sourceRoot":"","sources":["../../../src/strategies/autobiographical.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { NativeFormatter } from '@animalabs/membrane';
|
|
2
2
|
import { DEFAULT_AUTOBIOGRAPHICAL_CONFIG } from '../types/index.js';
|
|
3
3
|
import { getSummaryParentId } from '../types/strategy.js';
|
|
4
|
+
import { splitMixedToolMessages, stripUnpairedToolBlocks } from '../normalize-tool-messages.js';
|
|
4
5
|
import { appendFileSync, mkdirSync } from 'node:fs';
|
|
5
6
|
import { dirname } from 'node:path';
|
|
6
7
|
import { Picker, OverBudgetError } from '../adaptive/picker.js';
|
|
@@ -622,6 +623,36 @@ export class AutobiographicalStrategy {
|
|
|
622
623
|
* Mark a summary as merged into a higher-level summary, updating the
|
|
623
624
|
* chronicle copy at the same index. Index is the position in `this.summaries`.
|
|
624
625
|
*/
|
|
626
|
+
/**
|
|
627
|
+
* Token-budget cap for recall-pair summary sets. Walks newest→oldest
|
|
628
|
+
* keeping each summary that still fits; skips (rather than breaks at)
|
|
629
|
+
* a summary that would put us over budget, so a heterogeneous set
|
|
630
|
+
* fills the remaining slots with smaller siblings instead of stopping
|
|
631
|
+
* at the first oversized one. The kept set is re-sorted chronologically.
|
|
632
|
+
*
|
|
633
|
+
* Used by both `compressChunkHierarchical` (the L1 compression prompt
|
|
634
|
+
* recall pairs) and `executeMerge` (the merge prompt recall pairs).
|
|
635
|
+
* Without the cap, both sites grow their recall set linearly with
|
|
636
|
+
* conversation length and overflow the 200k window around the same
|
|
637
|
+
* point — observed empirically at ~chunk 118 in a 4000-message import.
|
|
638
|
+
*
|
|
639
|
+
* Per-summary +50 token overhead accounts for the "[CM] Recall memory
|
|
640
|
+
* <id>." question turn that wraps each recall body. Rough but defensive.
|
|
641
|
+
*/
|
|
642
|
+
capRecallPairs(summariesChronological, maxTokens) {
|
|
643
|
+
const kept = [];
|
|
644
|
+
let total = 0;
|
|
645
|
+
for (let i = summariesChronological.length - 1; i >= 0; i--) {
|
|
646
|
+
const s = summariesChronological[i];
|
|
647
|
+
const est = (s.tokens ?? Math.ceil(s.content.length / 4)) + 50;
|
|
648
|
+
if (total + est > maxTokens)
|
|
649
|
+
continue;
|
|
650
|
+
kept.push(s);
|
|
651
|
+
total += est;
|
|
652
|
+
}
|
|
653
|
+
kept.reverse();
|
|
654
|
+
return { kept, keptTokens: total };
|
|
655
|
+
}
|
|
625
656
|
setMergedInto(entry, mergedIntoId) {
|
|
626
657
|
entry.mergedInto = mergedIntoId;
|
|
627
658
|
if (!this.store)
|
|
@@ -1316,32 +1347,17 @@ export class AutobiographicalStrategy {
|
|
|
1316
1347
|
const priorSummaries = this.summaries
|
|
1317
1348
|
.filter((s) => !s.mergedInto)
|
|
1318
1349
|
.sort((a, b) => a.sourceRange.first.localeCompare(b.sourceRange.first));
|
|
1319
|
-
// Token-budget cap
|
|
1320
|
-
// exclusion the
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
// preferred; the kept set is re-sorted chronologically below. We
|
|
1324
|
-
// always keep at least one summary even if it's larger than the
|
|
1325
|
-
// budget — otherwise a single oversized summary would leave the
|
|
1326
|
-
// model with no compressed context at all.
|
|
1327
|
-
const recallBudget = this.config.compressionRecallBudgetTokens ?? 150_000;
|
|
1328
|
-
const keptSummaries = [];
|
|
1329
|
-
let recallTokens = 0;
|
|
1330
|
-
for (let i = priorSummaries.length - 1; i >= 0; i--) {
|
|
1331
|
-
const s = priorSummaries[i];
|
|
1332
|
-
const approxTokens = Math.ceil(s.content.length / 4);
|
|
1333
|
-
if (recallTokens + approxTokens > recallBudget && keptSummaries.length > 0)
|
|
1334
|
-
break;
|
|
1335
|
-
keptSummaries.push(s);
|
|
1336
|
-
recallTokens += approxTokens;
|
|
1337
|
-
}
|
|
1338
|
-
keptSummaries.reverse();
|
|
1350
|
+
// Token-budget cap (see capRecallPairs). Defense-in-depth: even with
|
|
1351
|
+
// merged exclusion the unmerged frontier can be large at extreme scale.
|
|
1352
|
+
const recallBudget = this.config.compressionRecallBudgetTokens ?? 100_000;
|
|
1353
|
+
const { kept: keptSummaries, keptTokens: recallTokens } = this.capRecallPairs(priorSummaries, recallBudget);
|
|
1339
1354
|
if (keptSummaries.length < priorSummaries.length) {
|
|
1340
1355
|
const dropped = priorSummaries.length - keptSummaries.length;
|
|
1341
|
-
console.warn(`autobio: recall-pair budget capped (${keptSummaries.length}/${priorSummaries.length} summaries kept, ` +
|
|
1356
|
+
console.warn(`autobio: compression recall-pair budget capped (${keptSummaries.length}/${priorSummaries.length} summaries kept, ` +
|
|
1342
1357
|
`~${recallTokens} tokens, budget ${recallBudget}; ${dropped} oldest dropped this compression).`);
|
|
1343
1358
|
logCompressionCall({
|
|
1344
1359
|
event: 'recall-budget-capped',
|
|
1360
|
+
site: 'compression',
|
|
1345
1361
|
kept: keptSummaries.length,
|
|
1346
1362
|
total: priorSummaries.length,
|
|
1347
1363
|
tokens: recallTokens,
|
|
@@ -1394,10 +1410,20 @@ export class AutobiographicalStrategy {
|
|
|
1394
1410
|
// raw messages reappear.
|
|
1395
1411
|
const chunkFirstId = chunk.messages[0]?.id;
|
|
1396
1412
|
if (chunkFirstId) {
|
|
1413
|
+
// Expand summary sourceIds down to leaf message IDs. An L2 in
|
|
1414
|
+
// `priorSummaries` has L1 IDs in its sourceIds, not message IDs;
|
|
1415
|
+
// a flat walk would miss every message it transitively covers.
|
|
1416
|
+
// (Bug 10 — same shape as executeMerge.)
|
|
1417
|
+
const summariesById = new Map();
|
|
1418
|
+
for (const s of this.summaries)
|
|
1419
|
+
summariesById.set(s.id, s);
|
|
1397
1420
|
const priorSummaryMessageIds = new Set();
|
|
1421
|
+
for (const s of this.summaries) {
|
|
1422
|
+
if (s.level === 1)
|
|
1423
|
+
this.expandSummaryToLeafMessageIds(s, summariesById, priorSummaryMessageIds);
|
|
1424
|
+
}
|
|
1398
1425
|
for (const s of priorSummaries) {
|
|
1399
|
-
|
|
1400
|
-
priorSummaryMessageIds.add(id);
|
|
1426
|
+
this.expandSummaryToLeafMessageIds(s, summariesById, priorSummaryMessageIds);
|
|
1401
1427
|
}
|
|
1402
1428
|
const chunkStartIdx = allMessages.findIndex((m) => m.id === chunkFirstId);
|
|
1403
1429
|
for (let i = headEndIdx; i < chunkStartIdx && i < allMessages.length; i++) {
|
|
@@ -1433,8 +1459,19 @@ export class AutobiographicalStrategy {
|
|
|
1433
1459
|
participant: 'Context Manager',
|
|
1434
1460
|
content: [{ type: 'text', text: instructionText }],
|
|
1435
1461
|
});
|
|
1462
|
+
// Split any bundled tool_use+tool_result cycles in non-user turns into
|
|
1463
|
+
// separate API-shape messages. claude.ai-imported sessions carry these
|
|
1464
|
+
// bundles (a tool_result in an assistant message rejects the request);
|
|
1465
|
+
// for fresh imports the conhost importer splits at ingest time, but
|
|
1466
|
+
// already-warmed sessions hit this path. See `normalize-tool-messages.ts`.
|
|
1467
|
+
const split = splitMixedToolMessages(llmMessages);
|
|
1436
1468
|
// Collapse consecutive same-participant messages for API compliance
|
|
1437
|
-
const collapsed = this.collapseConsecutiveMessages(
|
|
1469
|
+
const collapsed = this.collapseConsecutiveMessages(split);
|
|
1470
|
+
// Defense in depth against chunk boundaries that cut a tool cycle
|
|
1471
|
+
// (rebuildChunks tries to avoid this, but covers only the most common
|
|
1472
|
+
// case). The API rejects any tool_use that isn't immediately followed
|
|
1473
|
+
// by its tool_result, and any tool_result that doesn't follow a use.
|
|
1474
|
+
const cleaned = stripUnpairedToolBlocks(collapsed);
|
|
1438
1475
|
// NO system prompt. The agent's identity is established by the head
|
|
1439
1476
|
// (the actual conversation opening — user message + agent reply that
|
|
1440
1477
|
// grounded the original instance). A system prompt would (a) add a
|
|
@@ -1444,7 +1481,7 @@ export class AutobiographicalStrategy {
|
|
|
1444
1481
|
// structural one carried by the conversation itself. Anchoring
|
|
1445
1482
|
// identity by the chronicle's actual head is more honest.
|
|
1446
1483
|
const request = {
|
|
1447
|
-
messages:
|
|
1484
|
+
messages: cleaned.map(m => ({ participant: m.participant, content: m.content })),
|
|
1448
1485
|
config: {
|
|
1449
1486
|
model: this.config.compressionModel ?? 'claude-sonnet-4-20250514',
|
|
1450
1487
|
maxTokens: Math.round(targetTokens * 1.5),
|
|
@@ -1492,7 +1529,7 @@ export class AutobiographicalStrategy {
|
|
|
1492
1529
|
logCompressionCall({
|
|
1493
1530
|
operation: 'compress_l1',
|
|
1494
1531
|
system: null,
|
|
1495
|
-
messages:
|
|
1532
|
+
messages: cleaned.map((m) => ({
|
|
1496
1533
|
participant: m.participant,
|
|
1497
1534
|
// Flatten content for logging — store text only; binary content
|
|
1498
1535
|
// would bloat the log and isn't typical in compression input.
|
|
@@ -1703,17 +1740,21 @@ export class AutobiographicalStrategy {
|
|
|
1703
1740
|
const m = allMessages[i];
|
|
1704
1741
|
llmMessages.push({ participant: m.participant, content: m.content });
|
|
1705
1742
|
}
|
|
1706
|
-
// ---- 1b. PRIOR
|
|
1707
|
-
//
|
|
1708
|
-
// aren't part of the merge tree.
|
|
1709
|
-
|
|
1710
|
-
|
|
1743
|
+
// ---- 1b. PRIOR RECALL PAIRS (chronologically before merge range) ----
|
|
1744
|
+
// The unmerged frontier of summaries whose source range is before the
|
|
1745
|
+
// merge range and which aren't part of the merge tree. Originally this
|
|
1746
|
+
// was filtered to `level === 1` (the "L1 fidelity for prior content"
|
|
1747
|
+
// intent) but at 4000+ messages that produces hundreds of L1s and
|
|
1748
|
+
// overflows the model window. Switching to the unmerged frontier
|
|
1749
|
+
// (`!mergedInto`) lets a merged L1 drop out in favour of its L2/L3
|
|
1750
|
+
// parent — the same rule used everywhere else and now in
|
|
1751
|
+
// `compressChunkHierarchical`. The cap below is the defense-in-depth.
|
|
1752
|
+
const priorSummariesAll = this.summaries
|
|
1753
|
+
.filter((s) => !s.mergedInto)
|
|
1711
1754
|
.filter((s) => {
|
|
1712
|
-
// Exclude any L1 that's an ancestor of our merge target
|
|
1713
1755
|
for (const lid of s.sourceIds)
|
|
1714
1756
|
if (sourceLeafIds.has(lid))
|
|
1715
1757
|
return false;
|
|
1716
|
-
// Include only if it starts strictly before the merge range
|
|
1717
1758
|
const firstIdx = allMessages.findIndex((m) => m.id === s.sourceRange.first);
|
|
1718
1759
|
return firstIdx >= 0 && (mergeStartIdx < 0 || firstIdx < mergeStartIdx);
|
|
1719
1760
|
})
|
|
@@ -1722,12 +1763,41 @@ export class AutobiographicalStrategy {
|
|
|
1722
1763
|
const bi = allMessages.findIndex((m) => m.id === b.sourceRange.first);
|
|
1723
1764
|
return ai - bi;
|
|
1724
1765
|
});
|
|
1725
|
-
const
|
|
1726
|
-
|
|
1727
|
-
|
|
1728
|
-
|
|
1766
|
+
const mergeRecallBudget = this.config.compressionRecallBudgetTokens ?? 100_000;
|
|
1767
|
+
const { kept: keptPriorSummaries, keptTokens: mergeRecallTokens } = this.capRecallPairs(priorSummariesAll, mergeRecallBudget);
|
|
1768
|
+
if (keptPriorSummaries.length < priorSummariesAll.length) {
|
|
1769
|
+
const dropped = priorSummariesAll.length - keptPriorSummaries.length;
|
|
1770
|
+
console.warn(`autobio: merge recall-pair budget capped (${keptPriorSummaries.length}/${priorSummariesAll.length} summaries kept, ` +
|
|
1771
|
+
`~${mergeRecallTokens} tokens, budget ${mergeRecallBudget}; ${dropped} oldest dropped this merge).`);
|
|
1772
|
+
logCompressionCall({
|
|
1773
|
+
event: 'recall-budget-capped',
|
|
1774
|
+
site: 'merge',
|
|
1775
|
+
targetLevel,
|
|
1776
|
+
kept: keptPriorSummaries.length,
|
|
1777
|
+
total: priorSummariesAll.length,
|
|
1778
|
+
tokens: mergeRecallTokens,
|
|
1779
|
+
budgetTokens: mergeRecallBudget,
|
|
1780
|
+
});
|
|
1781
|
+
}
|
|
1782
|
+
// The full unmerged-frontier set covers what's "compressed somewhere"
|
|
1783
|
+
// for the raw-middle dedup below — a budget-dropped recall pair
|
|
1784
|
+
// doesn't make its underlying raw messages reappear.
|
|
1785
|
+
//
|
|
1786
|
+
// Critical: `sourceIds` on an L2+ summary points at L1 IDs, not raw
|
|
1787
|
+
// message IDs. The dedup happens against raw message IDs, so we must
|
|
1788
|
+
// recursively expand each summary down to its leaf message IDs.
|
|
1789
|
+
// Without this, every message under any L2 leaks back in as raw text
|
|
1790
|
+
// (Bug 10: 525-message merge requests on a 4234-msg conversation).
|
|
1791
|
+
// Also expand merged L1s as defense in depth.
|
|
1792
|
+
const priorSummaryMessageIds = new Set();
|
|
1793
|
+
for (const s of this.summaries) {
|
|
1794
|
+
if (s.level === 1)
|
|
1795
|
+
this.expandSummaryToLeafMessageIds(s, summariesById, priorSummaryMessageIds);
|
|
1729
1796
|
}
|
|
1730
|
-
for (const s of
|
|
1797
|
+
for (const s of priorSummariesAll) {
|
|
1798
|
+
this.expandSummaryToLeafMessageIds(s, summariesById, priorSummaryMessageIds);
|
|
1799
|
+
}
|
|
1800
|
+
for (const s of keptPriorSummaries) {
|
|
1731
1801
|
llmMessages.push({
|
|
1732
1802
|
participant: 'Context Manager',
|
|
1733
1803
|
content: [{ type: 'text', text: `[CM] Recall memory ${s.id}.` }],
|
|
@@ -1738,12 +1808,12 @@ export class AutobiographicalStrategy {
|
|
|
1738
1808
|
});
|
|
1739
1809
|
}
|
|
1740
1810
|
// Raw middle: any messages between the head window and the merge
|
|
1741
|
-
// range that aren't covered by a prior
|
|
1811
|
+
// range that aren't covered by a prior summary or the merge tree.
|
|
1742
1812
|
// Usually empty (chunking is contiguous).
|
|
1743
1813
|
if (mergeStartIdx >= 0) {
|
|
1744
1814
|
for (let i = headEndIdx; i < mergeStartIdx; i++) {
|
|
1745
1815
|
const m = allMessages[i];
|
|
1746
|
-
if (
|
|
1816
|
+
if (priorSummaryMessageIds.has(m.id))
|
|
1747
1817
|
continue;
|
|
1748
1818
|
if (sourceLeafIds.has(m.id))
|
|
1749
1819
|
continue;
|
|
@@ -1823,12 +1893,15 @@ export class AutobiographicalStrategy {
|
|
|
1823
1893
|
text: mergeInstructionText,
|
|
1824
1894
|
}],
|
|
1825
1895
|
});
|
|
1826
|
-
|
|
1896
|
+
// Same bundled-tool-cycle defense as compressChunkHierarchical.
|
|
1897
|
+
const split = splitMixedToolMessages(llmMessages);
|
|
1898
|
+
const collapsed = this.collapseConsecutiveMessages(split);
|
|
1899
|
+
const cleaned = stripUnpairedToolBlocks(collapsed);
|
|
1827
1900
|
// NO system prompt — identity is established by the head window
|
|
1828
1901
|
// (present at the start of llmMessages above) and by the prior
|
|
1829
1902
|
// recall pairs. Same rationale as compressChunkHierarchical.
|
|
1830
1903
|
const request = {
|
|
1831
|
-
messages:
|
|
1904
|
+
messages: cleaned.map(m => ({ participant: m.participant, content: m.content })),
|
|
1832
1905
|
config: {
|
|
1833
1906
|
model: this.config.compressionModel ?? 'claude-sonnet-4-20250514',
|
|
1834
1907
|
maxTokens: Math.round(targetTokens * 1.5),
|
|
@@ -1883,7 +1956,7 @@ export class AutobiographicalStrategy {
|
|
|
1883
1956
|
logCompressionCall({
|
|
1884
1957
|
operation: `merge_l${targetLevel}`,
|
|
1885
1958
|
system: null,
|
|
1886
|
-
messages:
|
|
1959
|
+
messages: cleaned.map((m) => ({
|
|
1887
1960
|
participant: m.participant,
|
|
1888
1961
|
text: m.content
|
|
1889
1962
|
.filter((b) => b.type === 'text')
|
|
@@ -2436,6 +2509,45 @@ export class AutobiographicalStrategy {
|
|
|
2436
2509
|
return null;
|
|
2437
2510
|
return current;
|
|
2438
2511
|
}
|
|
2512
|
+
/**
|
|
2513
|
+
* Recursively expand a summary's `sourceIds` down to the leaf message IDs
|
|
2514
|
+
* it covers, adding each leaf into `out`.
|
|
2515
|
+
*
|
|
2516
|
+
* Required because `SummaryEntry.sourceIds` are level-relative: an L1's
|
|
2517
|
+
* sourceIds are raw message IDs (sourceLevel=0), but an L2's sourceIds
|
|
2518
|
+
* are L1 IDs (sourceLevel=1), and so on. Any dedup that walks `sourceIds`
|
|
2519
|
+
* directly only works for L1s — once L2+ summaries enter the picture
|
|
2520
|
+
* (which happens as soon as `mergeThreshold` L1s accumulate during
|
|
2521
|
+
* interleaved compression+merge ticks), the dedup silently fails and
|
|
2522
|
+
* already-summarized messages leak back into the request as raw text.
|
|
2523
|
+
* That's how Bug 10 produced 200k+ token merge prompts on a 4234-msg
|
|
2524
|
+
* import.
|
|
2525
|
+
*
|
|
2526
|
+
* Callers should also expand merged L1s (not just the unmerged frontier)
|
|
2527
|
+
* as defense in depth — a stale `mergedInto` pointer or a partially
|
|
2528
|
+
* applied merge shouldn't surface raw messages.
|
|
2529
|
+
*
|
|
2530
|
+
* `visited` guards against pathological cycles in the summary graph (a
|
|
2531
|
+
* corrupted store or a future merge regression that lets a summary
|
|
2532
|
+
* reference itself). The hierarchy is a DAG by construction, but a
|
|
2533
|
+
* stack overflow during compression — exactly when the safety net is
|
|
2534
|
+
* supposed to save the session — is too steep a price for trusting that.
|
|
2535
|
+
*/
|
|
2536
|
+
expandSummaryToLeafMessageIds(summary, summariesById, out, visited = new Set()) {
|
|
2537
|
+
if (visited.has(summary.id))
|
|
2538
|
+
return;
|
|
2539
|
+
visited.add(summary.id);
|
|
2540
|
+
if (summary.sourceLevel === 0) {
|
|
2541
|
+
for (const id of summary.sourceIds)
|
|
2542
|
+
out.add(id);
|
|
2543
|
+
return;
|
|
2544
|
+
}
|
|
2545
|
+
for (const childId of summary.sourceIds) {
|
|
2546
|
+
const child = summariesById.get(childId);
|
|
2547
|
+
if (child)
|
|
2548
|
+
this.expandSummaryToLeafMessageIds(child, summariesById, out, visited);
|
|
2549
|
+
}
|
|
2550
|
+
}
|
|
2439
2551
|
// ============================================================================
|
|
2440
2552
|
// Hierarchical (threshold-driven) path
|
|
2441
2553
|
// ============================================================================
|
|
@@ -2989,6 +3101,16 @@ export class AutobiographicalStrategy {
|
|
|
2989
3101
|
currentTokens += msgTokens;
|
|
2990
3102
|
const shouldClose = currentTokens >= this.config.targetChunkTokens &&
|
|
2991
3103
|
currentChunk.length >= 4;
|
|
3104
|
+
// Don't close a chunk on a message containing a tool_use block —
|
|
3105
|
+
// the matching tool_result lives in the immediately-following user
|
|
3106
|
+
// message, and the Anthropic API rejects a request where a tool_use
|
|
3107
|
+
// isn't immediately followed by its tool_result. Defer the close
|
|
3108
|
+
// by one iteration so the result rides along in the same chunk.
|
|
3109
|
+
// The stripUnpairedToolBlocks runtime pass is a safety net for the
|
|
3110
|
+
// rare case where a tool_use is the very last message in the store.
|
|
3111
|
+
if (shouldClose && this.lastMessageContainsToolUse(currentChunk)) {
|
|
3112
|
+
continue;
|
|
3113
|
+
}
|
|
2992
3114
|
if (shouldClose) {
|
|
2993
3115
|
const chunk = this.createChunk(this.chunks.length, chunkFilteredStart, i + 1, currentChunk, currentTokens, existingCompressed);
|
|
2994
3116
|
this.chunks.push(chunk);
|
|
@@ -3008,6 +3130,19 @@ export class AutobiographicalStrategy {
|
|
|
3008
3130
|
}
|
|
3009
3131
|
}
|
|
3010
3132
|
}
|
|
3133
|
+
/**
|
|
3134
|
+
* Returns true if the last message in the chunk-in-progress contains a
|
|
3135
|
+
* `tool_use` block. Used by `rebuildChunks` to defer chunk closure until
|
|
3136
|
+
* the matching `tool_result` (in the immediately-following user message)
|
|
3137
|
+
* is pulled into the same chunk. See `stripUnpairedToolBlocks` for the
|
|
3138
|
+
* runtime safety net.
|
|
3139
|
+
*/
|
|
3140
|
+
lastMessageContainsToolUse(chunk) {
|
|
3141
|
+
const last = chunk[chunk.length - 1];
|
|
3142
|
+
if (!last)
|
|
3143
|
+
return false;
|
|
3144
|
+
return last.content.some((b) => b.type === 'tool_use');
|
|
3145
|
+
}
|
|
3011
3146
|
createChunk(index, startIndex, endIndex, messages, tokens, existingCompressed) {
|
|
3012
3147
|
const chunk = {
|
|
3013
3148
|
index,
|