@cortexkit/opencode-magic-context 0.48.0 → 0.49.0

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 (203) hide show
  1. package/dist/auto-search-worker.js +3 -3
  2. package/dist/{conflict-warning-hook-w8cykrnf.js → conflict-warning-hook-kzx4dmk1.js} +7 -7
  3. package/dist/{context-m0cy262m.js → context-nj5f293n.js} +96 -43
  4. package/dist/{derive-budgets-sg0xsq7s.js → derive-budgets-qz5rrr08.js} +2 -2
  5. package/dist/embedding-backfill-aetxv1vt.js +21 -0
  6. package/dist/embedding-worker.js +4 -4
  7. package/dist/features/magic-context/git-commits/search-git-commits.d.ts +2 -0
  8. package/dist/features/magic-context/git-commits/search-git-commits.d.ts.map +1 -1
  9. package/dist/features/magic-context/message-index.d.ts.map +1 -1
  10. package/dist/features/magic-context/pi-content-decisions.d.ts +1 -1
  11. package/dist/features/magic-context/pi-content-decisions.d.ts.map +1 -1
  12. package/dist/features/magic-context/search-rerank.d.ts +35 -0
  13. package/dist/features/magic-context/search-rerank.d.ts.map +1 -0
  14. package/dist/features/magic-context/search.d.ts +11 -0
  15. package/dist/features/magic-context/search.d.ts.map +1 -1
  16. package/dist/features/magic-context/storage-meta-persisted.d.ts +13 -2
  17. package/dist/features/magic-context/storage-meta-persisted.d.ts.map +1 -1
  18. package/dist/features/magic-context/storage-meta-session.d.ts +1 -1
  19. package/dist/features/magic-context/storage-meta-session.d.ts.map +1 -1
  20. package/dist/features/magic-context/storage-meta.d.ts +1 -1
  21. package/dist/features/magic-context/storage-meta.d.ts.map +1 -1
  22. package/dist/features/magic-context/storage-session-tables.d.ts +2 -0
  23. package/dist/features/magic-context/storage-session-tables.d.ts.map +1 -1
  24. package/dist/features/magic-context/storage-tag-identity-revision.d.ts +29 -9
  25. package/dist/features/magic-context/storage-tag-identity-revision.d.ts.map +1 -1
  26. package/dist/features/magic-context/storage-tags.d.ts +9 -0
  27. package/dist/features/magic-context/storage-tags.d.ts.map +1 -1
  28. package/dist/features/magic-context/storage.d.ts +1 -1
  29. package/dist/features/magic-context/storage.d.ts.map +1 -1
  30. package/dist/features/magic-context/tagger.d.ts +2 -0
  31. package/dist/features/magic-context/tagger.d.ts.map +1 -1
  32. package/dist/features/magic-context/transform-decision-log.d.ts +3 -0
  33. package/dist/features/magic-context/transform-decision-log.d.ts.map +1 -1
  34. package/dist/hooks/magic-context/auto-search-deadline.d.ts.map +1 -1
  35. package/dist/hooks/magic-context/auto-search-replay.fixture.d.ts +24 -0
  36. package/dist/hooks/magic-context/auto-search-replay.fixture.d.ts.map +1 -0
  37. package/dist/hooks/magic-context/auto-search-runner.d.ts +1 -1
  38. package/dist/hooks/magic-context/auto-search-runner.d.ts.map +1 -1
  39. package/dist/hooks/magic-context/auto-search-worker-client.d.ts +2 -0
  40. package/dist/hooks/magic-context/auto-search-worker-client.d.ts.map +1 -1
  41. package/dist/hooks/magic-context/command-handler.d.ts +2 -0
  42. package/dist/hooks/magic-context/command-handler.d.ts.map +1 -1
  43. package/dist/hooks/magic-context/emergency-fail-closed.d.ts +28 -0
  44. package/dist/hooks/magic-context/emergency-fail-closed.d.ts.map +1 -1
  45. package/dist/hooks/magic-context/event-handler.d.ts.map +1 -1
  46. package/dist/hooks/magic-context/historian-host-runner.d.ts +8 -0
  47. package/dist/hooks/magic-context/historian-host-runner.d.ts.map +1 -1
  48. package/dist/hooks/magic-context/hook.d.ts +2 -1
  49. package/dist/hooks/magic-context/hook.d.ts.map +1 -1
  50. package/dist/hooks/magic-context/inject-compartments.d.ts.map +1 -1
  51. package/dist/hooks/magic-context/latest-thinking-recovery.d.ts +7 -0
  52. package/dist/hooks/magic-context/latest-thinking-recovery.d.ts.map +1 -1
  53. package/dist/hooks/magic-context/lkg-slot.d.ts.map +1 -1
  54. package/dist/hooks/magic-context/pass-outcome.d.ts +1 -0
  55. package/dist/hooks/magic-context/pass-outcome.d.ts.map +1 -1
  56. package/dist/hooks/magic-context/read-session-chunk.d.ts +7 -1
  57. package/dist/hooks/magic-context/read-session-chunk.d.ts.map +1 -1
  58. package/dist/hooks/magic-context/read-session-raw.d.ts +35 -0
  59. package/dist/hooks/magic-context/read-session-raw.d.ts.map +1 -1
  60. package/dist/hooks/magic-context/rust-mode-transform.d.ts +36 -0
  61. package/dist/hooks/magic-context/rust-mode-transform.d.ts.map +1 -1
  62. package/dist/hooks/magic-context/shared-compartment-boundaries.d.ts +8 -1
  63. package/dist/hooks/magic-context/shared-compartment-boundaries.d.ts.map +1 -1
  64. package/dist/hooks/magic-context/strict-thinking-prefix.d.ts +8 -0
  65. package/dist/hooks/magic-context/strict-thinking-prefix.d.ts.map +1 -0
  66. package/dist/hooks/magic-context/tag-messages.d.ts.map +1 -1
  67. package/dist/hooks/magic-context/transform-postprocess-phase.d.ts +13 -0
  68. package/dist/hooks/magic-context/transform-postprocess-phase.d.ts.map +1 -1
  69. package/dist/hooks/magic-context/transform.d.ts +1 -0
  70. package/dist/hooks/magic-context/transform.d.ts.map +1 -1
  71. package/dist/{index-db7zwa3v.js → index-1bt88epp.js} +93 -9
  72. package/dist/{index-f0h6xwqm.js → index-1g30axtz.js} +229 -67
  73. package/dist/{index-k1xb52kd.js → index-1r0k9js3.js} +5 -5
  74. package/dist/{index-692jzy0p.js → index-2jcbj7r1.js} +122 -371
  75. package/dist/{index-bdckkfw6.js → index-2jgwttpt.js} +16 -8
  76. package/dist/{index-2y0s2hep.js → index-4mjhqadz.js} +1 -1
  77. package/dist/{index-pdecwzrd.js → index-57mrqed8.js} +1 -1
  78. package/dist/{index-ty64eqcn.js → index-9qjqq45k.js} +3 -3
  79. package/dist/{index-yq8n9qcb.js → index-9rt53q79.js} +4 -4
  80. package/dist/{index-pg50n748.js → index-b7mv1jx3.js} +4 -4
  81. package/dist/{index-mmyh6d8f.js → index-ezmszwbd.js} +6 -4
  82. package/dist/{index-fbv1dn35.js → index-gzcmtmar.js} +1 -1
  83. package/dist/{index-0an7742d.js → index-h2py7207.js} +549 -973
  84. package/dist/{index-0qhce371.js → index-h2wc01qk.js} +2 -2
  85. package/dist/{index-dhwzyd54.js → index-h5zfkjyk.js} +160 -25
  86. package/dist/{index-q2tqeqde.js → index-ha87j7a8.js} +1229 -78
  87. package/dist/{index-14cjxt20.js → index-hj2q50k0.js} +45 -8
  88. package/dist/{index-cb7emxgj.js → index-kmpvemph.js} +336 -6
  89. package/dist/{index-c43kr12f.js → index-kp5qe690.js} +7 -7
  90. package/dist/{index-bhvjj0ys.js → index-kq57tdf0.js} +2 -2
  91. package/dist/{index-7mx8v0pw.js → index-nm6a8xpd.js} +4 -4
  92. package/dist/{index-8j7gqj40.js → index-nsjyysj0.js} +6 -2
  93. package/dist/{index-k9nnwad5.js → index-nydv6g8r.js} +44 -7
  94. package/dist/{index-5zygecde.js → index-peshmj6h.js} +4 -4
  95. package/dist/{index-knh4y330.js → index-pxwp2hjk.js} +7 -2
  96. package/dist/{index-1qb0z7wa.js → index-qx53vezw.js} +1 -1
  97. package/dist/{index-q7h7csab.js → index-s4j7t92z.js} +9 -9
  98. package/dist/{index-z8e0psj8.js → index-stbr4ce6.js} +3 -3
  99. package/dist/{index-jcbd3znx.js → index-tqf7yg27.js} +1 -1
  100. package/dist/{index-72nhv486.js → index-vkbqdnkj.js} +2 -2
  101. package/dist/{index-eeezr5zz.js → index-z1tjp257.js} +1 -1
  102. package/dist/index.d.ts.map +1 -1
  103. package/dist/index.js +61 -44
  104. package/dist/{logger-d3wex3dz.js → logger-ewak5q1s.js} +1 -1
  105. package/dist/{message-index-bounded-7ezbgddp.js → message-index-bounded-h0mrd4pr.js} +13 -13
  106. package/dist/{message-time-backfill-brbd63hv.js → message-time-backfill-8x06r9kx.js} +2 -2
  107. package/dist/migration-worker.js +9 -9
  108. package/dist/plugin/hooks/create-session-hooks.d.ts +2 -0
  109. package/dist/plugin/hooks/create-session-hooks.d.ts.map +1 -1
  110. package/dist/plugin/tool-registry.d.ts.map +1 -1
  111. package/dist/{project-embedding-registry-7qzptcw7.js → project-embedding-registry-rtt0djyb.js} +9 -9
  112. package/dist/raw-ordinal-warmup-worker.js +4 -4
  113. package/dist/{read-session-chunk-6k83m4fj.js → read-session-chunk-ty89v75e.js} +10 -8
  114. package/dist/{read-session-raw-3g9qy1xa.js → read-session-raw-8sjbc9h0.js} +5 -3
  115. package/dist/{recomp-orchestrator-d3fp1cy0.js → recomp-orchestrator-4f1yyd1q.js} +25 -25
  116. package/dist/{safe-notification-target-5ffqq32m.js → safe-notification-target-q0cyrx3x.js} +2 -2
  117. package/dist/{search-epax1ecv.js → search-pz4f4wge.js} +20 -20
  118. package/dist/{send-session-notification-erecz4y4.js → send-session-notification-38cd5dqt.js} +5 -5
  119. package/dist/shared/auto-search-lifecycle.d.ts +14 -0
  120. package/dist/shared/auto-search-lifecycle.d.ts.map +1 -1
  121. package/dist/shared/logger.d.ts.map +1 -1
  122. package/dist/shared/models-dev-temperature.d.ts +18 -0
  123. package/dist/shared/models-dev-temperature.d.ts.map +1 -0
  124. package/dist/shared/project-directory-key.d.ts +16 -0
  125. package/dist/shared/project-directory-key.d.ts.map +1 -1
  126. package/dist/shared/subagent-temperature.d.ts +46 -0
  127. package/dist/shared/subagent-temperature.d.ts.map +1 -0
  128. package/dist/{storage-tags-d3b0v2ss.js → storage-tags-k0pda32s.js} +6 -4
  129. package/dist/tools/ctx-reduce/tools.d.ts.map +1 -1
  130. package/dist/tools/ctx-search/tools.d.ts.map +1 -1
  131. package/dist/tools/ctx-search/types.d.ts +1 -0
  132. package/dist/tools/ctx-search/types.d.ts.map +1 -1
  133. package/dist/{transform-postprocess-phase-spcy2qre.js → transform-postprocess-phase-tck4g20s.js} +25 -25
  134. package/dist/v2/auto-search-worker.js +3 -3
  135. package/dist/v2/{context-sf98kstd.js → context-crbt6p1y.js} +809 -1052
  136. package/dist/v2/{derive-budgets-3vc0y84t.js → derive-budgets-fgej9j46.js} +3 -3
  137. package/dist/v2/embedding-backfill-ph1qfyn3.js +21 -0
  138. package/dist/v2/embedding-worker.js +4 -4
  139. package/dist/v2/hidden-child-native.d.ts.map +1 -1
  140. package/dist/v2/hidden-completion.d.ts +7 -0
  141. package/dist/v2/hidden-completion.d.ts.map +1 -1
  142. package/dist/v2/hooks/context.d.ts.map +1 -1
  143. package/dist/v2/hooks/dream-trigger.d.ts +4 -1
  144. package/dist/v2/hooks/dream-trigger.d.ts.map +1 -1
  145. package/dist/v2/hooks/generate.d.ts +9 -2
  146. package/dist/v2/hooks/generate.d.ts.map +1 -1
  147. package/dist/v2/{logger-mxd0ym09.js → logger-pj02s7sr.js} +1 -1
  148. package/dist/v2/{message-index-bounded-dy3s2k1e.js → message-index-bounded-xwqdywxg.js} +13 -13
  149. package/dist/v2/{message-time-backfill-gtx1pwk1.js → message-time-backfill-cje68egj.js} +2 -2
  150. package/dist/v2/migration-worker.js +9 -9
  151. package/dist/v2/{project-embedding-registry-1tgba5dv.js → project-embedding-registry-d6m7tyxr.js} +9 -9
  152. package/dist/v2/raw-ordinal-warmup-worker.js +4 -4
  153. package/dist/v2/{read-session-chunk-rh4khdkv.js → read-session-chunk-8p5mdryx.js} +10 -8
  154. package/dist/v2/{read-session-raw-bsbmf0vj.js → read-session-raw-j8dvp7f4.js} +5 -3
  155. package/dist/v2/{recomp-orchestrator-az61rfcg.js → recomp-orchestrator-ckfgt6wq.js} +26 -26
  156. package/dist/v2/{safe-notification-target-73ax1p5v.js → safe-notification-target-y3p1hce9.js} +2 -2
  157. package/dist/v2/{search-nzkwrc6n.js → search-ym8rehhz.js} +20 -20
  158. package/dist/v2/{send-session-notification-6km439kn.js → send-session-notification-5m0yapqx.js} +5 -5
  159. package/dist/v2/{server-x2g40a71.js → server-19zjmn02.js} +2 -2
  160. package/dist/v2/{server-sggvvzhb.js → server-1tk82krw.js} +45 -8
  161. package/dist/v2/{server-vqpf3167.js → server-2s6ayq3t.js} +2 -2
  162. package/dist/v2/{server-z2037m6z.js → server-2s9qz6n7.js} +2 -2
  163. package/dist/v2/{server-k228xhjg.js → server-3j4d00kf.js} +1 -1
  164. package/dist/v2/{server-aan4q8mx.js → server-3t0q2cqx.js} +1 -1
  165. package/dist/v2/{server-2fbhp79z.js → server-4ez8mntn.js} +16 -8
  166. package/dist/v2/{server-zxhgvsf9.js → server-676xw7at.js} +1 -1
  167. package/dist/v2/{server-52awr2mw.js → server-6byqfbqf.js} +93 -9
  168. package/dist/v2/{server-qye6ykf7.js → server-7ekna9zs.js} +2 -2
  169. package/dist/v2/{server-g5r0n3b6.js → server-7h861yms.js} +160 -25
  170. package/dist/v2/{server-v06jcv0w.js → server-8k2agx29.js} +1 -1
  171. package/dist/v2/{server-686jg6eb.js → server-c5rrgrcd.js} +44 -7
  172. package/dist/v2/{server-4k748ke6.js → server-hb6xhh9q.js} +2 -2
  173. package/dist/v2/{server-7wwc2nga.js → server-jvxzm1jy.js} +7 -7
  174. package/dist/v2/{server-1r6pmz4f.js → server-kzns2hbz.js} +1 -1
  175. package/dist/v2/{server-xdfwt6kh.js → server-pj4pjv02.js} +2 -2
  176. package/dist/v2/{server-psqc7e9n.js → server-q4ph9bwn.js} +1227 -78
  177. package/dist/v2/{server-8pyt7hev.js → server-sa8jvrfc.js} +9 -9
  178. package/dist/v2/{server-ezhze64f.js → server-ss95ky04.js} +4 -4
  179. package/dist/v2/{server-5m3dt5r1.js → server-t4k4qexw.js} +6 -2
  180. package/dist/v2/{server-e0vdaae2.js → server-v4mewb78.js} +4 -4
  181. package/dist/v2/{server-gjcr4w98.js → server-w32kmdez.js} +4 -4
  182. package/dist/v2/{server-k8x2rbxc.js → server-x4hscabv.js} +119 -365
  183. package/dist/v2/{server-yczc713m.js → server-xwz4dqh9.js} +7 -2
  184. package/dist/v2/{server-xxm59eww.js → server-ycw9qqcy.js} +4 -4
  185. package/dist/v2/{server-8tqanswc.js → server-zp53y8js.js} +331 -4
  186. package/dist/v2/server.js +4 -4
  187. package/dist/v2/{storage-tags-w4tv77sn.js → storage-tags-8vw924zn.js} +6 -4
  188. package/dist/v2/store-reader.d.ts +8 -2
  189. package/dist/v2/store-reader.d.ts.map +1 -1
  190. package/dist/v2/{wrapup-orchestrator-mz7efs7w.js → wrapup-orchestrator-a7efxaax.js} +26 -26
  191. package/dist/wrapup-orchestrator-barbc6h9.js +44 -0
  192. package/package.json +1 -1
  193. package/src/shared/auto-search-lifecycle.ts +43 -0
  194. package/src/shared/logger.test.ts +38 -0
  195. package/src/shared/logger.ts +10 -2
  196. package/src/shared/models-dev-temperature.ts +107 -0
  197. package/src/shared/project-directory-key.test.ts +59 -0
  198. package/src/shared/project-directory-key.ts +20 -0
  199. package/src/shared/subagent-temperature.test.ts +270 -0
  200. package/src/shared/subagent-temperature.ts +110 -0
  201. package/dist/embedding-backfill-9rcm1mfy.js +0 -21
  202. package/dist/v2/embedding-backfill-vn8g1nh1.js +0 -21
  203. package/dist/wrapup-orchestrator-amzta1t4.js +0 -44
@@ -17,11 +17,11 @@ var [
17
17
  { setHarness },
18
18
  { Database }
19
19
  ] = await Promise.all([
20
- import("./embedding-backfill-9rcm1mfy.js"),
20
+ import("./embedding-backfill-aetxv1vt.js"),
21
21
  import("./embedding-cache-mgyr73ef.js"),
22
22
  import("./storage-memory-07fx57k6.js"),
23
- import("./project-embedding-registry-7qzptcw7.js"),
24
- import("./search-epax1ecv.js"),
23
+ import("./project-embedding-registry-rtt0djyb.js"),
24
+ import("./search-pz4f4wge.js"),
25
25
  import("./embedding-activity-g1dhes6g.js"),
26
26
  import("./harness-e4avh192.js"),
27
27
  import("./sqlite-mhjkerzq.js")
@@ -4,17 +4,17 @@ import {
4
4
  cleanupConflictWarnings2,
5
5
  sendSchemaFenceWarning2,
6
6
  sendStartupAnnouncement2
7
- } from "./index-z8e0psj8.js";
8
- import"./index-eeezr5zz.js";
7
+ } from "./index-stbr4ce6.js";
8
+ import"./index-z1tjp257.js";
9
9
  import"./index-sd3egckz.js";
10
- import"./index-yq8n9qcb.js";
10
+ import"./index-9rt53q79.js";
11
11
  import"./index-qt1qqasc.js";
12
- import"./index-jcbd3znx.js";
13
- import"./index-ty64eqcn.js";
14
- import"./index-dhwzyd54.js";
12
+ import"./index-tqf7yg27.js";
13
+ import"./index-9qjqq45k.js";
14
+ import"./index-h5zfkjyk.js";
15
15
  import"./index-58e3y90n.js";
16
16
  import"./index-kb9nn0a0.js";
17
- import"./index-8j7gqj40.js";
17
+ import"./index-nsjyysj0.js";
18
18
  import"./index-0sahzkwr.js";
19
19
  import"./index-pavzsdc6.js";
20
20
  export {
@@ -9,8 +9,6 @@ import {
9
9
  dreamerRunConfig,
10
10
  pluginConfigReader,
11
11
  withLiveDreamerOutputCap,
12
- renderUserFacingFailure,
13
- userFacingFailureCode,
14
12
  invalidateAutoEmbedSession,
15
13
  acquireCompartmentLease,
16
14
  releaseCompartmentLeaseBestEffort,
@@ -67,7 +65,7 @@ import {
67
65
  resetPrefixTrimFallbackState,
68
66
  resolveOpenCodeProtectedTailBoundary,
69
67
  getActiveCompartmentRun
70
- } from "./index-692jzy0p.js";
68
+ } from "./index-2jcbj7r1.js";
71
69
  import"./index-sd3egckz.js";
72
70
  import {
73
71
  getHarness2
@@ -79,7 +77,7 @@ import {
79
77
  import {
80
78
  log2,
81
79
  sessionLog2
82
- } from "./index-8j7gqj40.js";
80
+ } from "./index-nsjyysj0.js";
83
81
  import {
84
82
  isSaneLimit,
85
83
  setOutputReserveConfig,
@@ -89,8 +87,8 @@ import {
89
87
  deriveHistorianChunkTokens2,
90
88
  resolveKnownHistorianContextLimit2,
91
89
  resolveHistorianContextLimit2
92
- } from "./index-pdecwzrd.js";
93
- import"./index-bhvjj0ys.js";
90
+ } from "./index-57mrqed8.js";
91
+ import"./index-kq57tdf0.js";
94
92
  import"./index-mfkzp7qj.js";
95
93
  import {
96
94
  CANONICAL_DREAM_TASKS,
@@ -114,12 +112,13 @@ import {
114
112
  openDatabaseAsync,
115
113
  isDatabasePersisted,
116
114
  getDatabasePersistenceError
117
- } from "./index-q7h7csab.js";
115
+ } from "./index-s4j7t92z.js";
118
116
  import {
117
+ sameProjectDirectory,
119
118
  setHomeProjectPermission,
120
119
  resolveProjectIdentityForSession,
121
120
  scheduleAfterBootQuiet
122
- } from "./index-knh4y330.js";
121
+ } from "./index-pxwp2hjk.js";
123
122
  import {
124
123
  markHostUnservedRow,
125
124
  DreamTokenBudgetExceeded,
@@ -135,47 +134,50 @@ import {
135
134
  cleanUserText2,
136
135
  readRawSessionMessageIdOrdinalsForRange2,
137
136
  readRawSessionMessageOrdinalById2
138
- } from "./index-bdckkfw6.js";
137
+ } from "./index-2jgwttpt.js";
139
138
  import {
140
139
  hasMeaningfulUserText2,
141
140
  preloadTokenizer,
142
141
  estimateTokens
143
- } from "./index-1qb0z7wa.js";
144
- import"./index-72nhv486.js";
142
+ } from "./index-qx53vezw.js";
143
+ import"./index-vkbqdnkj.js";
145
144
  import {
146
145
  withSqliteTransformPass2,
147
146
  withoutSqliteTransformPass2,
148
147
  isTransientSqliteError2,
149
148
  withAsyncPrivilegedWriter2
150
149
  } from "./index-kb9nn0a0.js";
151
- import"./index-fbv1dn35.js";
150
+ import"./index-gzcmtmar.js";
152
151
  import {
153
152
  deleteChunkEmbedBackoffForSession
154
- } from "./index-pg50n748.js";
153
+ } from "./index-b7mv1jx3.js";
155
154
  import {
156
155
  advanceSessionActivity,
157
156
  backfillSessionActivity
158
- } from "./index-14cjxt20.js";
159
- import"./index-db7zwa3v.js";
157
+ } from "./index-hj2q50k0.js";
158
+ import"./index-1bt88epp.js";
160
159
  import"./index-1zx87sdm.js";
161
160
  import {
162
161
  isDroppedToolOutput,
163
162
  evaluateChannel2,
164
163
  reclaimableToolOutputCount,
165
164
  buildChannel2Reminder
166
- } from "./index-k9nnwad5.js";
167
- import"./index-dhwzyd54.js";
165
+ } from "./index-nydv6g8r.js";
166
+ import"./index-h5zfkjyk.js";
168
167
  import"./index-58e3y90n.js";
169
- import"./index-ty64eqcn.js";
168
+ import"./index-9qjqq45k.js";
170
169
  import {
171
170
  getCurrentToolSetHash,
172
171
  recordToolDefinition
173
- } from "./index-0qhce371.js";
172
+ } from "./index-h2wc01qk.js";
174
173
  import"./index-fr0wbhdn.js";
175
- import"./index-7mx8v0pw.js";
174
+ import"./index-nm6a8xpd.js";
176
175
  import"./index-fb3zxn06.js";
177
- import"./index-c43kr12f.js";
178
- import"./index-cb7emxgj.js";
176
+ import"./index-kp5qe690.js";
177
+ import {
178
+ renderUserFacingFailure,
179
+ userFacingFailureCode
180
+ } from "./index-kmpvemph.js";
179
181
  import {
180
182
  runSessionProjectBackfill,
181
183
  createLiveSessionState,
@@ -221,8 +223,9 @@ import {
221
223
  createCtxReduceTools,
222
224
  createCtxSearchTools,
223
225
  applyJsonSchemaParameterDescriptions,
224
- MagicContextRpcServer
225
- } from "./index-0an7742d.js";
226
+ MagicContextRpcServer,
227
+ subagentTemperature
228
+ } from "./index-h2py7207.js";
226
229
  import {
227
230
  createTagger,
228
231
  setCtxReduceRegisteredGlobally,
@@ -230,28 +233,28 @@ import {
230
233
  EmergencyFailClosedError,
231
234
  DegradedPassRefusalError,
232
235
  isSyntheticHeadMessage2
233
- } from "./index-f0h6xwqm.js";
236
+ } from "./index-1g30axtz.js";
234
237
  import"./index-qt1qqasc.js";
235
238
  import"./index-4dhv7mqz.js";
236
- import"./index-5zygecde.js";
239
+ import"./index-peshmj6h.js";
237
240
  import"./index-7jzrrxap.js";
238
241
  import {
239
242
  pushNotification2,
240
243
  isTuiConnected2
241
244
  } from "./index-x8a7jmkh.js";
242
- import"./index-jcbd3znx.js";
243
- import"./index-yq8n9qcb.js";
244
- import"./index-mmyh6d8f.js";
245
+ import"./index-tqf7yg27.js";
246
+ import"./index-9rt53q79.js";
247
+ import"./index-ha87j7a8.js";
248
+ import"./index-ezmszwbd.js";
245
249
  import"./index-0w56v4fm.js";
246
250
  import {
247
251
  detectConflicts
248
- } from "./index-eeezr5zz.js";
249
- import"./index-q2tqeqde.js";
252
+ } from "./index-z1tjp257.js";
250
253
  import"./index-fmsr7v69.js";
251
254
  import {
252
255
  getErrorMessage
253
256
  } from "./index-y8v6yerm.js";
254
- import"./index-2y0s2hep.js";
257
+ import"./index-4mjhqadz.js";
255
258
 
256
259
  // src/hooks/magic-context/history-boundary-repair.ts
257
260
  function readBaseline(db, sessionId) {
@@ -2213,7 +2216,7 @@ function createNativeHiddenChildren(host, removeSession, options) {
2213
2216
  return;
2214
2217
  }
2215
2218
  const directory = stored.location?.directory;
2216
- if (options.directory !== undefined && directory !== undefined && directory !== options.directory) {
2219
+ if (options.directory !== undefined && directory !== undefined && !sameProjectDirectory(directory, options.directory)) {
2217
2220
  throw new HiddenCompletionRefusal("hidden_prompt_unrecognized", `hidden child ${sessionID} is bound to ${directory}, not to this instance's ${options.directory}`, true);
2218
2221
  }
2219
2222
  if (stored.parentID === parentID || parentDroppedNoted)
@@ -2684,6 +2687,26 @@ async function createV2HiddenCompletionExecutor(host, options) {
2684
2687
  throw new Error("Hidden completion prompt aborted");
2685
2688
  }
2686
2689
  const requested = await validateVariant(requestModel(request, run.child.model));
2690
+ if (run.identity.kind !== "dreamer-task" && request.body.temperature === undefined) {
2691
+ const configured = options.historianTemperature?.();
2692
+ if (typeof configured === "number" && Number.isFinite(configured))
2693
+ request = { ...request, body: { ...request.body, temperature: configured } };
2694
+ }
2695
+ if (typeof request.body.temperature === "number") {
2696
+ let metadata;
2697
+ try {
2698
+ const listed = await options.modelCatalog?.();
2699
+ const rows = Array.isArray(listed) ? listed : listed?.data;
2700
+ metadata = rows?.find((row) => row?.providerID === requested.providerID && (row?.id === requested.modelID || row?.modelID === requested.modelID));
2701
+ } catch {}
2702
+ const temperature = subagentTemperature(modelKey(requested), metadata, request.body.temperature, (message) => note(message));
2703
+ const body = { ...request.body };
2704
+ if (temperature === undefined)
2705
+ delete body.temperature;
2706
+ else
2707
+ body.temperature = temperature;
2708
+ request = { ...request, body };
2709
+ }
2687
2710
  if (run.retired) {
2688
2711
  run.child = await lifecycle.create(run.identity, run.role, requested);
2689
2712
  run.failed = false;
@@ -3281,7 +3304,7 @@ async function sessionInThisLocation(context, sessionID) {
3281
3304
  } catch {
3282
3305
  return false;
3283
3306
  }
3284
- return location?.directory === context.location.directory && (location.workspaceID ?? "") === (context.location.workspaceID ?? "");
3307
+ return location?.directory !== undefined && sameProjectDirectory(location.directory, context.location.directory) && (location.workspaceID ?? "") === (context.location.workspaceID ?? "");
3285
3308
  }
3286
3309
  function startDreamTrigger(context, args) {
3287
3310
  const controller = new AbortController;
@@ -3348,13 +3371,28 @@ function startDreamTrigger(context, args) {
3348
3371
  }
3349
3372
 
3350
3373
  // src/v2/hooks/generate.ts
3374
+ function generateReplayAnchor(messages) {
3375
+ let index = messages.length - 1;
3376
+ while (index >= 0 && !messages[index]?.id)
3377
+ index--;
3378
+ if (index < 0)
3379
+ return;
3380
+ const id = messages.at(index)?.id;
3381
+ if (!id)
3382
+ return;
3383
+ return { id, tail: clonePreservingInstances(messages.slice(index + 1)) };
3384
+ }
3385
+
3351
3386
  class V2GenerateReplay {
3352
3387
  prefixes = new Map;
3353
3388
  capture(draft, anchor) {
3354
- if (!anchor)
3389
+ if (!anchor) {
3390
+ this.prefixes.delete(draft.sessionID);
3391
+ sessionLog2(draft.sessionID, "generate replay capture skipped: no-anchor");
3355
3392
  return;
3393
+ }
3356
3394
  this.prefixes.set(draft.sessionID, {
3357
- anchor,
3395
+ anchor: clonePreservingInstances(anchor),
3358
3396
  model: `${draft.model.providerID}/${draft.model.id}`,
3359
3397
  agent: draft.agent,
3360
3398
  system: clonePreservingInstances(draft.system),
@@ -3367,12 +3405,23 @@ class V2GenerateReplay {
3367
3405
  }
3368
3406
  apply(draft) {
3369
3407
  const prefix = this.prefixes.get(draft.sessionID);
3370
- if (!prefix || prefix.model !== `${draft.model.providerID}/${draft.model.id}` || prefix.agent !== draft.agent)
3408
+ const skip = (reason) => {
3409
+ sessionLog2(draft.sessionID, `generate replay apply skipped: ${reason}`);
3371
3410
  return false;
3372
- const index = draft.messages.findIndex((message) => message.id === prefix.anchor);
3411
+ };
3412
+ if (!prefix)
3413
+ return skip("no-prefix");
3414
+ if (prefix.model !== `${draft.model.providerID}/${draft.model.id}`)
3415
+ return skip("model-mismatch");
3416
+ if (prefix.agent !== draft.agent)
3417
+ return skip("agent-mismatch");
3418
+ const index = draft.messages.findIndex((message) => message.id === prefix.anchor.id);
3373
3419
  if (index < 0)
3374
- return false;
3375
- const tail = draft.messages.slice(index + 1);
3420
+ return skip("anchor-not-found");
3421
+ const end = index + 1 + prefix.anchor.tail.length;
3422
+ if (JSON.stringify(draft.messages.slice(index + 1, end)) !== JSON.stringify(prefix.anchor.tail))
3423
+ return skip("anchor-tail-mismatch");
3424
+ const tail = draft.messages.slice(end);
3376
3425
  draft.messages.splice(0, draft.messages.length, ...clonePreservingInstances(prefix.messages), ...tail);
3377
3426
  draft.system.splice(0, draft.system.length, ...clonePreservingInstances(prefix.system));
3378
3427
  draft.tools = clonePreservingInstances(prefix.tools);
@@ -3948,7 +3997,7 @@ async function registerTools(context, db, config, rustToolBackends, isInternalCh
3948
3997
  smartNotesEnabled: config.smart_notes.enabled,
3949
3998
  ...rustToolBackends ? { rustToolBackends } : {}
3950
3999
  }),
3951
- ...createCtxSearchTools(project),
4000
+ ...createCtxSearchTools({ ...project, rerankConnectionFile: config.subc?.connection_file }),
3952
4001
  ...config.memory.enabled ? {
3953
4002
  ...createCtxMemoryTools({
3954
4003
  ...project,
@@ -4419,6 +4468,7 @@ async function registerContext(context) {
4419
4468
  keepSubagents: config.keep_subagents === true,
4420
4469
  ensureAgent: () => hiddenAgentsReady ??= context.agent.reload(),
4421
4470
  modelCatalog: () => Promise.resolve(context.model.list()),
4471
+ historianTemperature: () => config.historian?.temperature,
4422
4472
  openReader: openStoreReader
4423
4473
  });
4424
4474
  };
@@ -4729,6 +4779,7 @@ async function registerContext(context) {
4729
4779
  }
4730
4780
  if (event.type === "session.deleted") {
4731
4781
  deletedSessions.add(sessionID);
4782
+ transform?.clearSessionLogState(sessionID);
4732
4783
  if (db) {
4733
4784
  markSessionCleanupPending(db, sessionID);
4734
4785
  clearSession(db, sessionID);
@@ -5262,10 +5313,12 @@ ${baseline}
5262
5313
  }
5263
5314
  };
5264
5315
  await context.session.hook("context", (draft) => withSqliteTransformPass2(async () => {
5265
- const anchor = draft.messages.at(-1)?.id;
5316
+ const anchor = generateReplayAnchor(draft.messages);
5266
5317
  await runManagedContext(draft);
5267
- if (!compactionOff && draft.messages.some((message) => message.id === HEAD_IDS[0] || message.content.some((part) => typeof part.text === "string" && part.text.includes("<session-history>"))))
5318
+ if (!compactionOff)
5268
5319
  generateReplay.capture(draft, anchor);
5320
+ else
5321
+ sessionLog2(draft.sessionID, "generate replay capture skipped: compaction-disabled");
5269
5322
  }));
5270
5323
  await context.session.hook("generate", async (draft) => {
5271
5324
  if (!compactionOff && !deletedSessions.has(draft.sessionID))
@@ -5,9 +5,9 @@ import {
5
5
  resolveHistorianProducerLimits2,
6
6
  resolveHistorianContextLimit2,
7
7
  producerSourceLocalBudget2
8
- } from "./index-pdecwzrd.js";
8
+ } from "./index-57mrqed8.js";
9
9
  import"./index-1zx87sdm.js";
10
- import"./index-8j7gqj40.js";
10
+ import"./index-nsjyysj0.js";
11
11
  import"./index-0sahzkwr.js";
12
12
  import"./index-pavzsdc6.js";
13
13
  export {
@@ -0,0 +1,21 @@
1
+ import {
2
+ ensureMemoryEmbeddings2
3
+ } from "./index-peshmj6h.js";
4
+ import"./index-kp5qe690.js";
5
+ import"./index-b7mv1jx3.js";
6
+ import"./index-4dhv7mqz.js";
7
+ import"./index-qt1qqasc.js";
8
+ import"./index-kq57tdf0.js";
9
+ import"./index-vkbqdnkj.js";
10
+ import"./index-pxwp2hjk.js";
11
+ import"./index-gzcmtmar.js";
12
+ import"./index-mfkzp7qj.js";
13
+ import"./index-qx53vezw.js";
14
+ import"./index-4mjhqadz.js";
15
+ import"./index-kb9nn0a0.js";
16
+ import"./index-nsjyysj0.js";
17
+ import"./index-0sahzkwr.js";
18
+ import"./index-pavzsdc6.js";
19
+ export {
20
+ ensureMemoryEmbeddings2 as ensureMemoryEmbeddings
21
+ };
@@ -4,15 +4,15 @@ import {
4
4
  import"./index-0sahzkwr.js";
5
5
  import {
6
6
  log2
7
- } from "./index-8j7gqj40.js";
7
+ } from "./index-nsjyysj0.js";
8
8
  import {
9
9
  resolveLocalEmbeddingWorkerRuntime,
10
10
  getLocalEmbeddingNativeMemoryStats,
11
11
  LocalEmbeddingProvider
12
- } from "./index-bhvjj0ys.js";
12
+ } from "./index-kq57tdf0.js";
13
13
  import"./index-mfkzp7qj.js";
14
- import"./index-72nhv486.js";
15
- import"./index-1qb0z7wa.js";
14
+ import"./index-vkbqdnkj.js";
15
+ import"./index-qx53vezw.js";
16
16
  import {
17
17
  setStoragePrivatePermissionEnforcement
18
18
  } from "./index-1bc61ans.js";
@@ -27,6 +27,8 @@ export interface SearchGitCommitsOptions {
27
27
  queryModelId?: string | null;
28
28
  from?: number;
29
29
  to?: number;
30
+ /** Capture independent lexical/vector rankings without repeating either retrieval pass. */
31
+ captureLanes?: (fts: GitCommitSearchHit[], vector: GitCommitSearchHit[]) => void;
30
32
  }
31
33
  /**
32
34
  * Return top-K commits matching `query` for `projectPath`, combining FTS
@@ -1 +1 @@
1
- {"version":3,"file":"search-git-commits.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/git-commits/search-git-commits.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAkC,MAAM,wBAAwB,CAAC;AAKvF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAqJ7D,MAAM,WAAW,kBAAkB;IAC/B,MAAM,EAAE,eAAe,CAAC;IACxB,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,UAAU,GAAG,KAAK,GAAG,QAAQ,CAAC;CAC5C;AAED,MAAM,WAAW,uBAAuB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;wDACoD;IACpD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,6EAA6E;IAC7E,cAAc,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IACrC,6GAA6G;IAC7G,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;CACf;AAOD;;;GAGG;AACH,wBAAgB,oBAAoB,CAChC,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,uBAAuB,GACjC,kBAAkB,EAAE,CA0GtB"}
1
+ {"version":3,"file":"search-git-commits.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/git-commits/search-git-commits.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAkC,MAAM,wBAAwB,CAAC;AAKvF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAqJ7D,MAAM,WAAW,kBAAkB;IAC/B,MAAM,EAAE,eAAe,CAAC;IACxB,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,UAAU,GAAG,KAAK,GAAG,QAAQ,CAAC;CAC5C;AAED,MAAM,WAAW,uBAAuB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;wDACoD;IACpD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,6EAA6E;IAC7E,cAAc,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IACrC,6GAA6G;IAC7G,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,2FAA2F;IAC3F,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,KAAK,IAAI,CAAC;CACpF;AAOD;;;GAGG;AACH,wBAAgB,oBAAoB,CAChC,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,uBAAuB,GACjC,kBAAkB,EAAE,CAmItB"}
@@ -1 +1 @@
1
- {"version":3,"file":"message-index.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/message-index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AAE7E,OAAO,EACH,KAAK,QAAQ,EAIhB,MAAM,qBAAqB,CAAC;AA8B7B,MAAM,WAAW,+BAA+B;IAC5C,MAAM,EAAE,OAAO,GAAG,UAAU,GAAG,oBAAoB,GAAG,aAAa,CAAC;IACpE,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,gGAAgG;IAChG,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gCAAgC;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,eAAO,MAAM,uCAAuC,MAAM,CAAC;AAC3D,eAAO,MAAM,oCAAoC,QAAsB,CAAC;AACxE,eAAO,MAAM,wCAAwC,QAAiB,CAAC;AACvE,eAAO,MAAM,6CAA6C,QAAsB,CAAC;AAkBjF,wGAAwG;AACxG,eAAO,MAAM,2BAA2B,QAAY,CAAC;AAYrD,eAAO,MAAM,mBAAmB,GAAI,WAAW,MAAM,EAAE,WAAW,MAAM,WACN,CAAC;AACnE,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAYjG;AAwPD;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,UAAU,GAAG,kBAAkB,CAW5E;AAMD,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CASzE;AAED,wBAAgB,2BAA2B,CACvC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,UAAU,GACpB,OAAO,CAGT;AA0DD,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAG7E;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACvC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GAAG,IAAI,GAC1B,MAAM,CAGR;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKjF;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CASjG;AAuBD,wBAAgB,yCAAyC,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAIjG;AAED,wBAAgB,+BAA+B,CAC3C,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,GACvB,OAAO,CAGT;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAW/F;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAQvF;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAO1E;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,CAsB1E;AA0FD,wBAAgB,kBAAkB,CAC9B,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,UAAU,EACnB,YAAY,GAAE,MAAM,OAAoB,EACxC,cAAc,CAAC,EAAE,kBAAkB,GACpC,OAAO,CA8CT;AAED,wBAAgB,yBAAyB,CACrC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,UAAU,EAAE,EACtB,mBAAmB,EAAE,MAAM,EAC3B,cAAc,GAAE,MAAwB,GACzC,MAAM,CAER;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACpC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,SAAS,kBAAkB,EAAE,EACtC,cAAc,EAAE,MAAM,GACvB,MAAM,CAER;AAuHD,wBAAgB,qBAAqB,CACjC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,UAAU,EAAE,GAClD,IAAI,CAmBN;AAiND,wBAAgB,mCAAmC,CAC/C,EAAE,EAAE,QAAQ,EACZ,sBAAsB,EAAE,MAAM,QAAQ,GAAG,IAAI,EAC7C,OAAO,GAAE,gCAAqC,GAC/C,+BAA+B,CAMjC"}
1
+ {"version":3,"file":"message-index.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/message-index.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export declare const PI_CONTENT_DECISION_LIMIT = 4096;
6
6
  * repair, so this bounds a rare diagnostic without evicting replay choices.
7
7
  */
8
8
  export declare const PI_IDENTITY_RECURRENCE_ALLOWANCE = 64;
9
- export type PiContentDecisionKind = "reminder-strip" | "seam-temporal-strip" | "tag-identity-repair-once" | "tag-identity-repair-pending" | "tag-identity-recurring";
9
+ export type PiContentDecisionKind = "reminder-strip" | "seam-temporal-strip" | "tag-identity-repair-once" | "tag-identity-repair-pending" | "tag-identity-rebuild-failed" | "tag-identity-recurring";
10
10
  export declare function encodePiContentDecision(kind: PiContentDecisionKind, messageId: string): string;
11
11
  export declare function decodePiContentDecision(value: string): [PiContentDecisionKind, string] | null;
12
12
  export declare function getPiContentDecisions(db: Database, sessionId: string): Set<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"pi-content-decisions.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/pi-content-decisions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAIpD,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,KAAK,CAAC;AACnD,MAAM,MAAM,qBAAqB,GAC3B,gBAAgB,GAChB,qBAAqB,GACrB,0BAA0B,GAC1B,6BAA6B,GAC7B,wBAAwB,CAAC;AAE/B,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAE9F;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,IAAI,CAoB7F;AAWD,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAWlF;AAED,kHAAkH;AAClH,wBAAgB,uBAAuB,CACnC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,qBAAqB,EAC3B,SAAS,EAAE,MAAM,GAClB,OAAO,CA0DT"}
1
+ {"version":3,"file":"pi-content-decisions.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/pi-content-decisions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAIpD,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,KAAK,CAAC;AACnD,MAAM,MAAM,qBAAqB,GAC3B,gBAAgB,GAChB,qBAAqB,GACrB,0BAA0B,GAC1B,6BAA6B,GAC7B,6BAA6B,GAC7B,wBAAwB,CAAC;AAE/B,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAE9F;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,IAAI,CAqB7F;AAWD,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAWlF;AAED,kHAAkH;AAClH,wBAAgB,uBAAuB,CACnC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,qBAAqB,EAC3B,SAAS,EAAE,MAAM,GAClB,OAAO,CA2DT"}
@@ -0,0 +1,35 @@
1
+ import type { Database } from "../../shared/sqlite";
2
+ import type { SynapseClientLike } from "./memory/embedding-synapse";
3
+ import type { UnifiedSearchResult } from "./search";
4
+ export declare const RERANK_MODEL = "gte-reranker-modernbert-base-f32";
5
+ export declare const RERANK_LANE_LIMIT = 25;
6
+ /** Rerank questions and multi-word descriptions; prefer the existing ranking for short symbol-heavy lookups. */
7
+ export declare function isProseQuery(query: string): boolean;
8
+ export type SearchLanes = Record<"memory_fts" | "memory_vector" | "primer_fts" | "primer_vector" | "message_fts" | "chunk_vector" | "git_fts" | "git_vector" | "notes", UnifiedSearchResult[]>;
9
+ export declare function emptySearchLanes(): SearchLanes;
10
+ export declare function searchResultKey(hit: UnifiedSearchResult): string;
11
+ /** Equal-weight RRF; messages covered by a retrieved compartment vote for it. */
12
+ export declare function fuseSearchLanes(lanes: SearchLanes): UnifiedSearchResult[];
13
+ export declare function truncateUtf8(text: string, bytes: number): string;
14
+ export declare function candidateText(location: string, title: string, body: string): string;
15
+ export interface PinnedReranker {
16
+ fingerprint: string;
17
+ tableEpoch: number;
18
+ }
19
+ export declare function pinReranker(value: unknown): PinnedReranker;
20
+ export declare function logRerankFallback(reason: string): void;
21
+ export interface RerankSession {
22
+ client: SynapseClientLike;
23
+ lane: PinnedReranker;
24
+ identity: {
25
+ project_root: string;
26
+ harness: string;
27
+ session: string;
28
+ };
29
+ }
30
+ /** Discover the certified Synapse model before collecting larger candidate pools, avoiding extra retrieval when the service is absent. */
31
+ export declare function prepareReranker(projectRoot: string, sessionId: string, connectionFile?: string, injectedClient?: SynapseClientLike | null): Promise<RerankSession | null>;
32
+ /** A failure returns the original array, never the poorer fused ranking. */
33
+ export declare function rerankSearchResults(session: RerankSession, query: string, baseline: UnifiedSearchResult[], pool: UnifiedSearchResult[], texts: string[], limit: number): Promise<UnifiedSearchResult[]>;
34
+ export declare function candidateTexts(db: Database, sessionId: string, projectPath: string, pool: UnifiedSearchResult[]): string[];
35
+ //# sourceMappingURL=search-rerank.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-rerank.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/search-rerank.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEpD,eAAO,MAAM,YAAY,qCAAqC,CAAC;AAC/D,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAGpC,gHAAgH;AAChH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAgBnD;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,CAC1B,YAAY,GACZ,eAAe,GACf,YAAY,GACZ,eAAe,GACf,aAAa,GACb,cAAc,GACd,SAAS,GACT,YAAY,GACZ,OAAO,EACT,mBAAmB,EAAE,CACxB,CAAC;AACF,wBAAgB,gBAAgB,IAAI,WAAW,CAY9C;AACD,wBAAgB,eAAe,CAAC,GAAG,EAAE,mBAAmB,GAAG,MAAM,CAehE;AAED,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,KAAK,EAAE,WAAW,GAAG,mBAAmB,EAAE,CA2BzE;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAKhE;AACD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAGnF;AAED,MAAM,WAAW,cAAc;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACtB;AAiBD,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc,CAmB1D;AAGD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAItD;AAmCD,MAAM,WAAW,aAAa;IAC1B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACxE;AACD,0IAA0I;AAC1I,wBAAsB,eAAe,CACjC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,cAAc,CAAC,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,iBAAiB,GAAG,IAAI,GAC1C,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAyB/B;AAED,4EAA4E;AAC5E,wBAAsB,mBAAmB,CACrC,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,mBAAmB,EAAE,EAC/B,IAAI,EAAE,mBAAmB,EAAE,EAC3B,KAAK,EAAE,MAAM,EAAE,EACf,KAAK,EAAE,MAAM,GACd,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAmDhC;AAED,wBAAgB,cAAc,CAC1B,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,mBAAmB,EAAE,GAC5B,MAAM,EAAE,CA2EV"}
@@ -1,4 +1,6 @@
1
1
  import type { Database } from "../../shared/sqlite";
2
+ import type { SynapseClientLike } from "./memory/embedding-synapse";
3
+ import { type SearchLanes } from "./search-rerank";
2
4
  import { type Note } from "./storage-notes";
3
5
  /**
4
6
  * Upper bound on the results one search returns. The limit comes from the
@@ -22,6 +24,13 @@ export interface UnifiedSearchDiagnostics {
22
24
  export declare function createUnifiedSearchDiagnostics(): UnifiedSearchDiagnostics;
23
25
  export interface UnifiedSearchOptions {
24
26
  limit?: number;
27
+ /** Explicit searches alone may rerank; automatic hints never enter this path. */
28
+ rerank?: boolean;
29
+ rerankConnectionFile?: string;
30
+ /** Optional service for offline comparisons and protocol tests. Null explicitly represents an unavailable Synapse service. */
31
+ rerankClient?: SynapseClientLike | null;
32
+ /** Optional offline measurement sink, populated without repeating the original retrieval passes. */
33
+ captureRerankLanes?: (lanes: SearchLanes) => void;
25
34
  /** Earliest persisted source timestamp in epoch milliseconds (inclusive). */
26
35
  from?: number;
27
36
  /** Latest persisted source timestamp in epoch milliseconds (inclusive). */
@@ -95,6 +104,7 @@ export interface MessageHistorySearchRequest {
95
104
  sessionId: string;
96
105
  query: string;
97
106
  limit: number;
107
+ captureLimit?: number;
98
108
  maxOrdinal?: number;
99
109
  probes: string[];
100
110
  relaxedRecall?: boolean;
@@ -107,6 +117,7 @@ export interface MessageHistorySearchRequest {
107
117
  }
108
118
  export interface MessageHistorySearchOutcome {
109
119
  results: MessageSearchResult[];
120
+ laneResults?: MessageSearchResult[];
110
121
  suppressedLiveMessageMatches: number;
111
122
  }
112
123
  /** The message-history lane of {@link unifiedSearch}, callable from a worker. */
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/search.ts"],"names":[],"mappings":"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"}
@@ -52,7 +52,7 @@ export type AppendAutoSearchHintOutcome = {
52
52
  decision: AutoSearchHintDecision;
53
53
  } | {
54
54
  ok: false;
55
- kind: "cas-exhausted";
55
+ kind: "cas-exhausted" | "storage-busy";
56
56
  };
57
57
  export interface PersistedTodoSyntheticAnchor {
58
58
  callId: string;
@@ -317,8 +317,19 @@ export declare function appendNoteNudgeAnchor(db: Database, sessionId: string, m
317
317
  export declare function deliverNoteNudgeAtomic(db: Database, sessionId: string, messageId: string, text: string): NoteNudgeDeliveryOutcome;
318
318
  export declare function appendAutoSearchHintDecision(db: Database, sessionId: string, entry: AutoSearchHintDecision): AppendAutoSearchHintOutcome;
319
319
  export declare function pruneNoteNudgeAnchors(db: Database, sessionId: string, visibleMessageIds: Set<string>): number;
320
- export declare function pruneAutoSearchHintDecisions(db: Database, sessionId: string, visibleMessageIds: Set<string>): number;
321
320
  export declare function removeNoteNudgeAnchorByMessageId(db: Database, sessionId: string, messageId: string): boolean;
321
+ /**
322
+ * Discard saved search hints and no-hint omissions only for message IDs the caller
323
+ * proved were removed by a summary boundary or deleted by the host. An ID absent
324
+ * from today's branch may reappear and still needs its record to restore cached
325
+ * bytes, so callers must not pass the complement of today's visible IDs.
326
+ */
327
+ export declare function pruneAutoSearchHintDecisions(db: Database, sessionId: string, retiredMessageIds: ReadonlySet<string>): number;
328
+ export declare const AUTO_SEARCH_DECISION_SOFT_LIMIT = 2000;
329
+ /** Record IDs removed under a history summary in memory, without a SQLite write on replay. */
330
+ export declare function queueAutoSearchHintDecisionRetirement(db: Database, sessionId: string, messageIds: ReadonlySet<string>): void;
331
+ /** Flush only when the host permits a prefix rebuild (busting/HARD), not cached-prefix replay. */
332
+ export declare function flushAutoSearchHintDecisionRetirement(db: Database, sessionId: string, visibleMessageIds: ReadonlySet<string>): number;
322
333
  export declare function removeAutoSearchHintDecisionByMessageId(db: Database, sessionId: string, messageId: string): boolean;
323
334
  export declare function getPersistedTodoPermissionDenied(db: Database, sessionId: string): boolean | null;
324
335
  export declare function setPersistedTodoPermissionDenied(db: Database, sessionId: string, denied: boolean): void;