@cortexkit/opencode-magic-context 0.49.24 → 0.49.25
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 +1 -1
- package/dist/chunk-embedding-write-worker.js +2 -2
- package/dist/{context-tvrjhnmj.js → context-keb00be8.js} +22 -16
- package/dist/features/magic-context/tool-definition-tokens.d.ts +113 -57
- package/dist/features/magic-context/tool-definition-tokens.d.ts.map +1 -1
- package/dist/hooks/magic-context/final-wire-token-estimate.d.ts +12 -4
- package/dist/hooks/magic-context/final-wire-token-estimate.d.ts.map +1 -1
- package/dist/hooks/magic-context/hook.d.ts.map +1 -1
- package/dist/hooks/magic-context/lkg-measured-request.d.ts.map +1 -1
- package/dist/hooks/magic-context/lkg-replay-fit.d.ts.map +1 -1
- package/dist/hooks/magic-context/rust-mode-transform.d.ts.map +1 -1
- package/dist/hooks/magic-context/signed-thinking-fit-snapshot.d.ts +42 -0
- package/dist/hooks/magic-context/signed-thinking-fit-snapshot.d.ts.map +1 -0
- package/dist/hooks/magic-context/transform.d.ts.map +1 -1
- package/dist/{index-dds7cxhz.js → index-0s8454t2.js} +9 -9
- package/dist/{index-p6evxfcc.js → index-awcftgmx.js} +5 -47
- package/dist/{index-8e9qsnrw.js → index-axjgxeww.js} +6 -4
- package/dist/{index-57jf5ztp.js → index-bhyksfyy.js} +1 -1
- package/dist/index-cfaet9cg.js +405 -0
- package/dist/{index-7516anfj.js → index-ebsvmc5s.js} +3 -3
- package/dist/{index-21bkd3m6.js → index-n18sch77.js} +1 -1
- package/dist/{index-jrjr58ez.js → index-q7ywt6xt.js} +2 -2
- package/dist/{index-6g7tyb6e.js → index-y6xpzjzr.js} +69 -24
- package/dist/{index-t1zk694n.js → index-yrrsp47d.js} +13 -11
- package/dist/{index-jd0y50w3.js → index-zzrzjnx5.js} +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +25 -20
- package/dist/{message-index-1sgzev6c.js → message-index-3g966xn7.js} +3 -3
- package/dist/{message-index-bounded-k8pgrxad.js → message-index-bounded-vaeqhp9w.js} +3 -3
- package/dist/migration-worker.js +2 -2
- package/dist/plugin/hooks/create-session-hooks.d.ts.map +1 -1
- package/dist/plugin/rpc-handlers.d.ts.map +1 -1
- package/dist/raw-ordinal-warmup-worker.js +3 -3
- package/dist/{read-session-chunk-q9z6s48t.js → read-session-chunk-z5gnc0zb.js} +2 -2
- package/dist/{recomp-orchestrator-hr8ddk8z.js → recomp-orchestrator-qwqeskhq.js} +6 -6
- package/dist/{search-3zjjmc60.js → search-84zfqeky.js} +4 -4
- package/dist/{search-archive-c00etw7k.js → search-archive-mfabzyn2.js} +3 -3
- package/dist/{transform-postprocess-phase-rredw6bz.js → transform-postprocess-phase-hr1ntmjj.js} +6 -6
- package/dist/v2/auto-search-worker.js +1 -1
- package/dist/v2/chunk-embedding-write-worker.js +2 -2
- package/dist/v2/{context-zbydzq4g.js → context-y7wfvdve.js} +77 -26
- package/dist/v2/hooks/context.d.ts +4 -0
- package/dist/v2/hooks/context.d.ts.map +1 -1
- package/dist/v2/{message-index-bounded-a9xa8wsq.js → message-index-bounded-te303atj.js} +3 -3
- package/dist/v2/{message-index-5gnnn64b.js → message-index-fz6b4jeh.js} +3 -3
- package/dist/v2/migration-worker.js +2 -2
- package/dist/v2/raw-ordinal-warmup-worker.js +3 -3
- package/dist/v2/{read-session-chunk-qqvda7zv.js → read-session-chunk-knvkq1hf.js} +2 -2
- package/dist/v2/{recomp-orchestrator-nmt9y25j.js → recomp-orchestrator-e8a4jpvr.js} +5 -5
- package/dist/v2/{search-archive-dhqj1w31.js → search-archive-vrwgxv6z.js} +3 -3
- package/dist/v2/{search-6dawx2gt.js → search-hav4dggf.js} +4 -4
- package/dist/v2/{server-gwmshgx9.js → server-5brp2rfn.js} +13 -11
- package/dist/v2/{server-mefps930.js → server-6a8pxpxg.js} +5 -47
- package/dist/v2/server-7d6m1p2b.js +361 -0
- package/dist/v2/{server-r209n2fk.js → server-7weh65vd.js} +9 -9
- package/dist/v2/{server-y9ncq4ck.js → server-e75vag9d.js} +2 -2
- package/dist/v2/{server-16dpnz56.js → server-m6yyn961.js} +1 -1
- package/dist/v2/{server-9e55n4wx.js → server-tfawsj08.js} +1 -1
- package/dist/v2/server.js +2 -2
- package/dist/v2/{wrapup-orchestrator-9z81xj66.js → wrapup-orchestrator-ycs8y6n4.js} +5 -5
- package/dist/{wrapup-orchestrator-dbnb530w.js → wrapup-orchestrator-f642w8n3.js} +7 -7
- package/package.json +1 -1
- package/dist/index-j76ah6d7.js +0 -120
- package/dist/v2/server-d1dzgvwd.js +0 -120
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/transform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAMlF,OAAO,EACH,KAAK,2BAA2B,EAEnC,MAAM,kDAAkD,CAAC;AAG1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAQxE,OAAO,EACH,KAAK,eAAe,EAQvB,MAAM,sCAAsC,CAAC;AAwB9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AAKjG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAQlE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAKxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/transform.ts"],"names":[],"mappings":"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"}
|
|
@@ -97,7 +97,7 @@ import {
|
|
|
97
97
|
getRawSessionTagKeysThrough2,
|
|
98
98
|
getLegacyProtectedTailStartOrdinal2,
|
|
99
99
|
readSessionChunk2
|
|
100
|
-
} from "./index-
|
|
100
|
+
} from "./index-yrrsp47d.js";
|
|
101
101
|
import {
|
|
102
102
|
getHarness2,
|
|
103
103
|
harnessOwnsOpenCodeStore2
|
|
@@ -164,7 +164,7 @@ import {
|
|
|
164
164
|
LATEST_SUPPORTED_VERSION,
|
|
165
165
|
getPersistedSchemaVersion,
|
|
166
166
|
openDatabase
|
|
167
|
-
} from "./index-
|
|
167
|
+
} from "./index-q7ywt6xt.js";
|
|
168
168
|
import {
|
|
169
169
|
inRootAsyncContext2,
|
|
170
170
|
Database2,
|
|
@@ -213,8 +213,9 @@ import {
|
|
|
213
213
|
claimOpenCodeDbDiagnosticOnce
|
|
214
214
|
} from "./index-58e3y90n.js";
|
|
215
215
|
import {
|
|
216
|
+
BoundedSessionMap,
|
|
216
217
|
getMeasuredToolDefinitionTokens
|
|
217
|
-
} from "./index-
|
|
218
|
+
} from "./index-cfaet9cg.js";
|
|
218
219
|
import {
|
|
219
220
|
invalidateAutoEmbedSession,
|
|
220
221
|
drainBackgroundBatches,
|
|
@@ -235,7 +236,6 @@ import {
|
|
|
235
236
|
chunkWindowSourceKey2
|
|
236
237
|
} from "./index-3d5wnkq7.js";
|
|
237
238
|
import {
|
|
238
|
-
BoundedSessionMap,
|
|
239
239
|
clearCompressionDepth,
|
|
240
240
|
clearCompressionDepthRange,
|
|
241
241
|
clearLkgFenceProcessState,
|
|
@@ -250,7 +250,7 @@ import {
|
|
|
250
250
|
toMessageIndexSource2,
|
|
251
251
|
clearIndexedMessagesInTransaction2,
|
|
252
252
|
indexSourcesAfterOrdinal2
|
|
253
|
-
} from "./index-
|
|
253
|
+
} from "./index-awcftgmx.js";
|
|
254
254
|
import {
|
|
255
255
|
stripWellFormedLeadingTagPrefix,
|
|
256
256
|
stripTagPrefix,
|
|
@@ -5410,13 +5410,13 @@ function identity(slot) {
|
|
|
5410
5410
|
slot.inputContentDigests
|
|
5411
5411
|
])).update(slot.jsonPrefix).digest("hex");
|
|
5412
5412
|
}
|
|
5413
|
-
function envelope(modelKey, systemPromptTokens, agentName) {
|
|
5413
|
+
function envelope(modelKey, systemPromptTokens, agentName, sessionId) {
|
|
5414
5414
|
const slash = modelKey.indexOf("/");
|
|
5415
5415
|
return JSON.stringify([
|
|
5416
5416
|
modelKey,
|
|
5417
5417
|
systemPromptTokens,
|
|
5418
5418
|
agentName,
|
|
5419
|
-
getMeasuredToolDefinitionTokens(modelKey.slice(0, slash), modelKey.slice(slash + 1), agentName)
|
|
5419
|
+
getMeasuredToolDefinitionTokens(modelKey.slice(0, slash), modelKey.slice(slash + 1), agentName, sessionId)
|
|
5420
5420
|
]);
|
|
5421
5421
|
}
|
|
5422
5422
|
function beginV2LkgRequest(sessionId, modelKey, previousResponseId, responseAfterSequence) {
|
|
@@ -5448,7 +5448,7 @@ function noteCapturedLkgRequest(args) {
|
|
|
5448
5448
|
request,
|
|
5449
5449
|
slot: identity(args.slot),
|
|
5450
5450
|
prefixCount: JSON.parse(args.slot.jsonPrefix).length,
|
|
5451
|
-
envelope: envelope(request.modelKey, args.systemPromptTokens, args.agentName)
|
|
5451
|
+
envelope: envelope(request.modelKey, args.systemPromptTokens, args.agentName, args.sessionId)
|
|
5452
5452
|
});
|
|
5453
5453
|
}
|
|
5454
5454
|
function noteLkgProviderResponse(args) {
|
|
@@ -5479,7 +5479,7 @@ function noteLkgProviderResponse(args) {
|
|
|
5479
5479
|
}
|
|
5480
5480
|
function measuredLkgPrefix(args) {
|
|
5481
5481
|
const capture = captures.get(args.sessionId);
|
|
5482
|
-
if (!capture?.usage || !args.slot || capture.slot !== identity(args.slot) || capture.request.modelKey !== args.modelKey || capture.envelope !== envelope(args.modelKey, args.systemPromptTokens, args.agentName))
|
|
5482
|
+
if (!capture?.usage || !args.slot || capture.slot !== identity(args.slot) || capture.request.modelKey !== args.modelKey || capture.envelope !== envelope(args.modelKey, args.systemPromptTokens, args.agentName, args.sessionId))
|
|
5483
5483
|
return;
|
|
5484
5484
|
const appendedMessages = args.messages.slice(capture.prefixCount);
|
|
5485
5485
|
if (appendedMessages[0]?.info.id !== capture.usage.responseId || appendedMessages[0]?.info.role !== "assistant" || JSON.stringify(args.messages.slice(0, capture.prefixCount)) !== args.slot.jsonPrefix)
|
|
@@ -35,7 +35,10 @@ import {
|
|
|
35
35
|
} from "./index-58e3y90n.js";
|
|
36
36
|
import {
|
|
37
37
|
cleanUserText2
|
|
38
|
-
} from "./index-
|
|
38
|
+
} from "./index-yrrsp47d.js";
|
|
39
|
+
import {
|
|
40
|
+
BoundedSessionMap
|
|
41
|
+
} from "./index-cfaet9cg.js";
|
|
39
42
|
import {
|
|
40
43
|
recordMessageFtsRowid2,
|
|
41
44
|
recordIndexedMessageTime2,
|
|
@@ -63,51 +66,6 @@ import {
|
|
|
63
66
|
writeStorageFileDurableAtomicSync
|
|
64
67
|
} from "./index-fvnzcnww.js";
|
|
65
68
|
|
|
66
|
-
// src/shared/bounded-session-map.ts
|
|
67
|
-
class BoundedSessionMap {
|
|
68
|
-
maxEntries;
|
|
69
|
-
store = new Map;
|
|
70
|
-
constructor(maxEntries) {
|
|
71
|
-
if (!Number.isFinite(maxEntries) || maxEntries < 1) {
|
|
72
|
-
throw new Error(`BoundedSessionMap: maxEntries must be >= 1, got ${maxEntries}`);
|
|
73
|
-
}
|
|
74
|
-
this.maxEntries = maxEntries;
|
|
75
|
-
}
|
|
76
|
-
get(sessionId) {
|
|
77
|
-
const value = this.store.get(sessionId);
|
|
78
|
-
if (value === undefined)
|
|
79
|
-
return;
|
|
80
|
-
this.store.delete(sessionId);
|
|
81
|
-
this.store.set(sessionId, value);
|
|
82
|
-
return value;
|
|
83
|
-
}
|
|
84
|
-
peek(sessionId) {
|
|
85
|
-
return this.store.get(sessionId);
|
|
86
|
-
}
|
|
87
|
-
has(sessionId) {
|
|
88
|
-
return this.store.has(sessionId);
|
|
89
|
-
}
|
|
90
|
-
set(sessionId, value) {
|
|
91
|
-
if (this.store.has(sessionId)) {
|
|
92
|
-
this.store.delete(sessionId);
|
|
93
|
-
} else if (this.store.size >= this.maxEntries) {
|
|
94
|
-
const oldest = this.store.keys().next().value;
|
|
95
|
-
if (oldest !== undefined)
|
|
96
|
-
this.store.delete(oldest);
|
|
97
|
-
}
|
|
98
|
-
this.store.set(sessionId, value);
|
|
99
|
-
}
|
|
100
|
-
delete(sessionId) {
|
|
101
|
-
return this.store.delete(sessionId);
|
|
102
|
-
}
|
|
103
|
-
clear() {
|
|
104
|
-
this.store.clear();
|
|
105
|
-
}
|
|
106
|
-
get size() {
|
|
107
|
-
return this.store.size;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
|
|
111
69
|
// src/features/magic-context/session-activity.ts
|
|
112
70
|
var PREFIX = "retrospective_activity:";
|
|
113
71
|
var INTERVAL_MS = 15000;
|
|
@@ -2290,4 +2248,4 @@ async function sweepOrphanedOpenCodeMessageIndexesCooperatively2(db, openSource,
|
|
|
2290
2248
|
}));
|
|
2291
2249
|
}
|
|
2292
2250
|
|
|
2293
|
-
export {
|
|
2251
|
+
export { advanceSessionActivity, observeSessionActivity, backfillSessionActivity, clearCompressionDepth, clearCompressionDepthRange, LkgRecoveryFenceError, clearLkgFenceProcessState, lkgServedArrayDigest, takeLkgRecoveryLockSweepPage, hasCleanLkgRecoveryFence, lkgFenceRequiresRebuild, lkgRecoveryFenceUnclean, dirtyLkgRecoveryRevision, ownsLkgDirtyFence, invalidateCleanLkgRecoveryFence, prepareLkgCaptureFence, certifyCommittedLkgCapture, markLkgRecoveryDirty, commitLkgWithRecoveryFence, clearLkgRecoveryFence, cleanSearchText, keywordRelevance, matchedSearchSnippet, gaDatabasePath, RAW_MESSAGE_TYPES, V2StoreReaderPool, V2StoreReader, deleteSessionScopedRows, MESSAGE_INDEX_MAX_FTS_BYTES2, messageIndexSkipKey2, toMessageIndexSource2, getMessageIndexSourceIdentity2, isMessageIndexSourceCurrent2, getLastIndexedOrdinal2, getIndexedMessageCorpusSize2, markMessageIndexDirty2, getMessageIndexReconciliationStartOrdinal2, isMessageIndexReconciledThrough2, deleteIndexedMessage2, clearIndexedMessagesInTransaction2, clearIndexedMessages2, getIndexableContent2, indexSingleMessage2, indexMessagesAfterOrdinal2, indexSourcesAfterOrdinal2, sweepOrphanedOpenCodeMessageIndexesCooperatively2 };
|
|
@@ -140,12 +140,11 @@ import {
|
|
|
140
140
|
peekNoteNudgeText,
|
|
141
141
|
markNoteNudgeDelivered,
|
|
142
142
|
getActiveCompartmentRun
|
|
143
|
-
} from "./index-
|
|
143
|
+
} from "./index-0s8454t2.js";
|
|
144
144
|
import {
|
|
145
|
-
BoundedSessionMap,
|
|
146
145
|
cleanSearchText,
|
|
147
146
|
matchedSearchSnippet
|
|
148
|
-
} from "./index-
|
|
147
|
+
} from "./index-awcftgmx.js";
|
|
149
148
|
import {
|
|
150
149
|
stripSystemInjection,
|
|
151
150
|
isTextPart,
|
|
@@ -243,7 +242,7 @@ import {
|
|
|
243
242
|
extractToolCallObservation,
|
|
244
243
|
ToolMutationBatch,
|
|
245
244
|
createToolDropTarget
|
|
246
|
-
} from "./index-
|
|
245
|
+
} from "./index-yrrsp47d.js";
|
|
247
246
|
import {
|
|
248
247
|
isValidLanguageCode
|
|
249
248
|
} from "./index-nxrsns5x.js";
|
|
@@ -255,6 +254,9 @@ import {
|
|
|
255
254
|
withReadOnlySessionDb,
|
|
256
255
|
getMessageTimesFromOpenCodeDb
|
|
257
256
|
} from "./index-c9zrgcnt.js";
|
|
257
|
+
import {
|
|
258
|
+
BoundedSessionMap
|
|
259
|
+
} from "./index-cfaet9cg.js";
|
|
258
260
|
import {
|
|
259
261
|
userFacingFailureCode
|
|
260
262
|
} from "./index-z928hmnp.js";
|
|
@@ -0,0 +1,405 @@
|
|
|
1
|
+
import {
|
|
2
|
+
estimateTokens
|
|
3
|
+
} from "./index-b88dwwrh.js";
|
|
4
|
+
import {
|
|
5
|
+
stableStringify
|
|
6
|
+
} from "./index-x9k3mqrf.js";
|
|
7
|
+
|
|
8
|
+
// src/shared/bounded-session-map.ts
|
|
9
|
+
class BoundedSessionMap {
|
|
10
|
+
maxEntries;
|
|
11
|
+
store = new Map;
|
|
12
|
+
constructor(maxEntries) {
|
|
13
|
+
if (!Number.isFinite(maxEntries) || maxEntries < 1) {
|
|
14
|
+
throw new Error(`BoundedSessionMap: maxEntries must be >= 1, got ${maxEntries}`);
|
|
15
|
+
}
|
|
16
|
+
this.maxEntries = maxEntries;
|
|
17
|
+
}
|
|
18
|
+
get(sessionId) {
|
|
19
|
+
const value = this.store.get(sessionId);
|
|
20
|
+
if (value === undefined)
|
|
21
|
+
return;
|
|
22
|
+
this.store.delete(sessionId);
|
|
23
|
+
this.store.set(sessionId, value);
|
|
24
|
+
return value;
|
|
25
|
+
}
|
|
26
|
+
peek(sessionId) {
|
|
27
|
+
return this.store.get(sessionId);
|
|
28
|
+
}
|
|
29
|
+
has(sessionId) {
|
|
30
|
+
return this.store.has(sessionId);
|
|
31
|
+
}
|
|
32
|
+
set(sessionId, value) {
|
|
33
|
+
if (this.store.has(sessionId)) {
|
|
34
|
+
this.store.delete(sessionId);
|
|
35
|
+
} else if (this.store.size >= this.maxEntries) {
|
|
36
|
+
const oldest = this.store.keys().next().value;
|
|
37
|
+
if (oldest !== undefined)
|
|
38
|
+
this.store.delete(oldest);
|
|
39
|
+
}
|
|
40
|
+
this.store.set(sessionId, value);
|
|
41
|
+
}
|
|
42
|
+
delete(sessionId) {
|
|
43
|
+
return this.store.delete(sessionId);
|
|
44
|
+
}
|
|
45
|
+
clear() {
|
|
46
|
+
this.store.clear();
|
|
47
|
+
}
|
|
48
|
+
get size() {
|
|
49
|
+
return this.store.size;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
// src/features/magic-context/tool-definition-tokens.ts
|
|
54
|
+
import { createHash } from "node:crypto";
|
|
55
|
+
var ACTIVITY_WINDOW_MS = 10 * 60000;
|
|
56
|
+
var MAX_ACTIVITY_GAP_MS = 60000;
|
|
57
|
+
var RETIRED_CACHE_LIMIT = 64;
|
|
58
|
+
var WRITE_RETRY_MS = 5000;
|
|
59
|
+
var WINDOWED_SINCE_KEY = "tool_definition_measurements:windowed_since";
|
|
60
|
+
var routes = new Map;
|
|
61
|
+
var sessionFlights = new BoundedSessionMap(1000);
|
|
62
|
+
var persistenceDb = null;
|
|
63
|
+
var windowedSince;
|
|
64
|
+
var boundAt = 0;
|
|
65
|
+
var cachedInsertStmt = null;
|
|
66
|
+
var cachedDeleteStmt = null;
|
|
67
|
+
function agentKey(agentName) {
|
|
68
|
+
return agentName && agentName.length > 0 ? agentName : "default";
|
|
69
|
+
}
|
|
70
|
+
function keyFor(providerID, modelID, agentName) {
|
|
71
|
+
return `${providerID}/${modelID}/${agentKey(agentName)}`;
|
|
72
|
+
}
|
|
73
|
+
function fingerprintFor(description, parameters) {
|
|
74
|
+
return createHash("sha256").update(description).update("\x00").update(stableStringify(parameters)).digest("hex");
|
|
75
|
+
}
|
|
76
|
+
function measure(description, parameters) {
|
|
77
|
+
let paramsText = "";
|
|
78
|
+
try {
|
|
79
|
+
paramsText = parameters === undefined ? "" : JSON.stringify(parameters);
|
|
80
|
+
} catch {
|
|
81
|
+
paramsText = "";
|
|
82
|
+
}
|
|
83
|
+
return estimateTokens(description) + estimateTokens(paramsText);
|
|
84
|
+
}
|
|
85
|
+
function routeFor(providerID, modelID, agentName) {
|
|
86
|
+
const key = keyFor(providerID, modelID, agentName);
|
|
87
|
+
let route = routes.get(key);
|
|
88
|
+
if (!route) {
|
|
89
|
+
route = {
|
|
90
|
+
providerID,
|
|
91
|
+
modelID,
|
|
92
|
+
agentName: agentKey(agentName),
|
|
93
|
+
tools: new Map,
|
|
94
|
+
live: false,
|
|
95
|
+
clock: 0,
|
|
96
|
+
lastWallAt: Date.now(),
|
|
97
|
+
oldestFireAt: Number.POSITIVE_INFINITY,
|
|
98
|
+
retired: new Map,
|
|
99
|
+
legacyRows: new Set
|
|
100
|
+
};
|
|
101
|
+
routes.set(key, route);
|
|
102
|
+
}
|
|
103
|
+
return { key, route };
|
|
104
|
+
}
|
|
105
|
+
function advanceClock(route) {
|
|
106
|
+
const now = Date.now();
|
|
107
|
+
const gap = Math.min(Math.max(now - route.lastWallAt, 0), MAX_ACTIVITY_GAP_MS);
|
|
108
|
+
route.clock += gap;
|
|
109
|
+
route.lastWallAt = Math.max(route.lastWallAt, now);
|
|
110
|
+
return route.clock;
|
|
111
|
+
}
|
|
112
|
+
function counts(route, slot) {
|
|
113
|
+
if (!route.live)
|
|
114
|
+
return true;
|
|
115
|
+
if (slot.legacy)
|
|
116
|
+
return false;
|
|
117
|
+
return slot.lastFireAt >= route.clock - ACTIVITY_WINDOW_MS;
|
|
118
|
+
}
|
|
119
|
+
function currentTools(route) {
|
|
120
|
+
return [...route.tools.entries()].filter(([, slot]) => counts(route, slot));
|
|
121
|
+
}
|
|
122
|
+
function summarize(entries, live) {
|
|
123
|
+
let total = 0;
|
|
124
|
+
for (const [, slot] of entries)
|
|
125
|
+
total += slot.tokens;
|
|
126
|
+
const ids = entries.map(([id]) => id).sort();
|
|
127
|
+
const fingerprints = new Map(entries.map(([id, slot]) => [
|
|
128
|
+
id,
|
|
129
|
+
slot.fingerprint ?? (live ? `stored:${slot.tokens}` : undefined)
|
|
130
|
+
]));
|
|
131
|
+
const complete = ids.every((id) => fingerprints.get(id) !== undefined);
|
|
132
|
+
return {
|
|
133
|
+
total,
|
|
134
|
+
signature: complete ? createHash("sha256").update(JSON.stringify(ids.map((id) => [id, fingerprints.get(id)]))).digest("hex") : undefined,
|
|
135
|
+
hash: ids.length === 0 ? "" : createHash("sha256").update(ids.join("\x00")).digest("hex")
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
function resolve(providerID, modelID, agentName, sessionId) {
|
|
139
|
+
if (!providerID || !modelID)
|
|
140
|
+
return;
|
|
141
|
+
const key = keyFor(providerID, modelID, agentName);
|
|
142
|
+
if (sessionId) {
|
|
143
|
+
const flight = sessionFlights.peek(sessionId);
|
|
144
|
+
if (flight?.key === key && flight.exact)
|
|
145
|
+
return flight.exact;
|
|
146
|
+
}
|
|
147
|
+
const route = routes.get(key);
|
|
148
|
+
if (!route)
|
|
149
|
+
return;
|
|
150
|
+
const entries = currentTools(route);
|
|
151
|
+
if (!route.live && entries.length === 0)
|
|
152
|
+
return;
|
|
153
|
+
return summarize(entries, route.live);
|
|
154
|
+
}
|
|
155
|
+
function readWindowedSince(db) {
|
|
156
|
+
try {
|
|
157
|
+
const row = db.prepare("SELECT value FROM schema_migrations_meta WHERE key = ?").get(WINDOWED_SINCE_KEY);
|
|
158
|
+
if (!row)
|
|
159
|
+
return;
|
|
160
|
+
const value = Number(row.value);
|
|
161
|
+
return Number.isFinite(value) ? value : undefined;
|
|
162
|
+
} catch {
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
function markWindowed() {
|
|
167
|
+
if (windowedSince !== undefined || !persistenceDb)
|
|
168
|
+
return;
|
|
169
|
+
try {
|
|
170
|
+
persistenceDb.prepare("INSERT OR IGNORE INTO schema_migrations_meta (key, value) VALUES (?, ?)").run(WINDOWED_SINCE_KEY, String(boundAt));
|
|
171
|
+
windowedSince = readWindowedSince(persistenceDb);
|
|
172
|
+
} catch {}
|
|
173
|
+
}
|
|
174
|
+
function persistInsert(route, toolID, tokens) {
|
|
175
|
+
if (!persistenceDb)
|
|
176
|
+
return false;
|
|
177
|
+
try {
|
|
178
|
+
cachedInsertStmt ??= persistenceDb.prepare(`INSERT OR REPLACE INTO tool_definition_measurements
|
|
179
|
+
(provider_id, model_id, agent_name, tool_id, token_count, recorded_at)
|
|
180
|
+
VALUES (?, ?, ?, ?, ?, ?)`);
|
|
181
|
+
cachedInsertStmt.run(route.providerID, route.modelID, route.agentName, toolID, tokens, Date.now());
|
|
182
|
+
} catch {
|
|
183
|
+
cachedInsertStmt = null;
|
|
184
|
+
return false;
|
|
185
|
+
}
|
|
186
|
+
if (route.legacyRows.delete(toolID) && route.legacyRows.size === 0)
|
|
187
|
+
markWindowed();
|
|
188
|
+
return true;
|
|
189
|
+
}
|
|
190
|
+
function persistDelete(route, toolIDs) {
|
|
191
|
+
if (!persistenceDb)
|
|
192
|
+
return false;
|
|
193
|
+
try {
|
|
194
|
+
cachedDeleteStmt ??= persistenceDb.prepare(`DELETE FROM tool_definition_measurements
|
|
195
|
+
WHERE provider_id = ? AND model_id = ? AND agent_name = ?
|
|
196
|
+
AND tool_id IN (SELECT value FROM json_each(?))`);
|
|
197
|
+
cachedDeleteStmt.run(route.providerID, route.modelID, route.agentName, JSON.stringify(toolIDs));
|
|
198
|
+
} catch {
|
|
199
|
+
cachedDeleteStmt = null;
|
|
200
|
+
return false;
|
|
201
|
+
}
|
|
202
|
+
for (const id of toolIDs)
|
|
203
|
+
route.legacyRows.delete(id);
|
|
204
|
+
markWindowed();
|
|
205
|
+
return true;
|
|
206
|
+
}
|
|
207
|
+
function writeSlot(route, toolID, slot) {
|
|
208
|
+
if (slot.persisted || !persistenceDb)
|
|
209
|
+
return;
|
|
210
|
+
const now = Date.now();
|
|
211
|
+
if (slot.writeFailedAt !== undefined && now - slot.writeFailedAt < WRITE_RETRY_MS)
|
|
212
|
+
return;
|
|
213
|
+
if (persistInsert(route, toolID, slot.tokens)) {
|
|
214
|
+
slot.persisted = true;
|
|
215
|
+
slot.writeFailedAt = undefined;
|
|
216
|
+
} else {
|
|
217
|
+
slot.writeFailedAt = now;
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
function retire(route, toolID, slot, rowDeleted) {
|
|
221
|
+
if (slot.fingerprint === undefined)
|
|
222
|
+
return;
|
|
223
|
+
route.retired.delete(toolID);
|
|
224
|
+
route.retired.set(toolID, {
|
|
225
|
+
fingerprint: slot.fingerprint,
|
|
226
|
+
tokens: slot.tokens,
|
|
227
|
+
rowKept: slot.persisted && !rowDeleted
|
|
228
|
+
});
|
|
229
|
+
if (route.retired.size > RETIRED_CACHE_LIMIT) {
|
|
230
|
+
const oldest = route.retired.keys().next().value;
|
|
231
|
+
if (oldest !== undefined)
|
|
232
|
+
route.retired.delete(oldest);
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
function freshSlot(route, toolID, description, parameters, fingerprint, now) {
|
|
236
|
+
const retired = route.retired.get(toolID);
|
|
237
|
+
if (retired)
|
|
238
|
+
route.retired.delete(toolID);
|
|
239
|
+
const reuse = retired?.fingerprint === fingerprint ? retired : undefined;
|
|
240
|
+
return {
|
|
241
|
+
tokens: reuse ? reuse.tokens : measure(description, parameters),
|
|
242
|
+
fingerprint,
|
|
243
|
+
lastFireAt: now,
|
|
244
|
+
legacy: false,
|
|
245
|
+
persisted: reuse?.rowKept === true
|
|
246
|
+
};
|
|
247
|
+
}
|
|
248
|
+
function expire(route) {
|
|
249
|
+
const cutoff = route.clock - ACTIVITY_WINDOW_MS;
|
|
250
|
+
if (route.oldestFireAt >= cutoff)
|
|
251
|
+
return;
|
|
252
|
+
const leaving = [];
|
|
253
|
+
let oldest = Number.POSITIVE_INFINITY;
|
|
254
|
+
for (const entry of route.tools) {
|
|
255
|
+
if (entry[1].lastFireAt >= cutoff)
|
|
256
|
+
oldest = Math.min(oldest, entry[1].lastFireAt);
|
|
257
|
+
else
|
|
258
|
+
leaving.push(entry);
|
|
259
|
+
}
|
|
260
|
+
route.oldestFireAt = oldest;
|
|
261
|
+
if (leaving.length === 0)
|
|
262
|
+
return;
|
|
263
|
+
const deleted = persistDelete(route, leaving.map(([id]) => id));
|
|
264
|
+
for (const [id, slot] of leaving) {
|
|
265
|
+
route.tools.delete(id);
|
|
266
|
+
retire(route, id, slot, deleted);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
function setDatabase(db) {
|
|
270
|
+
const rebound = persistenceDb !== null && persistenceDb !== db;
|
|
271
|
+
persistenceDb = db;
|
|
272
|
+
boundAt = Date.now();
|
|
273
|
+
cachedInsertStmt = null;
|
|
274
|
+
cachedDeleteStmt = null;
|
|
275
|
+
if (rebound) {
|
|
276
|
+
for (const route of routes.values()) {
|
|
277
|
+
for (const slot of route.tools.values()) {
|
|
278
|
+
slot.persisted = false;
|
|
279
|
+
slot.writeFailedAt = undefined;
|
|
280
|
+
}
|
|
281
|
+
for (const retired of route.retired.values())
|
|
282
|
+
retired.rowKept = false;
|
|
283
|
+
route.legacyRows.clear();
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
windowedSince = readWindowedSince(db);
|
|
287
|
+
if (windowedSince !== undefined)
|
|
288
|
+
return;
|
|
289
|
+
try {
|
|
290
|
+
if (!db.prepare("SELECT 1 FROM tool_definition_measurements LIMIT 1").get())
|
|
291
|
+
markWindowed();
|
|
292
|
+
} catch {}
|
|
293
|
+
}
|
|
294
|
+
function loadToolDefinitionMeasurements(db) {
|
|
295
|
+
let rows = [];
|
|
296
|
+
try {
|
|
297
|
+
rows = db.prepare("SELECT provider_id, model_id, agent_name, tool_id, token_count, recorded_at FROM tool_definition_measurements").all();
|
|
298
|
+
} catch {
|
|
299
|
+
return;
|
|
300
|
+
}
|
|
301
|
+
const since = readWindowedSince(db);
|
|
302
|
+
const loadedAt = new Map;
|
|
303
|
+
for (const row of rows) {
|
|
304
|
+
const { route } = routeFor(row.provider_id, row.model_id, row.agent_name);
|
|
305
|
+
if (route.live)
|
|
306
|
+
continue;
|
|
307
|
+
let now = loadedAt.get(route);
|
|
308
|
+
if (now === undefined) {
|
|
309
|
+
now = advanceClock(route);
|
|
310
|
+
loadedAt.set(route, now);
|
|
311
|
+
}
|
|
312
|
+
const legacy = since === undefined || !(Number(row.recorded_at) >= since);
|
|
313
|
+
route.tools.set(row.tool_id, {
|
|
314
|
+
tokens: row.token_count,
|
|
315
|
+
fingerprint: undefined,
|
|
316
|
+
lastFireAt: now,
|
|
317
|
+
legacy,
|
|
318
|
+
persisted: !legacy
|
|
319
|
+
});
|
|
320
|
+
route.oldestFireAt = Math.min(route.oldestFireAt, now);
|
|
321
|
+
if (legacy)
|
|
322
|
+
route.legacyRows.add(row.tool_id);
|
|
323
|
+
else
|
|
324
|
+
route.legacyRows.delete(row.tool_id);
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
function recordToolDefinition(providerID, modelID, agentName, toolID, description, parameters, sessionId) {
|
|
328
|
+
if (!providerID || !modelID || !toolID)
|
|
329
|
+
return;
|
|
330
|
+
const { key, route } = routeFor(providerID, modelID, agentName);
|
|
331
|
+
const now = advanceClock(route);
|
|
332
|
+
if (!route.live) {
|
|
333
|
+
route.live = true;
|
|
334
|
+
for (const slot of route.tools.values())
|
|
335
|
+
if (slot.legacy)
|
|
336
|
+
slot.lastFireAt = now;
|
|
337
|
+
}
|
|
338
|
+
if (sessionId)
|
|
339
|
+
sessionFlights.set(sessionId, { key });
|
|
340
|
+
const fingerprint = fingerprintFor(description ?? "", parameters);
|
|
341
|
+
let slot = route.tools.get(toolID);
|
|
342
|
+
if (slot && slot.fingerprint === fingerprint) {
|
|
343
|
+
slot.lastFireAt = now;
|
|
344
|
+
} else {
|
|
345
|
+
slot = freshSlot(route, toolID, description ?? "", parameters, fingerprint, now);
|
|
346
|
+
route.tools.set(toolID, slot);
|
|
347
|
+
route.oldestFireAt = Math.min(route.oldestFireAt, now);
|
|
348
|
+
}
|
|
349
|
+
writeSlot(route, toolID, slot);
|
|
350
|
+
expire(route);
|
|
351
|
+
}
|
|
352
|
+
function recordToolDefinitionSet(providerID, modelID, agentName, tools, sessionId) {
|
|
353
|
+
if (!providerID || !modelID)
|
|
354
|
+
return;
|
|
355
|
+
const { key, route } = routeFor(providerID, modelID, agentName);
|
|
356
|
+
const now = advanceClock(route);
|
|
357
|
+
route.live = true;
|
|
358
|
+
const next = new Map;
|
|
359
|
+
for (const tool of tools) {
|
|
360
|
+
if (!tool.id)
|
|
361
|
+
continue;
|
|
362
|
+
const fingerprint = fingerprintFor(tool.description ?? "", tool.parameters);
|
|
363
|
+
const previous = route.tools.get(tool.id);
|
|
364
|
+
if (previous && previous.fingerprint === fingerprint) {
|
|
365
|
+
previous.lastFireAt = now;
|
|
366
|
+
next.set(tool.id, previous);
|
|
367
|
+
continue;
|
|
368
|
+
}
|
|
369
|
+
next.set(tool.id, freshSlot(route, tool.id, tool.description ?? "", tool.parameters, fingerprint, now));
|
|
370
|
+
}
|
|
371
|
+
const removed = [...route.tools].filter(([id]) => !next.has(id));
|
|
372
|
+
route.tools = next;
|
|
373
|
+
route.oldestFireAt = now;
|
|
374
|
+
if (removed.length > 0) {
|
|
375
|
+
const deleted = persistDelete(route, removed.map(([id]) => id));
|
|
376
|
+
for (const [id, slot] of removed)
|
|
377
|
+
retire(route, id, slot, deleted);
|
|
378
|
+
}
|
|
379
|
+
for (const [toolID, slot] of next)
|
|
380
|
+
writeSlot(route, toolID, slot);
|
|
381
|
+
if (sessionId)
|
|
382
|
+
sessionFlights.set(sessionId, { key, exact: summarize([...next.entries()], true) });
|
|
383
|
+
}
|
|
384
|
+
function getCurrentToolSetHash(providerID, modelID, agentName, sessionId) {
|
|
385
|
+
return resolve(providerID, modelID, agentName, sessionId)?.hash ?? "";
|
|
386
|
+
}
|
|
387
|
+
function getToolDefinitionMeasurementSignature(providerID, modelID, agentName, sessionId) {
|
|
388
|
+
return resolve(providerID, modelID, agentName, sessionId)?.signature;
|
|
389
|
+
}
|
|
390
|
+
function getMeasuredToolDefinitionTokens(providerID, modelID, agentName, sessionId) {
|
|
391
|
+
return resolve(providerID, modelID, agentName, sessionId)?.total;
|
|
392
|
+
}
|
|
393
|
+
function getSessionToolDefinitionTokens(sessionId) {
|
|
394
|
+
if (!sessionId)
|
|
395
|
+
return;
|
|
396
|
+
const flight = sessionFlights.peek(sessionId);
|
|
397
|
+
if (!flight)
|
|
398
|
+
return;
|
|
399
|
+
if (flight.exact)
|
|
400
|
+
return flight.exact.total;
|
|
401
|
+
const route = routes.get(flight.key);
|
|
402
|
+
return route ? summarize(currentTools(route), route.live).total : undefined;
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
export { BoundedSessionMap, setDatabase, loadToolDefinitionMeasurements, recordToolDefinition, recordToolDefinitionSet, getCurrentToolSetHash, getToolDefinitionMeasurementSignature, getMeasuredToolDefinitionTokens, getSessionToolDefinitionTokens };
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
getActiveCompartmentRun,
|
|
16
16
|
markActiveCompartmentRunPublished,
|
|
17
17
|
registerActiveCompartmentRun
|
|
18
|
-
} from "./index-
|
|
18
|
+
} from "./index-0s8454t2.js";
|
|
19
19
|
import {
|
|
20
20
|
inRootAsyncContext2
|
|
21
21
|
} from "./index-gzy5w8ya.js";
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
getHistorianFailureState,
|
|
28
28
|
clearEmergencyRecovery,
|
|
29
29
|
prepareRawSessionOrdinals2
|
|
30
|
-
} from "./index-
|
|
30
|
+
} from "./index-yrrsp47d.js";
|
|
31
31
|
import {
|
|
32
32
|
pushNotification2
|
|
33
33
|
} from "./index-x8a7jmkh.js";
|
|
@@ -37,7 +37,7 @@ import {
|
|
|
37
37
|
import {
|
|
38
38
|
setRecompStarting2,
|
|
39
39
|
setRecompTerminal2
|
|
40
|
-
} from "./index-
|
|
40
|
+
} from "./index-zzrzjnx5.js";
|
|
41
41
|
|
|
42
42
|
// src/hooks/magic-context/wrapup-orchestrator.ts
|
|
43
43
|
import * as crypto from "node:crypto";
|