@cortexkit/opencode-magic-context 0.49.18 → 0.49.19
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/auto-search-worker.js +6 -2
- package/dist/chunk-embedding-write-worker.js +2 -2
- package/dist/{context-m897gfp9.js → context-j31m2dv7.js} +16 -12
- package/dist/features/magic-context/dreamer/classify.d.ts +3 -0
- package/dist/features/magic-context/dreamer/classify.d.ts.map +1 -1
- package/dist/features/magic-context/dreamer/hidden-single-shot.d.ts +11 -0
- package/dist/features/magic-context/dreamer/hidden-single-shot.d.ts.map +1 -1
- package/dist/features/magic-context/dreamer/map-memories.d.ts +3 -0
- package/dist/features/magic-context/dreamer/map-memories.d.ts.map +1 -1
- package/dist/features/magic-context/dreamer/verify.d.ts +3 -0
- package/dist/features/magic-context/dreamer/verify.d.ts.map +1 -1
- package/dist/features/magic-context/migrations.d.ts.map +1 -1
- package/dist/features/magic-context/storage-clone.d.ts.map +1 -1
- package/dist/features/magic-context/storage-meta-persisted.d.ts +13 -0
- package/dist/features/magic-context/storage-meta-persisted.d.ts.map +1 -1
- package/dist/hooks/magic-context/auto-search-worker-evaluation.fixture.d.ts +2 -0
- package/dist/hooks/magic-context/auto-search-worker-evaluation.fixture.d.ts.map +1 -0
- package/dist/hooks/magic-context/hook.d.ts.map +1 -1
- package/dist/hooks/magic-context/lkg-recovery-prefix.d.ts +13 -0
- package/dist/hooks/magic-context/lkg-recovery-prefix.d.ts.map +1 -1
- package/dist/hooks/magic-context/system-date-refresh.d.ts +15 -2
- package/dist/hooks/magic-context/system-date-refresh.d.ts.map +1 -1
- package/dist/hooks/magic-context/system-prompt-hash.d.ts.map +1 -1
- package/dist/hooks/magic-context/transform-postprocess-phase.d.ts +2 -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-936py2wm.js → index-3esx8tkf.js} +60 -26
- package/dist/{index-v8awdgvd.js → index-3h4dp9wb.js} +1 -1
- package/dist/{index-24jbw52d.js → index-4911rn0b.js} +3 -3
- package/dist/{index-qn7xstt2.js → index-63k48rv9.js} +1 -2
- package/dist/{index-rmwykbbb.js → index-9zcsy3hh.js} +16 -1
- package/dist/{index-r4nkrs05.js → index-c1p88z1y.js} +3 -3
- package/dist/{index-s7j8tvhv.js → index-dxmq29t1.js} +3 -3
- package/dist/{index-6s5941tm.js → index-edmpdxcw.js} +1 -1
- package/dist/{index-e4xv8890.js → index-jhghdnsm.js} +26 -12
- package/dist/{index-fgncb0ng.js → index-jrr131e0.js} +2 -2
- package/dist/{index-s1ex9y6p.js → index-rpxdjkm0.js} +165 -27
- package/dist/{index-x4njr8df.js → index-se4m2g6w.js} +1 -1
- package/dist/index.js +20 -16
- package/dist/{message-index-bounded-n1frdn85.js → message-index-bounded-zyc8h32y.js} +2 -2
- package/dist/{message-index-66jv6fh4.js → message-index-gtpqnj8w.js} +2 -2
- package/dist/migration-worker.js +2 -2
- package/dist/plugin/hooks/create-session-hooks.d.ts.map +1 -1
- package/dist/plugin/messages-transform.d.ts.map +1 -1
- package/dist/plugin/tool-registry.d.ts.map +1 -1
- package/dist/raw-ordinal-warmup-worker.js +3 -3
- package/dist/{read-session-chunk-v06g3vka.js → read-session-chunk-jjb48bt9.js} +1 -1
- package/dist/{recomp-orchestrator-ghpk2dtq.js → recomp-orchestrator-999jj4bc.js} +7 -7
- package/dist/{search-archive-4d53y23e.js → search-archive-6vm0e2f5.js} +2 -2
- package/dist/{search-nkf271d4.js → search-xsqk1bj4.js} +5 -5
- package/dist/shared/model-suggestion-retry.d.ts +30 -1
- package/dist/shared/model-suggestion-retry.d.ts.map +1 -1
- package/dist/shared/prompt-async-transport.d.ts.map +1 -1
- package/dist/tools/ctx-expand/rust-mode-tag.test-support.d.ts +15 -0
- package/dist/tools/ctx-expand/rust-mode-tag.test-support.d.ts.map +1 -0
- package/dist/tools/ctx-expand/tools.d.ts +11 -0
- package/dist/tools/ctx-expand/tools.d.ts.map +1 -1
- package/dist/{transform-postprocess-phase-zpgav0h7.js → transform-postprocess-phase-jj99r7z2.js} +7 -7
- package/dist/v2/auto-search-worker.js +6 -2
- package/dist/v2/chunk-embedding-write-worker.js +2 -2
- package/dist/v2/{context-f2xh7ba4.js → context-y5yamxak.js} +85 -33
- package/dist/v2/hooks/tools.d.ts.map +1 -1
- package/dist/v2/{message-index-48f7hw7a.js → message-index-8vz2pq76.js} +2 -2
- package/dist/v2/{message-index-bounded-w3hfm29z.js → message-index-bounded-spd8r7pj.js} +2 -2
- package/dist/v2/migration-worker.js +2 -2
- package/dist/v2/raw-ordinal-warmup-worker.js +3 -3
- package/dist/v2/{read-session-chunk-zpgmxwte.js → read-session-chunk-cwkxrmns.js} +1 -1
- package/dist/v2/{recomp-orchestrator-4vfxej9t.js → recomp-orchestrator-f6m9jr7p.js} +6 -6
- package/dist/v2/{search-archive-vv48s2aa.js → search-archive-wve3tq1k.js} +2 -2
- package/dist/v2/{search-kza414f0.js → search-hwg7jfbj.js} +5 -5
- package/dist/v2/{server-2ehj0bw7.js → server-2ar62dyx.js} +1 -1
- package/dist/v2/{server-qv7f0hhe.js → server-45q69hkq.js} +1 -1
- package/dist/v2/{server-bfpda1tb.js → server-6vdzn1td.js} +165 -27
- package/dist/v2/{server-xhab8jx8.js → server-9hx7g5jp.js} +16 -1
- package/dist/v2/{server-a2eqhkxr.js → server-bmymkx73.js} +2 -2
- package/dist/v2/{server-1nyybqan.js → server-gsxjv2q2.js} +3 -3
- package/dist/v2/{server-my7k4eds.js → server-hm38q7r0.js} +1 -1
- package/dist/v2/{server-gpvay0xz.js → server-xq7dfjke.js} +1 -2
- package/dist/v2/server.js +2 -2
- package/dist/v2/{wrapup-orchestrator-psqz7yh0.js → wrapup-orchestrator-embdz8gj.js} +6 -6
- package/dist/{wrapup-orchestrator-s9zc5b00.js → wrapup-orchestrator-whhbjmaz.js} +8 -8
- package/package.json +1 -1
- package/src/shared/model-suggestion-retry.test.ts +166 -0
- package/src/shared/model-suggestion-retry.ts +165 -14
- package/src/shared/prompt-async-transport.test.ts +107 -0
- package/src/shared/prompt-async-transport.ts +39 -0
|
@@ -89,7 +89,7 @@ import {
|
|
|
89
89
|
toMessageIndexSource2,
|
|
90
90
|
clearIndexedMessagesInTransaction2,
|
|
91
91
|
indexSourcesAfterOrdinal2
|
|
92
|
-
} from "./server-
|
|
92
|
+
} from "./server-2ar62dyx.js";
|
|
93
93
|
import {
|
|
94
94
|
detectOverflow,
|
|
95
95
|
SESSION_META_SELECT_COLUMNS,
|
|
@@ -130,6 +130,7 @@ import {
|
|
|
130
130
|
isRustMarkerAdmissionFenced,
|
|
131
131
|
readReplayEnvelope,
|
|
132
132
|
readReplayDocument,
|
|
133
|
+
updateReplayDocument,
|
|
133
134
|
writeReplayDocument,
|
|
134
135
|
describeProtectedTailDrainBudgetSkip,
|
|
135
136
|
loadProtectedTailMeta,
|
|
@@ -160,6 +161,7 @@ import {
|
|
|
160
161
|
serializeStrippedPlaceholderState,
|
|
161
162
|
THINKING_BINDING_RECOVERY_FROZEN_PREFIX,
|
|
162
163
|
THINKING_BINDING_STRIP_ORDER_END_MARKER,
|
|
164
|
+
COMPACTION_OFF_THINKING_FROZEN_PREFIX,
|
|
163
165
|
getMergedReasoningStrippedIds,
|
|
164
166
|
addMergedReasoningStrippedIds,
|
|
165
167
|
parseProcessedImageMarkers,
|
|
@@ -185,7 +187,7 @@ import {
|
|
|
185
187
|
getRawSessionTagKeysThrough2,
|
|
186
188
|
getLegacyProtectedTailStartOrdinal2,
|
|
187
189
|
readSessionChunk2
|
|
188
|
-
} from "./server-
|
|
190
|
+
} from "./server-9hx7g5jp.js";
|
|
189
191
|
import {
|
|
190
192
|
getTableColumnNames
|
|
191
193
|
} from "./server-pwv4ezb0.js";
|
|
@@ -195,7 +197,7 @@ import {
|
|
|
195
197
|
LATEST_SUPPORTED_VERSION,
|
|
196
198
|
getPersistedSchemaVersion,
|
|
197
199
|
openDatabase
|
|
198
|
-
} from "./server-
|
|
200
|
+
} from "./server-bmymkx73.js";
|
|
199
201
|
import {
|
|
200
202
|
providerMass,
|
|
201
203
|
calibrationForModelKey,
|
|
@@ -243,7 +245,7 @@ import {
|
|
|
243
245
|
resolveStoredPathWorkspaceIdentity,
|
|
244
246
|
sourceNameForMemory,
|
|
245
247
|
computeWorkspaceEpochFingerprint
|
|
246
|
-
} from "./server-
|
|
248
|
+
} from "./server-xq7dfjke.js";
|
|
247
249
|
import {
|
|
248
250
|
shouldSkipHomeProjectMemory,
|
|
249
251
|
resolveProjectIdentity
|
|
@@ -256,7 +258,7 @@ import {
|
|
|
256
258
|
userFacingFailureCode,
|
|
257
259
|
promoteSessionFactsDurable,
|
|
258
260
|
embedPromotedFacts
|
|
259
|
-
} from "./server-
|
|
261
|
+
} from "./server-hm38q7r0.js";
|
|
260
262
|
import {
|
|
261
263
|
isMarkerCandidateBasisCurrent2,
|
|
262
264
|
invalidateMarkerCandidateBasis2,
|
|
@@ -2521,6 +2523,34 @@ function noteLkgCapturedPrefix(sessionId) {
|
|
|
2521
2523
|
if (!sessions.has(sessionId))
|
|
2522
2524
|
sessions.set(sessionId, {});
|
|
2523
2525
|
}
|
|
2526
|
+
function readPersistedLkgUntaggedInputIds(db, sessionId) {
|
|
2527
|
+
try {
|
|
2528
|
+
const saved = readReplayEnvelope(db, sessionId, "read").lkgUntaggedInputIds;
|
|
2529
|
+
return Array.isArray(saved) ? saved.filter((id) => typeof id === "string" && id.length > 0) : [];
|
|
2530
|
+
} catch (error) {
|
|
2531
|
+
sessionLog2(sessionId, "LKG untagged-input record unreadable:", error);
|
|
2532
|
+
return [];
|
|
2533
|
+
}
|
|
2534
|
+
}
|
|
2535
|
+
function persistLkgUntaggedInputIds(db, sessionId, ids) {
|
|
2536
|
+
const next = [...new Set(ids)].sort();
|
|
2537
|
+
try {
|
|
2538
|
+
return updateReplayDocument(db, sessionId, (doc) => {
|
|
2539
|
+
const saved = Array.isArray(doc.lkgUntaggedInputIds) ? doc.lkgUntaggedInputIds : [];
|
|
2540
|
+
if (JSON.stringify(saved) === JSON.stringify(next))
|
|
2541
|
+
return false;
|
|
2542
|
+
doc.version = 2;
|
|
2543
|
+
if (next.length > 0)
|
|
2544
|
+
doc.lkgUntaggedInputIds = next;
|
|
2545
|
+
else
|
|
2546
|
+
delete doc.lkgUntaggedInputIds;
|
|
2547
|
+
return true;
|
|
2548
|
+
});
|
|
2549
|
+
} catch (error) {
|
|
2550
|
+
sessionLog2(sessionId, "LKG untagged-input record write failed:", error);
|
|
2551
|
+
return false;
|
|
2552
|
+
}
|
|
2553
|
+
}
|
|
2524
2554
|
function noteLkgRecoveryPrefix(args) {
|
|
2525
2555
|
const digests = [
|
|
2526
2556
|
...args.entry.entryContentDigests,
|
|
@@ -2531,19 +2561,23 @@ function noteLkgRecoveryPrefix(args) {
|
|
|
2531
2561
|
const ids = args.entry.entryInputIds;
|
|
2532
2562
|
if (ids.some((id) => !id) || new Set(ids).size !== ids.length)
|
|
2533
2563
|
return false;
|
|
2564
|
+
const untaggedInputIds = new Set([
|
|
2565
|
+
...sessions.get(args.sessionId)?.prefix?.untaggedInputIds ?? [],
|
|
2566
|
+
...args.db ? readPersistedLkgUntaggedInputIds(args.db, args.sessionId) : [],
|
|
2567
|
+
...ids.slice(args.entry.anchorIndex + 1)
|
|
2568
|
+
]);
|
|
2534
2569
|
sessions.set(args.sessionId, {
|
|
2535
2570
|
fenceRevision: sessions.get(args.sessionId)?.fenceRevision,
|
|
2536
2571
|
prefix: {
|
|
2537
2572
|
inputs: ids.map((id, index) => ({ id, digest: digests[index] })),
|
|
2538
2573
|
json: JSON.stringify(args.messages),
|
|
2539
|
-
untaggedInputIds
|
|
2540
|
-
...sessions.get(args.sessionId)?.prefix?.untaggedInputIds ?? [],
|
|
2541
|
-
...ids.slice(args.entry.anchorIndex + 1)
|
|
2542
|
-
]),
|
|
2574
|
+
untaggedInputIds,
|
|
2543
2575
|
modelKey: args.modelKey,
|
|
2544
2576
|
providerKey: args.providerKey
|
|
2545
2577
|
}
|
|
2546
2578
|
});
|
|
2579
|
+
if (args.db)
|
|
2580
|
+
persistLkgUntaggedInputIds(args.db, args.sessionId, untaggedInputIds);
|
|
2547
2581
|
return true;
|
|
2548
2582
|
}
|
|
2549
2583
|
function readLkgRecoveryPrefix(sessionId, inputs, messages, db) {
|
|
@@ -3543,11 +3577,15 @@ function clonePiContentDecisions(raw, filter) {
|
|
|
3543
3577
|
])}`);
|
|
3544
3578
|
continue;
|
|
3545
3579
|
}
|
|
3546
|
-
|
|
3547
|
-
|
|
3580
|
+
const thinkingPrefix = [
|
|
3581
|
+
THINKING_BINDING_RECOVERY_FROZEN_PREFIX,
|
|
3582
|
+
COMPACTION_OFF_THINKING_FROZEN_PREFIX
|
|
3583
|
+
].find((prefix) => entry.startsWith(prefix));
|
|
3584
|
+
if (thinkingPrefix) {
|
|
3585
|
+
const messageId = entry.slice(thinkingPrefix.length);
|
|
3548
3586
|
if (messageId.length === 0 || !filter.includeMessageId(messageId))
|
|
3549
3587
|
continue;
|
|
3550
|
-
copied.push(`${
|
|
3588
|
+
copied.push(`${thinkingPrefix}${mapMessageId(filter, messageId) ?? messageId}`);
|
|
3551
3589
|
continue;
|
|
3552
3590
|
}
|
|
3553
3591
|
if (entry.startsWith(MERGED_REASONING_PARTS_PREFIX) || entry.startsWith("pi-content-replay-"))
|
|
@@ -6466,9 +6504,33 @@ var promptFailureDetails = new WeakMap;
|
|
|
6466
6504
|
function isHostTimeoutError(error) {
|
|
6467
6505
|
return error !== null && typeof error === "object" && error.name === "TimeoutError";
|
|
6468
6506
|
}
|
|
6507
|
+
|
|
6508
|
+
class ModelProducedNoOutputError extends Error {
|
|
6509
|
+
waitedMs;
|
|
6510
|
+
constructor(waitedMs) {
|
|
6511
|
+
super(`prompt timed out after ${waitedMs}ms with no model output`);
|
|
6512
|
+
this.waitedMs = waitedMs;
|
|
6513
|
+
this.name = "ModelProducedNoOutputError";
|
|
6514
|
+
}
|
|
6515
|
+
}
|
|
6516
|
+
var modelActivityBySignal = new WeakMap;
|
|
6517
|
+
function noteModelActivityMonitored(signal) {
|
|
6518
|
+
const activity = signal ? modelActivityBySignal.get(signal) : undefined;
|
|
6519
|
+
if (activity)
|
|
6520
|
+
activity.monitored = true;
|
|
6521
|
+
}
|
|
6522
|
+
function noteModelOutputReceived(signal) {
|
|
6523
|
+
const activity = signal ? modelActivityBySignal.get(signal) : undefined;
|
|
6524
|
+
if (activity) {
|
|
6525
|
+
activity.monitored = true;
|
|
6526
|
+
activity.received = true;
|
|
6527
|
+
}
|
|
6528
|
+
}
|
|
6469
6529
|
function isPromptTimeoutError(error) {
|
|
6470
6530
|
if (isHostTimeoutError(error))
|
|
6471
6531
|
return true;
|
|
6532
|
+
if (error instanceof ModelProducedNoOutputError)
|
|
6533
|
+
return true;
|
|
6472
6534
|
return error instanceof Error && /^prompt timed out after \d+ms$/.test(error.message);
|
|
6473
6535
|
}
|
|
6474
6536
|
function getPromptFailureDetail(error) {
|
|
@@ -6546,12 +6608,22 @@ function raceWithSignal(work, signal) {
|
|
|
6546
6608
|
work.then(resolve, reject).finally(() => signal.removeEventListener("abort", abort));
|
|
6547
6609
|
});
|
|
6548
6610
|
}
|
|
6549
|
-
async function promptWithTimeout(client, args, timeoutMs, signal, transport) {
|
|
6611
|
+
async function promptWithTimeout(client, args, timeoutMs, signal, transport, firstOutputTimeoutMs) {
|
|
6550
6612
|
if (signal?.aborted) {
|
|
6551
6613
|
throw new Error(externalAbortMessage(signal));
|
|
6552
6614
|
}
|
|
6553
6615
|
const controller = new AbortController;
|
|
6554
6616
|
const timeout = setTimeout(() => controller.abort(), timeoutMs);
|
|
6617
|
+
const activity = { monitored: false, received: false };
|
|
6618
|
+
modelActivityBySignal.set(controller.signal, activity);
|
|
6619
|
+
let silent = false;
|
|
6620
|
+
const firstOutputTimer = firstOutputTimeoutMs !== undefined && firstOutputTimeoutMs < timeoutMs ? setTimeout(() => {
|
|
6621
|
+
if (!activity.monitored || activity.received)
|
|
6622
|
+
return;
|
|
6623
|
+
silent = true;
|
|
6624
|
+
controller.abort();
|
|
6625
|
+
}, firstOutputTimeoutMs) : undefined;
|
|
6626
|
+
const timeoutError = () => silent && firstOutputTimeoutMs !== undefined ? new ModelProducedNoOutputError(firstOutputTimeoutMs) : new Error(`prompt timed out after ${timeoutMs}ms`);
|
|
6555
6627
|
const onExternalAbort = () => controller.abort();
|
|
6556
6628
|
signal?.addEventListener("abort", onExternalAbort);
|
|
6557
6629
|
try {
|
|
@@ -6574,7 +6646,7 @@ async function promptWithTimeout(client, args, timeoutMs, signal, transport) {
|
|
|
6574
6646
|
if (!transport || transport.childSessionId) {
|
|
6575
6647
|
await abortChildRun(client, transport?.childSessionId ?? args.path.id);
|
|
6576
6648
|
}
|
|
6577
|
-
throw
|
|
6649
|
+
throw timeoutError();
|
|
6578
6650
|
}
|
|
6579
6651
|
if (isHostTimeoutError(error)) {
|
|
6580
6652
|
if (!transport || transport.childSessionId) {
|
|
@@ -6584,13 +6656,15 @@ async function promptWithTimeout(client, args, timeoutMs, signal, transport) {
|
|
|
6584
6656
|
throw error;
|
|
6585
6657
|
} finally {
|
|
6586
6658
|
clearTimeout(timeout);
|
|
6659
|
+
if (firstOutputTimer)
|
|
6660
|
+
clearTimeout(firstOutputTimer);
|
|
6587
6661
|
signal?.removeEventListener("abort", onExternalAbort);
|
|
6588
6662
|
}
|
|
6589
6663
|
if (signal?.aborted || controller.signal.aborted) {
|
|
6590
6664
|
if (!transport || transport.childSessionId) {
|
|
6591
6665
|
await abortChildRun(client, transport?.childSessionId ?? args.path.id);
|
|
6592
6666
|
}
|
|
6593
|
-
throw
|
|
6667
|
+
throw signal?.aborted ? new Error(externalAbortMessage(signal)) : timeoutError();
|
|
6594
6668
|
}
|
|
6595
6669
|
}
|
|
6596
6670
|
async function abortChildRun(client, sessionId) {
|
|
@@ -6608,6 +6682,8 @@ async function abortChildRun(client, sessionId) {
|
|
|
6608
6682
|
function isNonRetryable(error, externalSignal) {
|
|
6609
6683
|
if (externalSignal?.aborted || error instanceof HiddenCompletionRefusal && error.terminal || error instanceof HiddenAgentStepLimit || error instanceof DreamTokenBudgetExceeded)
|
|
6610
6684
|
return true;
|
|
6685
|
+
if (error instanceof ModelProducedNoOutputError)
|
|
6686
|
+
return false;
|
|
6611
6687
|
if (error instanceof Error) {
|
|
6612
6688
|
if (error.name === "AbortError")
|
|
6613
6689
|
return true;
|
|
@@ -6639,7 +6715,7 @@ function classifyPromptFailure(error, phase, externalSignal) {
|
|
|
6639
6715
|
if (externalSignal?.aborted || message === "prompt aborted by external signal") {
|
|
6640
6716
|
return "child_aborted";
|
|
6641
6717
|
}
|
|
6642
|
-
if (/^prompt timed out after \d+ms$/.test(message) || isHostTimeoutError(error)) {
|
|
6718
|
+
if (error instanceof ModelProducedNoOutputError || /^prompt timed out after \d+ms$/.test(message) || isHostTimeoutError(error)) {
|
|
6643
6719
|
return "provider_timeout";
|
|
6644
6720
|
}
|
|
6645
6721
|
if (phase === "validation") {
|
|
@@ -6674,11 +6750,11 @@ function throwWithPromptFailure(legacyError, failedAttempts, args, timeoutMs, tr
|
|
|
6674
6750
|
});
|
|
6675
6751
|
throw error;
|
|
6676
6752
|
}
|
|
6677
|
-
async function attemptOnce(client, args, timeoutMs, signal, callContext, label, transport, allowModelSuggestions = true) {
|
|
6753
|
+
async function attemptOnce(client, args, timeoutMs, signal, callContext, label, transport, allowModelSuggestions = true, firstOutputTimeoutMs) {
|
|
6678
6754
|
const originalBody = { ...args.body };
|
|
6679
6755
|
const attemptArgs = copyPromptArgs(args, originalBody);
|
|
6680
6756
|
try {
|
|
6681
|
-
await promptWithTimeout(client, attemptArgs, timeoutMs, signal, transport);
|
|
6757
|
+
await promptWithTimeout(client, attemptArgs, timeoutMs, signal, transport, firstOutputTimeoutMs);
|
|
6682
6758
|
return;
|
|
6683
6759
|
} catch (error) {
|
|
6684
6760
|
if (isNonRetryable(error, signal) || !allowModelSuggestions)
|
|
@@ -6697,9 +6773,30 @@ async function attemptOnce(client, args, timeoutMs, signal, callContext, label,
|
|
|
6697
6773
|
providerID: suggestion.providerID,
|
|
6698
6774
|
modelID: suggestion.suggestion
|
|
6699
6775
|
}
|
|
6700
|
-
}), timeoutMs, signal, transport);
|
|
6776
|
+
}), timeoutMs, signal, transport, firstOutputTimeoutMs);
|
|
6701
6777
|
}
|
|
6702
6778
|
}
|
|
6779
|
+
function createChainClock(options, timeoutMs) {
|
|
6780
|
+
const fallbacks = options.fallbackModels ?? [];
|
|
6781
|
+
const hasValidFallbackFrom = (index) => fallbacks.slice(index).some((fallback) => {
|
|
6782
|
+
const entry = toModelEntry(fallback);
|
|
6783
|
+
return entry ? parseProviderModel(entry.model) !== null : false;
|
|
6784
|
+
});
|
|
6785
|
+
let silentSpentMs = 0;
|
|
6786
|
+
return {
|
|
6787
|
+
budget(nextFallbackIndex) {
|
|
6788
|
+
const attemptTimeoutMs = Math.max(1, timeoutMs - silentSpentMs);
|
|
6789
|
+
if (options.firstOutputTimeoutMs === undefined || !hasValidFallbackFrom(nextFallbackIndex))
|
|
6790
|
+
return { timeoutMs: attemptTimeoutMs };
|
|
6791
|
+
const bound = Math.min(options.firstOutputTimeoutMs, Math.floor(attemptTimeoutMs / 2));
|
|
6792
|
+
return bound > 0 ? { timeoutMs: attemptTimeoutMs, firstOutputTimeoutMs: bound } : { timeoutMs: attemptTimeoutMs };
|
|
6793
|
+
},
|
|
6794
|
+
settle(error, startedAt) {
|
|
6795
|
+
if (error instanceof ModelProducedNoOutputError)
|
|
6796
|
+
silentSpentMs += Date.now() - startedAt;
|
|
6797
|
+
}
|
|
6798
|
+
};
|
|
6799
|
+
}
|
|
6703
6800
|
async function promptSyncWithModelSuggestionRetry(client, args, options = {}) {
|
|
6704
6801
|
const timeoutMs = options.timeoutMs ?? 300000;
|
|
6705
6802
|
const callContext = options.callContext ?? "subagent";
|
|
@@ -6708,11 +6805,15 @@ async function promptSyncWithModelSuggestionRetry(client, args, options = {}) {
|
|
|
6708
6805
|
const baseArgs = copyPromptArgs(args, baseBody);
|
|
6709
6806
|
const explicitPrimaryLabel = baseBody.model?.providerID && baseBody.model.modelID ? `${baseBody.model.providerID}/${baseBody.model.modelID}` : "primary";
|
|
6710
6807
|
let lastError = null;
|
|
6808
|
+
const clock = createChainClock(options, timeoutMs);
|
|
6809
|
+
const primaryStartedAt = Date.now();
|
|
6711
6810
|
try {
|
|
6712
|
-
|
|
6811
|
+
const budget = clock.budget(0);
|
|
6812
|
+
await attemptOnce(client, baseArgs, budget.timeoutMs, options.signal, callContext, explicitPrimaryLabel, options.transport, options.allowModelSuggestions, budget.firstOutputTimeoutMs);
|
|
6713
6813
|
return;
|
|
6714
6814
|
} catch (error) {
|
|
6715
6815
|
lastError = error;
|
|
6816
|
+
clock.settle(error, primaryStartedAt);
|
|
6716
6817
|
if (isNonRetryable(error, options.signal))
|
|
6717
6818
|
throw error;
|
|
6718
6819
|
if (fallbacks.length === 0) {
|
|
@@ -6734,12 +6835,15 @@ async function promptSyncWithModelSuggestionRetry(client, args, options = {}) {
|
|
|
6734
6835
|
model: parsed,
|
|
6735
6836
|
...fallback?.qualifier ? { variant: fallback.qualifier } : {}
|
|
6736
6837
|
});
|
|
6838
|
+
const attemptStartedAt = Date.now();
|
|
6737
6839
|
try {
|
|
6738
|
-
|
|
6840
|
+
const budget = clock.budget(i + 1);
|
|
6841
|
+
await attemptOnce(client, attemptArgs, budget.timeoutMs, options.signal, callContext, label, options.transport, options.allowModelSuggestions, budget.firstOutputTimeoutMs);
|
|
6739
6842
|
log2(`[${callContext}] fallback succeeded with ${label} (attempt ${i + 2}/${fallbacks.length + 1})`);
|
|
6740
6843
|
return;
|
|
6741
6844
|
} catch (error) {
|
|
6742
6845
|
lastError = error;
|
|
6846
|
+
clock.settle(error, attemptStartedAt);
|
|
6743
6847
|
if (isNonRetryable(error, options.signal))
|
|
6744
6848
|
throw error;
|
|
6745
6849
|
const remaining = fallbacks.length - i - 1;
|
|
@@ -6751,9 +6855,9 @@ async function promptSyncWithModelSuggestionRetry(client, args, options = {}) {
|
|
|
6751
6855
|
log2(`[${callContext}] all models exhausted; tried: ${[explicitPrimaryLabel, ...fallbacks.map((fallback) => toModelEntry(fallback)?.model ?? String(fallback))].join(", ")}; last error: ${shortErr(lastError)}`);
|
|
6752
6856
|
throw lastError ?? new Error("All fallback models failed");
|
|
6753
6857
|
}
|
|
6754
|
-
async function attemptAndValidate(client, args, timeoutMs, signal, callContext, attempt, options) {
|
|
6858
|
+
async function attemptAndValidate(client, args, timeoutMs, signal, callContext, attempt, options, firstOutputTimeoutMs) {
|
|
6755
6859
|
try {
|
|
6756
|
-
await attemptOnce(client, args, timeoutMs, signal, callContext, attempt.label, options.transport, options.allowModelSuggestions);
|
|
6860
|
+
await attemptOnce(client, args, timeoutMs, signal, callContext, attempt.label, options.transport, options.allowModelSuggestions, firstOutputTimeoutMs);
|
|
6757
6861
|
} catch (error) {
|
|
6758
6862
|
throw {
|
|
6759
6863
|
error,
|
|
@@ -6815,6 +6919,8 @@ async function promptSyncWithValidatedOutputRetry(client, args, options) {
|
|
|
6815
6919
|
let firstError = null;
|
|
6816
6920
|
let lastError = null;
|
|
6817
6921
|
const cooledPrimary = primaryQuotaFailure(explicitPrimaryLabel);
|
|
6922
|
+
const clock = createChainClock(options, timeoutMs);
|
|
6923
|
+
const primaryStartedAt = Date.now();
|
|
6818
6924
|
try {
|
|
6819
6925
|
if (cooledPrimary)
|
|
6820
6926
|
throw {
|
|
@@ -6829,16 +6935,18 @@ async function promptSyncWithValidatedOutputRetry(client, args, options) {
|
|
|
6829
6935
|
skipped: true
|
|
6830
6936
|
}
|
|
6831
6937
|
};
|
|
6832
|
-
|
|
6938
|
+
const budget = clock.budget(0);
|
|
6939
|
+
return await attemptAndValidate(client, baseArgs, budget.timeoutMs, options.signal, callContext, {
|
|
6833
6940
|
label: explicitPrimaryLabel,
|
|
6834
6941
|
attemptIndex: 0,
|
|
6835
6942
|
isFallback: false,
|
|
6836
6943
|
totalAttempts,
|
|
6837
6944
|
model: baseBody.model
|
|
6838
|
-
}, options);
|
|
6945
|
+
}, options, budget.firstOutputTimeoutMs);
|
|
6839
6946
|
} catch (caught) {
|
|
6840
6947
|
const failure = caught;
|
|
6841
6948
|
failedAttempts.push(failure);
|
|
6949
|
+
clock.settle(failure.error, primaryStartedAt);
|
|
6842
6950
|
firstError = failure.error;
|
|
6843
6951
|
lastError = failure.error;
|
|
6844
6952
|
if (failure.error instanceof DreamerProviderOutputFailureError && failure.error.quotaResetAt !== undefined)
|
|
@@ -6876,13 +6984,16 @@ async function promptSyncWithValidatedOutputRetry(client, args, options) {
|
|
|
6876
6984
|
totalAttempts,
|
|
6877
6985
|
model: parsed
|
|
6878
6986
|
};
|
|
6987
|
+
const attemptStartedAt = Date.now();
|
|
6879
6988
|
try {
|
|
6880
|
-
const
|
|
6989
|
+
const budget = clock.budget(i + 1);
|
|
6990
|
+
const result = await attemptAndValidate(client, attemptArgs, budget.timeoutMs, options.signal, callContext, attempt, options, budget.firstOutputTimeoutMs);
|
|
6881
6991
|
log2(`[${callContext}] fallback succeeded with ${label} (attempt ${i + 2}/${fallbacks.length + 1})`);
|
|
6882
6992
|
return result;
|
|
6883
6993
|
} catch (caught) {
|
|
6884
6994
|
const failure = caught;
|
|
6885
6995
|
failedAttempts.push(failure);
|
|
6996
|
+
clock.settle(failure.error, attemptStartedAt);
|
|
6886
6997
|
lastError = failure.error;
|
|
6887
6998
|
if (isNonRetryable(failure.error, options.signal)) {
|
|
6888
6999
|
throwWithPromptFailure(failure.error, failedAttempts, args, timeoutMs, options.transport);
|
|
@@ -7234,6 +7345,24 @@ function isTerminalAssistant(message) {
|
|
|
7234
7345
|
const info = infoOf(message);
|
|
7235
7346
|
return isSettledAssistant(message) && info.finish !== "tool-calls" && info.finish !== "tool_use" && !(message && typeof message === "object" && Array.isArray(message.parts) && message.parts.some((part) => part.type === "tool"));
|
|
7236
7347
|
}
|
|
7348
|
+
function showsModelOutput(message) {
|
|
7349
|
+
if (infoOf(message).role !== "assistant")
|
|
7350
|
+
return false;
|
|
7351
|
+
const tokens = sumTokensFromChildMessages([message]);
|
|
7352
|
+
if (tokens.input + tokens.output + tokens.cacheRead + tokens.cacheWrite > 0)
|
|
7353
|
+
return true;
|
|
7354
|
+
const parts = message?.parts;
|
|
7355
|
+
if (!Array.isArray(parts))
|
|
7356
|
+
return false;
|
|
7357
|
+
return parts.some((part) => {
|
|
7358
|
+
if (!part || typeof part !== "object")
|
|
7359
|
+
return false;
|
|
7360
|
+
const { type, text } = part;
|
|
7361
|
+
if (type === "tool")
|
|
7362
|
+
return true;
|
|
7363
|
+
return (type === "text" || type === "reasoning") && typeof text === "string" && text.trim().length > 0;
|
|
7364
|
+
});
|
|
7365
|
+
}
|
|
7237
7366
|
function unwrapData(response) {
|
|
7238
7367
|
if (response && typeof response === "object" && "data" in response) {
|
|
7239
7368
|
return response.data;
|
|
@@ -7331,6 +7460,8 @@ async function promptAsyncAndWaitForIdle(client, request, options = {}) {
|
|
|
7331
7460
|
}
|
|
7332
7461
|
let sentAt = Date.now();
|
|
7333
7462
|
let sawBusy = false;
|
|
7463
|
+
noteModelActivityMonitored(signal);
|
|
7464
|
+
let sawOutput = false;
|
|
7334
7465
|
for (;; ) {
|
|
7335
7466
|
await sleep(pollIntervalMs, signal);
|
|
7336
7467
|
const hostError = activeSessionErrors.get(sessionId);
|
|
@@ -7345,6 +7476,13 @@ async function promptAsyncAndWaitForIdle(client, request, options = {}) {
|
|
|
7345
7476
|
}
|
|
7346
7477
|
const status = await readStatus(session, sessionId, dir, signal);
|
|
7347
7478
|
const messages = await readMessages(session, sessionId, dir, signal);
|
|
7479
|
+
if (!sawOutput && messages.some((message) => {
|
|
7480
|
+
const id = messageId2(message);
|
|
7481
|
+
return id !== null && !initialBaseline.has(id) && showsModelOutput(message);
|
|
7482
|
+
})) {
|
|
7483
|
+
sawOutput = true;
|
|
7484
|
+
noteModelOutputReceived(signal);
|
|
7485
|
+
}
|
|
7348
7486
|
if (budget) {
|
|
7349
7487
|
const latest = messages.at(-1);
|
|
7350
7488
|
const latestId = messageId2(latest);
|
|
@@ -18658,4 +18796,4 @@ ${failure}`;
|
|
|
18658
18796
|
}
|
|
18659
18797
|
}
|
|
18660
18798
|
|
|
18661
|
-
export { historianRunConfig, dreamerRunConfig, pluginConfigReader, currentPluginConfigReader, withLiveDreamerOutputCap, COMPARTMENT_LEASE_RENEWAL_MS, acquireCompartmentLease, renewCompartmentLease, releaseCompartmentLeaseBestEffort, isCompartmentLeaseHeld, queueM0Mutation, getMaxM0MutationId, getCompartments, getLastCompartmentEndMessage, getLastCompartmentEndMessageId, getUncoveredCompartmentEndsThrough, providerResponseFailed, isSuccessfulProviderCompletion, rememberUnpublishedAutoSearchNoHint, getUnpublishedAutoSearchNoHint, forgetUnpublishedAutoSearchNoHint, registerAutoSearchWork, getOrCreateSessionMeta, updateSessionMeta, advanceToolReclaimWatermark, markSessionCleanupPending, retryPendingSessionCleanups, retryPendingRustSessionCleanupsForProject, clearSession, requestPendingMaterialization, pendingMaterializationOrigin, hasPendingMaterializationOrigin, clearPendingMaterialization, recordSystemPromptForRequest, recordHeldHeadForRequest, bindSystemPromptResponse, isHeldHeadForRequest, deferDeliveredSystemRefresh, retirePendingSystemPromptDelivery, lkgProviderInputTotal, beginV2LkgRequest, claimLkgRequestIdentity, currentLkgRequestIdentity, noteCapturedLkgRequest, noteLkgProviderResponse, measuredLkgPrefix, clearLkgMeasuredRequest, saveLkgSlotToDb, clearPersistedLkgSlotStrict, loadPersistedLkgSlot, drainStaleLkgSlots, resolveLkgModelKeys, createLkgEntryProjector, captureLkgSlot, validateAnthropicReasoningRuns, validateLkgSeam, replayLkg, coldStartRawServedIndex, coldStartUncapturedReplay, noteUncertifiedNormalLkg, hasProcessLocalLkgProof, lkgDirtyRevision, rememberLkgDirtyRevision, noteLkgRecoveryPrefix, readLkgRecoveryPrefix, noteLkgHealthyPrefix, lkgRecoveryReplayUnproven, lkgRecoveryEntryUnproven, beginLkgPass, visitMessageContentFields, contentSnapshotValue, messageContentFields, signatureForFields, exactReusablePrefix, incrementalLkgContentDigests, lkgSlotRejection, captureSlot, getInMemorySlot, getSlot, forgetInMemorySlot, dropSlot, noteEntry, getLkgSlotHeapStats, TOOL_SWEEP_SCOPED_MARKER, useScopedToolSweep, createPreAdoptionToolSweepResolver, copySessionStateForClone, queueMemoryMutation, getMaxMemoryMutationIdForProjects, GLOBAL_USER_PROFILE_PROJECT_PATH, getProjectState, bumpProjectUserProfileVersion, saveSourceContent, replaceSourceContent, getSourceContents, readCoordinateGeneration, rebaseSessionCoordinatesAsync, HiddenCompletionRefusal, getOpenCodeDbPath, compareOpenCodeMessagesByCanonicalOrder, prepareCompactionMarkerCandidates, removeMcOwnedCompactionMarkers, getCompartmentEvents, USER_MEMORY_CANDIDATE_TTL_MS, insertUserMemoryCandidates, getUserMemoryCandidates, deleteUserMemoryCandidates, pruneExpiredUserMemoryCandidates, insertUserMemory, getActiveUserMemories, updateUserMemoryContent, dismissUserMemory, DreamerProviderOutputFailureError, withDreamerModelCooldown, providerOutputFailureFromInvalidManifest, DREAMER_AGENT, DREAMER_RETROSPECTIVE_AGENT, DREAMER_PRIMER_INVESTIGATOR_AGENT, DREAMER_MEMORY_MAPPER_AGENT, DREAMER_CLASSIFIER_AGENT, DREAMER_DOCS_AGENT, DREAMER_REVIEWER_AGENT, HIDDEN_HISTORIAN_AGENT, HIDDEN_DREAMER_AGENT, HIDDEN_CURATE_AGENT, hiddenAgentFor, hiddenToolLoop, HIDDEN_RUN_DISPOSED_REASON, noteChildOfDisposedInstance, hiddenChildPermissions, registerHiddenChildAgents, hiddenToolCallRefusal, HiddenAgentStepLimit, HiddenChildHook, extractLatestAssistantText, hasLengthCappedOutput, parseProviderModel, modelBodyField, toModelEntry, isPromptTimeoutError, getPromptFailureDetail, raceWithSignal, promptSyncWithValidatedOutputRetry, normalizeSDKResponse, failedInvocationStatus, sumTokensFromChildMessages, recordChildInvocation, createPromptAsyncTransport, CTX_NOTE_LIGHT_DESCRIPTION, ACTIVE_TOOL_IDS, systemPromptFingerprint, createPromptSurfaceRuntime, createPromptSurfaceGuidanceEpochCache, MARKER_SUMMARY_TEXT, markerUpdateDefinitelyDidNotCut, applyDeferredCompactionMarker, teardownChildSession, runTokenLog, formatRunTokenLog, createChildSessionWithFence, buildMagicContextSection, getMuralIdentity, getMural, modelKeyAcceptsImages, resolveMuralWire, extractM0Block, formatDate, TEMPORAL_MARKER_REPLAY_PATTERN, collectTemporalCandidates, injectTemporalMarkers, clearInjectionCache, getVisibleMemoryIds, selectHiddenMessagesAtCompactionSeam, prepareCompartmentInjection, renderCompartmentInjection, MaterializeContentionError, mustMaterialize, trimMemoriesToBudgetV2, renderMemoryBlockV2, materializeM0, hydrateCachedM0Mural, resetPrefixTrimFallbackState, findHostCompactionWindow, capturePrefixTrimSourceOrder, prepareCachedM0M1Replay, hasCompleteCachedM0M1, injectM0M1, clampProducerAtomChars, producerInputTokenLimit, historianProducerReserve, producerPromptFailureReason, resolveHiddenCompletionExecutor, createV1HiddenCompletionExecutor, EMPTY_READ_REPLY, noteTouchedAt, renderGlance, renderNotesById, formatWriteReply, observeNoteNudgeServe, onNoteTrigger, peekNoteNudgeText, markNoteNudgeDelivered, clearNoteNudgeTriggerAndCooldown, omitIncompleteFileTokenTotals, describeBoundaryDiagnostics, RECOVERY_NO_HEAD_LIMIT, deriveProtectedTailTokenTarget, selectPerRunCap, resolveOpenCodeProtectedTailBoundary, resolveWrapupProtectedTailBoundary, getRawHistoryEligibility, hasRunnableCompartmentWindow, recordHighPressureNoEligibleHead, noteTransformPassForExactOrdinalReads, runCompartmentAgent, getActiveCompartmentRun, markActiveCompartmentRunPublished, registerActiveCompartmentRun, startCompartmentAgent, isRecompFailure2, isRecompSkip2, extractRecompReason2, setRecompStarting2, setRecompNote2, setRecompTerminal2, buildRecompDeps2, runManagedRecomp2 };
|
|
18799
|
+
export { historianRunConfig, dreamerRunConfig, pluginConfigReader, currentPluginConfigReader, withLiveDreamerOutputCap, COMPARTMENT_LEASE_RENEWAL_MS, acquireCompartmentLease, renewCompartmentLease, releaseCompartmentLeaseBestEffort, isCompartmentLeaseHeld, queueM0Mutation, getMaxM0MutationId, getCompartments, getLastCompartmentEndMessage, getLastCompartmentEndMessageId, getUncoveredCompartmentEndsThrough, providerResponseFailed, isSuccessfulProviderCompletion, rememberUnpublishedAutoSearchNoHint, getUnpublishedAutoSearchNoHint, forgetUnpublishedAutoSearchNoHint, registerAutoSearchWork, getOrCreateSessionMeta, updateSessionMeta, advanceToolReclaimWatermark, markSessionCleanupPending, retryPendingSessionCleanups, retryPendingRustSessionCleanupsForProject, clearSession, requestPendingMaterialization, pendingMaterializationOrigin, hasPendingMaterializationOrigin, clearPendingMaterialization, recordSystemPromptForRequest, recordHeldHeadForRequest, bindSystemPromptResponse, isHeldHeadForRequest, deferDeliveredSystemRefresh, retirePendingSystemPromptDelivery, lkgProviderInputTotal, beginV2LkgRequest, claimLkgRequestIdentity, currentLkgRequestIdentity, noteCapturedLkgRequest, noteLkgProviderResponse, measuredLkgPrefix, clearLkgMeasuredRequest, saveLkgSlotToDb, clearPersistedLkgSlotStrict, loadPersistedLkgSlot, drainStaleLkgSlots, resolveLkgModelKeys, createLkgEntryProjector, captureLkgSlot, validateAnthropicReasoningRuns, validateLkgSeam, replayLkg, coldStartRawServedIndex, coldStartUncapturedReplay, noteUncertifiedNormalLkg, hasProcessLocalLkgProof, lkgDirtyRevision, rememberLkgDirtyRevision, readPersistedLkgUntaggedInputIds, persistLkgUntaggedInputIds, noteLkgRecoveryPrefix, readLkgRecoveryPrefix, noteLkgHealthyPrefix, lkgRecoveryReplayUnproven, lkgRecoveryEntryUnproven, beginLkgPass, visitMessageContentFields, contentSnapshotValue, messageContentFields, signatureForFields, exactReusablePrefix, incrementalLkgContentDigests, lkgSlotRejection, captureSlot, getInMemorySlot, getSlot, forgetInMemorySlot, dropSlot, noteEntry, getLkgSlotHeapStats, TOOL_SWEEP_SCOPED_MARKER, useScopedToolSweep, createPreAdoptionToolSweepResolver, copySessionStateForClone, queueMemoryMutation, getMaxMemoryMutationIdForProjects, GLOBAL_USER_PROFILE_PROJECT_PATH, getProjectState, bumpProjectUserProfileVersion, saveSourceContent, replaceSourceContent, getSourceContents, readCoordinateGeneration, rebaseSessionCoordinatesAsync, HiddenCompletionRefusal, getOpenCodeDbPath, compareOpenCodeMessagesByCanonicalOrder, prepareCompactionMarkerCandidates, removeMcOwnedCompactionMarkers, getCompartmentEvents, USER_MEMORY_CANDIDATE_TTL_MS, insertUserMemoryCandidates, getUserMemoryCandidates, deleteUserMemoryCandidates, pruneExpiredUserMemoryCandidates, insertUserMemory, getActiveUserMemories, updateUserMemoryContent, dismissUserMemory, DreamerProviderOutputFailureError, withDreamerModelCooldown, providerOutputFailureFromInvalidManifest, DREAMER_AGENT, DREAMER_RETROSPECTIVE_AGENT, DREAMER_PRIMER_INVESTIGATOR_AGENT, DREAMER_MEMORY_MAPPER_AGENT, DREAMER_CLASSIFIER_AGENT, DREAMER_DOCS_AGENT, DREAMER_REVIEWER_AGENT, HIDDEN_HISTORIAN_AGENT, HIDDEN_DREAMER_AGENT, HIDDEN_CURATE_AGENT, hiddenAgentFor, hiddenToolLoop, HIDDEN_RUN_DISPOSED_REASON, noteChildOfDisposedInstance, hiddenChildPermissions, registerHiddenChildAgents, hiddenToolCallRefusal, HiddenAgentStepLimit, HiddenChildHook, extractLatestAssistantText, hasLengthCappedOutput, parseProviderModel, modelBodyField, toModelEntry, isPromptTimeoutError, getPromptFailureDetail, raceWithSignal, promptSyncWithValidatedOutputRetry, normalizeSDKResponse, failedInvocationStatus, sumTokensFromChildMessages, recordChildInvocation, createPromptAsyncTransport, CTX_NOTE_LIGHT_DESCRIPTION, ACTIVE_TOOL_IDS, systemPromptFingerprint, createPromptSurfaceRuntime, createPromptSurfaceGuidanceEpochCache, MARKER_SUMMARY_TEXT, markerUpdateDefinitelyDidNotCut, applyDeferredCompactionMarker, teardownChildSession, runTokenLog, formatRunTokenLog, createChildSessionWithFence, buildMagicContextSection, getMuralIdentity, getMural, modelKeyAcceptsImages, resolveMuralWire, extractM0Block, formatDate, TEMPORAL_MARKER_REPLAY_PATTERN, collectTemporalCandidates, injectTemporalMarkers, clearInjectionCache, getVisibleMemoryIds, selectHiddenMessagesAtCompactionSeam, prepareCompartmentInjection, renderCompartmentInjection, MaterializeContentionError, mustMaterialize, trimMemoriesToBudgetV2, renderMemoryBlockV2, materializeM0, hydrateCachedM0Mural, resetPrefixTrimFallbackState, findHostCompactionWindow, capturePrefixTrimSourceOrder, prepareCachedM0M1Replay, hasCompleteCachedM0M1, injectM0M1, clampProducerAtomChars, producerInputTokenLimit, historianProducerReserve, producerPromptFailureReason, resolveHiddenCompletionExecutor, createV1HiddenCompletionExecutor, EMPTY_READ_REPLY, noteTouchedAt, renderGlance, renderNotesById, formatWriteReply, observeNoteNudgeServe, onNoteTrigger, peekNoteNudgeText, markNoteNudgeDelivered, clearNoteNudgeTriggerAndCooldown, omitIncompleteFileTokenTotals, describeBoundaryDiagnostics, RECOVERY_NO_HEAD_LIMIT, deriveProtectedTailTokenTarget, selectPerRunCap, resolveOpenCodeProtectedTailBoundary, resolveWrapupProtectedTailBoundary, getRawHistoryEligibility, hasRunnableCompartmentWindow, recordHighPressureNoEligibleHead, noteTransformPassForExactOrdinalReads, runCompartmentAgent, getActiveCompartmentRun, markActiveCompartmentRunPublished, registerActiveCompartmentRun, startCompartmentAgent, isRecompFailure2, isRecompSkip2, extractRecompReason2, setRecompStarting2, setRecompNote2, setRecompTerminal2, buildRecompDeps2, runManagedRecomp2 };
|
|
@@ -3799,6 +3799,21 @@ var THINKING_BINDING_STRIP_ORDER_END_MARKER = "binding_mismatch_order:end";
|
|
|
3799
3799
|
function thinkingBindingRecoveryFrozenId(messageId) {
|
|
3800
3800
|
return `${THINKING_BINDING_RECOVERY_FROZEN_PREFIX}${messageId}`;
|
|
3801
3801
|
}
|
|
3802
|
+
var COMPACTION_OFF_THINKING_FROZEN_PREFIX = "compaction_off_thinking:";
|
|
3803
|
+
function compactionOffThinkingFrozenId(messageId) {
|
|
3804
|
+
return `${COMPACTION_OFF_THINKING_FROZEN_PREFIX}${messageId}`;
|
|
3805
|
+
}
|
|
3806
|
+
function compactionOffFrozenThinkingIds(ledger) {
|
|
3807
|
+
const ids = new Set;
|
|
3808
|
+
for (const entry of ledger) {
|
|
3809
|
+
if (!entry.startsWith(COMPACTION_OFF_THINKING_FROZEN_PREFIX))
|
|
3810
|
+
continue;
|
|
3811
|
+
const id = entry.slice(COMPACTION_OFF_THINKING_FROZEN_PREFIX.length);
|
|
3812
|
+
if (id.length > 0)
|
|
3813
|
+
ids.add(id);
|
|
3814
|
+
}
|
|
3815
|
+
return ids;
|
|
3816
|
+
}
|
|
3802
3817
|
function getThinkingBindingRecoveryTarget(db, sessionId) {
|
|
3803
3818
|
const row = db.prepare("SELECT thinking_binding_recovery_target FROM session_meta WHERE session_id = ?").get(sessionId);
|
|
3804
3819
|
const target = row?.thinking_binding_recovery_target;
|
|
@@ -7197,4 +7212,4 @@ function readRawSessionSeedTail2(sessionId, boundaryId, onQuery) {
|
|
|
7197
7212
|
});
|
|
7198
7213
|
}
|
|
7199
7214
|
|
|
7200
|
-
export { detectLatestTurnThinkingMismatch, isPrefixBoundThinkingModel, detectOverflow, SESSION_META_SELECT_COLUMNS, META_COLUMNS, BOOLEAN_META_KEYS, NULL_BIND_META_KEYS, isSessionMetaRow, getDefaultSessionMeta, ensureSessionMetaRow, toSessionMeta, persistCachedM0, clearCachedM0M1, clearCachedM0, expandToolPart, markHostUnservedRow, retreatPastHostUnservedRows, snapTerminalCompartmentToServedRow, isHostRenderedSystemMessage, markCoveredInstructionRow, isCoveredInstructionRow, takeCoveredInstructionRows, cloneKeepingCoveredInstructionMarks, completedToolArcCrossesBoundary, estimateTrueRawMessageTokens, buildToolArcs, fenceBoundaryForCompletedToolArcs, fenceBoundaryForToolArcs, buildTrueRawTokenIndex, computeRawRangeFingerprint, stripSystemInjection, isTextPart, isToolPartWithOutput, isFilePart, toolPartHasUserAnswer, DreamTokenBudgetExceeded, TOKEN_BUDGET_FINALIZE_MESSAGE, registerBudgetFinalizeChild, releaseBudgetFinalizeChild, createDreamTokenBudget, TOOL_USE_DISABLED, needsBlockedRead, withBlockedReadInstruction, rememberV1HiddenRun, recordToolParameters, createDroppedInputGuard, assertExecutableToolInput, isEditTool, MERGED_REASONING_PARTS_PREFIX, decodeMergedReasoningParts, MAX_EXECUTE_THRESHOLD, escalationBands, HYGIENE_PROVIDER_UNITS_VERSION, sessionDecisionCalibration, transitionSessionHygieneUnits, readEpochFloorSnapshot, getProtectionWindowForSession, withReplayEnvelopeSnapshot, invalidateReplayEnvelopeSnapshot, isRustMarkerAdmissionFenced, setRustMarkerAdmissionFence, ReplayDocumentError, readReplayEnvelope, readReplayDocument, updateReplayDocument, writeReplayDocument, isEmergencyRecoveryArmed, isProviderOverflowReconfirmed, isProviderOverflowFailClosedProven, getEmergencyRecoveryArmedAt, describeProtectedTailDrainBudgetSkip, loadPersistedUsage, loadProtectedTailMeta, markProtectedTailPolicyV3Seeded, recordProtectedTailPublicationFloor, recordProtectedTailNoEligibleHead, resetProtectedTailNoEligibleHead, getWrapupInProgressState, isWrapupInProgress, acquireWrapupInProgress, updateWrapupInProgress, releaseWrapupInProgress, resolveCompactionModeRecord, getCompactionModeRecord, setCompactionModeRecord, getProtectedTailDrainBudgetSkip, reserveProtectedTailDrainTokens, clearEmergencyDrainLatch, recordHistorianDrainFailure, clearHistorianDrainFailure, rollbackProtectedTailDrainReservation, clearPersistedReasoningWatermark, getEmergencyInputSample, setEmergencyDropSample, clearEmergencyDropSample, getLastNudgeUndropped, setLastNudgeUndropped, getChannel1NudgeState, setChannel1NudgeState, markChannel1PostReduceGracePending, captureChannel1PostReduceGraceBaseline, getChannel2NudgeState, setChannel2NudgeState, casChannel2NudgeState, claimChannel2NudgeState, casChannel2NudgeClaim, getPersistedNoteNudge, setPersistedNoteNudgeTrigger, setPersistedNoteNudgeTriggerMessageId, getNoteNudgeAnchors, getAutoSearchHintDecisions, deliverNoteNudgeAtomic, appendAutoSearchHintDecision, pruneNoteNudgeAnchors, queueAutoSearchHintDecisionRetirement, flushAutoSearchHintDecisionRetirement, getPersistedTodoPermissionDenied, setPersistedTodoPermissionDenied, getPersistedTodoSyntheticAnchor, setPersistedTodoSyntheticAnchor, clearPersistedTodoSyntheticAnchor, getNoteLastReadAt, setNoteLastReadAt, getHistorianFailureState, incrementHistorianFailure, clearHistorianFailureState, getOverflowState, loadTransformPassStateSnapshot, recordOverflowDetected, recordDetectedContextLimit, clearEmergencyRecovery, clearDetectedContextLimit, getPersistedCompactionMarkerState, setPersistedCompactionMarkerState, getDeferredClearedCompactionMarkerState, retireDeferredClearedCompactionMarkerState, parseStrippedPlaceholderState, serializeStrippedPlaceholderState, getStrippedPlaceholderIds, applyStrippedPlaceholderDelta, THINKING_BINDING_RECOVERY_FROZEN_PREFIX, THINKING_BINDING_STRIP_ORDER_END_MARKER, thinkingBindingRecoveryFrozenId, getThinkingBindingRecoveryTarget, clearThinkingBindingRecoveryIf, getMergedReasoningStrippedIds, addMergedReasoningStrippedIds, getTrailingBlankDecisions, addTrailingBlankDecisions, demoteTrailingBlankKeepDecisions, getStaleReduceStrippedIds, addStaleReduceStrippedIds, getProcessedImageStrippedIds, parseProcessedImageMarkers, serializeProcessedImageMarkers, getProcessedImageMarkers, addProcessedImageStrippedIds, getPendingCompactionMarkerState, getCompactionMarkerHealth, loadPostprocessReplaySnapshot, setPendingCompactionMarkerState, replacePendingCompactionMarkerStateIf, clearPendingCompactionMarkerStateIf, getPendingPiCompactionMarkerState, clearPendingPiCompactionMarkerStateIf, logPiCompactionMarkerClear, setSessionWorkMetrics, getObservedEpochFloor, resolveEpochFloorForPass, getReasoningRemovalState, addRemovedReasoningIds, markDropLeavesReasoning, modelAcceptsEmptyContent, isAnthropicFamilyRoute, neutralizeDroppedReasoningPart, restoreNeutralizedReasoningPart, isNeutralizedReasoningPart, variantChangeBustsProviderCache, makeSentinel, makeWholeMessageSentinel, isSentinel, replaySentinelByMessageIds, isInActiveAnthropicTurn, activeAnthropicTurnStart, hasAnthropicReasoning, stripSystemInjectedMessages, stripDroppedPlaceholderMessages, replayClearedReasoning, replayStrippedInlineThinking, clearOldReasoning, stripClearedReasoning, stripInlineThinking, findReasoningBearingAssistantIds, findLatestAssistantReasoningMutationExemptMessage, snapshotTrailingBlankSourceDecisions, findTrailingBlankDecisionCandidates, applyFrozenTrailingBlankDecisions, stripReasoningFromAssistantIds, findMergedReasoningStripDecisions, stripReasoningFromMergedAssistants, getEmptyImageParts, stripProcessedImages, projectOpencodeReasoningBudgetCutoff, DEFAULT_KEEP_REASONING_TOKENS, resolveKeepReasoningTokens, reasoningStepCost, reasoningBudgetCutoff, reasoningTextAndOpaque, opencodeReasoningBudgetCutoff, describeFinalWireTail, estimatePartImageTokens, estimateMessageTokens, wireContentBytes, createFinalWireUsageTracker, estimateFinalWireInputTokens, estimateAppendedWireTokens, SKELETON_REAL_INPUT_MAX_BYTES, partHasCompletedResult, extractToolCallObservation, ToolMutationBatch, createToolDropTarget, resolveHostServedBoundaryId2, hasRawMessageProvider2, setRawMessageProvider2, setBoundedRawMessageProvider2, withRawMessageProvider2, cleanUserText2, withRawSessionMessageCache2, readRawSessionMessages2, readRawSessionMessagePage2, getRawSessionMessageOrdinalCount2, RAW_MESSAGE_VISIT_PAGE_SIZE2, visitRawSessionMessages2, visitRawSessionMessagesAsync2, readRawSessionMessageRange2, prepareRawSessionOrdinals2, primeTailRawMessageCache2, getCachedAbsoluteMessageCount2, primeInMemoryTailRawMessageCache2, readRawSessionMessageOrdinalPage2, getRawSessionStoredMessageCount2, readRawSessionMessageIdOrdinalsForRange2, readRawSessionMessageIdOrdinals2, readRawSessionMessagePartsById2, readRawSessionBoundaryEndpoints2, hasRawSessionMessageById2, readRawSessionMessageOrdinalById2, compareRawSessionMessageOrder2, readRawSessionMessageById2, getRawSessionMessageCount2, RAW_SESSION_TAG_KEY_PAGE_SIZE2, getRawSessionTagKeysThrough2, getLegacyProtectedTailStartOrdinal2, getProtectedTailStartOrdinal2, readSessionChunk2, getRawSessionMessageIdsThrough2, readRawSessionSeedTail2 };
|
|
7215
|
+
export { detectLatestTurnThinkingMismatch, isPrefixBoundThinkingModel, detectOverflow, SESSION_META_SELECT_COLUMNS, META_COLUMNS, BOOLEAN_META_KEYS, NULL_BIND_META_KEYS, isSessionMetaRow, getDefaultSessionMeta, ensureSessionMetaRow, toSessionMeta, persistCachedM0, clearCachedM0M1, clearCachedM0, expandToolPart, markHostUnservedRow, retreatPastHostUnservedRows, snapTerminalCompartmentToServedRow, isHostRenderedSystemMessage, markCoveredInstructionRow, isCoveredInstructionRow, takeCoveredInstructionRows, cloneKeepingCoveredInstructionMarks, completedToolArcCrossesBoundary, estimateTrueRawMessageTokens, buildToolArcs, fenceBoundaryForCompletedToolArcs, fenceBoundaryForToolArcs, buildTrueRawTokenIndex, computeRawRangeFingerprint, stripSystemInjection, isTextPart, isToolPartWithOutput, isFilePart, toolPartHasUserAnswer, DreamTokenBudgetExceeded, TOKEN_BUDGET_FINALIZE_MESSAGE, registerBudgetFinalizeChild, releaseBudgetFinalizeChild, createDreamTokenBudget, TOOL_USE_DISABLED, needsBlockedRead, withBlockedReadInstruction, rememberV1HiddenRun, recordToolParameters, createDroppedInputGuard, assertExecutableToolInput, isEditTool, MERGED_REASONING_PARTS_PREFIX, decodeMergedReasoningParts, MAX_EXECUTE_THRESHOLD, escalationBands, HYGIENE_PROVIDER_UNITS_VERSION, sessionDecisionCalibration, transitionSessionHygieneUnits, readEpochFloorSnapshot, getProtectionWindowForSession, withReplayEnvelopeSnapshot, invalidateReplayEnvelopeSnapshot, isRustMarkerAdmissionFenced, setRustMarkerAdmissionFence, ReplayDocumentError, readReplayEnvelope, readReplayDocument, updateReplayDocument, writeReplayDocument, isEmergencyRecoveryArmed, isProviderOverflowReconfirmed, isProviderOverflowFailClosedProven, getEmergencyRecoveryArmedAt, describeProtectedTailDrainBudgetSkip, loadPersistedUsage, loadProtectedTailMeta, markProtectedTailPolicyV3Seeded, recordProtectedTailPublicationFloor, recordProtectedTailNoEligibleHead, resetProtectedTailNoEligibleHead, getWrapupInProgressState, isWrapupInProgress, acquireWrapupInProgress, updateWrapupInProgress, releaseWrapupInProgress, resolveCompactionModeRecord, getCompactionModeRecord, setCompactionModeRecord, getProtectedTailDrainBudgetSkip, reserveProtectedTailDrainTokens, clearEmergencyDrainLatch, recordHistorianDrainFailure, clearHistorianDrainFailure, rollbackProtectedTailDrainReservation, clearPersistedReasoningWatermark, getEmergencyInputSample, setEmergencyDropSample, clearEmergencyDropSample, getLastNudgeUndropped, setLastNudgeUndropped, getChannel1NudgeState, setChannel1NudgeState, markChannel1PostReduceGracePending, captureChannel1PostReduceGraceBaseline, getChannel2NudgeState, setChannel2NudgeState, casChannel2NudgeState, claimChannel2NudgeState, casChannel2NudgeClaim, getPersistedNoteNudge, setPersistedNoteNudgeTrigger, setPersistedNoteNudgeTriggerMessageId, getNoteNudgeAnchors, getAutoSearchHintDecisions, deliverNoteNudgeAtomic, appendAutoSearchHintDecision, pruneNoteNudgeAnchors, queueAutoSearchHintDecisionRetirement, flushAutoSearchHintDecisionRetirement, getPersistedTodoPermissionDenied, setPersistedTodoPermissionDenied, getPersistedTodoSyntheticAnchor, setPersistedTodoSyntheticAnchor, clearPersistedTodoSyntheticAnchor, getNoteLastReadAt, setNoteLastReadAt, getHistorianFailureState, incrementHistorianFailure, clearHistorianFailureState, getOverflowState, loadTransformPassStateSnapshot, recordOverflowDetected, recordDetectedContextLimit, clearEmergencyRecovery, clearDetectedContextLimit, getPersistedCompactionMarkerState, setPersistedCompactionMarkerState, getDeferredClearedCompactionMarkerState, retireDeferredClearedCompactionMarkerState, parseStrippedPlaceholderState, serializeStrippedPlaceholderState, getStrippedPlaceholderIds, applyStrippedPlaceholderDelta, THINKING_BINDING_RECOVERY_FROZEN_PREFIX, THINKING_BINDING_STRIP_ORDER_END_MARKER, thinkingBindingRecoveryFrozenId, COMPACTION_OFF_THINKING_FROZEN_PREFIX, compactionOffThinkingFrozenId, compactionOffFrozenThinkingIds, getThinkingBindingRecoveryTarget, clearThinkingBindingRecoveryIf, getMergedReasoningStrippedIds, addMergedReasoningStrippedIds, getTrailingBlankDecisions, addTrailingBlankDecisions, demoteTrailingBlankKeepDecisions, getStaleReduceStrippedIds, addStaleReduceStrippedIds, getProcessedImageStrippedIds, parseProcessedImageMarkers, serializeProcessedImageMarkers, getProcessedImageMarkers, addProcessedImageStrippedIds, getPendingCompactionMarkerState, getCompactionMarkerHealth, loadPostprocessReplaySnapshot, setPendingCompactionMarkerState, replacePendingCompactionMarkerStateIf, clearPendingCompactionMarkerStateIf, getPendingPiCompactionMarkerState, clearPendingPiCompactionMarkerStateIf, logPiCompactionMarkerClear, setSessionWorkMetrics, getObservedEpochFloor, resolveEpochFloorForPass, getReasoningRemovalState, addRemovedReasoningIds, markDropLeavesReasoning, modelAcceptsEmptyContent, isAnthropicFamilyRoute, neutralizeDroppedReasoningPart, restoreNeutralizedReasoningPart, isNeutralizedReasoningPart, variantChangeBustsProviderCache, makeSentinel, makeWholeMessageSentinel, isSentinel, replaySentinelByMessageIds, isInActiveAnthropicTurn, activeAnthropicTurnStart, hasAnthropicReasoning, stripSystemInjectedMessages, stripDroppedPlaceholderMessages, replayClearedReasoning, replayStrippedInlineThinking, clearOldReasoning, stripClearedReasoning, stripInlineThinking, findReasoningBearingAssistantIds, findLatestAssistantReasoningMutationExemptMessage, snapshotTrailingBlankSourceDecisions, findTrailingBlankDecisionCandidates, applyFrozenTrailingBlankDecisions, stripReasoningFromAssistantIds, findMergedReasoningStripDecisions, stripReasoningFromMergedAssistants, getEmptyImageParts, stripProcessedImages, projectOpencodeReasoningBudgetCutoff, DEFAULT_KEEP_REASONING_TOKENS, resolveKeepReasoningTokens, reasoningStepCost, reasoningBudgetCutoff, reasoningTextAndOpaque, opencodeReasoningBudgetCutoff, describeFinalWireTail, estimatePartImageTokens, estimateMessageTokens, wireContentBytes, createFinalWireUsageTracker, estimateFinalWireInputTokens, estimateAppendedWireTokens, SKELETON_REAL_INPUT_MAX_BYTES, partHasCompletedResult, extractToolCallObservation, ToolMutationBatch, createToolDropTarget, resolveHostServedBoundaryId2, hasRawMessageProvider2, setRawMessageProvider2, setBoundedRawMessageProvider2, withRawMessageProvider2, cleanUserText2, withRawSessionMessageCache2, readRawSessionMessages2, readRawSessionMessagePage2, getRawSessionMessageOrdinalCount2, RAW_MESSAGE_VISIT_PAGE_SIZE2, visitRawSessionMessages2, visitRawSessionMessagesAsync2, readRawSessionMessageRange2, prepareRawSessionOrdinals2, primeTailRawMessageCache2, getCachedAbsoluteMessageCount2, primeInMemoryTailRawMessageCache2, readRawSessionMessageOrdinalPage2, getRawSessionStoredMessageCount2, readRawSessionMessageIdOrdinalsForRange2, readRawSessionMessageIdOrdinals2, readRawSessionMessagePartsById2, readRawSessionBoundaryEndpoints2, hasRawSessionMessageById2, readRawSessionMessageOrdinalById2, compareRawSessionMessageOrder2, readRawSessionMessageById2, getRawSessionMessageCount2, RAW_SESSION_TAG_KEY_PAGE_SIZE2, getRawSessionTagKeysThrough2, getLegacyProtectedTailStartOrdinal2, getProtectedTailStartOrdinal2, readSessionChunk2, getRawSessionMessageIdsThrough2, readRawSessionSeedTail2 };
|
|
@@ -50,7 +50,7 @@ import {
|
|
|
50
50
|
hasPendingMigrations,
|
|
51
51
|
getMainThreadMigrationBodyCount,
|
|
52
52
|
runMigrations
|
|
53
|
-
} from "./server-
|
|
53
|
+
} from "./server-xq7dfjke.js";
|
|
54
54
|
import {
|
|
55
55
|
ensureColumn,
|
|
56
56
|
installV95PerfSchema,
|
|
@@ -1219,7 +1219,7 @@ function finishDatabaseOpen(db, dbPath, explicitDbPath, latestSupportedVersion)
|
|
|
1219
1219
|
state.running = startMessageFtsRowidMapBackfill2(db, signal).then(async () => {
|
|
1220
1220
|
if (signal.aborted || !readsOpenCodeStore)
|
|
1221
1221
|
return;
|
|
1222
|
-
const { readRawSessionMessagePage, readRawSessionMessages } = await importPluginModule(() => import("./read-session-chunk-
|
|
1222
|
+
const { readRawSessionMessagePage, readRawSessionMessages } = await importPluginModule(() => import("./read-session-chunk-cwkxrmns.js"));
|
|
1223
1223
|
const { startMessageTimeBackfill } = await importPluginModule(() => import("./message-time-backfill-04t0km1z.js"));
|
|
1224
1224
|
if (signal.aborted)
|
|
1225
1225
|
return;
|
|
@@ -61,13 +61,13 @@ import {
|
|
|
61
61
|
sanitizeFtsQuery,
|
|
62
62
|
searchMemoriesFTS,
|
|
63
63
|
searchMemoriesFTSUnion
|
|
64
|
-
} from "./server-
|
|
64
|
+
} from "./server-hm38q7r0.js";
|
|
65
65
|
import {
|
|
66
66
|
cleanSearchText,
|
|
67
67
|
keywordRelevance,
|
|
68
68
|
matchedSearchSnippet,
|
|
69
69
|
getIndexedMessageCorpusSize2
|
|
70
|
-
} from "./server-
|
|
70
|
+
} from "./server-2ar62dyx.js";
|
|
71
71
|
import {
|
|
72
72
|
MESSAGE_FTS_SESSION_FILTER_SQL,
|
|
73
73
|
withMessageFtsSessionFilter
|
|
@@ -81,7 +81,7 @@ import {
|
|
|
81
81
|
expandWorkspaceIdentitySetWithAliases,
|
|
82
82
|
resolveStoredPathWorkspaceIdentity,
|
|
83
83
|
sourceNameForMemory
|
|
84
|
-
} from "./server-
|
|
84
|
+
} from "./server-xq7dfjke.js";
|
|
85
85
|
import {
|
|
86
86
|
isKnownAutocommit
|
|
87
87
|
} from "./server-8ajstryz.js";
|
|
@@ -2764,8 +2764,7 @@ var MIGRATIONS = [
|
|
|
2764
2764
|
up(db) {
|
|
2765
2765
|
const memoriesPresent = tableExists4(db, "memories");
|
|
2766
2766
|
const notesPresent = tableExists4(db, "notes");
|
|
2767
|
-
const
|
|
2768
|
-
const privilegeCheck = typeof native.function === "function" || typeof native.createFunction === "function" ? "mc_privileged_writer() = 0" : "COALESCE((SELECT enabled FROM context_privilege_state WHERE id = 1), 0) = 0";
|
|
2767
|
+
const privilegeCheck = authorityPrivilegeCheck();
|
|
2769
2768
|
if (memoriesPresent) {
|
|
2770
2769
|
db.exec(`
|
|
2771
2770
|
DROP TRIGGER IF EXISTS memories_authority_guard_insert;
|
package/dist/v2/server.js
CHANGED
|
@@ -7874,7 +7874,7 @@ var require_src2 = __commonJS(function(exports, module) {
|
|
|
7874
7874
|
// package.json
|
|
7875
7875
|
var package_default = {
|
|
7876
7876
|
name: "@cortexkit/opencode-magic-context",
|
|
7877
|
-
version: "0.49.
|
|
7877
|
+
version: "0.49.19",
|
|
7878
7878
|
type: "module",
|
|
7879
7879
|
description: "OpenCode plugin for Magic Context — cross-session memory and context management",
|
|
7880
7880
|
main: "dist/index.js",
|
|
@@ -8195,7 +8195,7 @@ async function setup(context) {
|
|
|
8195
8195
|
if (claimStorageBackupWarningCheck() && isMagicContextStorageOutsideEngram(storageDir)) {
|
|
8196
8196
|
log2(`[magic-context] Magic Context storage is at ${storageDir}, outside the folder Engram backs up (~/.local/share/cortexkit/magic-context). It is not included in CortexKit backups.`);
|
|
8197
8197
|
}
|
|
8198
|
-
const { registerContext } = await import("./context-
|
|
8198
|
+
const { registerContext } = await import("./context-y5yamxak.js");
|
|
8199
8199
|
setHarness2("opencode2");
|
|
8200
8200
|
bindStaleBuildNotice({}, import.meta.url, "opencode2");
|
|
8201
8201
|
const duties = await registerContext(context);
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
registerActiveCompartmentRun,
|
|
20
20
|
setRecompStarting2,
|
|
21
21
|
setRecompTerminal2
|
|
22
|
-
} from "./server-
|
|
22
|
+
} from "./server-6vdzn1td.js";
|
|
23
23
|
import"./server-8by8qfec.js";
|
|
24
24
|
import"./server-tgnbmwah.js";
|
|
25
25
|
import"./server-6tmj0s7j.js";
|
|
@@ -30,7 +30,7 @@ import"./server-51779zs2.js";
|
|
|
30
30
|
import"./server-xj136kt8.js";
|
|
31
31
|
import"./server-1wy7b9de.js";
|
|
32
32
|
import"./server-46neh5fa.js";
|
|
33
|
-
import"./server-
|
|
33
|
+
import"./server-2ar62dyx.js";
|
|
34
34
|
import {
|
|
35
35
|
getWrapupInProgressState,
|
|
36
36
|
acquireWrapupInProgress,
|
|
@@ -39,9 +39,9 @@ import {
|
|
|
39
39
|
getHistorianFailureState,
|
|
40
40
|
clearEmergencyRecovery,
|
|
41
41
|
prepareRawSessionOrdinals2
|
|
42
|
-
} from "./server-
|
|
42
|
+
} from "./server-9hx7g5jp.js";
|
|
43
43
|
import"./server-pwv4ezb0.js";
|
|
44
|
-
import"./server-
|
|
44
|
+
import"./server-bmymkx73.js";
|
|
45
45
|
import"./server-1zx87sdm.js";
|
|
46
46
|
import"./server-27gq4mfz.js";
|
|
47
47
|
import"./server-271qxsf5.js";
|
|
@@ -49,10 +49,10 @@ import"./server-2ra6pwf3.js";
|
|
|
49
49
|
import"./server-n1prf1g6.js";
|
|
50
50
|
import"./server-g3qma5c0.js";
|
|
51
51
|
import"./server-fr0wbhdn.js";
|
|
52
|
-
import"./server-
|
|
52
|
+
import"./server-xq7dfjke.js";
|
|
53
53
|
import"./server-rmygf5pn.js";
|
|
54
54
|
import"./server-fb3zxn06.js";
|
|
55
|
-
import"./server-
|
|
55
|
+
import"./server-hm38q7r0.js";
|
|
56
56
|
import {
|
|
57
57
|
pushNotification2
|
|
58
58
|
} from "./server-x8a7jmkh.js";
|