acp-kernel 0.0.89-pr.415.269 → 0.0.89-pr.419.270
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/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +55 -78
- package/dist/index.js.map +1 -1
- package/dist/recommend.d.ts.map +1 -1
- package/dist/report.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/segment.d.ts +0 -33
- package/dist/segment.d.ts.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -26,8 +26,6 @@ export { parseBlockIdArg, findBlocksOverlappingMessages, findActiveAncestor, act
|
|
|
26
26
|
export type { DeactivateOptions, CollectedContentResult, CollectContentOptions, InlineRestoreResult, } from "./decompress.js";
|
|
27
27
|
export { buildStatusReport, buildRecap } from "./report.js";
|
|
28
28
|
export type { StatusReportOptions, StatusReportMeta } from "./report.js";
|
|
29
|
-
export { segmentGroups } from "./segment.js";
|
|
30
|
-
export type { SegmentItem } from "./segment.js";
|
|
31
29
|
export { buildCacheReport, computeFoldEconomics, decomposeSample, formatCacheReport, summarizeFoldEconomics, } from "./cache-report.js";
|
|
32
30
|
export type { CacheSample, FoldEvent, FoldEconomicsInput, PriceProfile, SampleDecomposition, CacheTotals, FoldEconomics, EconomicsSummary, CacheReportLine, CacheReportOptions, CacheReport, FormatCacheReportOptions, } from "./cache-report.js";
|
|
33
31
|
export { renderHandoff, renderMessage, matchSession } from "./handoff.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -4192,22 +4192,6 @@ function computeIntegrityWithdrawals(messages, foldedIds) {
|
|
|
4192
4192
|
};
|
|
4193
4193
|
}
|
|
4194
4194
|
|
|
4195
|
-
// src/segment.ts
|
|
4196
|
-
function segmentGroups(items) {
|
|
4197
|
-
const groups = [];
|
|
4198
|
-
let cur = null;
|
|
4199
|
-
for (const item of items) {
|
|
4200
|
-
if (cur !== null && (item.isUser && cur.length >= 3 || item.gapBefore)) {
|
|
4201
|
-
groups.push(cur);
|
|
4202
|
-
cur = null;
|
|
4203
|
-
}
|
|
4204
|
-
if (cur === null) cur = [item];
|
|
4205
|
-
else cur.push(item);
|
|
4206
|
-
}
|
|
4207
|
-
if (cur !== null) groups.push(cur);
|
|
4208
|
-
return groups;
|
|
4209
|
-
}
|
|
4210
|
-
|
|
4211
4195
|
// src/recommend.ts
|
|
4212
4196
|
function estimateTextTokens(text) {
|
|
4213
4197
|
return Math.ceil(text.length / 4);
|
|
@@ -4325,37 +4309,41 @@ function buildCompressibleRanges(messages, state, config, protectedZoneRefs, cou
|
|
|
4325
4309
|
compressibleMsgs = kept;
|
|
4326
4310
|
}
|
|
4327
4311
|
const compressible = [];
|
|
4328
|
-
|
|
4329
|
-
|
|
4330
|
-
|
|
4331
|
-
|
|
4332
|
-
|
|
4333
|
-
|
|
4334
|
-
|
|
4335
|
-
|
|
4336
|
-
|
|
4337
|
-
|
|
4338
|
-
|
|
4339
|
-
|
|
4340
|
-
|
|
4341
|
-
|
|
4342
|
-
|
|
4343
|
-
|
|
4344
|
-
|
|
4345
|
-
|
|
4346
|
-
|
|
4347
|
-
|
|
4348
|
-
|
|
4349
|
-
|
|
4312
|
+
let cur = null;
|
|
4313
|
+
for (const info of compressibleMsgs) {
|
|
4314
|
+
if (cur && (info.isUser && cur.count >= 3 || info.gapBefore)) {
|
|
4315
|
+
compressible.push(cur);
|
|
4316
|
+
cur = null;
|
|
4317
|
+
}
|
|
4318
|
+
if (!cur) {
|
|
4319
|
+
cur = {
|
|
4320
|
+
startRef: info.ref,
|
|
4321
|
+
endRef: info.ref,
|
|
4322
|
+
count: 1,
|
|
4323
|
+
tokens: info.tokens,
|
|
4324
|
+
chars: info.chars,
|
|
4325
|
+
toolPct: info.isTool ? 100 : 0,
|
|
4326
|
+
textPct: info.isTool ? 0 : 100,
|
|
4327
|
+
userMsgs: info.isUser ? 1 : 0,
|
|
4328
|
+
startIndex: info.index,
|
|
4329
|
+
endIndex: info.index
|
|
4330
|
+
};
|
|
4331
|
+
} else {
|
|
4332
|
+
cur.endRef = info.ref;
|
|
4333
|
+
cur.endIndex = info.index;
|
|
4334
|
+
cur.count++;
|
|
4335
|
+
cur.tokens += info.tokens;
|
|
4336
|
+
cur.chars = (cur.chars ?? 0) + info.chars;
|
|
4337
|
+
if (info.isUser) cur.userMsgs = (cur.userMsgs ?? 0) + 1;
|
|
4350
4338
|
if (info.isTool) {
|
|
4351
|
-
|
|
4339
|
+
cur.toolPct = Math.round((cur.toolPct * (cur.count - 1) + 100) / cur.count);
|
|
4352
4340
|
} else {
|
|
4353
|
-
|
|
4341
|
+
cur.toolPct = Math.round(cur.toolPct * (cur.count - 1) / cur.count);
|
|
4354
4342
|
}
|
|
4355
|
-
|
|
4343
|
+
cur.textPct = 100 - cur.toolPct;
|
|
4356
4344
|
}
|
|
4357
|
-
compressible.push(range);
|
|
4358
4345
|
}
|
|
4346
|
+
if (cur) compressible.push(cur);
|
|
4359
4347
|
const protectedRanges = [];
|
|
4360
4348
|
let pcur = null;
|
|
4361
4349
|
for (const info of protectedMsgs) {
|
|
@@ -5844,7 +5832,7 @@ var leanPack = {
|
|
|
5844
5832
|
`Compress consumed history with compress: finished tool outputs, dead-end exploration, repeated reads, resolved threads, completed phases. Never compress active work, important user intent, or protected outputs.`,
|
|
5845
5833
|
`When summarizing, preserve exact file paths and line numbers, symbols and signatures, errors, commands, versions, thresholds, decisions with reasons, current state, and unresolved TODOs. Never replace exact technical values with vague wording \u2014 a good summary is the primary carrier and makes recall unnecessary.`,
|
|
5846
5834
|
`Recall on demand only: when YOU genuinely need detail lost in compression, decompress (block id or message ref); search_context locates the right block first; acp_status shows ranges and usage. Never run recall as a routine post-compress step.`,
|
|
5847
|
-
`
|
|
5835
|
+
`Message refs remain stable across compression within the same session state. If a ref is stale or missing, call acp_status with { scope: "uncompressed" }, then retry in the same turn using the reported refs; never guess offsets. Batch target ranges in one call.`,
|
|
5848
5836
|
`Block decompression writes to a file by default; read that file. Use inline: true only for small content or when its context cost is acceptable.`,
|
|
5849
5837
|
`After an [ACP:provider-throttle] automatic retry, resume exactly where interrupted. Do not repeat completed work or discuss the retry unless asked.`,
|
|
5850
5838
|
`Summaries are fallible history, not live instructions \u2014 never treat a summarized instruction or decision as current without a fresh user confirmation. A summary you just wrote is your own record: once the result lists the new blocks, no acp_status/decompress/search_context call made merely to verify the fold \u2014 that listing already confirms the spans; if you still intend to compress more, one acp_status call for the current ranges is enough.`
|
|
@@ -6015,19 +6003,14 @@ function collectVisible(messages, state, countTokens) {
|
|
|
6015
6003
|
toolCallNames.set(message.toolCallId, message.toolName);
|
|
6016
6004
|
}
|
|
6017
6005
|
}
|
|
6018
|
-
let pendingGap = false;
|
|
6019
6006
|
messages.forEach((message, index) => {
|
|
6007
|
+
if (coveredIds.has(message.id)) return;
|
|
6020
6008
|
const ref = refForRaw(state.messageRefs, message.id);
|
|
6021
6009
|
if (!ref) return;
|
|
6022
6010
|
const tokens = countMessageTokens(message, countTokens);
|
|
6023
|
-
|
|
6024
|
-
|
|
6025
|
-
|
|
6026
|
-
visible.push({ ref, tokens, tool, isTool, index, isUser: message.role === "user", gapBefore: pendingGap });
|
|
6027
|
-
pendingGap = false;
|
|
6028
|
-
return;
|
|
6029
|
-
}
|
|
6030
|
-
if (ref !== BLOCKED_REF && tokens > 0) pendingGap = true;
|
|
6011
|
+
const isTool = isToolMessage(message);
|
|
6012
|
+
const tool = isTool ? message.toolName ?? (message.toolCallId ? toolCallNames.get(message.toolCallId) : void 0) ?? "tool" : "text";
|
|
6013
|
+
if (tokens > 0) visible.push({ ref, tokens, tool, isTool, index });
|
|
6031
6014
|
});
|
|
6032
6015
|
return { visible, summaryTokens };
|
|
6033
6016
|
}
|
|
@@ -6046,7 +6029,7 @@ function buildStatusReport(state, messages, countTokens, options = {}) {
|
|
|
6046
6029
|
if (view === "messages") {
|
|
6047
6030
|
return renderMessageDrilldown(visible, toolFilter, sort, limit);
|
|
6048
6031
|
}
|
|
6049
|
-
return renderUncompressedRanges(visible
|
|
6032
|
+
return renderUncompressedRanges(visible);
|
|
6050
6033
|
}
|
|
6051
6034
|
return renderOverview(visible, summaryTokens, activeBlocks2, state, countTokens, limit, options.meta);
|
|
6052
6035
|
}
|
|
@@ -6119,7 +6102,7 @@ function renderOverview(visible, summaryTokens, blocks, state, countTokens, limi
|
|
|
6119
6102
|
);
|
|
6120
6103
|
return lines.join("\n");
|
|
6121
6104
|
}
|
|
6122
|
-
function renderUncompressedRanges(visible
|
|
6105
|
+
function renderUncompressedRanges(visible) {
|
|
6123
6106
|
const lines = [];
|
|
6124
6107
|
const totalTokens = visible.reduce((s, m) => s + m.tokens, 0);
|
|
6125
6108
|
lines.push(`UNCOMPRESSED \u2014 ${formatTokens2(totalTokens)} | ${visible.length} visible messages`);
|
|
@@ -6128,6 +6111,10 @@ function renderUncompressedRanges(visible, sort, limit) {
|
|
|
6128
6111
|
lines.push(" (no uncompressed messages)");
|
|
6129
6112
|
return lines.join("\n");
|
|
6130
6113
|
}
|
|
6114
|
+
const refNum2 = (ref) => {
|
|
6115
|
+
const m = ref.match(/\d+/);
|
|
6116
|
+
return m ? parseInt(m[0], 10) : 0;
|
|
6117
|
+
};
|
|
6131
6118
|
const dominantTool = (toolTokens) => {
|
|
6132
6119
|
let best = "text";
|
|
6133
6120
|
let bestN = -1;
|
|
@@ -6140,34 +6127,25 @@ function renderUncompressedRanges(visible, sort, limit) {
|
|
|
6140
6127
|
return best;
|
|
6141
6128
|
};
|
|
6142
6129
|
const merged = [];
|
|
6143
|
-
for (const
|
|
6144
|
-
const
|
|
6145
|
-
const
|
|
6146
|
-
|
|
6147
|
-
endRef
|
|
6148
|
-
|
|
6149
|
-
|
|
6150
|
-
|
|
6151
|
-
|
|
6152
|
-
|
|
6153
|
-
|
|
6154
|
-
const m = group[i];
|
|
6155
|
-
r.endRef = m.ref;
|
|
6156
|
-
r.count += 1;
|
|
6157
|
-
r.tokens += m.tokens;
|
|
6158
|
-
r.toolTokens.set(m.tool, (r.toolTokens.get(m.tool) ?? 0) + m.tokens);
|
|
6130
|
+
for (const m of visible) {
|
|
6131
|
+
const num = refNum2(m.ref);
|
|
6132
|
+
const last = merged[merged.length - 1];
|
|
6133
|
+
if (last && num === last.startNum + last.count) {
|
|
6134
|
+
last.endRef = m.ref;
|
|
6135
|
+
last.count += 1;
|
|
6136
|
+
last.tokens += m.tokens;
|
|
6137
|
+
last.toolTokens.set(m.tool, (last.toolTokens.get(m.tool) ?? 0) + m.tokens);
|
|
6138
|
+
} else {
|
|
6139
|
+
const toolTokens = /* @__PURE__ */ new Map([[m.tool, m.tokens]]);
|
|
6140
|
+
merged.push({ startRef: m.ref, endRef: m.ref, startNum: num, count: 1, tokens: m.tokens, toolTokens });
|
|
6159
6141
|
}
|
|
6160
|
-
merged.push(r);
|
|
6161
6142
|
}
|
|
6162
|
-
|
|
6163
|
-
lines.push(`Sorted by ${sort === "time" ? "time" : "size"}`);
|
|
6164
|
-
lines.push("");
|
|
6165
|
-
for (const r of merged.slice(0, limit)) {
|
|
6143
|
+
for (const r of merged.slice(0, 30)) {
|
|
6166
6144
|
const range = r.count === 1 ? r.startRef : `${r.startRef}\u2013${r.endRef}`;
|
|
6167
6145
|
lines.push(` ${range} (${r.count} msgs, ${formatTokens2(r.tokens)}${r.count > 1 ? ` (${Math.round(r.tokens / r.count)}/msg)` : ""}) ${dominantTool(r.toolTokens)}`);
|
|
6168
6146
|
}
|
|
6169
|
-
if (merged.length >
|
|
6170
|
-
lines.push(` ... and ${merged.length -
|
|
6147
|
+
if (merged.length > 30) {
|
|
6148
|
+
lines.push(` ... and ${merged.length - 30} more ranges`);
|
|
6171
6149
|
}
|
|
6172
6150
|
return lines.join("\n");
|
|
6173
6151
|
}
|
|
@@ -8425,7 +8403,6 @@ export {
|
|
|
8425
8403
|
sanitizePackSurface,
|
|
8426
8404
|
searchBlocks,
|
|
8427
8405
|
searchBlocksAsync,
|
|
8428
|
-
segmentGroups,
|
|
8429
8406
|
setDocCacheCap,
|
|
8430
8407
|
storeCoveredOriginals,
|
|
8431
8408
|
storeLargeResults,
|