@cortexkit/opencode-magic-context 0.42.6 → 0.43.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 (479) hide show
  1. package/README.md +4 -5
  2. package/dist/agents/dreamer.d.ts +7 -9
  3. package/dist/agents/dreamer.d.ts.map +1 -1
  4. package/dist/agents/hidden-agent-registrations.d.ts.map +1 -1
  5. package/dist/agents/magic-context-prompt.d.ts.map +1 -1
  6. package/dist/config/index.d.ts +1 -1
  7. package/dist/config/index.d.ts.map +1 -1
  8. package/dist/config/live-run-config.d.ts +12 -0
  9. package/dist/config/live-run-config.d.ts.map +1 -0
  10. package/dist/config/live-snapshot.d.ts +32 -0
  11. package/dist/config/live-snapshot.d.ts.map +1 -0
  12. package/dist/config/schema/magic-context.d.ts +12 -2
  13. package/dist/config/schema/magic-context.d.ts.map +1 -1
  14. package/dist/{conflict-warning-hook-aktepwpz.js → conflict-warning-hook-t2vb0wnx.js} +3 -3
  15. package/dist/{derive-budgets-v1fkhjjr.js → derive-budgets-0sg5vp61.js} +5 -2
  16. package/dist/features/builtin-commands/commands.d.ts +0 -4
  17. package/dist/features/builtin-commands/commands.d.ts.map +1 -1
  18. package/dist/features/magic-context/compaction-marker.d.ts +6 -0
  19. package/dist/features/magic-context/compaction-marker.d.ts.map +1 -1
  20. package/dist/features/magic-context/compartment-chunk-embedding.d.ts +4 -1
  21. package/dist/features/magic-context/compartment-chunk-embedding.d.ts.map +1 -1
  22. package/dist/features/magic-context/compartment-lease.d.ts +8 -0
  23. package/dist/features/magic-context/compartment-lease.d.ts.map +1 -1
  24. package/dist/features/magic-context/compartment-storage.d.ts +21 -0
  25. package/dist/features/magic-context/compartment-storage.d.ts.map +1 -1
  26. package/dist/features/magic-context/context-authority.d.ts +9 -2
  27. package/dist/features/magic-context/context-authority.d.ts.map +1 -1
  28. package/dist/features/magic-context/dreamer/classify.d.ts.map +1 -1
  29. package/dist/features/magic-context/dreamer/docs-proposals.d.ts +23 -0
  30. package/dist/features/magic-context/dreamer/docs-proposals.d.ts.map +1 -0
  31. package/dist/features/magic-context/dreamer/evaluate-smart-notes.d.ts +5 -1
  32. package/dist/features/magic-context/dreamer/evaluate-smart-notes.d.ts.map +1 -1
  33. package/dist/features/magic-context/dreamer/hidden-single-shot.d.ts +48 -0
  34. package/dist/features/magic-context/dreamer/hidden-single-shot.d.ts.map +1 -0
  35. package/dist/features/magic-context/dreamer/manual-summary.d.ts +7 -0
  36. package/dist/features/magic-context/dreamer/manual-summary.d.ts.map +1 -0
  37. package/dist/features/magic-context/dreamer/map-memories.d.ts.map +1 -1
  38. package/dist/features/magic-context/dreamer/promote-primers.d.ts +8 -1
  39. package/dist/features/magic-context/dreamer/promote-primers.d.ts.map +1 -1
  40. package/dist/features/magic-context/dreamer/refresh-primers.d.ts.map +1 -1
  41. package/dist/features/magic-context/dreamer/retrospective-orphan-sweep.d.ts +5 -2
  42. package/dist/features/magic-context/dreamer/retrospective-orphan-sweep.d.ts.map +1 -1
  43. package/dist/features/magic-context/dreamer/retrospective-raw-provider.d.ts +22 -13
  44. package/dist/features/magic-context/dreamer/retrospective-raw-provider.d.ts.map +1 -1
  45. package/dist/features/magic-context/dreamer/storage-task-schedule.d.ts +9 -0
  46. package/dist/features/magic-context/dreamer/storage-task-schedule.d.ts.map +1 -1
  47. package/dist/features/magic-context/dreamer/task-config.d.ts.map +1 -1
  48. package/dist/features/magic-context/dreamer/task-executor.d.ts +3 -0
  49. package/dist/features/magic-context/dreamer/task-executor.d.ts.map +1 -1
  50. package/dist/features/magic-context/dreamer/task-prompts.d.ts +7 -4
  51. package/dist/features/magic-context/dreamer/task-prompts.d.ts.map +1 -1
  52. package/dist/features/magic-context/dreamer/task-registry.d.ts +53 -2
  53. package/dist/features/magic-context/dreamer/task-registry.d.ts.map +1 -1
  54. package/dist/features/magic-context/dreamer/task-scheduler.d.ts +3 -0
  55. package/dist/features/magic-context/dreamer/task-scheduler.d.ts.map +1 -1
  56. package/dist/features/magic-context/dreamer/tick-failure.d.ts +38 -0
  57. package/dist/features/magic-context/dreamer/tick-failure.d.ts.map +1 -0
  58. package/dist/features/magic-context/dreamer/verify.d.ts.map +1 -1
  59. package/dist/features/magic-context/git-commits/search-git-commits.d.ts +2 -0
  60. package/dist/features/magic-context/git-commits/search-git-commits.d.ts.map +1 -1
  61. package/dist/features/magic-context/memory/embedding-identity.d.ts +1 -0
  62. package/dist/features/magic-context/memory/embedding-identity.d.ts.map +1 -1
  63. package/dist/features/magic-context/memory/embedding-local.d.ts.map +1 -1
  64. package/dist/features/magic-context/memory/memory-diagnostics.d.ts +6 -0
  65. package/dist/features/magic-context/memory/memory-diagnostics.d.ts.map +1 -0
  66. package/dist/features/magic-context/memory/memory-selection.d.ts +12 -0
  67. package/dist/features/magic-context/memory/memory-selection.d.ts.map +1 -0
  68. package/dist/features/magic-context/memory/memory-visibility.d.ts +46 -0
  69. package/dist/features/magic-context/memory/memory-visibility.d.ts.map +1 -0
  70. package/dist/features/magic-context/memory/mirror-reembed.d.ts +22 -0
  71. package/dist/features/magic-context/memory/mirror-reembed.d.ts.map +1 -0
  72. package/dist/features/magic-context/memory/project-identity.d.ts +9 -0
  73. package/dist/features/magic-context/memory/project-identity.d.ts.map +1 -1
  74. package/dist/features/magic-context/memory/storage-memory-fts.d.ts +6 -2
  75. package/dist/features/magic-context/memory/storage-memory-fts.d.ts.map +1 -1
  76. package/dist/features/magic-context/memory/storage-memory.d.ts.map +1 -1
  77. package/dist/features/magic-context/memory/transformers-remote-host.d.ts +6 -0
  78. package/dist/features/magic-context/memory/transformers-remote-host.d.ts.map +1 -0
  79. package/dist/features/magic-context/memory/transformers-web-entry.d.ts.map +1 -1
  80. package/dist/features/magic-context/message-fts-rowid-map.d.ts +3 -1
  81. package/dist/features/magic-context/message-fts-rowid-map.d.ts.map +1 -1
  82. package/dist/features/magic-context/message-index-async.d.ts +8 -3
  83. package/dist/features/magic-context/message-index-async.d.ts.map +1 -1
  84. package/dist/features/magic-context/message-index.d.ts +7 -1
  85. package/dist/features/magic-context/message-index.d.ts.map +1 -1
  86. package/dist/features/magic-context/message-time-backfill.d.ts +19 -0
  87. package/dist/features/magic-context/message-time-backfill.d.ts.map +1 -0
  88. package/dist/features/magic-context/migrations.d.ts +10 -6
  89. package/dist/features/magic-context/migrations.d.ts.map +1 -1
  90. package/dist/features/magic-context/mural/compress-cues.d.ts.map +1 -1
  91. package/dist/features/magic-context/mural/storage-mural.d.ts +5 -0
  92. package/dist/features/magic-context/mural/storage-mural.d.ts.map +1 -1
  93. package/dist/features/magic-context/opencode2-relabel.d.ts +132 -0
  94. package/dist/features/magic-context/opencode2-relabel.d.ts.map +1 -0
  95. package/dist/features/magic-context/overflow-detection.d.ts +3 -0
  96. package/dist/features/magic-context/overflow-detection.d.ts.map +1 -1
  97. package/dist/features/magic-context/project-embedding-registry.d.ts.map +1 -1
  98. package/dist/features/magic-context/protection-window.d.ts +1 -1
  99. package/dist/features/magic-context/protection-window.d.ts.map +1 -1
  100. package/dist/features/magic-context/search.d.ts +6 -0
  101. package/dist/features/magic-context/search.d.ts.map +1 -1
  102. package/dist/features/magic-context/session-decision-calibration.d.ts +31 -0
  103. package/dist/features/magic-context/session-decision-calibration.d.ts.map +1 -0
  104. package/dist/features/magic-context/shadow-backfill-state.d.ts +1 -1
  105. package/dist/features/magic-context/shadow-backfill-state.d.ts.map +1 -1
  106. package/dist/features/magic-context/smart-notes/compiler.d.ts +5 -1
  107. package/dist/features/magic-context/smart-notes/compiler.d.ts.map +1 -1
  108. package/dist/features/magic-context/storage-clone.d.ts.map +1 -1
  109. package/dist/features/magic-context/storage-db.d.ts +1 -1
  110. package/dist/features/magic-context/storage-db.d.ts.map +1 -1
  111. package/dist/features/magic-context/storage-historian-runs.d.ts +4 -2
  112. package/dist/features/magic-context/storage-historian-runs.d.ts.map +1 -1
  113. package/dist/features/magic-context/storage-meta-persisted.d.ts +16 -2
  114. package/dist/features/magic-context/storage-meta-persisted.d.ts.map +1 -1
  115. package/dist/features/magic-context/storage-meta-shared.d.ts +1 -1
  116. package/dist/features/magic-context/storage-meta-shared.d.ts.map +1 -1
  117. package/dist/features/magic-context/storage-meta.d.ts +1 -1
  118. package/dist/features/magic-context/storage-meta.d.ts.map +1 -1
  119. package/dist/features/magic-context/storage-notes.d.ts +1 -0
  120. package/dist/features/magic-context/storage-notes.d.ts.map +1 -1
  121. package/dist/features/magic-context/storage-replay-document.d.ts +2 -0
  122. package/dist/features/magic-context/storage-replay-document.d.ts.map +1 -1
  123. package/dist/features/magic-context/storage-subagent-invocations.d.ts +1 -1
  124. package/dist/features/magic-context/storage-subagent-invocations.d.ts.map +1 -1
  125. package/dist/features/magic-context/storage-tags.d.ts +42 -4
  126. package/dist/features/magic-context/storage-tags.d.ts.map +1 -1
  127. package/dist/features/magic-context/storage.d.ts +2 -2
  128. package/dist/features/magic-context/storage.d.ts.map +1 -1
  129. package/dist/features/magic-context/store-generation-rebase.d.ts +95 -0
  130. package/dist/features/magic-context/store-generation-rebase.d.ts.map +1 -0
  131. package/dist/features/magic-context/subagent-token-capture.d.ts +1 -0
  132. package/dist/features/magic-context/subagent-token-capture.d.ts.map +1 -1
  133. package/dist/features/magic-context/tagger.d.ts +2 -0
  134. package/dist/features/magic-context/tagger.d.ts.map +1 -1
  135. package/dist/features/magic-context/tool-definition-tokens.d.ts +1 -0
  136. package/dist/features/magic-context/tool-definition-tokens.d.ts.map +1 -1
  137. package/dist/features/magic-context/tool-owner-backfill.d.ts.map +1 -1
  138. package/dist/features/magic-context/user-memory/review-user-memories.d.ts +5 -1
  139. package/dist/features/magic-context/user-memory/review-user-memories.d.ts.map +1 -1
  140. package/dist/hooks/magic-context/apply-operations.d.ts +10 -1
  141. package/dist/hooks/magic-context/apply-operations.d.ts.map +1 -1
  142. package/dist/hooks/magic-context/cache-busting-signals.d.ts +19 -3
  143. package/dist/hooks/magic-context/cache-busting-signals.d.ts.map +1 -1
  144. package/dist/hooks/magic-context/command-handler.d.ts +5 -4
  145. package/dist/hooks/magic-context/command-handler.d.ts.map +1 -1
  146. package/dist/hooks/magic-context/compaction-marker-manager.d.ts.map +1 -1
  147. package/dist/hooks/magic-context/compaction-off-transition.d.ts +1 -0
  148. package/dist/hooks/magic-context/compaction-off-transition.d.ts.map +1 -1
  149. package/dist/hooks/magic-context/compartment-prompt.d.ts +1 -1
  150. package/dist/hooks/magic-context/compartment-prompt.d.ts.map +1 -1
  151. package/dist/hooks/magic-context/compartment-render-epoch.d.ts +3 -1
  152. package/dist/hooks/magic-context/compartment-render-epoch.d.ts.map +1 -1
  153. package/dist/hooks/magic-context/compartment-runner-drop-queue.d.ts +1 -1
  154. package/dist/hooks/magic-context/compartment-runner-drop-queue.d.ts.map +1 -1
  155. package/dist/hooks/magic-context/compartment-runner-historian.d.ts +1 -0
  156. package/dist/hooks/magic-context/compartment-runner-historian.d.ts.map +1 -1
  157. package/dist/hooks/magic-context/compartment-runner-incremental.d.ts +8 -1
  158. package/dist/hooks/magic-context/compartment-runner-incremental.d.ts.map +1 -1
  159. package/dist/hooks/magic-context/compartment-runner-recomp.d.ts.map +1 -1
  160. package/dist/hooks/magic-context/compartment-runner-types.d.ts +19 -11
  161. package/dist/hooks/magic-context/compartment-runner-types.d.ts.map +1 -1
  162. package/dist/hooks/magic-context/compartment-runner-validation.d.ts +4 -1
  163. package/dist/hooks/magic-context/compartment-runner-validation.d.ts.map +1 -1
  164. package/dist/hooks/magic-context/compartment-runner.d.ts.map +1 -1
  165. package/dist/hooks/magic-context/compartment-trigger.d.ts.map +1 -1
  166. package/dist/hooks/magic-context/decay-render.d.ts +1 -0
  167. package/dist/hooks/magic-context/decay-render.d.ts.map +1 -1
  168. package/dist/hooks/magic-context/decision-calibration.d.ts +24 -0
  169. package/dist/hooks/magic-context/decision-calibration.d.ts.map +1 -0
  170. package/dist/hooks/magic-context/derive-budgets.d.ts +2 -0
  171. package/dist/hooks/magic-context/derive-budgets.d.ts.map +1 -1
  172. package/dist/hooks/magic-context/dropped-input-guard.d.ts +50 -4
  173. package/dist/hooks/magic-context/dropped-input-guard.d.ts.map +1 -1
  174. package/dist/hooks/magic-context/embed-history-runner.d.ts +30 -0
  175. package/dist/hooks/magic-context/embed-history-runner.d.ts.map +1 -0
  176. package/dist/hooks/magic-context/emergency-drop.d.ts +13 -8
  177. package/dist/hooks/magic-context/emergency-drop.d.ts.map +1 -1
  178. package/dist/hooks/magic-context/event-handler.d.ts.map +1 -1
  179. package/dist/hooks/magic-context/event-payloads.d.ts +2 -1
  180. package/dist/hooks/magic-context/event-payloads.d.ts.map +1 -1
  181. package/dist/hooks/magic-context/execute-status.d.ts +2 -1
  182. package/dist/hooks/magic-context/execute-status.d.ts.map +1 -1
  183. package/dist/hooks/magic-context/final-wire-token-estimate.d.ts +12 -4
  184. package/dist/hooks/magic-context/final-wire-token-estimate.d.ts.map +1 -1
  185. package/dist/hooks/magic-context/heuristic-cleanup.d.ts.map +1 -1
  186. package/dist/hooks/magic-context/historian-no-fire-cause.d.ts +5 -0
  187. package/dist/hooks/magic-context/historian-no-fire-cause.d.ts.map +1 -0
  188. package/dist/hooks/magic-context/historian-publish-stage-logger.d.ts +3 -0
  189. package/dist/hooks/magic-context/historian-publish-stage-logger.d.ts.map +1 -0
  190. package/dist/hooks/magic-context/hook-handlers.d.ts +0 -3
  191. package/dist/hooks/magic-context/hook-handlers.d.ts.map +1 -1
  192. package/dist/hooks/magic-context/hook.d.ts +4 -4
  193. package/dist/hooks/magic-context/hook.d.ts.map +1 -1
  194. package/dist/hooks/magic-context/host-served-rows.d.ts +58 -0
  195. package/dist/hooks/magic-context/host-served-rows.d.ts.map +1 -0
  196. package/dist/hooks/magic-context/inject-compartments.d.ts +38 -0
  197. package/dist/hooks/magic-context/inject-compartments.d.ts.map +1 -1
  198. package/dist/hooks/magic-context/legacy-compartments.d.ts +20 -0
  199. package/dist/hooks/magic-context/legacy-compartments.d.ts.map +1 -0
  200. package/dist/hooks/magic-context/live-session-state.d.ts +7 -7
  201. package/dist/hooks/magic-context/m0-token-breakdown.d.ts +6 -0
  202. package/dist/hooks/magic-context/m0-token-breakdown.d.ts.map +1 -1
  203. package/dist/hooks/magic-context/maintenance-authority.d.ts +0 -1
  204. package/dist/hooks/magic-context/maintenance-authority.d.ts.map +1 -1
  205. package/dist/hooks/magic-context/module-state-sync.d.ts +1 -1
  206. package/dist/hooks/magic-context/module-state-sync.d.ts.map +1 -1
  207. package/dist/hooks/magic-context/module-transport.d.ts +1 -1
  208. package/dist/hooks/magic-context/module-transport.d.ts.map +1 -1
  209. package/dist/hooks/magic-context/module-wire.d.ts +42 -0
  210. package/dist/hooks/magic-context/module-wire.d.ts.map +1 -1
  211. package/dist/hooks/magic-context/note-nudger.d.ts.map +1 -1
  212. package/dist/hooks/magic-context/postprocess-read-cache.d.ts +8 -0
  213. package/dist/hooks/magic-context/postprocess-read-cache.d.ts.map +1 -0
  214. package/dist/hooks/magic-context/producer-window-guard.d.ts +16 -0
  215. package/dist/hooks/magic-context/producer-window-guard.d.ts.map +1 -1
  216. package/dist/hooks/magic-context/producer-window-test-support.d.ts +14 -0
  217. package/dist/hooks/magic-context/producer-window-test-support.d.ts.map +1 -0
  218. package/dist/hooks/magic-context/protected-tail-boundary.d.ts +2 -0
  219. package/dist/hooks/magic-context/protected-tail-boundary.d.ts.map +1 -1
  220. package/dist/hooks/magic-context/read-session-chunk.d.ts +45 -10
  221. package/dist/hooks/magic-context/read-session-chunk.d.ts.map +1 -1
  222. package/dist/hooks/magic-context/read-session-db.d.ts.map +1 -1
  223. package/dist/hooks/magic-context/read-session-raw.d.ts +4 -0
  224. package/dist/hooks/magic-context/read-session-raw.d.ts.map +1 -1
  225. package/dist/hooks/magic-context/read-session-true-raw-tokens.d.ts +6 -0
  226. package/dist/hooks/magic-context/read-session-true-raw-tokens.d.ts.map +1 -1
  227. package/dist/hooks/magic-context/recomp-orchestrator.d.ts +17 -39
  228. package/dist/hooks/magic-context/recomp-orchestrator.d.ts.map +1 -1
  229. package/dist/hooks/magic-context/rust-mode-transform.d.ts +24 -3
  230. package/dist/hooks/magic-context/rust-mode-transform.d.ts.map +1 -1
  231. package/dist/hooks/magic-context/sentinel.d.ts.map +1 -1
  232. package/dist/hooks/magic-context/system-prompt-hash.d.ts +6 -7
  233. package/dist/hooks/magic-context/system-prompt-hash.d.ts.map +1 -1
  234. package/dist/hooks/magic-context/tag-messages.d.ts +21 -1
  235. package/dist/hooks/magic-context/tag-messages.d.ts.map +1 -1
  236. package/dist/hooks/magic-context/tail-hygiene-walk.d.ts +63 -0
  237. package/dist/hooks/magic-context/tail-hygiene-walk.d.ts.map +1 -1
  238. package/dist/hooks/magic-context/tokenizer-calibration.d.ts +19 -12
  239. package/dist/hooks/magic-context/tokenizer-calibration.d.ts.map +1 -1
  240. package/dist/hooks/magic-context/tool-drop-target.d.ts +52 -1
  241. package/dist/hooks/magic-context/tool-drop-target.d.ts.map +1 -1
  242. package/dist/hooks/magic-context/tool-sweep-policy.d.ts +50 -0
  243. package/dist/hooks/magic-context/tool-sweep-policy.d.ts.map +1 -0
  244. package/dist/hooks/magic-context/transform-compartment-phase.d.ts +20 -1
  245. package/dist/hooks/magic-context/transform-compartment-phase.d.ts.map +1 -1
  246. package/dist/hooks/magic-context/transform-context-state.d.ts +9 -0
  247. package/dist/hooks/magic-context/transform-context-state.d.ts.map +1 -1
  248. package/dist/hooks/magic-context/transform-postprocess-phase.d.ts +5 -3
  249. package/dist/hooks/magic-context/transform-postprocess-phase.d.ts.map +1 -1
  250. package/dist/hooks/magic-context/transform.d.ts +37 -4
  251. package/dist/hooks/magic-context/transform.d.ts.map +1 -1
  252. package/dist/hooks/magic-context/wrapup-orchestrator.d.ts.map +1 -1
  253. package/dist/{index-f9gem5cr.js → index-8w1skpnm.js} +85 -5
  254. package/dist/index-99sfbrrf.js +170 -0
  255. package/dist/index-9skq8m9y.js +16 -0
  256. package/dist/{index-djp6rwz6.js → index-d0dh7v0f.js} +28130 -30282
  257. package/dist/{index-s61hh7gv.js → index-rpz2me0v.js} +94 -72
  258. package/dist/{index-ngjmj6xx.js → index-rvwvdq59.js} +1 -1
  259. package/dist/index-w2ety11c.js +393 -0
  260. package/dist/index-y5145x8k.js +619 -0
  261. package/dist/index-ygwdyntq.js +5407 -0
  262. package/dist/{index-a9ssj59b.js → index-ykg9sdzz.js} +55 -15
  263. package/dist/index.d.ts.map +1 -1
  264. package/dist/index.js +5749 -3006
  265. package/dist/message-time-backfill-gzjer78y.js +108 -0
  266. package/dist/plugin/dream-timer.d.ts +13 -0
  267. package/dist/plugin/dream-timer.d.ts.map +1 -1
  268. package/dist/plugin/hooks/create-session-hooks.d.ts +5 -2
  269. package/dist/plugin/hooks/create-session-hooks.d.ts.map +1 -1
  270. package/dist/plugin/memory-id-translation.d.ts +86 -0
  271. package/dist/plugin/memory-id-translation.d.ts.map +1 -1
  272. package/dist/plugin/messages-transform.d.ts.map +1 -1
  273. package/dist/plugin/rpc-handlers.d.ts +10 -0
  274. package/dist/plugin/rpc-handlers.d.ts.map +1 -1
  275. package/dist/plugin/rust-note-backend.d.ts +84 -0
  276. package/dist/plugin/rust-note-backend.d.ts.map +1 -0
  277. package/dist/plugin/tool-registry.d.ts +1 -0
  278. package/dist/plugin/tool-registry.d.ts.map +1 -1
  279. package/dist/read-session-chunk-ec3jkvhg.js +61 -0
  280. package/dist/{recomp-orchestrator-0xx1364v.js → recomp-orchestrator-6akjp11f.js} +8 -8
  281. package/dist/{send-session-notification-jbxknvar.js → send-session-notification-f6gwkesy.js} +2 -2
  282. package/dist/shared/assistant-message-extractor.d.ts +6 -0
  283. package/dist/shared/assistant-message-extractor.d.ts.map +1 -1
  284. package/dist/shared/conflict-detector.d.ts +9 -4
  285. package/dist/shared/conflict-detector.d.ts.map +1 -1
  286. package/dist/shared/hidden-variant-warnings.d.ts +5 -0
  287. package/dist/shared/hidden-variant-warnings.d.ts.map +1 -0
  288. package/dist/shared/host-limitations.d.ts +14 -0
  289. package/dist/shared/host-limitations.d.ts.map +1 -0
  290. package/dist/shared/keep-subagents.d.ts +1 -1
  291. package/dist/shared/keep-subagents.d.ts.map +1 -1
  292. package/dist/shared/model-suggestion-retry.d.ts.map +1 -1
  293. package/dist/shared/models-dev-cache.d.ts +1 -0
  294. package/dist/shared/models-dev-cache.d.ts.map +1 -1
  295. package/dist/shared/opencode-config-dir.d.ts +52 -0
  296. package/dist/shared/opencode-config-dir.d.ts.map +1 -1
  297. package/dist/shared/opencode-db-path.d.ts +15 -0
  298. package/dist/shared/opencode-db-path.d.ts.map +1 -1
  299. package/dist/shared/prompt-surface-runtime.d.ts +5 -5
  300. package/dist/shared/rpc-server.d.ts +10 -0
  301. package/dist/shared/rpc-server.d.ts.map +1 -1
  302. package/dist/shared/rpc-types.d.ts +64 -5
  303. package/dist/shared/rpc-types.d.ts.map +1 -1
  304. package/dist/shared/status-detail-text.d.ts +1 -3
  305. package/dist/shared/status-detail-text.d.ts.map +1 -1
  306. package/dist/shared/status-summary.d.ts +7 -0
  307. package/dist/shared/status-summary.d.ts.map +1 -1
  308. package/dist/shared/status-view.d.ts +229 -0
  309. package/dist/shared/status-view.d.ts.map +1 -0
  310. package/dist/shared/tag-transcript.d.ts.map +1 -1
  311. package/dist/shared/tail-hygiene-status.d.ts +8 -0
  312. package/dist/shared/tail-hygiene-status.d.ts.map +1 -1
  313. package/dist/shared/user-facing-codes.d.ts +32 -7
  314. package/dist/shared/user-facing-codes.d.ts.map +1 -1
  315. package/dist/shared/window-geometry.d.ts +3 -0
  316. package/dist/shared/window-geometry.d.ts.map +1 -1
  317. package/dist/{task-config-cv8k9y8r.js → task-config-ex4nt0q0.js} +1 -1
  318. package/dist/tools/ctx-expand/constants.d.ts +1 -1
  319. package/dist/tools/ctx-expand/constants.d.ts.map +1 -1
  320. package/dist/tools/ctx-expand/render.d.ts.map +1 -1
  321. package/dist/tools/ctx-expand/tools.d.ts.map +1 -1
  322. package/dist/tools/ctx-memory/constants.d.ts +3 -1
  323. package/dist/tools/ctx-memory/constants.d.ts.map +1 -1
  324. package/dist/tools/ctx-memory/tools.d.ts +1 -0
  325. package/dist/tools/ctx-memory/tools.d.ts.map +1 -1
  326. package/dist/tools/ctx-memory/types.d.ts +2 -2
  327. package/dist/tools/ctx-note/constants.d.ts +1 -1
  328. package/dist/tools/ctx-note/constants.d.ts.map +1 -1
  329. package/dist/tools/ctx-note/render.d.ts +88 -0
  330. package/dist/tools/ctx-note/render.d.ts.map +1 -0
  331. package/dist/tools/ctx-note/tools.d.ts.map +1 -1
  332. package/dist/tools/ctx-reduce/constants.d.ts +1 -1
  333. package/dist/tools/ctx-reduce/constants.d.ts.map +1 -1
  334. package/dist/tools/ctx-search/constants.d.ts +1 -1
  335. package/dist/tools/ctx-search/constants.d.ts.map +1 -1
  336. package/dist/tools/ctx-search/date-range.d.ts +9 -0
  337. package/dist/tools/ctx-search/date-range.d.ts.map +1 -0
  338. package/dist/tools/ctx-search/tools.d.ts.map +1 -1
  339. package/dist/tools/ctx-search/types.d.ts +2 -0
  340. package/dist/tools/ctx-search/types.d.ts.map +1 -1
  341. package/dist/tools/light-descriptions.d.ts +5 -5
  342. package/dist/tools/light-descriptions.d.ts.map +1 -1
  343. package/dist/tools/parameter-descriptions.d.ts +75 -0
  344. package/dist/tools/parameter-descriptions.d.ts.map +1 -0
  345. package/dist/transformers-node-wasm.js +1918 -826
  346. package/dist/transformers-web.js +1736 -636
  347. package/dist/{transformers.node-dpmf3wpx.js → transformers.node-3zqr6k1w.js} +4087 -2898
  348. package/dist/tui/data/context-db.d.ts +19 -7
  349. package/dist/tui/data/context-db.d.ts.map +1 -1
  350. package/dist/tui-compiled/data/context-db.d.ts +19 -7
  351. package/dist/tui-compiled/data/context-db.d.ts.map +1 -1
  352. package/dist/v2/fold/host-media.d.ts +36 -0
  353. package/dist/v2/fold/host-media.d.ts.map +1 -0
  354. package/dist/v2/fold/restore.d.ts +21 -1
  355. package/dist/v2/fold/restore.d.ts.map +1 -1
  356. package/dist/v2/hidden-completion.d.ts +45 -1
  357. package/dist/v2/hidden-completion.d.ts.map +1 -1
  358. package/dist/v2/hooks/commands.d.ts +29 -0
  359. package/dist/v2/hooks/commands.d.ts.map +1 -0
  360. package/dist/v2/hooks/context.d.ts +46 -2
  361. package/dist/v2/hooks/context.d.ts.map +1 -1
  362. package/dist/v2/hooks/deleted-session-tombstones.d.ts +10 -0
  363. package/dist/v2/hooks/deleted-session-tombstones.d.ts.map +1 -0
  364. package/dist/v2/hooks/dream-manual.d.ts +43 -0
  365. package/dist/v2/hooks/dream-manual.d.ts.map +1 -0
  366. package/dist/v2/hooks/dream-trigger.d.ts +7 -0
  367. package/dist/v2/hooks/dream-trigger.d.ts.map +1 -1
  368. package/dist/v2/hooks/hidden-child.d.ts +1 -0
  369. package/dist/v2/hooks/hidden-child.d.ts.map +1 -1
  370. package/dist/v2/hooks/model-limit-cache.d.ts +19 -0
  371. package/dist/v2/hooks/model-limit-cache.d.ts.map +1 -0
  372. package/dist/v2/hooks/payload.d.ts.map +1 -1
  373. package/dist/v2/hooks/provider-admission.d.ts +22 -0
  374. package/dist/v2/hooks/provider-admission.d.ts.map +1 -0
  375. package/dist/v2/hooks/rpc-live-state.d.ts +9 -0
  376. package/dist/v2/hooks/rpc-live-state.d.ts.map +1 -0
  377. package/dist/v2/hooks/store.d.ts +38 -2
  378. package/dist/v2/hooks/store.d.ts.map +1 -1
  379. package/dist/v2/hooks/tools.d.ts +8 -0
  380. package/dist/v2/hooks/tools.d.ts.map +1 -0
  381. package/dist/v2/hooks/types.d.ts +58 -0
  382. package/dist/v2/hooks/types.d.ts.map +1 -1
  383. package/dist/v2/hooks/usage-reading.d.ts +42 -0
  384. package/dist/v2/hooks/usage-reading.d.ts.map +1 -0
  385. package/dist/v2/host-service.d.ts +65 -0
  386. package/dist/v2/host-service.d.ts.map +1 -0
  387. package/dist/v2/server.js +141678 -111890
  388. package/dist/v2/store-reader.d.ts +67 -1
  389. package/dist/v2/store-reader.d.ts.map +1 -1
  390. package/dist/v2/tui/events.d.ts +7 -0
  391. package/dist/v2/tui/events.d.ts.map +1 -0
  392. package/dist/v2/tui/index.d.ts +23 -0
  393. package/dist/v2/tui/index.d.ts.map +1 -1
  394. package/dist/v2/tui/sidebar-mount.d.ts +40 -0
  395. package/dist/v2/tui/sidebar-mount.d.ts.map +1 -0
  396. package/dist/v2/tui/status-dialog-mount.d.ts +29 -0
  397. package/dist/v2/tui/status-dialog-mount.d.ts.map +1 -0
  398. package/dist/v2/tui/types.d.ts +74 -6
  399. package/dist/v2/tui/types.d.ts.map +1 -1
  400. package/dist/wrapup-orchestrator-5akc87gr.js +16 -0
  401. package/package.json +8 -7
  402. package/src/agents/dreamer.ts +7 -16
  403. package/src/agents/hidden-agent-registrations.ts +10 -22
  404. package/src/agents/magic-context-prompt.test.ts +29 -39
  405. package/src/agents/magic-context-prompt.ts +99 -122
  406. package/src/agents/permissions.test.ts +17 -21
  407. package/src/config/index.ts +8 -3
  408. package/src/config/live-run-config.test.ts +237 -0
  409. package/src/config/live-run-config.ts +80 -0
  410. package/src/config/live-schema-drift.test.ts +67 -0
  411. package/src/config/live-snapshot.test.ts +85 -0
  412. package/src/config/live-snapshot.ts +191 -0
  413. package/src/config/raw-loader.test.ts +1 -0
  414. package/src/config/schema/magic-context.test.ts +13 -5
  415. package/src/config/schema/magic-context.ts +101 -10
  416. package/src/features/magic-context/dreamer/task-registry.ts +137 -13
  417. package/src/shared/assistant-message-extractor.test.ts +21 -0
  418. package/src/shared/assistant-message-extractor.ts +43 -8
  419. package/src/shared/child-session-teardown.test.ts +38 -3
  420. package/src/shared/child-session-teardown.ts +3 -3
  421. package/src/shared/conflict-detector.test.ts +224 -7
  422. package/src/shared/conflict-detector.ts +161 -89
  423. package/src/shared/hidden-variant-warnings.ts +21 -0
  424. package/src/shared/host-limitations.ts +43 -0
  425. package/src/shared/keep-subagents.ts +6 -6
  426. package/src/shared/model-suggestion-retry.test.ts +43 -0
  427. package/src/shared/model-suggestion-retry.ts +12 -0
  428. package/src/shared/models-dev-cache.ts +5 -0
  429. package/src/shared/opencode-config-dir.ts +80 -7
  430. package/src/shared/opencode-db-path.test.ts +78 -0
  431. package/src/shared/opencode-db-path.ts +49 -2
  432. package/src/shared/opencode-host-generation.test.ts +29 -0
  433. package/src/shared/prompt-surface-a1-golden.md +142 -211
  434. package/src/shared/rpc-server.ts +18 -0
  435. package/src/shared/rpc-types.ts +63 -4
  436. package/src/shared/status-detail-text.test.ts +52 -18
  437. package/src/shared/status-detail-text.ts +1 -90
  438. package/src/shared/status-summary.ts +37 -2
  439. package/src/shared/status-view.test.ts +441 -0
  440. package/src/shared/status-view.ts +707 -0
  441. package/src/shared/tag-transcript.ts +115 -16
  442. package/src/shared/tail-hygiene-status.ts +9 -1
  443. package/src/shared/user-facing-codes.test.ts +3 -4
  444. package/src/shared/user-facing-codes.ts +33 -8
  445. package/src/shared/window-geometry.test.ts +23 -5
  446. package/src/shared/window-geometry.ts +13 -3
  447. package/src/tui/data/context-db.ts +50 -15
  448. package/src/tui/dialogs/status-dialog-colors.test.ts +58 -0
  449. package/src/tui/dialogs/status-dialog.tsx +288 -0
  450. package/src/tui/index.tsx +7 -464
  451. package/src/tui/slots/sidebar-content.tsx +21 -5
  452. package/src/tui-compiled/data/context-db.ts +50 -15
  453. package/src/tui-compiled/dialogs/status-dialog.tsx +552 -0
  454. package/src/tui-compiled/index.tsx +43 -1025
  455. package/src/tui-compiled/slots/sidebar-content.tsx +173 -152
  456. package/src/v2/tui/__fixtures__/ga-host-theme.json +160 -0
  457. package/src/v2/tui/events.ts +23 -0
  458. package/src/v2/tui/host-contract.test.ts +57 -8
  459. package/src/v2/tui/index.ts +315 -59
  460. package/src/v2/tui/load-compiled-sidebar.d.mts +59 -0
  461. package/src/v2/tui/load-compiled-sidebar.mjs +24 -0
  462. package/src/v2/tui/load-compiled-status-dialog.d.mts +17 -0
  463. package/src/v2/tui/load-compiled-status-dialog.mjs +16 -0
  464. package/src/v2/tui/sidebar-fallback.test.ts +100 -0
  465. package/src/v2/tui/sidebar-mount.ts +164 -0
  466. package/src/v2/tui/sidebar-text.test.ts +70 -0
  467. package/src/v2/tui/status-dialog-fallback.test.ts +97 -0
  468. package/src/v2/tui/status-dialog-mount.ts +76 -0
  469. package/src/v2/tui/theme-mapping.test.ts +57 -0
  470. package/src/v2/tui/types.ts +69 -4
  471. package/tui.js +1 -0
  472. package/dist/features/magic-context/memory/memory-migration.d.ts +0 -129
  473. package/dist/features/magic-context/memory/memory-migration.d.ts.map +0 -1
  474. package/dist/hooks/magic-context/upgrade-reminder.d.ts +0 -76
  475. package/dist/hooks/magic-context/upgrade-reminder.d.ts.map +0 -1
  476. package/dist/index-4wwr6cz0.js +0 -112
  477. package/dist/index-avwt563y.js +0 -62
  478. package/dist/index-znraa0kv.js +0 -637
  479. package/dist/storage-meta-session-z818pn1e.js +0 -20
@@ -1 +1 @@
1
- {"version":3,"file":"embedding-local.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/embedding-local.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"embedding-local.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/embedding-local.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { MemoryImportanceHistogram } from "../../../shared/rpc-types";
2
+ import type { Database } from "../../../shared/sqlite";
3
+ export declare function emptyMemoryImportanceHistogram(): MemoryImportanceHistogram;
4
+ /** Read the ACTIVE pool only; permanent/archived rows do not enter the denominator. */
5
+ export declare function getActiveMemoryImportanceHistogram(db: Database, projectPath: string): MemoryImportanceHistogram;
6
+ //# sourceMappingURL=memory-diagnostics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-diagnostics.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/memory-diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,wBAAgB,8BAA8B,IAAI,yBAAyB,CAY1E;AAmCD,uFAAuF;AACvF,wBAAgB,kCAAkC,CAC9C,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,GACpB,yBAAyB,CAoB3B"}
@@ -0,0 +1,12 @@
1
+ import type { Memory } from "./types";
2
+ /** Fields that decide which equal-importance memory survives a bound render budget. */
3
+ export type MemorySelectionCandidate = Pick<Memory, "id" | "importance" | "status" | "lastSeenAt" | "verifiedAt">;
4
+ /**
5
+ * The newest evidence that a memory is still useful. Exact-dedup re-observation
6
+ * advances last_seen_at (and seen_count) in storage-memory.ts; verification writes
7
+ * verified_at. Taking the newer timestamp lets either reinforcement path carry signal.
8
+ */
9
+ export declare function memoryReinforcementAt(memory: MemorySelectionCandidate): number | null;
10
+ /** Permanent first, then importance and reinforcement recency descending. */
11
+ export declare function compareMemorySelectionPriority(left: MemorySelectionCandidate, right: MemorySelectionCandidate): number;
12
+ //# sourceMappingURL=memory-selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-selection.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/memory-selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,uFAAuF;AACvF,MAAM,MAAM,wBAAwB,GAAG,IAAI,CACvC,MAAM,EACN,IAAI,GAAG,YAAY,GAAG,QAAQ,GAAG,YAAY,GAAG,YAAY,CAC/D,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,wBAAwB,GAAG,MAAM,GAAG,IAAI,CAKrF;AAED,6EAA6E;AAC7E,wBAAgB,8BAA8B,CAC1C,IAAI,EAAE,wBAAwB,EAC9B,KAAK,EAAE,wBAAwB,GAChC,MAAM,CAiBR"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Workspace memory visibility and ownership, in one place.
3
+ *
4
+ * Two read/write predicates decide what a project may do with a memory row:
5
+ *
6
+ * - VISIBLE (read): the project's own memories in every category, plus a
7
+ * workspace member's memories only while they are active, unexpired, marked
8
+ * shareable, scoped beyond the writing project, and in a category the
9
+ * workspace explicitly shares.
10
+ * - OWNED (mutate): only rows that resolve to this project's identity. A
11
+ * shared memory from another project is readable here and never writable
12
+ * here — sharing grants reading, not editing.
13
+ *
14
+ * The ctx_memory tool and the Rust-mode memory facade both need exactly these
15
+ * predicates, and a second copy of the share policy would be a second place for
16
+ * it to drift. Both import this factory instead.
17
+ */
18
+ import type { Database } from "../../../shared/sqlite";
19
+ /** The memory fields the two predicates read. `Memory` satisfies this. */
20
+ export interface VisibilityCandidateMemory {
21
+ projectPath: string;
22
+ category: string;
23
+ status: string;
24
+ scope: string;
25
+ /** SQLite INTEGER boolean: 1 = shareable, 0 = private. */
26
+ shareable: number;
27
+ expiresAt: number | null;
28
+ }
29
+ export interface MemoryVisibilityPolicy {
30
+ /** True when this project is a member of a multi-project workspace. */
31
+ readonly workspaced: boolean;
32
+ /** Canonical workspace identity for a stored project path. */
33
+ identityFor(storedProjectPath: string): string;
34
+ /** READ contract: own memories always, foreign memories only when shared. */
35
+ visible(memory: VisibilityCandidateMemory): boolean;
36
+ /** WRITE contract: the row must resolve to this project's identity. */
37
+ owned(memory: VisibilityCandidateMemory): boolean;
38
+ }
39
+ /**
40
+ * Build the visibility/ownership predicates for `projectIdentity`.
41
+ *
42
+ * Reads the workspace membership, identity aliases and share categories once,
43
+ * so a caller can classify a batch of ids without re-querying per row.
44
+ */
45
+ export declare function createMemoryVisibilityPolicy(db: Database, projectIdentity: string): MemoryVisibilityPolicy;
46
+ //# sourceMappingURL=memory-visibility.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-visibility.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/memory-visibility.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAUvD,0EAA0E;AAC1E,MAAM,WAAW,yBAAyB;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACnC,uEAAuE;IACvE,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,8DAA8D;IAC9D,WAAW,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/C,6EAA6E;IAC7E,OAAO,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC;IACpD,uEAAuE;IACvE,KAAK,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC;CACrD;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CACxC,EAAE,EAAE,QAAQ,EACZ,eAAe,EAAE,MAAM,GACxB,sBAAsB,CAiDxB"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Re-embed host memory rows whose embedding a mirror-back page invalidated.
3
+ *
4
+ * While the Rust module holds memory authority, a curation edit is applied in
5
+ * the module and reaches the host as a snapshot with new content. The mirror
6
+ * drops the row's stale embedding, and until this sweep runs nothing puts a
7
+ * fresh one back: the memory still renders and `get` still returns it, but it
8
+ * disappears from scored recall until authority drains back to TypeScript.
9
+ *
10
+ * The sweep reuses the ordinary unembedded-memory path, so a re-embed under
11
+ * module authority is the same work, with the same hash guard, as an embed
12
+ * after a TypeScript write.
13
+ */
14
+ import type { Database } from "../../../shared/sqlite";
15
+ /**
16
+ * Embed every memory left unembedded by the mirror pages applied so far.
17
+ *
18
+ * Returns the number of rows embedded. Safe to call after any mirror drain:
19
+ * with nothing invalidated it does no work.
20
+ */
21
+ export declare function reembedMirrorInvalidatedMemories(db: Database): Promise<number>;
22
+ //# sourceMappingURL=mirror-reembed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mirror-reembed.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/mirror-reembed.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAIvD;;;;;GAKG;AACH,wBAAsB,gCAAgC,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAkBpF"}
@@ -53,6 +53,15 @@ export declare function resolveProjectIdentityOrFallback(directory: string): str
53
53
  * running `git log` on every ctx_search call while still distinguishing a true
54
54
  * non-repository directory from a transient `dir:` identity fallback. */
55
55
  export declare function directoryHasGitMetadata(directory: string): boolean;
56
+ /**
57
+ * Explain to an agent (and the user reading its tool output) why a session has no
58
+ * project identity. The tools only see `undefined` from the resolver; without this
59
+ * they reported "Could not resolve project identity" and agents blamed the absence
60
+ * of a git repository, which is not a cause — non-git directories resolve to a
61
+ * `dir:` identity. The one deliberate refusal is a session running in the home
62
+ * directory itself.
63
+ */
64
+ export declare function describeUnresolvedProjectIdentity(directory: string): string;
56
65
  export declare function resolveProjectIdentityForSession(directory: string, allowHomeProject?: boolean): string | undefined;
57
66
  /**
58
67
  * Normalize a stored project path or legacy raw filesystem path.
@@ -1 +1 @@
1
- {"version":3,"file":"project-identity.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/project-identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AA4ClD;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,yBAAyB,GAC/B,cAAc,GACd,aAAa,GACb,aAAa,GACb,mBAAmB,GACnB,mBAAmB,GACnB,SAAS,CAAC;AAEhB;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC;IAC/C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;gBAG1B,UAAU,EAAE,yBAAyB,EACrC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,KAAK;CAUpB;AAgKD;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAuDtE;AAmFD,wBAAgB,0CAA0C,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM3F;AAmBD,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAM9D;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CA+ChE;AAED,wBAAgB,gCAAgC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAY1E;AAmDD;;yEAEyE;AACzE,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAElE;AAED,wBAAgB,gCAAgC,CAC5C,SAAS,EAAE,MAAM,EACjB,gBAAgB,UAAQ,GACzB,MAAM,GAAG,SAAS,CAsCpB;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAUtE;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CACvC,iBAAiB,EAAE,MAAM,EACzB,eAAe,EAAE,MAAM,GACxB,OAAO,CAKT;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CA6B9D;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACjD,YAAY,CAAC,EAAE,OAAO,YAAY,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC,GAAG,IAAI,CAKP;AAED,wBAAgB,+CAA+C,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAWxF;AAED,wBAAgB,6CAA6C,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAWtF;AAED,wBAAgB,8BAA8B,IAAI,IAAI,CAerD"}
1
+ {"version":3,"file":"project-identity.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/project-identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AA4ClD;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,yBAAyB,GAC/B,cAAc,GACd,aAAa,GACb,aAAa,GACb,mBAAmB,GACnB,mBAAmB,GACnB,SAAS,CAAC;AAEhB;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC;IAC/C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;gBAG1B,UAAU,EAAE,yBAAyB,EACrC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,KAAK;CAUpB;AAgKD;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAuDtE;AAmFD,wBAAgB,0CAA0C,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM3F;AAmBD,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAM9D;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CA+ChE;AAED,wBAAgB,gCAAgC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAY1E;AAmDD;;yEAEyE;AACzE,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAElE;AAED;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAqB3E;AAED,wBAAgB,gCAAgC,CAC5C,SAAS,EAAE,MAAM,EACjB,gBAAgB,UAAQ,GACzB,MAAM,GAAG,SAAS,CAsCpB;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAUtE;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CACvC,iBAAiB,EAAE,MAAM,EACzB,eAAe,EAAE,MAAM,GACxB,OAAO,CAKT;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CA6B9D;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACjD,YAAY,CAAC,EAAE,OAAO,YAAY,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC,GAAG,IAAI,CAKP;AAED,wBAAgB,+CAA+C,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAWxF;AAED,wBAAgB,6CAA6C,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAWtF;AAED,wBAAgB,8BAA8B,IAAI,IAAI,CAerD"}
@@ -1,6 +1,10 @@
1
1
  import type { Database } from "../../../shared/sqlite";
2
2
  import type { Memory } from "./types";
3
+ export interface MemorySearchDateRange {
4
+ from: number;
5
+ to: number;
6
+ }
3
7
  export declare function sanitizeFtsQuery(query: string): string;
4
- export declare function searchMemoriesFTS(db: Database, projectPath: string, query: string, limit?: number): Memory[];
5
- export declare function searchMemoriesFTSUnion(db: Database, projectPaths: readonly string[], query: string, limit?: number, ownIdentities?: readonly string[], shareCategories?: readonly string[] | null): Memory[];
8
+ export declare function searchMemoriesFTS(db: Database, projectPath: string, query: string, limit?: number, dateRange?: MemorySearchDateRange | null): Memory[];
9
+ export declare function searchMemoriesFTSUnion(db: Database, projectPaths: readonly string[], query: string, limit?: number, ownIdentities?: readonly string[], shareCategories?: readonly string[] | null, dateRange?: MemorySearchDateRange | null): Memory[];
6
10
  //# sourceMappingURL=storage-memory-fts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"storage-memory-fts.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/storage-memory-fts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAkC,MAAM,wBAAwB,CAAC;AAOvF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AA8CtC,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKtD;AAED,wBAAgB,iBAAiB,CAC7B,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,KAAK,SAAuB,GAC7B,MAAM,EAAE,CAgBV;AAED,wBAAgB,sBAAsB,CAClC,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,KAAK,EAAE,MAAM,EACb,KAAK,SAAuB,EAC5B,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,EACjC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAC3C,MAAM,EAAE,CAuCV"}
1
+ {"version":3,"file":"storage-memory-fts.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/storage-memory-fts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAkC,MAAM,wBAAwB,CAAC;AAOvF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAQtC,MAAM,WAAW,qBAAqB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACd;AA4CD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKtD;AAED,wBAAgB,iBAAiB,CAC7B,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,KAAK,SAAuB,EAC5B,SAAS,GAAE,qBAAqB,GAAG,IAAW,GAC/C,MAAM,EAAE,CAsBV;AAED,wBAAgB,sBAAsB,CAClC,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,KAAK,EAAE,MAAM,EACb,KAAK,SAAuB,EAC5B,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,EACjC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,EAC1C,SAAS,GAAE,qBAAqB,GAAG,IAAW,GAC/C,MAAM,EAAE,CAoDV"}
@@ -1 +1 @@
1
- {"version":3,"file":"storage-memory.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/storage-memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAkC,MAAM,wBAAwB,CAAC;AAKvF,OAAO,KAAK,EACR,MAAM,EACN,cAAc,EACd,WAAW,EACX,WAAW,EAEX,YAAY,EACZ,kBAAkB,EACrB,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,MAAM,EAAE,MAAM,CAyBnD,CAAC;AAuEF,MAAM,WAAW,oBAAoB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;CACrB;AA0BD,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAO9D;AAED,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAOjE;AAgBD;oEACoE;AACpE,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAY7F;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,SAAa,GAAG,MAAM,CAwBnF;AAgDD,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,MAAM,CA6BvD;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA2B5C;AAyQD,qBAAa,0BAA2B,SAAQ,KAAK;IAGrC,QAAQ,CAAC,WAAW,EAAE,MAAM;IAFxC,QAAQ,CAAC,IAAI,6BAA6B;gBAErB,WAAW,EAAE,MAAM;CAM3C;AAuBD,wBAAgB,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,CAyBrE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,GAAG,kBAAkB,CAkB3F;AAED,wBAAgB,eAAe,CAC3B,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,cAAc,EACxB,cAAc,EAAE,MAAM,GACvB,MAAM,GAAG,IAAI,CAMf;AAED,wBAAgB,oBAAoB,CAChC,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,EACnB,QAAQ,GAAE,YAAY,EAA4B,EAKlD,YAAY,GAAE,MAAmB,GAClC,MAAM,EAAE,CAUV;AAuBD,MAAM,WAAW,wBAAwB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,mFAAmF;IACnF,SAAS,EAAE,MAAM,CAAC;CACrB;AAKD,wBAAgB,6BAA6B,CAAC,IAAI,EAAE;IAChD,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2BAA2B,CAAC,EAAE,OAAO,CAAC;CACzC,GAAG,wBAAwB,CA6C3B;AAED,wBAAgB,qBAAqB,CACjC,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,QAAQ,GAAE,YAAY,EAA4B,EAClD,YAAY,GAAE,MAAmB,EACjC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,EACjC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAC3C,MAAM,EAAE,CAwEV;AAED,wBAAgB,yBAAyB,CACrC,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,EACjC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,EAC1C,YAAY,GAAE,MAAmB,GAClC,MAAM,CAqBR;AAED,wBAAgB,yBAAyB,CACrC,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,EACjC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAC3C,MAAM,EAAE,CAsBV;AAED,wBAAgB,gCAAgC,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAG5F;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMrE;AAED;;;;;;;gDAOgD;AAChD,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAS/E;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAIpE;AAED,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAIzE;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CAGvF;AAqBD,wBAAgB,wBAAwB,CACpC,EAAE,EAAE,QAAQ,EACZ,EAAE,EAAE,MAAM,EACV,kBAAkB,EAAE,kBAAkB,GACvC,IAAI,CAUN;AAED,wBAAgB,mBAAmB,CAC/B,EAAE,EAAE,QAAQ,EACZ,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,GACvB,IAAI,CA0DN;AAED,MAAM,WAAW,0BAA0B;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAOD,wBAAgB,uBAAuB,CACnC,EAAE,EAAE,QAAQ,EACZ,EAAE,EAAE,MAAM,EACV,cAAc,EAAE,0BAA0B,GAC3C,OAAO,CAsDT;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI,CAGvF;AAED,wBAAgB,gBAAgB,CAC5B,EAAE,EAAE,QAAQ,EACZ,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,YAAY,GACrB,IAAI,CAUN;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAiB7E;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAW3D;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAWzE;AAED,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,oBAAoB,CAsC/F"}
1
+ {"version":3,"file":"storage-memory.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/storage-memory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ type TransformersRemoteEnvironment = {
2
+ remoteHost?: string;
3
+ };
4
+ export declare function configureTransformersRemoteHost(env: TransformersRemoteEnvironment, endpoint?: string | undefined): void;
5
+ export {};
6
+ //# sourceMappingURL=transformers-remote-host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformers-remote-host.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/transformers-remote-host.ts"],"names":[],"mappings":"AAEA,KAAK,6BAA6B,GAAG;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAUF,wBAAgB,+BAA+B,CAC3C,GAAG,EAAE,6BAA6B,EAClC,QAAQ,qBAA4B,GACrC,IAAI,CAGN"}
@@ -1 +1 @@
1
- {"version":3,"file":"transformers-web-entry.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/transformers-web-entry.ts"],"names":[],"mappings":"AAGA,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"transformers-web-entry.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/transformers-web-entry.ts"],"names":[],"mappings":"AASA,cAAc,2BAA2B,CAAC"}
@@ -6,7 +6,9 @@ export interface MessageFtsRowidMapBackfillProgress {
6
6
  completed: boolean;
7
7
  }
8
8
  /** Record the FTS row identity in the caller's message-index transaction. */
9
- export declare function recordMessageFtsRowid(db: Database, sessionId: string, messageOrdinal: number, ftsRowid: number | bigint): void;
9
+ export declare function recordMessageFtsRowid(db: Database, sessionId: string, messageOrdinal: number, ftsRowid: number | bigint, messageTimeMs?: number | null): void;
10
+ /** Fill a missing indexed timestamp without changing the FTS row identity. */
11
+ export declare function recordIndexedMessageTime(db: Database, sessionId: string, messageOrdinal: number, messageTimeMs: number | null | undefined): void;
10
12
  /**
11
13
  * Map one bounded rowid-ascending FTS window and persist its watermark atomically.
12
14
  * The rowid constraint is an FTS5 point/range access; it never filters an
@@ -1 +1 @@
1
- {"version":3,"file":"message-fts-rowid-map.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/message-fts-rowid-map.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAkC,MAAM,qBAAqB,CAAC;AAGpF,eAAO,MAAM,yCAAyC,MAAM,CAAC;AAgB7D,MAAM,WAAW,kCAAkC;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;CACtB;AAsCD,6EAA6E;AAC7E,wBAAgB,qBAAqB,CACjC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,GAAG,MAAM,GAC1B,IAAI,CAMN;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC3C,EAAE,EAAE,QAAQ,EACZ,SAAS,SAA4C,GACtD,kCAAkC,CA6DpC;AAED,iFAAiF;AACjF,wBAAsB,6BAA6B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAM/E;AAED,kFAAkF;AAClF,wBAAgB,+BAA+B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ3E;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC1C,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACnB,OAAO,CAuCT;AAED,wBAAgB,qCAAqC,CACjD,EAAE,EAAE,QAAQ,GACb,kCAAkC,CAEpC"}
1
+ {"version":3,"file":"message-fts-rowid-map.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/message-fts-rowid-map.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAkC,MAAM,qBAAqB,CAAC;AAGpF,eAAO,MAAM,yCAAyC,MAAM,CAAC;AAgB7D,MAAM,WAAW,kCAAkC;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;CACtB;AA4CD,6EAA6E;AAC7E,wBAAgB,qBAAqB,CACjC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,aAAa,GAAE,MAAM,GAAG,IAAW,GACpC,IAAI,CAYN;AAED,8EAA8E;AAC9E,wBAAgB,wBAAwB,CACpC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACzC,IAAI,CAmBN;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC3C,EAAE,EAAE,QAAQ,EACZ,SAAS,SAA4C,GACtD,kCAAkC,CA6DpC;AAED,iFAAiF;AACjF,wBAAsB,6BAA6B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAM/E;AAED,kFAAkF;AAClF,wBAAgB,+BAA+B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ3E;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC1C,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACnB,OAAO,CAuCT;AAED,wBAAgB,qCAAqC,CACjD,EAAE,EAAE,QAAQ,GACb,kCAAkC,CAEpC"}
@@ -1,14 +1,19 @@
1
1
  import type { RawMessage } from "../../hooks/magic-context/read-session-raw";
2
2
  import type { Database } from "../../shared/sqlite";
3
- type ReadMessages = ((sessionId: string) => RawMessage[]) & {
3
+ type FullReadMessages = ((sessionId: string) => RawMessage[]) & {
4
4
  readPage?: (sessionId: string, afterOrdinal: number, limit: number, finalWatermark: number) => RawMessage[];
5
5
  getCount?: (sessionId: string) => number;
6
6
  };
7
+ export interface BoundedMessageReconciliationSource {
8
+ readPage(sessionId: string, afterOrdinal: number, limit: number, finalWatermark: number): RawMessage[];
9
+ getCount(sessionId: string): number;
10
+ }
11
+ export type MessageReconciliationSource = FullReadMessages | BoundedMessageReconciliationSource;
7
12
  type ReadSingleMessage = (sessionId: string, messageId: string) => RawMessage | null;
8
13
  type IncrementalMessageSource = ReadSingleMessage | RawMessage;
9
- export declare function scheduleReconciliation(db: Database, sessionId: string, readMessages: ReadMessages): void;
14
+ export declare function scheduleReconciliation(db: Database, sessionId: string, readMessages: MessageReconciliationSource): void;
10
15
  export declare function scheduleIncrementalIndex(db: Database, sessionId: string, messageId: string, messageSource: IncrementalMessageSource): void;
11
- export declare function scheduleClearAndReindex(db: Database, sessionId: string, readMessages: ReadMessages): void;
16
+ export declare function scheduleClearAndReindex(db: Database, sessionId: string, readMessages: MessageReconciliationSource): void;
12
17
  export interface MessageIndexQueueHeapStats {
13
18
  queueLength: number;
14
19
  reconciliationScheduled: number;
@@ -1 +1 @@
1
- {"version":3,"file":"message-index-async.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/message-index-async.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AAG7E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AA0FpD,KAAK,YAAY,GAAG,CAAC,CAAC,SAAS,EAAE,MAAM,KAAK,UAAU,EAAE,CAAC,GAAG;IACxD,QAAQ,CAAC,EAAE,CACP,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,KACrB,UAAU,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C,CAAC;AACF,KAAK,iBAAiB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,UAAU,GAAG,IAAI,CAAC;AACrF,KAAK,wBAAwB,GAAG,iBAAiB,GAAG,UAAU,CAAC;AAiH/D,wBAAgB,sBAAsB,CAClC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,YAAY,GAC3B,IAAI,CAoBN;AAED,wBAAgB,wBAAwB,CACpC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,wBAAwB,GACxC,IAAI,CAkDN;AAED,wBAAgB,uBAAuB,CACnC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,YAAY,GAC3B,IAAI,CAsBN;AAED,MAAM,WAAW,0BAA0B;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,uBAAuB,EAAE,MAAM,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,wBAAwB,EAAE,MAAM,CAAC;IACjC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;CAC7B;AAED,6EAA6E;AAC7E,wBAAgB,6BAA6B,IAAI,0BAA0B,CAoB1E;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAsB5D;AAED,wBAAgB,gCAAgC,IAAI,IAAI,CAWvD"}
1
+ {"version":3,"file":"message-index-async.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/message-index-async.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AAG7E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AA0FpD,KAAK,gBAAgB,GAAG,CAAC,CAAC,SAAS,EAAE,MAAM,KAAK,UAAU,EAAE,CAAC,GAAG;IAC5D,QAAQ,CAAC,EAAE,CACP,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,KACrB,UAAU,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C,CAAC;AAEF,MAAM,WAAW,kCAAkC;IAC/C,QAAQ,CACJ,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,GACvB,UAAU,EAAE,CAAC;IAChB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;CACvC;AAED,MAAM,MAAM,2BAA2B,GAAG,gBAAgB,GAAG,kCAAkC,CAAC;AAChG,KAAK,iBAAiB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,UAAU,GAAG,IAAI,CAAC;AACrF,KAAK,wBAAwB,GAAG,iBAAiB,GAAG,UAAU,CAAC;AAkH/D,wBAAgB,sBAAsB,CAClC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,2BAA2B,GAC1C,IAAI,CAoBN;AAED,wBAAgB,wBAAwB,CACpC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,wBAAwB,GACxC,IAAI,CAkDN;AAED,wBAAgB,uBAAuB,CACnC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,2BAA2B,GAC1C,IAAI,CAsBN;AAED,MAAM,WAAW,0BAA0B;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,uBAAuB,EAAE,MAAM,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,wBAAwB,EAAE,MAAM,CAAC;IACjC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;CAC7B;AAED,6EAA6E;AAC7E,wBAAgB,6BAA6B,IAAI,0BAA0B,CAoB1E;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAsB5D;AAED,wBAAgB,gCAAgC,IAAI,IAAI,CAWvD"}
@@ -1,7 +1,7 @@
1
1
  import type { RawMessage } from "../../hooks/magic-context/read-session-raw";
2
2
  import type { Database } from "../../shared/sqlite";
3
3
  export interface MessageHistoryOrphanSweepResult {
4
- status: "swept" | "cooldown" | "source_unavailable";
4
+ status: "swept" | "cooldown" | "source_unavailable" | "unavailable";
5
5
  scanned: number;
6
6
  deleted: number;
7
7
  cursor: string;
@@ -37,6 +37,12 @@ export declare function markMessageIndexDirty(db: Database, sessionId: string, f
37
37
  export declare function getMessageIndexReconciliationStartOrdinal(db: Database, sessionId: string): number;
38
38
  export declare function isMessageIndexReconciledThrough(db: Database, sessionId: string, finalWatermark: number): boolean;
39
39
  export declare function deleteIndexedMessage(db: Database, sessionId: string, messageId: string): number;
40
+ /**
41
+ * Drop every indexed document, its rowid mapping, the progress watermark and the
42
+ * derived compression depth for one session. The caller must already hold a
43
+ * transaction; use `clearIndexedMessages` when it does not.
44
+ */
45
+ export declare function clearIndexedMessagesInTransaction(db: Database, sessionId: string): void;
40
46
  export declare function clearIndexedMessages(db: Database, sessionId: string): void;
41
47
  export declare function getIndexableContent(role: string, parts: unknown[]): string;
42
48
  export declare function indexSingleMessage(db: Database, sessionId: string, message: RawMessage): boolean;
@@ -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,KAAK,EAAE,QAAQ,EAAkC,MAAM,qBAAqB,CAAC;AAyBpF,MAAM,WAAW,+BAA+B;IAC5C,MAAM,EAAE,OAAO,GAAG,UAAU,GAAG,oBAAoB,CAAC;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAClB;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;AAmRjF,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAGzE;AAED,wBAAgB,2BAA2B,CACvC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,UAAU,GACpB,OAAO,CAYT;AAsBD,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,CAU/F;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAU1E;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,CAsB1E;AAwED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CA2ChG;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,CAkGR;AAED,wBAAgB,qBAAqB,CACjC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,UAAU,EAAE,GAClD,IAAI,CAmBN;AAkDD;;;;;GAKG;AACH,wBAAgB,mCAAmC,CAC/C,EAAE,EAAE,QAAQ,EACZ,sBAAsB,EAAE,MAAM,QAAQ,GAAG,IAAI,EAC7C,OAAO,GAAE,gCAAqC,GAC/C,+BAA+B,CA+GjC"}
1
+ {"version":3,"file":"message-index.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/message-index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { RawMessage } from "../../hooks/magic-context/read-session-raw";
2
+ import type { Database } from "../../shared/sqlite";
3
+ export declare const MESSAGE_TIME_BACKFILL_BATCH_SIZE = 500;
4
+ export interface MessageTimeBackfillProgress {
5
+ processed: number;
6
+ cursorSessionId: string;
7
+ cursorOrdinal: number;
8
+ completed: boolean;
9
+ }
10
+ export type MessageTimeBackfillReader = ((sessionId: string) => RawMessage[]) & {
11
+ readPage?: (sessionId: string, afterOrdinal: number, limit: number, finalWatermark: number) => RawMessage[];
12
+ };
13
+ /** Fill one durable cursor window. Host reads happen before the atomic update/cursor commit. */
14
+ export declare function backfillMessageTimesBatch(db: Database, reader: MessageTimeBackfillReader, batchSize?: number): MessageTimeBackfillProgress;
15
+ /** Drain durable legacy rows in bounded turns, yielding between SQLite write windows. */
16
+ export declare function runMessageTimeBackfill(db: Database, reader: MessageTimeBackfillReader): Promise<void>;
17
+ export declare function startMessageTimeBackfill(db: Database, reader: MessageTimeBackfillReader): Promise<void>;
18
+ export declare function getMessageTimeBackfillProgress(db: Database): MessageTimeBackfillProgress;
19
+ //# sourceMappingURL=message-time-backfill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-time-backfill.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/message-time-backfill.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGpD,eAAO,MAAM,gCAAgC,MAAM,CAAC;AAgBpD,MAAM,WAAW,2BAA2B;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,SAAS,EAAE,MAAM,KAAK,UAAU,EAAE,CAAC,GAAG;IAC5E,QAAQ,CAAC,EAAE,CACP,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,KACrB,UAAU,EAAE,CAAC;CACrB,CAAC;AAgEF,gGAAgG;AAChG,wBAAgB,yBAAyB,CACrC,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,yBAAyB,EACjC,SAAS,SAAmC,GAC7C,2BAA2B,CAsD7B;AAED,yFAAyF;AACzF,wBAAsB,sBAAsB,CACxC,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,yBAAyB,GAClC,OAAO,CAAC,IAAI,CAAC,CAMf;AAED,wBAAgB,wBAAwB,CACpC,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,yBAAyB,GAClC,OAAO,CAAC,IAAI,CAAC,CAMf;AAED,wBAAgB,8BAA8B,CAAC,EAAE,EAAE,QAAQ,GAAG,2BAA2B,CAExF"}
@@ -23,15 +23,19 @@ export declare class MigrationLockBusyError extends Error {
23
23
  constructor(message: string);
24
24
  }
25
25
  /**
26
- * Session-scoped (and singleton cursor) tables whose `harness` column v85
27
- * rewrites from the OpenCode 1.x mislabel `opencode2` to `opencode`.
28
- * Named so a structural test can prove every DDL-declared harness table is
29
- * covered: a table added later without being listed goes red.
26
+ * Session-scoped (and singleton cursor) tables whose `harness` column the
27
+ * OpenCode 1.x/2.x relabel touches. Named so a structural test can prove every
28
+ * DDL-declared harness table is covered: a table added later without being
29
+ * listed goes red.
30
+ *
31
+ * The name records history — v85 rewrote every one of these to `opencode` — but
32
+ * the list is now consumed by v87, which decides each session's label from the
33
+ * OpenCode store instead of assuming one direction.
30
34
  */
31
35
  export declare const V85_OPENCODE2_RELABEL_TABLES: readonly ["tags", "pending_ops", "source_contents", "compartments", "compartment_chunk_embeddings", "session_projects", "compartment_events", "compression_depth", "session_facts", "primer_candidates", "notes", "message_history_index", "message_history_source", "pending_session_cleanup", "message_history_orphan_sweep", "session_meta", "subagent_invocations", "historian_runs", "transform_decisions", "recomp_compartments", "recomp_facts"];
32
36
  /**
33
- * Runtime-created singleton (not part of initializeDatabase). Relabel when
34
- * the table exists so a live upgrade does not leave an `opencode2` cursor.
37
+ * Runtime-created singleton (not part of initializeDatabase), carried in the
38
+ * relabel set so a live upgrade sees it when it exists.
35
39
  */
36
40
  export declare const V85_OPTIONAL_OPENCODE2_RELABEL_TABLES: readonly ["session_project_backfill_state"];
37
41
  export declare const MIGRATIONS: Migration[];
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/migrations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAKpD,yFAAyF;AACzF,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAEnD;;;;;;;;;;;;GAYG;AAEH,UAAU,SAAS;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAC;CAC9B;AAID,qBAAa,sBAAuB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAI9B;AAyBD;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,ybAsB/B,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,qCAAqC,6CAA8C,CAAC;AAwRjG,eAAO,MAAM,UAAU,EAAE,SAAS,EA6qFjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,MAGtC,CAAC;AAyBF;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAqBjG;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CA6HhD;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IAClC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9C;AAED,wBAAsB,sBAAsB,CACxC,EAAE,EAAE,QAAQ,EACZ,OAAO,GAAE,qBAA0B,GACpC,OAAO,CAAC,IAAI,CAAC,CAqBf"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/migrations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAMpD,yFAAyF;AACzF,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAEnD;;;;;;;;;;;;GAYG;AAEH,UAAU,SAAS;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAC;CAC9B;AAID,qBAAa,sBAAuB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAI9B;AAkBD;;;;;;;;;GASG;AAEH,eAAO,MAAM,4BAA4B,ybAsB/B,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,qCAAqC,6CAA8C,CAAC;AAmKjG,eAAO,MAAM,UAAU,EAAE,SAAS,EAozFjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,MAGtC,CAAC;AAyBF;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAqBjG;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CA6HhD;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IAClC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9C;AAED,wBAAsB,sBAAsB,CACxC,EAAE,EAAE,QAAQ,EACZ,OAAO,GAAE,qBAA0B,GACpC,OAAO,CAAC,IAAI,CAAC,CAqBf"}
@@ -1 +1 @@
1
- {"version":3,"file":"compress-cues.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/mural/compress-cues.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,KAAK,wBAAwB,EAGhC,MAAM,uDAAuD,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAK3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,KAAK,gBAAgB,EAA6C,MAAM,kBAAkB,CAAC;AAEpG,OAAO,EAEH,KAAK,kBAAkB,EAE1B,MAAM,yBAAyB,CAAC;AAKjC,OAAO,EAAwB,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAkB9D;;;;;;;;;;;;;;;;GAgBG;AAEH;+EAC+E;AAC/E,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C;;;;;;;;wDAQwD;AACxD,eAAO,MAAM,sBAAsB,SAAU,CAAC;AAE9C;gEACgE;AAChE,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAS/C,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,QAAQ,CAAC;IACb,MAAM,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjC,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,cAAc,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,8FAA8F;IAC9F,WAAW,CAAC,EAAE,kBAAkB,CAAC;CACpC;AAqBD,MAAM,WAAW,kBAAkB;IAC/B,kFAAkF;IAClF,UAAU,EAAE,MAAM,CAAC;IACnB,+EAA+E;IAC/E,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED;;;;;uBAKuB;AACvB,UAAU,YAAY;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACvB;AAuFD;;;;oDAIoD;AACpD,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAKxF;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAsFzF;AAuJD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CACrB,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,YAAY,EAAE,EACrB,YAAY,EAAE,MAAM,GACrB;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAuDzC"}
1
+ {"version":3,"file":"compress-cues.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/mural/compress-cues.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,KAAK,wBAAwB,EAGhC,MAAM,uDAAuD,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAK3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,KAAK,gBAAgB,EAA6C,MAAM,kBAAkB,CAAC;AAEpG,OAAO,EAEH,KAAK,kBAAkB,EAE1B,MAAM,yBAAyB,CAAC;AAKjC,OAAO,EAAwB,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAkB9D;;;;;;;;;;;;;;;;GAgBG;AAEH;+EAC+E;AAC/E,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C;;;;;;;;wDAQwD;AACxD,eAAO,MAAM,sBAAsB,SAAU,CAAC;AAE9C;gEACgE;AAChE,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAS/C,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,QAAQ,CAAC;IACb,MAAM,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjC,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,cAAc,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,8FAA8F;IAC9F,WAAW,CAAC,EAAE,kBAAkB,CAAC;CACpC;AAqBD,MAAM,WAAW,kBAAkB;IAC/B,kFAAkF;IAClF,UAAU,EAAE,MAAM,CAAC;IACnB,+EAA+E;IAC/E,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED;;;;;uBAKuB;AACvB,UAAU,YAAY;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACvB;AAuFD;;;;oDAIoD;AACpD,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAKxF;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAsFzF;AA2JD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CACrB,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,YAAY,EAAE,EACrB,YAAY,EAAE,MAAM,GACrB;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAuDzC"}
@@ -9,6 +9,11 @@ export interface MuralManifestRow {
9
9
  width: number;
10
10
  height: number;
11
11
  }
12
+ export interface MuralManifestIdentity {
13
+ contentHash: string;
14
+ renderedAt: number;
15
+ }
16
+ export declare function getMuralIdentity(db: Database, projectPath: string): MuralManifestIdentity | null;
12
17
  export declare function getMural(db: Database, projectPath: string): MuralManifestRow | null;
13
18
  export declare function upsertMural(db: Database, input: Omit<MuralManifestRow, "projectPath"> & {
14
19
  projectPath: string;
@@ -1 +1 @@
1
- {"version":3,"file":"storage-mural.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/mural/storage-mural.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,MAAM,WAAW,gBAAgB;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAClB;AAaD,wBAAgB,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CA8BnF;AAED,wBAAgB,WAAW,CACvB,EAAE,EAAE,QAAQ,EACZ,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,aAAa,CAAC,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GACvE,IAAI,CAaN"}
1
+ {"version":3,"file":"storage-mural.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/mural/storage-mural.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAkC,MAAM,wBAAwB,CAAC;AAEvF,MAAM,WAAW,gBAAgB;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAClB;AAaD,MAAM,WAAW,qBAAqB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACtB;AASD,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,qBAAqB,GAAG,IAAI,CAehG;AAED,wBAAgB,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CA8BnF;AAED,wBAAgB,WAAW,CACvB,EAAE,EAAE,QAAQ,EACZ,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,aAAa,CAAC,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GACvE,IAAI,CAaN"}
@@ -0,0 +1,132 @@
1
+ /**
2
+ * Conditional `opencode`/`opencode2` harness relabel driven by host-store evidence
3
+ * (migration v87).
4
+ *
5
+ * Background. Migration v85 rewrote EVERY `opencode2` row to `opencode` on the
6
+ * premise that no released Magic Context had ever run on a real OpenCode 2 host,
7
+ * so every such row had to be the OpenCode 1.x mislabel (ungated `setup()` locked
8
+ * the harness to "opencode2" on a 1.18.x seat). That premise held for most
9
+ * installs and was wrong for early adopters: a store written by a genuine
10
+ * OpenCode 2 host had its rows relabelled, the 2 host kept writing `opencode2`,
11
+ * and every tag and session row it had already written became invisible to it
12
+ * (issue #475: 2,788 tags and 32 session_meta rows).
13
+ *
14
+ * What this does instead. The label is decided PER SESSION from the OpenCode
15
+ * store itself — the same store the runtime reads — and only when that store
16
+ * answers. The rule is "whoever wrote the session most recently owns the label":
17
+ *
18
+ * newest 2.x activity > newest 1.x activity → `opencode2`
19
+ * newest 1.x activity > newest 2.x activity → `opencode`
20
+ * equal, or the session is in neither generation's tables → leave unchanged
21
+ *
22
+ * 2.x activity is read from `session_message`/`session_v2` and counted only when
23
+ * `session_v2` exists: a 1.18.x store ships an (empty) `session_message` table
24
+ * too, so `session_v2` is the table that proves a 2.x host has touched the store
25
+ * (PR #477). 1.x activity is read from `message.time_updated` and, for sessions
26
+ * with no messages, the `session.time_updated` row the host maintains.
27
+ *
28
+ * The equal case is not a theoretical tie. When an OpenCode 2 host migrates a
29
+ * 1.18.x store it copies each `session` row into `session_v2` with
30
+ * `time_created`/`time_updated` PRESERVED and moves no messages (observed with
31
+ * the real 1.18.30 and 2.0.5 binaries; pinned in
32
+ * `__fixtures__/opencode-store-shapes.json`). A migrated-but-never-used session
33
+ * therefore reports the same timestamp on both sides, which is exactly "no
34
+ * evidence of who wrote last" — so the stored label stands. Once either host
35
+ * writes again, its side becomes strictly newer and wins, which is what makes a
36
+ * downgraded store (2.x migrated, then 1.x used again) resolve to `opencode`.
37
+ *
38
+ * When the store cannot be resolved or read, NOTHING is relabelled: the affected
39
+ * session ids are recorded in `schema_migrations_meta` so `magic-context doctor`
40
+ * can report the unresolved repair, and the situation is logged once.
41
+ */
42
+ import { Database } from "../../shared/sqlite";
43
+ /** The two harness labels this repair moves rows between. */
44
+ export type RelabelHarness = "opencode" | "opencode2";
45
+ /** `schema_migrations_meta` key holding the unresolved-repair report for doctor. */
46
+ export declare const OPENCODE2_RELABEL_STATE_KEY = "v87_opencode2_relabel";
47
+ /**
48
+ * Tables whose harness twin cannot simply be relabelled: their PRIMARY KEY or
49
+ * UNIQUE key contains `harness`, so the same natural key can hold one row per
50
+ * label. v85 resolved these by keeping the newer row; v87 applies the SAME rule
51
+ * in whichever direction the session resolves, with a tie keeping the row that
52
+ * already carries the resolved label.
53
+ *
54
+ * `tags` is deliberately absent: its UNIQUE key is (session_id, tag_number) and
55
+ * does not mention harness, so relabelling can never collide there. Duplicate
56
+ * tag rows for one message are left alone on purpose — the tagger binds a
57
+ * duplicate composite key to the LOWEST tag_number row it finds
58
+ * (`storage-tags.ts`: `SELECT tag_number FROM tags WHERE session_id = ? AND
59
+ * message_id = ? ORDER BY tag_number ASC LIMIT 1`, and the matching
60
+ * `ORDER BY tag_number ASC` lookup for tool owners) and never deletes the newer
61
+ * one, so neither does this repair.
62
+ */
63
+ export declare const V87_HARNESS_TWIN_RULES: ReadonlyArray<{
64
+ table: string;
65
+ /** Natural-key columns other than `harness`. */
66
+ keyColumns: readonly string[];
67
+ /** True when the incoming (being relabelled) row is newer than the existing one. */
68
+ incomingIsNewer: string;
69
+ }>;
70
+ export interface OpenCode2RelabelReport {
71
+ /**
72
+ * `no_candidates` — nothing in this database carries an opencode/opencode2 label.
73
+ * `resolved` — the host store answered; see `relabelledSessions`.
74
+ * `unresolved` — no readable host store, so nothing was changed.
75
+ */
76
+ status: "no_candidates" | "resolved" | "unresolved";
77
+ reason?: "store_not_found" | "store_unreadable" | "store_schema_unknown";
78
+ storePath: string | null;
79
+ /** Sessions carrying an opencode/opencode2 label when the repair ran. */
80
+ candidateSessionIds: string[];
81
+ /** Sessions whose rows moved, with the label they moved to. */
82
+ relabelledSessions: Array<{
83
+ sessionId: string;
84
+ harness: RelabelHarness;
85
+ }>;
86
+ }
87
+ /** The unresolved report doctor reads back out of `schema_migrations_meta`. */
88
+ export interface UnresolvedOpenCode2Relabel {
89
+ reason: string;
90
+ /** Where the store was looked for when the repair ran. */
91
+ lookedFor: string;
92
+ sessionIds: string[];
93
+ recordedAt: number;
94
+ }
95
+ interface HarnessTableShape {
96
+ table: string;
97
+ hasSessionId: boolean;
98
+ }
99
+ export interface EvidenceStore {
100
+ newestV1Activity(sessionId: string): number | null;
101
+ newestV2Activity(sessionId: string): number | null;
102
+ }
103
+ type MinimalDb = Pick<Database, "prepare" | "exec">;
104
+ /**
105
+ * The v85 tables present in THIS database that carry a harness label, split by
106
+ * whether the label belongs to a session. Tables keyed by harness alone
107
+ * (`message_history_orphan_sweep`, `session_project_backfill_state`) are
108
+ * per-harness cursors, not session state: no session evidence can speak for
109
+ * them, so this repair leaves them where they are rather than guessing.
110
+ */
111
+ export declare function listSessionScopedHarnessTables(db: MinimalDb, tables: readonly string[]): HarnessTableShape[];
112
+ /** Decide one session's label from the store evidence. `null` means "no evidence". */
113
+ export declare function resolveHarnessFromEvidence(evidence: EvidenceStore, sessionId: string): RelabelHarness | null;
114
+ /**
115
+ * The unresolved-repair report for `magic-context doctor`, or null when the
116
+ * repair had nothing to do or completed against a readable store.
117
+ */
118
+ export declare function readUnresolvedOpenCode2Relabel(db: MinimalDb): UnresolvedOpenCode2Relabel | null;
119
+ export declare function formatUnresolvedOpenCode2RelabelDoctorLines(state: UnresolvedOpenCode2Relabel, maxSessions?: number): string[];
120
+ export interface RepairOptions {
121
+ /** Tables v85 relabelled; the repair covers exactly the same set. */
122
+ tables: readonly string[];
123
+ env?: NodeJS.ProcessEnv;
124
+ }
125
+ /**
126
+ * Relabel each session's rows to the generation that wrote that session most
127
+ * recently, in both directions, using the OpenCode store as the only evidence.
128
+ * Idempotent: a second run reads the same evidence and finds nothing to move.
129
+ */
130
+ export declare function repairOpenCode2HarnessLabels(db: Database, options: RepairOptions): OpenCode2RelabelReport;
131
+ export {};
132
+ //# sourceMappingURL=opencode2-relabel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencode2-relabel.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/opencode2-relabel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AASH,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,6DAA6D;AAC7D,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,WAAW,CAAC;AAEtD,oFAAoF;AACpF,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AAEnE;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,oFAAoF;IACpF,eAAe,EAAE,MAAM,CAAC;CAC3B,CAqBA,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACnC;;;;OAIG;IACH,MAAM,EAAE,eAAe,GAAG,UAAU,GAAG,YAAY,CAAC;IACpD,MAAM,CAAC,EAAE,iBAAiB,GAAG,kBAAkB,GAAG,sBAAsB,CAAC;IACzE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,yEAAyE;IACzE,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,+DAA+D;IAC/D,kBAAkB,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,cAAc,CAAA;KAAE,CAAC,CAAC;CAC7E;AAED,+EAA+E;AAC/E,MAAM,WAAW,0BAA0B;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,iBAAiB;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC1B,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACnD,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CACtD;AAMD,KAAK,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,SAAS,GAAG,MAAM,CAAC,CAAC;AAgBpD;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC1C,EAAE,EAAE,SAAS,EACb,MAAM,EAAE,SAAS,MAAM,EAAE,GAC1B,iBAAiB,EAAE,CASrB;AA8ED,sFAAsF;AACtF,wBAAgB,0BAA0B,CACtC,QAAQ,EAAE,aAAa,EACvB,SAAS,EAAE,MAAM,GAClB,cAAc,GAAG,IAAI,CAOvB;AAqED;;;GAGG;AACH,wBAAgB,8BAA8B,CAAC,EAAE,EAAE,SAAS,GAAG,0BAA0B,GAAG,IAAI,CAE/F;AAED,wBAAgB,2CAA2C,CACvD,KAAK,EAAE,0BAA0B,EACjC,WAAW,SAAK,GACjB,MAAM,EAAE,CAWV;AA0BD,MAAM,WAAW,aAAa;IAC1B,qEAAqE;IACrE,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CAC3B;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CACxC,EAAE,EAAE,QAAQ,EACZ,OAAO,EAAE,aAAa,GACvB,sBAAsB,CAuGxB"}
@@ -39,6 +39,8 @@ export interface ThinkingBindingMismatchDetection {
39
39
  export interface OverflowDetection {
40
40
  /** True if the error message matches a known overflow pattern. */
41
41
  isOverflow: boolean;
42
+ /** Provider-reported token count for the rejected input, when present. */
43
+ reportedInputTokens?: number;
42
44
  /** Reported context limit in tokens, if extractable from the message. */
43
45
  reportedLimit?: number;
44
46
  /** Whether the number is a prompt-only ceiling or a combined context window. */
@@ -67,5 +69,6 @@ export declare function detectOverflow(error: unknown): OverflowDetection;
67
69
  * of the known patterns matches. Returns undefined when no plausible number
68
70
  * can be extracted. Guards against false matches via plausibility clamp.
69
71
  */
72
+ export declare function parseReportedInputTokens(message: string): number | undefined;
70
73
  export declare function parseReportedLimit(message: string): ReportedContextLimit | undefined;
71
74
  //# sourceMappingURL=overflow-detection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"overflow-detection.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/overflow-detection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAEpF;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,MAAM,CAsBnD,CAAC;AAqDF,MAAM,WAAW,oBAAoB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,sBAAsB,CAAC;CACtC;AAED,MAAM,WAAW,gCAAgC;IAC7C,iBAAiB,EAAE,OAAO,CAAC;IAC3B,8DAA8D;IAC9D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAID,MAAM,WAAW,iBAAiB;IAC9B,kEAAkE;IAClE,UAAU,EAAE,OAAO,CAAC;IACpB,yEAAyE;IACzE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gFAAgF;IAChF,uBAAuB,CAAC,EAAE,sBAAsB,CAAC;IACjD,gEAAgE;IAChE,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CA6B1D;AA8CD;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,gCAAgC,CAe9F;AAED,qEAAqE;AACrE,wBAAgB,6BAA6B,CACzC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACrC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACnC,OAAO,CAGT;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,CA+BhE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CAapF"}
1
+ {"version":3,"file":"overflow-detection.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/overflow-detection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAEpF;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,MAAM,CAsBnD,CAAC;AAqDF,MAAM,WAAW,oBAAoB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,sBAAsB,CAAC;CACtC;AAED,MAAM,WAAW,gCAAgC;IAC7C,iBAAiB,EAAE,OAAO,CAAC;IAC3B,8DAA8D;IAC9D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAID,MAAM,WAAW,iBAAiB;IAC9B,kEAAkE;IAClE,UAAU,EAAE,OAAO,CAAC;IACpB,0EAA0E;IAC1E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,yEAAyE;IACzE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gFAAgF;IAChF,uBAAuB,CAAC,EAAE,sBAAsB,CAAC;IACjD,gEAAgE;IAChE,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CA6B1D;AA8CD;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,gCAAgC,CAe9F;AAED,qEAAqE;AACrE,wBAAgB,6BAA6B,CACzC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACrC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACnC,OAAO,CAGT;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,CAiChE;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAgB5E;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CAapF"}