@cortexkit/opencode-magic-context 0.44.3 → 0.44.4
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/{derive-budgets-vjmvh6pz.js → derive-budgets-ncwn1jk9.js} +2 -2
- package/dist/features/magic-context/dreamer/map-memories.d.ts.map +1 -1
- package/dist/features/magic-context/dreamer/verify.d.ts.map +1 -1
- package/dist/features/magic-context/memory/embedding-openai.d.ts +1 -0
- package/dist/features/magic-context/memory/embedding-openai.d.ts.map +1 -1
- package/dist/features/magic-context/memory/project-identity.d.ts +5 -4
- package/dist/features/magic-context/memory/project-identity.d.ts.map +1 -1
- package/dist/features/magic-context/storage-db.d.ts +6 -1
- package/dist/features/magic-context/storage-db.d.ts.map +1 -1
- package/dist/features/magic-context/v22-deferred-backfill.d.ts.map +1 -1
- package/dist/hooks/magic-context/compartment-render-epoch.d.ts +12 -1
- package/dist/hooks/magic-context/compartment-render-epoch.d.ts.map +1 -1
- package/dist/hooks/magic-context/drop-stale-reduce-calls.d.ts.map +1 -1
- package/dist/hooks/magic-context/event-resolvers.d.ts +7 -0
- package/dist/hooks/magic-context/event-resolvers.d.ts.map +1 -1
- package/dist/hooks/magic-context/heuristic-cleanup.d.ts.map +1 -1
- package/dist/hooks/magic-context/inject-compartments.d.ts +5 -0
- package/dist/hooks/magic-context/inject-compartments.d.ts.map +1 -1
- package/dist/hooks/magic-context/module-wire.d.ts.map +1 -1
- package/dist/hooks/magic-context/read-session-chunk.d.ts +4 -2
- package/dist/hooks/magic-context/read-session-chunk.d.ts.map +1 -1
- package/dist/hooks/magic-context/read-session-raw.d.ts +2 -2
- package/dist/hooks/magic-context/read-session-raw.d.ts.map +1 -1
- package/dist/hooks/magic-context/tokenizer-calibration.d.ts +1 -1
- package/dist/hooks/magic-context/tool-drop-target.d.ts.map +1 -1
- package/dist/hooks/magic-context/transform-postprocess-phase.d.ts +1 -0
- package/dist/hooks/magic-context/transform-postprocess-phase.d.ts.map +1 -1
- package/dist/hooks/magic-context/transform.d.ts.map +1 -1
- package/dist/{index-q5p1aqvv.js → index-mrc0twf3.js} +10 -4
- package/dist/{index-9y5p0d50.js → index-msqr3x6m.js} +1 -1
- package/dist/{index-y5145x8k.js → index-n96ag4rk.js} +15 -1
- package/dist/{index-dgg5y7er.js → index-qm36k34q.js} +55 -12
- package/dist/{index-yhm60r53.js → index-sqp1hz9v.js} +180 -36
- package/dist/{index-rdsaxnf2.js → index-wprsye9w.js} +1 -1
- package/dist/{index-nf9sk8sh.js → index-zx7pmr39.js} +2 -2
- package/dist/index.js +88 -35
- package/dist/plugin/rpc-handlers.d.ts.map +1 -1
- package/dist/{read-session-chunk-n072mcq4.js → read-session-chunk-339hg90t.js} +2 -2
- package/dist/{recomp-orchestrator-19tr6zya.js → recomp-orchestrator-0ers6smx.js} +5 -5
- package/dist/shared/rpc-utils.d.ts +7 -0
- package/dist/shared/rpc-utils.d.ts.map +1 -1
- package/dist/shared/transcript.d.ts +2 -0
- package/dist/shared/transcript.d.ts.map +1 -1
- package/dist/shared/user-answer.d.ts +4 -0
- package/dist/shared/user-answer.d.ts.map +1 -0
- package/dist/{transform-postprocess-phase-z2mfc5w1.js → transform-postprocess-phase-ttdkrm6r.js} +5 -5
- package/dist/v2/hooks/payload.d.ts.map +1 -1
- package/dist/v2/hooks/store.d.ts +1 -1
- package/dist/v2/hooks/store.d.ts.map +1 -1
- package/dist/v2/server.js +334 -70
- package/dist/v2/store-reader.d.ts +2 -1
- package/dist/v2/store-reader.d.ts.map +1 -1
- package/dist/{wrapup-orchestrator-sy4m56a7.js → wrapup-orchestrator-x0jvvrqn.js} +6 -6
- package/package.json +1 -1
- package/src/shared/rpc-utils.test.ts +27 -2
- package/src/shared/rpc-utils.ts +44 -15
- package/src/shared/tag-transcript.ts +4 -1
- package/src/shared/transcript.ts +3 -0
- package/src/shared/user-answer.test.ts +40 -0
- package/src/shared/user-answer.ts +17 -0
|
@@ -117,7 +117,7 @@ import {
|
|
|
117
117
|
peekNoteNudgeText,
|
|
118
118
|
markNoteNudgeDelivered,
|
|
119
119
|
getActiveCompartmentRun
|
|
120
|
-
} from "./index-
|
|
120
|
+
} from "./index-sqp1hz9v.js";
|
|
121
121
|
import {
|
|
122
122
|
textMentionsRecentCommit,
|
|
123
123
|
hasMeaningfulUserText2,
|
|
@@ -176,16 +176,17 @@ import {
|
|
|
176
176
|
isToolPartWithOutput,
|
|
177
177
|
isFilePart,
|
|
178
178
|
buildFileSourceContent,
|
|
179
|
+
toolPartHasUserAnswer,
|
|
179
180
|
isEditTool,
|
|
180
181
|
SKELETON_REAL_INPUT_MAX_BYTES,
|
|
181
182
|
partHasCompletedResult,
|
|
182
183
|
extractToolCallObservation,
|
|
183
184
|
ToolMutationBatch,
|
|
184
185
|
createToolDropTarget
|
|
185
|
-
} from "./index-
|
|
186
|
+
} from "./index-qm36k34q.js";
|
|
186
187
|
import {
|
|
187
188
|
canonicalModelIdentity
|
|
188
|
-
} from "./index-
|
|
189
|
+
} from "./index-msqr3x6m.js";
|
|
189
190
|
import {
|
|
190
191
|
getErrorMessage
|
|
191
192
|
} from "./index-33q7s9y2.js";
|
|
@@ -3394,7 +3395,7 @@ function dropStaleReduceCalls(messages, frozenIds, options = {}) {
|
|
|
3394
3395
|
const message = messages[i];
|
|
3395
3396
|
const id = typeof message.info.id === "string" ? message.info.id : undefined;
|
|
3396
3397
|
const inFrozen = id !== undefined && frozenIds.has(id);
|
|
3397
|
-
const isNewDetection = !inFrozen && detect && i < protectedStart && id !== undefined && messageHasReducePart(message);
|
|
3398
|
+
const isNewDetection = !inFrozen && detect && i < protectedStart && id !== undefined && messageHasReducePart(message) && !message.parts.some(toolPartHasUserAnswer);
|
|
3398
3399
|
if (!inFrozen && !isNewDetection)
|
|
3399
3400
|
continue;
|
|
3400
3401
|
const touched = sentinelizeReduceParts(message);
|
|
@@ -3800,6 +3801,8 @@ function applyHeuristicCleanup(sessionId, db, targets, messageTagNumbers, config
|
|
|
3800
3801
|
for (let i = 0;i < group.length - 1; i++) {
|
|
3801
3802
|
const tag = group[i];
|
|
3802
3803
|
const target = targets.get(tag.tagNumber);
|
|
3804
|
+
if (target?.canDrop?.() === false)
|
|
3805
|
+
continue;
|
|
3803
3806
|
const { result, mode } = applyNewToolDrop(target, { inWindow: false });
|
|
3804
3807
|
if (result === "incomplete")
|
|
3805
3808
|
continue;
|
|
@@ -6290,6 +6293,7 @@ async function runPostTransformPhase2(args) {
|
|
|
6290
6293
|
muralEnabled: args.m0M1.muralEnabled,
|
|
6291
6294
|
memoryInjectionBudgetTokens: args.m0M1.memoryInjectionBudgetTokens,
|
|
6292
6295
|
historyBudgetTokens: args.m0M1.historyBudgetTokens,
|
|
6296
|
+
historyBudgetPolicyIdentity: args.m0M1.historyBudgetPolicyIdentity,
|
|
6293
6297
|
hardSignals: args.m0M1.hardSignals
|
|
6294
6298
|
}) : { value: false, reason: null };
|
|
6295
6299
|
let preparedPrefix;
|
|
@@ -6328,6 +6332,7 @@ async function runPostTransformPhase2(args) {
|
|
|
6328
6332
|
memoryEnabled: args.m0M1.memoryEnabled,
|
|
6329
6333
|
memoryInjectionBudgetTokens: args.m0M1.memoryInjectionBudgetTokens,
|
|
6330
6334
|
historyBudgetTokens: args.m0M1.historyBudgetTokens,
|
|
6335
|
+
historyBudgetPolicyIdentity: args.m0M1.historyBudgetPolicyIdentity,
|
|
6331
6336
|
temporalAwareness: args.m0M1.temporalAwareness,
|
|
6332
6337
|
isCacheBustingPass: true,
|
|
6333
6338
|
contentionFallbackPrefix: cachedPrefixBeforePreflight,
|
|
@@ -6708,6 +6713,7 @@ async function runPostTransformPhase2(args) {
|
|
|
6708
6713
|
memoryEnabled: args.m0M1.memoryEnabled,
|
|
6709
6714
|
memoryInjectionBudgetTokens: args.m0M1.memoryInjectionBudgetTokens,
|
|
6710
6715
|
historyBudgetTokens: args.m0M1.historyBudgetTokens,
|
|
6716
|
+
historyBudgetPolicyIdentity: args.m0M1.historyBudgetPolicyIdentity,
|
|
6711
6717
|
temporalAwareness: args.m0M1.temporalAwareness,
|
|
6712
6718
|
isCacheBustingPass,
|
|
6713
6719
|
preparedPrefix,
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
import {
|
|
10
10
|
localBudget,
|
|
11
11
|
calibrationForModelKey
|
|
12
|
-
} from "./index-
|
|
12
|
+
} from "./index-n96ag4rk.js";
|
|
13
13
|
|
|
14
14
|
// src/shared/models-dev-cache.ts
|
|
15
15
|
import { mkdirSync, readFileSync as readFileSync2, renameSync, writeFileSync } from "node:fs";
|
|
@@ -221,6 +221,20 @@ var tokenizer_calibration_seeds_default = [
|
|
|
221
221
|
toolsRatio: 0.850953,
|
|
222
222
|
proseRatio: 1.000017
|
|
223
223
|
},
|
|
224
|
+
{
|
|
225
|
+
prefix: "openai/gpt-6-sol",
|
|
226
|
+
systemRatio: 1.000278,
|
|
227
|
+
toolsRatio: 0.850953,
|
|
228
|
+
proseRatio: 1.000017,
|
|
229
|
+
provenance: "Mirrored from openai/gpt-6-astra; prose inherited-unmeasured. Reported OAuth system/tools counts match GPT-5.5; no independent API-key measurement."
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
prefix: "openai/gpt-6.1-sol",
|
|
233
|
+
systemRatio: 1.000278,
|
|
234
|
+
toolsRatio: 0.850953,
|
|
235
|
+
proseRatio: 1.000017,
|
|
236
|
+
provenance: "Mirrored from openai/gpt-6-astra; prose inherited-unmeasured. Reported OAuth system/tools counts match GPT-5.5; no independent API-key measurement."
|
|
237
|
+
},
|
|
224
238
|
{
|
|
225
239
|
prefix: "openai/gpt-5",
|
|
226
240
|
systemRatio: 1,
|
|
@@ -324,7 +338,7 @@ var tokenizer_calibration_seeds_default = [
|
|
|
324
338
|
// src/hooks/magic-context/tokenizer-calibration.ts
|
|
325
339
|
var CALIBRATION_TABLE = tokenizer_calibration_seeds_default;
|
|
326
340
|
var NEUTRAL = { systemRatio: 1, toolsRatio: 1, proseRatio: 1 };
|
|
327
|
-
var CALIBRATION_TABLE_REVISION = "2026-09-
|
|
341
|
+
var CALIBRATION_TABLE_REVISION = "2026-09-30-sol-tokenizer-seeds-v3";
|
|
328
342
|
var UNKNOWN_FIT_RATIO = Math.max(2, ...CALIBRATION_TABLE.flatMap((entry) => [
|
|
329
343
|
entry.systemRatio,
|
|
330
344
|
entry.toolsRatio,
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
UNKNOWN_FIT_RATIO,
|
|
12
12
|
resolveDecisionCalibration,
|
|
13
13
|
providerMass
|
|
14
|
-
} from "./index-
|
|
14
|
+
} from "./index-n96ag4rk.js";
|
|
15
15
|
|
|
16
16
|
// src/features/magic-context/reclaim-protection.ts
|
|
17
17
|
var CTX_REDUCE_KEEP = 3;
|
|
@@ -3050,8 +3050,8 @@ function readRawSessionMessagesFromDb(db, sessionId) {
|
|
|
3050
3050
|
};
|
|
3051
3051
|
});
|
|
3052
3052
|
}
|
|
3053
|
-
function readRawSessionMessagePageFromDb(db, sessionId, afterOrdinal, limit, finalWatermark = Number.MAX_SAFE_INTEGER) {
|
|
3054
|
-
const messageRows = readRawMessagePageRows(db, sessionId, afterOrdinal, limit, finalWatermark);
|
|
3053
|
+
function readRawSessionMessagePageFromDb(db, sessionId, afterOrdinal, limit, finalWatermark = Number.MAX_SAFE_INTEGER, after) {
|
|
3054
|
+
const messageRows = readRawMessagePageRows(db, sessionId, afterOrdinal, limit, finalWatermark, after);
|
|
3055
3055
|
if (messageRows.length === 0)
|
|
3056
3056
|
return [];
|
|
3057
3057
|
const placeholders = messageRows.map(() => "?").join(", ");
|
|
@@ -3062,15 +3062,22 @@ function readRawSessionMessagePageFromDb(db, sessionId, afterOrdinal, limit, fin
|
|
|
3062
3062
|
ORDER BY message_id ASC, time_created ASC, id ASC`).all(sessionId, ...messageRows.map((row) => row.id)).filter(isRawPartRow);
|
|
3063
3063
|
return assembleRawMessagePage(messageRows, partRows);
|
|
3064
3064
|
}
|
|
3065
|
-
function readRawMessagePageRows(db, sessionId, afterOrdinal, limit, finalWatermark) {
|
|
3065
|
+
function readRawMessagePageRows(db, sessionId, afterOrdinal, limit, finalWatermark, after) {
|
|
3066
3066
|
const remaining = Math.max(0, Math.floor(finalWatermark) - Math.floor(afterOrdinal));
|
|
3067
3067
|
const pageSize = Math.min(Math.max(1, Math.floor(limit)), remaining);
|
|
3068
3068
|
if (pageSize === 0)
|
|
3069
3069
|
return [];
|
|
3070
|
+
const parameters = [sessionId];
|
|
3071
|
+
if (after)
|
|
3072
|
+
parameters.push(after.timeCreated, after.timeCreated, after.timeCreated, after.id);
|
|
3073
|
+
parameters.push(pageSize);
|
|
3074
|
+
if (!after)
|
|
3075
|
+
parameters.push(Math.max(0, Math.floor(afterOrdinal)));
|
|
3070
3076
|
return db.prepare(`SELECT id, data, time_created, time_updated
|
|
3071
3077
|
FROM message
|
|
3072
3078
|
WHERE session_id = ?
|
|
3073
|
-
|
|
3079
|
+
${after ? "AND time_created >= ? AND (time_created > ? OR (time_created = ? AND id > ?))" : ""}
|
|
3080
|
+
AND NOT (
|
|
3074
3081
|
CASE WHEN json_valid(data) = 1
|
|
3075
3082
|
THEN COALESCE(json_extract(data, '$.summary'), 0)
|
|
3076
3083
|
ELSE 0 END = 1
|
|
@@ -3079,7 +3086,7 @@ function readRawMessagePageRows(db, sessionId, afterOrdinal, limit, finalWaterma
|
|
|
3079
3086
|
ELSE '' END = 'stop'
|
|
3080
3087
|
)
|
|
3081
3088
|
ORDER BY time_created ASC, id ASC
|
|
3082
|
-
LIMIT ? OFFSET
|
|
3089
|
+
LIMIT ? ${after ? "" : "OFFSET ?"}`).all(...parameters).filter(isRawMessageRow).map((row, index) => ({
|
|
3083
3090
|
...row,
|
|
3084
3091
|
ordinal: Math.floor(afterOrdinal) + index + 1
|
|
3085
3092
|
}));
|
|
@@ -3132,8 +3139,8 @@ var RAW_SUMMARY_PART_DATA_SQL = `CASE
|
|
|
3132
3139
|
)
|
|
3133
3140
|
)
|
|
3134
3141
|
END`;
|
|
3135
|
-
function readRawSessionMessageSummaryPageFromDb(db, sessionId, afterOrdinal, limit, finalWatermark = Number.MAX_SAFE_INTEGER) {
|
|
3136
|
-
const messageRows = readRawMessagePageRows(db, sessionId, afterOrdinal, limit, finalWatermark);
|
|
3142
|
+
function readRawSessionMessageSummaryPageFromDb(db, sessionId, afterOrdinal, limit, finalWatermark = Number.MAX_SAFE_INTEGER, after) {
|
|
3143
|
+
const messageRows = readRawMessagePageRows(db, sessionId, afterOrdinal, limit, finalWatermark, after);
|
|
3137
3144
|
if (messageRows.length === 0)
|
|
3138
3145
|
return [];
|
|
3139
3146
|
const placeholders = messageRows.map(() => "?").join(", ");
|
|
@@ -3984,6 +3991,27 @@ function buildFileSourceContent(parts) {
|
|
|
3984
3991
|
return content.length > 0 ? content : null;
|
|
3985
3992
|
}
|
|
3986
3993
|
|
|
3994
|
+
// src/shared/user-answer.ts
|
|
3995
|
+
function hasUserAnswerMetadata(value) {
|
|
3996
|
+
if (!isRecord(value))
|
|
3997
|
+
return false;
|
|
3998
|
+
if (value.userAnswer === true)
|
|
3999
|
+
return true;
|
|
4000
|
+
if (Array.isArray(value.answers))
|
|
4001
|
+
return true;
|
|
4002
|
+
if (typeof value.answer === "string")
|
|
4003
|
+
return true;
|
|
4004
|
+
if (Array.isArray(value.selectedOptions) || typeof value.customInput === "string")
|
|
4005
|
+
return true;
|
|
4006
|
+
return Array.isArray(value.results) && value.results.some(hasUserAnswerMetadata);
|
|
4007
|
+
}
|
|
4008
|
+
function toolPartHasUserAnswer(part) {
|
|
4009
|
+
if (!isRecord(part))
|
|
4010
|
+
return false;
|
|
4011
|
+
const state = isRecord(part.state) ? part.state : undefined;
|
|
4012
|
+
return hasUserAnswerMetadata(state?.metadata) || hasUserAnswerMetadata(part.details);
|
|
4013
|
+
}
|
|
4014
|
+
|
|
3987
4015
|
// src/features/magic-context/dreamer/token-budget.ts
|
|
3988
4016
|
class DreamTokenBudgetExceeded extends Error {
|
|
3989
4017
|
sessionId;
|
|
@@ -4963,7 +4991,7 @@ function createToolDropTarget(compositeKey, thinkingParts, index, batch, tagId)
|
|
|
4963
4991
|
},
|
|
4964
4992
|
canDrop: () => {
|
|
4965
4993
|
const entry = index.get(compositeKey);
|
|
4966
|
-
return !!entry && entry.occurrences.length > 0 && entry.hasResult;
|
|
4994
|
+
return !!entry && entry.occurrences.length > 0 && entry.hasResult && !entry.occurrences.some((occurrence) => toolPartHasUserAnswer(occurrence.part));
|
|
4967
4995
|
},
|
|
4968
4996
|
requiresToolArcSkeleton: thinkingParts.length > 0 || (index.get(compositeKey)?.occurrences.some((occurrence) => messageHasNativeReasoning(occurrence.message)) ?? false),
|
|
4969
4997
|
readInput: () => {
|
|
@@ -5096,6 +5124,8 @@ function getRawSessionMessageOrdinalCount2(sessionId) {
|
|
|
5096
5124
|
var RAW_MESSAGE_RANGE_PAGE_SIZE = 100;
|
|
5097
5125
|
function readRawSessionMessageRangeFromSource(sessionId, fromOrdinal, toOrdinal) {
|
|
5098
5126
|
const provider = sessionProviders.get(sessionId);
|
|
5127
|
+
if (provider?.iterateMessageRange)
|
|
5128
|
+
return [...provider.iterateMessageRange(fromOrdinal, toOrdinal)];
|
|
5099
5129
|
if (provider && !provider.readMessagePage) {
|
|
5100
5130
|
return provider.readMessages().filter((message) => message.ordinal >= fromOrdinal && message.ordinal <= toOrdinal);
|
|
5101
5131
|
}
|
|
@@ -5103,9 +5133,10 @@ function readRawSessionMessageRangeFromSource(sessionId, fromOrdinal, toOrdinal)
|
|
|
5103
5133
|
return [];
|
|
5104
5134
|
const messages = [];
|
|
5105
5135
|
let afterOrdinal = fromOrdinal - 1;
|
|
5136
|
+
let after;
|
|
5106
5137
|
while (afterOrdinal < toOrdinal) {
|
|
5107
5138
|
const limit = Math.min(RAW_MESSAGE_RANGE_PAGE_SIZE, toOrdinal - afterOrdinal);
|
|
5108
|
-
const page = provider?.readMessagePage ? provider.readMessagePage(afterOrdinal, limit, toOrdinal) : withReadOnlySessionDb((db) => readRawSessionMessagePageFromDb(db, sessionId, afterOrdinal, limit, toOrdinal));
|
|
5139
|
+
const page = provider?.readMessagePage ? provider.readMessagePage(afterOrdinal, limit, toOrdinal, after) : withReadOnlySessionDb((db) => readRawSessionMessagePageFromDb(db, sessionId, afterOrdinal, limit, toOrdinal, after));
|
|
5109
5140
|
if (page.length === 0)
|
|
5110
5141
|
break;
|
|
5111
5142
|
let nextOrdinal = afterOrdinal;
|
|
@@ -5118,6 +5149,8 @@ function readRawSessionMessageRangeFromSource(sessionId, fromOrdinal, toOrdinal)
|
|
|
5118
5149
|
if (nextOrdinal <= afterOrdinal)
|
|
5119
5150
|
break;
|
|
5120
5151
|
afterOrdinal = nextOrdinal;
|
|
5152
|
+
const last = page.at(-1);
|
|
5153
|
+
after = last ? { timeCreated: last.createdAt ?? 0, id: last.id } : undefined;
|
|
5121
5154
|
}
|
|
5122
5155
|
return messages;
|
|
5123
5156
|
}
|
|
@@ -5128,6 +5161,13 @@ function visitRawSessionMessages2(sessionId, fromOrdinal, toOrdinal, visit, opti
|
|
|
5128
5161
|
if (to < from)
|
|
5129
5162
|
return;
|
|
5130
5163
|
const provider = sessionProviders.get(sessionId);
|
|
5164
|
+
if (provider?.iterateMessageRange) {
|
|
5165
|
+
for (const message of provider.iterateMessageRange(from, to)) {
|
|
5166
|
+
if (!visit(message))
|
|
5167
|
+
return;
|
|
5168
|
+
}
|
|
5169
|
+
return;
|
|
5170
|
+
}
|
|
5131
5171
|
if (provider && !provider.readMessagePage) {
|
|
5132
5172
|
for (const message of provider.readMessages()) {
|
|
5133
5173
|
if (message.ordinal < from || message.ordinal > to)
|
|
@@ -5141,10 +5181,11 @@ function visitRawSessionMessages2(sessionId, fromOrdinal, toOrdinal, visit, opti
|
|
|
5141
5181
|
return;
|
|
5142
5182
|
const pageSize = Math.max(1, Math.floor(options.pageSize ?? RAW_MESSAGE_VISIT_PAGE_SIZE));
|
|
5143
5183
|
let afterOrdinal = from - 1;
|
|
5184
|
+
let after;
|
|
5144
5185
|
while (afterOrdinal < to) {
|
|
5145
5186
|
const limit = Math.min(pageSize, to - afterOrdinal);
|
|
5146
5187
|
const cursor = afterOrdinal;
|
|
5147
|
-
const page = provider?.readMessagePage ? provider.readMessagePage(cursor, limit, to) : withReadOnlySessionDb((db) => options.summary ? readRawSessionMessageSummaryPageFromDb(db, sessionId, cursor, limit, to) : readRawSessionMessagePageFromDb(db, sessionId, cursor, limit, to));
|
|
5188
|
+
const page = provider?.readMessagePage ? provider.readMessagePage(cursor, limit, to, after) : withReadOnlySessionDb((db) => options.summary ? readRawSessionMessageSummaryPageFromDb(db, sessionId, cursor, limit, to, after) : readRawSessionMessagePageFromDb(db, sessionId, cursor, limit, to, after));
|
|
5148
5189
|
if (page.length === 0)
|
|
5149
5190
|
return;
|
|
5150
5191
|
let nextOrdinal = afterOrdinal;
|
|
@@ -5158,6 +5199,8 @@ function visitRawSessionMessages2(sessionId, fromOrdinal, toOrdinal, visit, opti
|
|
|
5158
5199
|
if (nextOrdinal <= afterOrdinal)
|
|
5159
5200
|
return;
|
|
5160
5201
|
afterOrdinal = nextOrdinal;
|
|
5202
|
+
const last = page.at(-1);
|
|
5203
|
+
after = last ? { timeCreated: last.createdAt ?? 0, id: last.id } : undefined;
|
|
5161
5204
|
}
|
|
5162
5205
|
}
|
|
5163
5206
|
function readRawSessionMessageRange2(sessionId, fromOrdinal, toOrdinal) {
|
|
@@ -5758,4 +5801,4 @@ function readRawSessionSeedTail2(sessionId, boundaryId, onQuery) {
|
|
|
5758
5801
|
});
|
|
5759
5802
|
}
|
|
5760
5803
|
|
|
5761
|
-
export { textMentionsRecentCommit, removeSystemReminders, hasMeaningfulUserText2, extractTexts2, extractToolCallSummaries, getTokenizerNativeMemoryStats, preloadTokenizer, estimateTokens, normalizeText, stableStringify, getCurrentToolSetHash, setDatabase, loadToolDefinitionMeasurements, recordToolDefinition, getMeasuredToolDefinitionTokens, CTX_REDUCE_KEEP, newestCtxReduceTagNumbers, stripWellFormedLeadingTagPrefix, stripPersistedAssistantText, byteSize, stripTagPrefix, peelLeadingMcTagNotation, prependTag, isThinkingPart, isRecord, estimateImageTokensFromDataUrl, estimateToolAttachmentImageTokens, normalizeTodoStateJson, buildSyntheticTodoPart, computeSyntheticCallId, isSyntheticTodoPart, countRealUserMessages, tailHygieneStructuralSignature, sameTailHygieneStructuralSignature, formatTailHygienePrefixMismatch, refreshTailHygieneBaseline, effectiveTailHygiene, assertTailHygieneContentUnchanged, CHANNEL1_SENTINEL, CHANNEL1_FLOOR_TOKENS, isDroppedToolOutput, toolOutputTokens, decideChannel1, evaluateChannel2, formatChannel1Evaluation, formatChannel2Evaluation, reclaimableToolOutputCount, buildChannel2Reminder, buildChannel1Reminder, estimateEmergencyDropReclaimTokens, planEmergencyDrop, measureEmergencyTag, getRecentTagOwnerMessageIds, AGE_RECLAIM_MIN_TOKENS, getOldestActiveUnprotectedToolTags, getActiveToolTagsForAgeReclaim, getTriggerTagTokenUpperBound, getActiveTagTokenTotalsByMessage, getAllStatusTagTokenTotalsFlat, tagTokenCountIsNull, backfillTagTokenCounts, insertTag, updateTagStatus, markWhitespaceAssistantTagInert, getInertWhitespaceAssistantTags, updateTagDropMode, updateCavemanDepth, updateTagMessageId, foldShrunkPartTags, markTagsCompactedByMessageIds, deleteTagsByMessageId, getMaxTagNumberBySession, getTagNumberByMessageId, getAssignableTagNumberByMessageId, deriveTagLoadFloor, TAG_SELECT_COLUMNS, getTagsBySession, getActiveTagsBySession, getTailHygieneTags, getDroppedTagsBySession, getTagsByNumbers, getDroppedTagsByNumbers, getMaxDroppedTagNumber, getTagById, getToolTagNumberByOwner, getNullOwnerToolTag, adoptNullOwnerToolTag, getCandidateToolOwners, pickNearestPriorOwner, markHostUnservedRow, retreatPastHostUnservedRows, snapTerminalCompartmentToServedRow, isHostRenderedSystemMessage, isStrictGapHealingMessage, isRawCompactionSummaryInfo, extractInMemoryMessageViews, buildInMemoryTailRawMessages, completedToolArcCrossesBoundary, estimateTrueRawMessageTokens, buildToolArcs, fenceBoundaryForCompletedToolArcs, fenceBoundaryForToolArcs, buildTrueRawTokenIndex, computeRawRangeFingerprint, invalidateTrueRawTokenCache, isTextPart, isToolPartWithOutput, isFilePart, buildFileSourceContent, DreamTokenBudgetExceeded, TOKEN_BUDGET_FINALIZE_MESSAGE, registerBudgetFinalizeChild, releaseBudgetFinalizeChild, createDreamTokenBudget, recordToolParameters, createDroppedInputGuard, assertExecutableToolInput, createDroppedInputToolExecuteBeforeHook, isEditTool, describeFinalWireTail, estimateMessageTokens, estimateFinalWireInputTokens, SKELETON_REAL_INPUT_MAX_BYTES, partHasCompletedResult, extractToolCallObservation, ToolMutationBatch, createToolDropTarget, resolveHostServedBoundaryId2, hasRawMessageProvider2, setRawMessageProvider2, setBoundedRawMessageProvider2, cleanUserText2, withRawSessionMessageCache2, readRawSessionMessages2, readRawSessionMessagePage2, getRawSessionMessageOrdinalCount2, visitRawSessionMessages2, readRawSessionMessageRange2, primeTailRawMessageCache2, getCachedAbsoluteMessageCount2, primeInMemoryTailRawMessageCache2, readRawSessionMessageOrdinalPage2, getRawSessionStoredMessageCount2, readRawSessionMessageIdOrdinalsForRange2, readRawSessionMessagePartsById2, hasRawSessionMessageById2, readRawSessionMessageOrdinalById2, compareRawSessionMessageOrder2, readRawSessionMessageById2, getRawSessionMessageCount2, getRawSessionTagKeysThrough2, getLegacyProtectedTailStartOrdinal2, readSessionChunk2, readRawSessionSeedTail2 };
|
|
5804
|
+
export { textMentionsRecentCommit, removeSystemReminders, hasMeaningfulUserText2, extractTexts2, extractToolCallSummaries, getTokenizerNativeMemoryStats, preloadTokenizer, estimateTokens, normalizeText, stableStringify, getCurrentToolSetHash, setDatabase, loadToolDefinitionMeasurements, recordToolDefinition, getMeasuredToolDefinitionTokens, CTX_REDUCE_KEEP, newestCtxReduceTagNumbers, stripWellFormedLeadingTagPrefix, stripPersistedAssistantText, byteSize, stripTagPrefix, peelLeadingMcTagNotation, prependTag, isThinkingPart, isRecord, estimateImageTokensFromDataUrl, estimateToolAttachmentImageTokens, normalizeTodoStateJson, buildSyntheticTodoPart, computeSyntheticCallId, isSyntheticTodoPart, countRealUserMessages, tailHygieneStructuralSignature, sameTailHygieneStructuralSignature, formatTailHygienePrefixMismatch, refreshTailHygieneBaseline, effectiveTailHygiene, assertTailHygieneContentUnchanged, CHANNEL1_SENTINEL, CHANNEL1_FLOOR_TOKENS, isDroppedToolOutput, toolOutputTokens, decideChannel1, evaluateChannel2, formatChannel1Evaluation, formatChannel2Evaluation, reclaimableToolOutputCount, buildChannel2Reminder, buildChannel1Reminder, estimateEmergencyDropReclaimTokens, planEmergencyDrop, measureEmergencyTag, getRecentTagOwnerMessageIds, AGE_RECLAIM_MIN_TOKENS, getOldestActiveUnprotectedToolTags, getActiveToolTagsForAgeReclaim, getTriggerTagTokenUpperBound, getActiveTagTokenTotalsByMessage, getAllStatusTagTokenTotalsFlat, tagTokenCountIsNull, backfillTagTokenCounts, insertTag, updateTagStatus, markWhitespaceAssistantTagInert, getInertWhitespaceAssistantTags, updateTagDropMode, updateCavemanDepth, updateTagMessageId, foldShrunkPartTags, markTagsCompactedByMessageIds, deleteTagsByMessageId, getMaxTagNumberBySession, getTagNumberByMessageId, getAssignableTagNumberByMessageId, deriveTagLoadFloor, TAG_SELECT_COLUMNS, getTagsBySession, getActiveTagsBySession, getTailHygieneTags, getDroppedTagsBySession, getTagsByNumbers, getDroppedTagsByNumbers, getMaxDroppedTagNumber, getTagById, getToolTagNumberByOwner, getNullOwnerToolTag, adoptNullOwnerToolTag, getCandidateToolOwners, pickNearestPriorOwner, markHostUnservedRow, retreatPastHostUnservedRows, snapTerminalCompartmentToServedRow, isHostRenderedSystemMessage, isStrictGapHealingMessage, isRawCompactionSummaryInfo, extractInMemoryMessageViews, buildInMemoryTailRawMessages, completedToolArcCrossesBoundary, estimateTrueRawMessageTokens, buildToolArcs, fenceBoundaryForCompletedToolArcs, fenceBoundaryForToolArcs, buildTrueRawTokenIndex, computeRawRangeFingerprint, invalidateTrueRawTokenCache, isTextPart, isToolPartWithOutput, isFilePart, buildFileSourceContent, toolPartHasUserAnswer, DreamTokenBudgetExceeded, TOKEN_BUDGET_FINALIZE_MESSAGE, registerBudgetFinalizeChild, releaseBudgetFinalizeChild, createDreamTokenBudget, recordToolParameters, createDroppedInputGuard, assertExecutableToolInput, createDroppedInputToolExecuteBeforeHook, isEditTool, describeFinalWireTail, estimateMessageTokens, estimateFinalWireInputTokens, SKELETON_REAL_INPUT_MAX_BYTES, partHasCompletedResult, extractToolCallObservation, ToolMutationBatch, createToolDropTarget, resolveHostServedBoundaryId2, hasRawMessageProvider2, setRawMessageProvider2, setBoundedRawMessageProvider2, cleanUserText2, withRawSessionMessageCache2, readRawSessionMessages2, readRawSessionMessagePage2, getRawSessionMessageOrdinalCount2, visitRawSessionMessages2, readRawSessionMessageRange2, primeTailRawMessageCache2, getCachedAbsoluteMessageCount2, primeInMemoryTailRawMessageCache2, readRawSessionMessageOrdinalPage2, getRawSessionStoredMessageCount2, readRawSessionMessageIdOrdinalsForRange2, readRawSessionMessagePartsById2, hasRawSessionMessageById2, readRawSessionMessageOrdinalById2, compareRawSessionMessageOrder2, readRawSessionMessageById2, getRawSessionMessageCount2, getRawSessionTagKeysThrough2, getLegacyProtectedTailStartOrdinal2, readSessionChunk2, readRawSessionSeedTail2 };
|