@cortexkit/opencode-magic-context 0.49.33 → 0.49.34

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.
Files changed (53) hide show
  1. package/dist/auto-search-worker.js +1 -1
  2. package/dist/chunk-embedding-write-worker.js +1 -1
  3. package/dist/{context-jyzkstnr.js → context-p3xrarzt.js} +10 -10
  4. package/dist/features/magic-context/compaction-marker.d.ts +22 -6
  5. package/dist/features/magic-context/compaction-marker.d.ts.map +1 -1
  6. package/dist/features/magic-context/storage-meta-persisted.d.ts +7 -0
  7. package/dist/features/magic-context/storage-meta-persisted.d.ts.map +1 -1
  8. package/dist/hooks/magic-context/compaction-marker-manager.d.ts +5 -5
  9. package/dist/hooks/magic-context/compaction-marker-manager.d.ts.map +1 -1
  10. package/dist/hooks/magic-context/compaction-marker-publication.d.ts +9 -0
  11. package/dist/hooks/magic-context/compaction-marker-publication.d.ts.map +1 -0
  12. package/dist/hooks/magic-context/inject-compartments.d.ts.map +1 -1
  13. package/dist/{index-94ef0qe2.js → index-04z754rd.js} +1 -1
  14. package/dist/{index-qr2mb02j.js → index-0677w9sd.js} +2 -2
  15. package/dist/{index-43vqx0za.js → index-07vskjn8.js} +3 -3
  16. package/dist/{index-0fe4q77z.js → index-7g9dr8gy.js} +34 -2
  17. package/dist/{index-3fkk2gwj.js → index-97spytxq.js} +11 -11
  18. package/dist/{index-4s4zq97n.js → index-9gpw8hrm.js} +1 -1
  19. package/dist/{index-2xh37qn5.js → index-atekmqef.js} +241 -53
  20. package/dist/{index-hbt0sbv2.js → index-fm36bjv4.js} +1 -1
  21. package/dist/{index-dq5xzeb9.js → index-ftr84kkv.js} +2 -2
  22. package/dist/{index-b7w46fp2.js → index-hbx7m8he.js} +4 -4
  23. package/dist/{index-3jmx3fae.js → index-m1x9ghk5.js} +1 -1
  24. package/dist/index.js +14 -14
  25. package/dist/{message-index-bounded-zq7a5nm6.js → message-index-bounded-qh91fdr3.js} +2 -2
  26. package/dist/migration-worker.js +1 -1
  27. package/dist/raw-ordinal-warmup-worker.js +2 -2
  28. package/dist/{read-session-chunk-1ndphmb8.js → read-session-chunk-kaghtr75.js} +1 -1
  29. package/dist/{recomp-orchestrator-skqzzvby.js → recomp-orchestrator-0y983w7h.js} +5 -5
  30. package/dist/{search-archive-sr07c6aj.js → search-archive-1kw2rp19.js} +2 -2
  31. package/dist/{search-040pac3a.js → search-p684j8ww.js} +4 -4
  32. package/dist/{transform-postprocess-phase-zx1peqma.js → transform-postprocess-phase-ph38mhrs.js} +6 -6
  33. package/dist/v2/auto-search-worker.js +1 -1
  34. package/dist/v2/chunk-embedding-write-worker.js +1 -1
  35. package/dist/v2/{context-3c4z2wj5.js → context-s60hcatx.js} +8 -8
  36. package/dist/v2/{message-index-bounded-jvgz7vk9.js → message-index-bounded-4htdr1j6.js} +2 -2
  37. package/dist/v2/migration-worker.js +1 -1
  38. package/dist/v2/raw-ordinal-warmup-worker.js +2 -2
  39. package/dist/v2/{read-session-chunk-djzgm4jg.js → read-session-chunk-1fa9qzwb.js} +1 -1
  40. package/dist/v2/{recomp-orchestrator-qfqdvbta.js → recomp-orchestrator-7q9nvxte.js} +4 -4
  41. package/dist/v2/{search-archive-n3dhns4r.js → search-archive-xfp51s0g.js} +2 -2
  42. package/dist/v2/{search-q3wkpe8t.js → search-wf8rqxhm.js} +3 -3
  43. package/dist/v2/{server-n14edf07.js → server-ajxhrgjv.js} +1 -1
  44. package/dist/v2/{server-rr4cbkr0.js → server-grakwy1v.js} +1 -1
  45. package/dist/v2/{server-d01pe8q5.js → server-jw5qe9y8.js} +1 -1
  46. package/dist/v2/{server-hwag0khr.js → server-m1pfg2d4.js} +1 -1
  47. package/dist/v2/{server-rb8m4vry.js → server-qvy4qavp.js} +34 -2
  48. package/dist/v2/{server-aqbm9c8d.js → server-z2wft9zv.js} +242 -55
  49. package/dist/v2/server.js +2 -2
  50. package/dist/v2/{wrapup-orchestrator-ga5vfmwr.js → wrapup-orchestrator-wxf7n5k6.js} +4 -4
  51. package/dist/{wrapup-orchestrator-dy8r3gp8.js → wrapup-orchestrator-ys2nrkkb.js} +6 -6
  52. package/package.json +1 -1
  53. package/src/shared/sqlite-transaction-mode-guard.test.ts +2 -0
@@ -51,7 +51,7 @@ async function main() {
51
51
  await runMessageFtsRowidMapBackfill(db);
52
52
  reply = { kind: "fts-rowid-backfill" };
53
53
  } else if (input.searchArchive) {
54
- const { renderSearchArchive } = await import("./search-archive-sr07c6aj.js");
54
+ const { renderSearchArchive } = await import("./search-archive-1kw2rp19.js");
55
55
  const { readRawSessionMessageIdOrdinalsForRangeFromDb } = await import("./read-session-raw-b2sd67v4.js");
56
56
  const archive = input.searchArchive;
57
57
  let raw;
@@ -81,7 +81,7 @@ async function main() {
81
81
  const { setHarness } = await import("./harness-e4avh192.js");
82
82
  setHarness(input.harness ?? "opencode");
83
83
  const [{ indexMessageInShortChunks }, { configureContextDatabasePragmas }] = await Promise.all([
84
- import("./message-index-bounded-zq7a5nm6.js"),
84
+ import("./message-index-bounded-qh91fdr3.js"),
85
85
  import("./sqlite-context-pragmas-mv9jqwjh.js")
86
86
  ]);
87
87
  configureContextDatabasePragmas(db);
@@ -36,7 +36,7 @@ import {
36
36
  readSessionChunk2,
37
37
  getRawSessionMessageIdsThrough2,
38
38
  readRawSessionSeedTail2
39
- } from "./index-0fe4q77z.js";
39
+ } from "./index-7g9dr8gy.js";
40
40
  import"./index-np3rgfw4.js";
41
41
  import"./index-1zx87sdm.js";
42
42
  import"./index-y1qwzvxn.js";
@@ -7,11 +7,11 @@ import {
7
7
  setRecompTerminal2,
8
8
  buildRecompDeps2,
9
9
  runManagedRecomp2
10
- } from "./index-dq5xzeb9.js";
11
- import"./index-2xh37qn5.js";
10
+ } from "./index-ftr84kkv.js";
11
+ import"./index-atekmqef.js";
12
12
  import"./index-qgh1qwjj.js";
13
13
  import"./index-as2amvn3.js";
14
- import"./index-4s4zq97n.js";
14
+ import"./index-9gpw8hrm.js";
15
15
  import"./index-sd3egckz.js";
16
16
  import"./index-rfxzazzy.js";
17
17
  import"./index-2743x98y.js";
@@ -20,7 +20,7 @@ import"./index-4dhv7mqz.js";
20
20
  import"./index-spwjbkc7.js";
21
21
  import"./index-waktfbjy.js";
22
22
  import"./index-qt1qqasc.js";
23
- import"./index-0fe4q77z.js";
23
+ import"./index-7g9dr8gy.js";
24
24
  import"./index-np3rgfw4.js";
25
25
  import"./index-1zx87sdm.js";
26
26
  import"./index-y1qwzvxn.js";
@@ -31,7 +31,7 @@ import"./index-nxrsns5x.js";
31
31
  import"./index-kfyb3k6n.js";
32
32
  import"./index-v7287tzq.js";
33
33
  import"./index-wfybj1dw.js";
34
- import"./index-hbt0sbv2.js";
34
+ import"./index-fm36bjv4.js";
35
35
  import"./index-fb3zxn06.js";
36
36
  import"./index-7kkphb6c.js";
37
37
  import"./index-kq5w68dp.js";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  renderSearchArchive2,
3
3
  renderSearchArchiveOffThread2
4
- } from "./index-3jmx3fae.js";
4
+ } from "./index-m1x9ghk5.js";
5
5
  import"./index-kaqs6h31.js";
6
- import"./index-0fe4q77z.js";
6
+ import"./index-7g9dr8gy.js";
7
7
  import"./index-np3rgfw4.js";
8
8
  import"./index-1zx87sdm.js";
9
9
  import"./index-y1qwzvxn.js";
@@ -5,17 +5,17 @@ import {
5
5
  resolveMemoriesByIdsForSearch2,
6
6
  unifiedSearch2,
7
7
  formatSearchResults2
8
- } from "./index-qr2mb02j.js";
8
+ } from "./index-0677w9sd.js";
9
9
  import"./index-kaqs6h31.js";
10
- import"./index-94ef0qe2.js";
10
+ import"./index-04z754rd.js";
11
11
  import"./index-as2amvn3.js";
12
- import"./index-4s4zq97n.js";
12
+ import"./index-9gpw8hrm.js";
13
13
  import"./index-rfxzazzy.js";
14
14
  import"./index-2743x98y.js";
15
15
  import"./index-jjvbk92s.js";
16
16
  import"./index-4dhv7mqz.js";
17
17
  import"./index-qt1qqasc.js";
18
- import"./index-0fe4q77z.js";
18
+ import"./index-7g9dr8gy.js";
19
19
  import"./index-np3rgfw4.js";
20
20
  import"./index-1zx87sdm.js";
21
21
  import"./index-y1qwzvxn.js";
@@ -19,12 +19,12 @@ import {
19
19
  finalizeMessageRepresentation2,
20
20
  runPostTransformPhase2,
21
21
  checkM0MutationDriftAndSignal2
22
- } from "./index-b7w46fp2.js";
23
- import"./index-94ef0qe2.js";
24
- import"./index-2xh37qn5.js";
22
+ } from "./index-hbx7m8he.js";
23
+ import"./index-04z754rd.js";
24
+ import"./index-atekmqef.js";
25
25
  import"./index-qgh1qwjj.js";
26
26
  import"./index-as2amvn3.js";
27
- import"./index-4s4zq97n.js";
27
+ import"./index-9gpw8hrm.js";
28
28
  import"./index-sd3egckz.js";
29
29
  import"./index-rfxzazzy.js";
30
30
  import"./index-2743x98y.js";
@@ -33,7 +33,7 @@ import"./index-4dhv7mqz.js";
33
33
  import"./index-spwjbkc7.js";
34
34
  import"./index-waktfbjy.js";
35
35
  import"./index-qt1qqasc.js";
36
- import"./index-0fe4q77z.js";
36
+ import"./index-7g9dr8gy.js";
37
37
  import"./index-np3rgfw4.js";
38
38
  import"./index-1zx87sdm.js";
39
39
  import"./index-y1qwzvxn.js";
@@ -44,7 +44,7 @@ import"./index-nxrsns5x.js";
44
44
  import"./index-kfyb3k6n.js";
45
45
  import"./index-v7287tzq.js";
46
46
  import"./index-wfybj1dw.js";
47
- import"./index-hbt0sbv2.js";
47
+ import"./index-fm36bjv4.js";
48
48
  import"./index-fb3zxn06.js";
49
49
  import"./index-7kkphb6c.js";
50
50
  import"./index-kq5w68dp.js";
@@ -28,7 +28,7 @@ var [
28
28
  import("./embedding-cache-mgyr73ef.js"),
29
29
  import("./storage-memory-e6a7mb0k.js"),
30
30
  import("./project-embedding-registry-1x5qe2fy.js"),
31
- import("./search-q3wkpe8t.js"),
31
+ import("./search-wf8rqxhm.js"),
32
32
  import("./compartment-chunk-embedding-rc31e6md.js"),
33
33
  import("./embedding-activity-g1dhes6g.js"),
34
34
  import("./harness-e4avh192.js"),
@@ -34,7 +34,7 @@ import"./server-k3t06fxr.js";
34
34
  import {
35
35
  LATEST_SUPPORTED_VERSION,
36
36
  enforceSchemaFence
37
- } from "./server-d01pe8q5.js";
37
+ } from "./server-jw5qe9y8.js";
38
38
  import"./server-6g98c227.js";
39
39
  import"./server-v77xa5wj.js";
40
40
  import"./server-fr0wbhdn.js";
@@ -305,7 +305,7 @@ import {
305
305
  startCompartmentAgent,
306
306
  setRecompStarting2,
307
307
  setRecompTerminal2
308
- } from "./server-aqbm9c8d.js";
308
+ } from "./server-z2wft9zv.js";
309
309
  import {
310
310
  resolveHistorianModel2
311
311
  } from "./server-5kym00ag.js";
@@ -330,7 +330,7 @@ import {
330
330
  openDatabaseAsync,
331
331
  isDatabasePersisted,
332
332
  getDatabasePersistenceError
333
- } from "./server-d01pe8q5.js";
333
+ } from "./server-jw5qe9y8.js";
334
334
  import {
335
335
  pruneMissingProjectIdentities,
336
336
  setHomeProjectPermission,
@@ -703,7 +703,7 @@ import {
703
703
  readRawSessionMessageById2,
704
704
  readSessionChunk2,
705
705
  readRawSessionSeedTail2
706
- } from "./server-rb8m4vry.js";
706
+ } from "./server-qvy4qavp.js";
707
707
  import {
708
708
  BoundedSessionMap,
709
709
  recordToolDefinitionSet,
@@ -714,7 +714,7 @@ import {
714
714
  cleanSearchText,
715
715
  matchedSearchSnippet,
716
716
  getLastIndexedOrdinal
717
- } from "./server-hwag0khr.js";
717
+ } from "./server-m1pfg2d4.js";
718
718
  import"./server-awr8qa4c.js";
719
719
  import {
720
720
  getMessageIndexEpoch,
@@ -740,7 +740,7 @@ import {
740
740
  resolveMemoriesByIdsForSearch2,
741
741
  unifiedSearch2,
742
742
  formatSearchResults2
743
- } from "./server-n14edf07.js";
743
+ } from "./server-ajxhrgjv.js";
744
744
  import {
745
745
  embedPauseBySession,
746
746
  embedRunStateBySession,
@@ -925,7 +925,7 @@ import {
925
925
  import"./server-kaqs6h31.js";
926
926
  import {
927
927
  renderSearchArchiveOffThread2
928
- } from "./server-rr4cbkr0.js";
928
+ } from "./server-grakwy1v.js";
929
929
  import {
930
930
  compareSemverCore
931
931
  } from "./server-84w6rvvf.js";
@@ -23836,7 +23836,7 @@ function registerRpcHandlers(rpcServer, args) {
23836
23836
  const db = readDatabase();
23837
23837
  if (!db)
23838
23838
  return { ok: false, error: "db unavailable" };
23839
- const { runManagedRecomp } = await importPluginModule(() => import("./recomp-orchestrator-qfqdvbta.js"));
23839
+ const { runManagedRecomp } = await importPluginModule(() => import("./recomp-orchestrator-7q9nvxte.js"));
23840
23840
  const { sendIgnoredMessage } = await importPluginModule(() => import("./send-session-notification-x5nzy34v.js"));
23841
23841
  log2(`[rpc] recomp requested for session ${sessionId}`);
23842
23842
  if (!args.client && !args.hiddenCompletionExecutor) {
@@ -23921,7 +23921,7 @@ function registerRpcHandlers(rpcServer, args) {
23921
23921
  const db = readDatabase();
23922
23922
  if (!db)
23923
23923
  return { ok: false, error: "db unavailable" };
23924
- const { runManagedWrapup } = await importPluginModule(() => import("./wrapup-orchestrator-ga5vfmwr.js"));
23924
+ const { runManagedWrapup } = await importPluginModule(() => import("./wrapup-orchestrator-wxf7n5k6.js"));
23925
23925
  const model = liveSessionState.liveModelBySession.get(sessionId);
23926
23926
  const contextLimit = model ? resolveContextLimit(model.providerID, model.modelID, { db, sessionID: sessionId }) : 128000;
23927
23927
  const ctx = {
@@ -15,7 +15,7 @@ import"./server-cpjk5jd2.js";
15
15
  import"./server-6vd2n183.js";
16
16
  import"./server-2ra6pwf3.js";
17
17
  import"./server-a7x00tw8.js";
18
- import"./server-rb8m4vry.js";
18
+ import"./server-qvy4qavp.js";
19
19
  import"./server-cqjvxyrp.js";
20
20
  import {
21
21
  MESSAGE_INDEX_MAX_FTS_BYTES,
@@ -24,7 +24,7 @@ import {
24
24
  markMessageIndexDirty,
25
25
  getIndexableContent,
26
26
  indexSingleMessage
27
- } from "./server-hwag0khr.js";
27
+ } from "./server-m1pfg2d4.js";
28
28
  import"./server-awr8qa4c.js";
29
29
  import"./server-gyy4k6mf.js";
30
30
 
@@ -18,7 +18,7 @@ import"./server-fb3zxn06.js";
18
18
  import {
19
19
  setSqlitePragmaConfig,
20
20
  initializeDatabase
21
- } from "./server-d01pe8q5.js";
21
+ } from "./server-jw5qe9y8.js";
22
22
  import"./server-51779zs2.js";
23
23
  import"./server-cpjk5jd2.js";
24
24
  import"./server-6vd2n183.js";
@@ -51,7 +51,7 @@ async function main() {
51
51
  await runMessageFtsRowidMapBackfill(db);
52
52
  reply = { kind: "fts-rowid-backfill" };
53
53
  } else if (input.searchArchive) {
54
- const { renderSearchArchive } = await import("./search-archive-n3dhns4r.js");
54
+ const { renderSearchArchive } = await import("./search-archive-xfp51s0g.js");
55
55
  const { readRawSessionMessageIdOrdinalsForRangeFromDb } = await import("./read-session-raw-5x088amc.js");
56
56
  const archive = input.searchArchive;
57
57
  let raw;
@@ -81,7 +81,7 @@ async function main() {
81
81
  const { setHarness } = await import("./harness-e4avh192.js");
82
82
  setHarness(input.harness ?? "opencode");
83
83
  const [{ indexMessageInShortChunks }, { configureContextDatabasePragmas }] = await Promise.all([
84
- import("./message-index-bounded-jvgz7vk9.js"),
84
+ import("./message-index-bounded-4htdr1j6.js"),
85
85
  import("./sqlite-context-pragmas-mv9jqwjh.js")
86
86
  ]);
87
87
  configureContextDatabasePragmas(db);
@@ -36,7 +36,7 @@ import {
36
36
  readSessionChunk2,
37
37
  getRawSessionMessageIdsThrough2,
38
38
  readRawSessionSeedTail2
39
- } from "./server-rb8m4vry.js";
39
+ } from "./server-qvy4qavp.js";
40
40
  import"./server-nxas8v1d.js";
41
41
  import"./server-1zx87sdm.js";
42
42
  import"./server-a7x00tw8.js";
@@ -7,10 +7,10 @@ import {
7
7
  setRecompTerminal2,
8
8
  buildRecompDeps2,
9
9
  runManagedRecomp2
10
- } from "./server-aqbm9c8d.js";
10
+ } from "./server-z2wft9zv.js";
11
11
  import"./server-806rzhs6.js";
12
12
  import"./server-tkdabx8q.js";
13
- import"./server-hwag0khr.js";
13
+ import"./server-m1pfg2d4.js";
14
14
  import"./server-2aasmpsp.js";
15
15
  import"./server-jjvbk92s.js";
16
16
  import"./server-ab8017gw.js";
@@ -18,7 +18,7 @@ import"./server-4dhv7mqz.js";
18
18
  import"./server-53eh1r8r.js";
19
19
  import"./server-qc915kw2.js";
20
20
  import"./server-qt1qqasc.js";
21
- import"./server-rb8m4vry.js";
21
+ import"./server-qvy4qavp.js";
22
22
  import"./server-nxas8v1d.js";
23
23
  import"./server-1zx87sdm.js";
24
24
  import"./server-a7x00tw8.js";
@@ -31,7 +31,7 @@ import"./server-24g8r2d0.js";
31
31
  import"./server-bsgd4dk1.js";
32
32
  import"./server-h1byrhwx.js";
33
33
  import"./server-ab1g0wn9.js";
34
- import"./server-d01pe8q5.js";
34
+ import"./server-jw5qe9y8.js";
35
35
  import"./server-fb3zxn06.js";
36
36
  import"./server-6g98c227.js";
37
37
  import"./server-fr0wbhdn.js";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  renderSearchArchive2,
3
3
  renderSearchArchiveOffThread2
4
- } from "./server-rr4cbkr0.js";
4
+ } from "./server-grakwy1v.js";
5
5
  import"./server-kaqs6h31.js";
6
- import"./server-rb8m4vry.js";
6
+ import"./server-qvy4qavp.js";
7
7
  import"./server-nxas8v1d.js";
8
8
  import"./server-1zx87sdm.js";
9
9
  import"./server-a7x00tw8.js";
@@ -5,16 +5,16 @@ import {
5
5
  resolveMemoriesByIdsForSearch2,
6
6
  unifiedSearch2,
7
7
  formatSearchResults2
8
- } from "./server-n14edf07.js";
8
+ } from "./server-ajxhrgjv.js";
9
9
  import"./server-kaqs6h31.js";
10
10
  import"./server-tkdabx8q.js";
11
- import"./server-hwag0khr.js";
11
+ import"./server-m1pfg2d4.js";
12
12
  import"./server-2aasmpsp.js";
13
13
  import"./server-jjvbk92s.js";
14
14
  import"./server-ab8017gw.js";
15
15
  import"./server-4dhv7mqz.js";
16
16
  import"./server-qt1qqasc.js";
17
- import"./server-rb8m4vry.js";
17
+ import"./server-qvy4qavp.js";
18
18
  import"./server-nxas8v1d.js";
19
19
  import"./server-1zx87sdm.js";
20
20
  import"./server-a7x00tw8.js";
@@ -25,7 +25,7 @@ import {
25
25
  isMessageIndexReconciledThrough,
26
26
  clearIndexedMessages,
27
27
  indexMessagesAfterOrdinal
28
- } from "./server-hwag0khr.js";
28
+ } from "./server-m1pfg2d4.js";
29
29
  import {
30
30
  Priority,
31
31
  AdmissionClass,
@@ -17,7 +17,7 @@ import {
17
17
  import {
18
18
  hasRawMessageProvider2,
19
19
  readRawSessionMessageIdOrdinalsForRange2
20
- } from "./server-rb8m4vry.js";
20
+ } from "./server-qvy4qavp.js";
21
21
 
22
22
  // src/tools/ctx-expand/search-archive.ts
23
23
  var archiveReadsOnThisThread = 0;
@@ -1221,7 +1221,7 @@ function finishDatabaseOpen(db, dbPath, explicitDbPath, latestSupportedVersion)
1221
1221
  state.running = startMessageFtsRowidMapBackfill2(db, signal).then(async () => {
1222
1222
  if (signal.aborted || !readsOpenCodeStore)
1223
1223
  return;
1224
- const { readRawSessionMessagePage, readRawSessionMessages } = await importPluginModule(() => import("./read-session-chunk-djzgm4jg.js"));
1224
+ const { readRawSessionMessagePage, readRawSessionMessages } = await importPluginModule(() => import("./read-session-chunk-1fa9qzwb.js"));
1225
1225
  const { startMessageTimeBackfill } = await importPluginModule(() => import("./message-time-backfill-zvthw6xb.js"));
1226
1226
  if (signal.aborted)
1227
1227
  return;
@@ -9,7 +9,7 @@ import {
9
9
  } from "./server-pavzsdc6.js";
10
10
  import {
11
11
  cleanUserText2
12
- } from "./server-rb8m4vry.js";
12
+ } from "./server-qvy4qavp.js";
13
13
  import {
14
14
  recordMessageFtsRowid2,
15
15
  recordIndexedMessageTime2,
@@ -3551,7 +3551,11 @@ function parsePersistedCompactionMarkerState(raw, storedTargetEndMessageId) {
3551
3551
  if (parsed && typeof parsed === "object" && typeof parsed.boundaryMessageId === "string" && typeof parsed.summaryMessageId === "string" && typeof parsed.compactionPartId === "string" && typeof parsed.summaryPartId === "string" && typeof parsed.boundaryOrdinal === "number") {
3552
3552
  const targetEndMessageId = typeof storedTargetEndMessageId === "string" && storedTargetEndMessageId.length > 0 ? storedTargetEndMessageId : typeof parsed.targetEndMessageId === "string" && parsed.targetEndMessageId.length > 0 ? parsed.targetEndMessageId : null;
3553
3553
  return {
3554
- ...parsed,
3554
+ boundaryMessageId: parsed.boundaryMessageId,
3555
+ summaryMessageId: parsed.summaryMessageId,
3556
+ compactionPartId: parsed.compactionPartId,
3557
+ summaryPartId: parsed.summaryPartId,
3558
+ boundaryOrdinal: parsed.boundaryOrdinal,
3555
3559
  targetEndMessageId
3556
3560
  };
3557
3561
  }
@@ -3562,6 +3566,34 @@ function getPersistedCompactionMarkerState(db, sessionId) {
3562
3566
  const row = db.prepare("SELECT compaction_marker_state, compaction_marker_target_end_message_id FROM session_meta WHERE session_id = ?").get(sessionId);
3563
3567
  return parsePersistedCompactionMarkerState(row?.compaction_marker_state, row?.compaction_marker_target_end_message_id);
3564
3568
  }
3569
+ function getCompactionMarkerPublicationState(db, sessionId) {
3570
+ const row = db.prepare("SELECT compaction_marker_state FROM session_meta WHERE session_id = ?").get(sessionId);
3571
+ const raw = row?.compaction_marker_state ?? "";
3572
+ let pending = null;
3573
+ try {
3574
+ pending = parsePersistedCompactionMarkerState(JSON.stringify(JSON.parse(raw).pending));
3575
+ } catch {}
3576
+ return { raw, pending };
3577
+ }
3578
+ function compareAndSetCompactionMarkerPublicationState(db, sessionId, expectedRaw, state, pending) {
3579
+ return db.transaction(() => {
3580
+ ensureSessionMetaRow(db, sessionId);
3581
+ let envelope = {};
3582
+ if (pending) {
3583
+ try {
3584
+ const parsed = JSON.parse(expectedRaw);
3585
+ if (parsed && typeof parsed === "object")
3586
+ envelope = parsed;
3587
+ } catch {}
3588
+ }
3589
+ const raw = JSON.stringify(pending ? { ...envelope, pending } : state);
3590
+ const result = db.prepare(`UPDATE session_meta SET compaction_marker_state = ?, compaction_marker_target_end_message_id = ?
3591
+ WHERE session_id = ? AND COALESCE(compaction_marker_state, '') = ?`).run(raw, state?.targetEndMessageId ?? null, sessionId, expectedRaw);
3592
+ if (result.changes !== 1)
3593
+ throw new Error("marker publication state changed concurrently");
3594
+ return raw;
3595
+ }).immediate();
3596
+ }
3565
3597
  function setPersistedCompactionMarkerState(db, sessionId, state) {
3566
3598
  db.transaction(() => {
3567
3599
  ensureSessionMetaRow(db, sessionId);
@@ -7454,4 +7486,4 @@ function readRawSessionSeedTail2(sessionId, boundaryId, onQuery) {
7454
7486
  });
7455
7487
  }
7456
7488
 
7457
- export { expandToolPart, askAnswerLines, 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, SESSION_META_SELECT_COLUMNS, META_COLUMNS, BOOLEAN_META_KEYS, NULL_BIND_META_KEYS, isSessionMetaRow, getDefaultSessionMeta, ensureSessionMetaRow, toSessionMeta, persistCachedM0, clearCachedM0M1, clearCachedM0, 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, detectLatestTurnThinkingMismatch, isPrefixBoundThinkingModel, detectOverflow, modelAcceptsEmptyContent, isAnthropicFamilyRoute, neutralizeDroppedReasoningPart, restoreNeutralizedReasoningPart, isNeutralizedReasoningPart, variantChangeBustsProviderCache, makeSentinel, makeWholeMessageSentinel, isSentinel, replaySentinelByMessageIds, isInActiveAnthropicTurn, activeAnthropicTurnStart, hasAnthropicReasoning, markServedShapeRepair, prepareServedShapeRepair, stripSystemInjectedMessages, stripDroppedPlaceholderMessages, replayClearedReasoning, replayStrippedInlineThinking, clearOldReasoning, stripClearedReasoning, captureInlineThinkingRepairs, 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, resolveHistorianChunkStart2, compareRawSessionMessageOrder2, readRawSessionMessageById2, getRawSessionMessageCount2, RAW_SESSION_TAG_KEY_PAGE_SIZE2, getRawSessionTagKeysThrough2, getLegacyProtectedTailStartOrdinal2, getProtectedTailStartOrdinal2, readSessionChunk2, getRawSessionMessageIdsThrough2, readRawSessionSeedTail2 };
7489
+ export { expandToolPart, askAnswerLines, 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, SESSION_META_SELECT_COLUMNS, META_COLUMNS, BOOLEAN_META_KEYS, NULL_BIND_META_KEYS, isSessionMetaRow, getDefaultSessionMeta, ensureSessionMetaRow, toSessionMeta, persistCachedM0, clearCachedM0M1, clearCachedM0, 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, getCompactionMarkerPublicationState, compareAndSetCompactionMarkerPublicationState, 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, detectLatestTurnThinkingMismatch, isPrefixBoundThinkingModel, detectOverflow, modelAcceptsEmptyContent, isAnthropicFamilyRoute, neutralizeDroppedReasoningPart, restoreNeutralizedReasoningPart, isNeutralizedReasoningPart, variantChangeBustsProviderCache, makeSentinel, makeWholeMessageSentinel, isSentinel, replaySentinelByMessageIds, isInActiveAnthropicTurn, activeAnthropicTurnStart, hasAnthropicReasoning, markServedShapeRepair, prepareServedShapeRepair, stripSystemInjectedMessages, stripDroppedPlaceholderMessages, replayClearedReasoning, replayStrippedInlineThinking, clearOldReasoning, stripClearedReasoning, captureInlineThinkingRepairs, 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, resolveHistorianChunkStart2, compareRawSessionMessageOrder2, readRawSessionMessageById2, getRawSessionMessageCount2, RAW_SESSION_TAG_KEY_PAGE_SIZE2, getRawSessionTagKeysThrough2, getLegacyProtectedTailStartOrdinal2, getProtectedTailStartOrdinal2, readSessionChunk2, getRawSessionMessageIdsThrough2, readRawSessionSeedTail2 };