@retaw106/mmc-oc 0.0.0-stage → 1.2.2

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 (1018) hide show
  1. package/dist/agents/historian.d.ts +4 -0
  2. package/dist/agents/historian.d.ts.map +1 -0
  3. package/dist/agents/language-directive.d.ts +26 -0
  4. package/dist/agents/language-directive.d.ts.map +1 -0
  5. package/dist/agents/magic-context-prompt.d.ts +5 -0
  6. package/dist/agents/magic-context-prompt.d.ts.map +1 -0
  7. package/dist/agents/memory-maintainer.d.ts +96 -0
  8. package/dist/agents/memory-maintainer.d.ts.map +1 -0
  9. package/dist/config/agent-disable.d.ts +29 -0
  10. package/dist/config/agent-disable.d.ts.map +1 -0
  11. package/dist/config/config-paths.d.ts +7 -0
  12. package/dist/config/config-paths.d.ts.map +1 -0
  13. package/dist/config/index.d.ts +69 -0
  14. package/dist/config/index.d.ts.map +1 -0
  15. package/dist/config/live-run-config.d.ts +11 -0
  16. package/dist/config/live-run-config.d.ts.map +1 -0
  17. package/dist/config/live-snapshot.d.ts +32 -0
  18. package/dist/config/live-snapshot.d.ts.map +1 -0
  19. package/dist/config/migrate-experimental.d.ts +26 -0
  20. package/dist/config/migrate-experimental.d.ts.map +1 -0
  21. package/dist/config/profiles.d.ts +22 -0
  22. package/dist/config/profiles.d.ts.map +1 -0
  23. package/dist/config/project-security.d.ts +124 -0
  24. package/dist/config/project-security.d.ts.map +1 -0
  25. package/dist/config/prune-config-leaf.d.ts +26 -0
  26. package/dist/config/prune-config-leaf.d.ts.map +1 -0
  27. package/dist/config/raw-loader.d.ts +42 -0
  28. package/dist/config/raw-loader.d.ts.map +1 -0
  29. package/dist/config/removed-agent-config.d.ts +8 -0
  30. package/dist/config/removed-agent-config.d.ts.map +1 -0
  31. package/dist/config/schema/agent-overrides.d.ts +52 -0
  32. package/dist/config/schema/agent-overrides.d.ts.map +1 -0
  33. package/dist/config/schema/magic-context.d.ts +805 -0
  34. package/dist/config/schema/magic-context.d.ts.map +1 -0
  35. package/dist/config/variable.d.ts +48 -0
  36. package/dist/config/variable.d.ts.map +1 -0
  37. package/dist/context-a6px04s0.js +23932 -0
  38. package/dist/derive-budgets-fhk00zv8.js +18 -0
  39. package/dist/features/magic-context/compaction-marker.d.ts +211 -0
  40. package/dist/features/magic-context/compaction-marker.d.ts.map +1 -0
  41. package/dist/features/magic-context/compaction.d.ts +7 -0
  42. package/dist/features/magic-context/compaction.d.ts.map +1 -0
  43. package/dist/features/magic-context/compartment-events.d.ts +50 -0
  44. package/dist/features/magic-context/compartment-events.d.ts.map +1 -0
  45. package/dist/features/magic-context/compartment-lease.d.ts +28 -0
  46. package/dist/features/magic-context/compartment-lease.d.ts.map +1 -0
  47. package/dist/features/magic-context/compartment-storage.d.ts +178 -0
  48. package/dist/features/magic-context/compartment-storage.d.ts.map +1 -0
  49. package/dist/features/magic-context/compression-depth-storage.d.ts +14 -0
  50. package/dist/features/magic-context/compression-depth-storage.d.ts.map +1 -0
  51. package/dist/features/magic-context/context-authority.d.ts +15 -0
  52. package/dist/features/magic-context/context-authority.d.ts.map +1 -0
  53. package/dist/features/magic-context/fail-closed-block.d.ts +117 -0
  54. package/dist/features/magic-context/fail-closed-block.d.ts.map +1 -0
  55. package/dist/features/magic-context/index.d.ts +10 -0
  56. package/dist/features/magic-context/index.d.ts.map +1 -0
  57. package/dist/features/magic-context/literal-probes.d.ts +24 -0
  58. package/dist/features/magic-context/literal-probes.d.ts.map +1 -0
  59. package/dist/features/magic-context/lkg-prefix-chunks.d.ts +53 -0
  60. package/dist/features/magic-context/lkg-prefix-chunks.d.ts.map +1 -0
  61. package/dist/features/magic-context/memory/constants.d.ts +16 -0
  62. package/dist/features/magic-context/memory/constants.d.ts.map +1 -0
  63. package/dist/features/magic-context/memory/index.d.ts +11 -0
  64. package/dist/features/magic-context/memory/index.d.ts.map +1 -0
  65. package/dist/features/magic-context/memory/memory-diagnostics.d.ts +6 -0
  66. package/dist/features/magic-context/memory/memory-diagnostics.d.ts.map +1 -0
  67. package/dist/features/magic-context/memory/memory-selection.d.ts +12 -0
  68. package/dist/features/magic-context/memory/memory-selection.d.ts.map +1 -0
  69. package/dist/features/magic-context/memory/memory-visibility.d.ts +46 -0
  70. package/dist/features/magic-context/memory/memory-visibility.d.ts.map +1 -0
  71. package/dist/features/magic-context/memory/normalize-hash.d.ts +3 -0
  72. package/dist/features/magic-context/memory/normalize-hash.d.ts.map +1 -0
  73. package/dist/features/magic-context/memory/project-identity-cache.d.ts +7 -0
  74. package/dist/features/magic-context/memory/project-identity-cache.d.ts.map +1 -0
  75. package/dist/features/magic-context/memory/project-identity.d.ts +97 -0
  76. package/dist/features/magic-context/memory/project-identity.d.ts.map +1 -0
  77. package/dist/features/magic-context/memory/promotion.d.ts +26 -0
  78. package/dist/features/magic-context/memory/promotion.d.ts.map +1 -0
  79. package/dist/features/magic-context/memory/relocate-memory.d.ts +58 -0
  80. package/dist/features/magic-context/memory/relocate-memory.d.ts.map +1 -0
  81. package/dist/features/magic-context/memory/storage-memory-fts.d.ts +11 -0
  82. package/dist/features/magic-context/memory/storage-memory-fts.d.ts.map +1 -0
  83. package/dist/features/magic-context/memory/storage-memory-verifications.d.ts +35 -0
  84. package/dist/features/magic-context/memory/storage-memory-verifications.d.ts.map +1 -0
  85. package/dist/features/magic-context/memory/storage-memory.d.ts +89 -0
  86. package/dist/features/magic-context/memory/storage-memory.d.ts.map +1 -0
  87. package/dist/features/magic-context/memory/types.d.ts +59 -0
  88. package/dist/features/magic-context/memory/types.d.ts.map +1 -0
  89. package/dist/features/magic-context/memory/verification-paths.d.ts +48 -0
  90. package/dist/features/magic-context/memory/verification-paths.d.ts.map +1 -0
  91. package/dist/features/magic-context/memory/visibility.d.ts +6 -0
  92. package/dist/features/magic-context/memory/visibility.d.ts.map +1 -0
  93. package/dist/features/magic-context/memory-maintainer/apply.d.ts +65 -0
  94. package/dist/features/magic-context/memory-maintainer/apply.d.ts.map +1 -0
  95. package/dist/features/magic-context/memory-maintainer/budget.d.ts +75 -0
  96. package/dist/features/magic-context/memory-maintainer/budget.d.ts.map +1 -0
  97. package/dist/features/magic-context/memory-maintainer/coverage.d.ts +91 -0
  98. package/dist/features/magic-context/memory-maintainer/coverage.d.ts.map +1 -0
  99. package/dist/features/magic-context/memory-maintainer/dream-state.d.ts +18 -0
  100. package/dist/features/magic-context/memory-maintainer/dream-state.d.ts.map +1 -0
  101. package/dist/features/magic-context/memory-maintainer/launcher.d.ts +119 -0
  102. package/dist/features/magic-context/memory-maintainer/launcher.d.ts.map +1 -0
  103. package/dist/features/magic-context/memory-maintainer/lease.d.ts +56 -0
  104. package/dist/features/magic-context/memory-maintainer/lease.d.ts.map +1 -0
  105. package/dist/features/magic-context/memory-maintainer/manifest.d.ts +127 -0
  106. package/dist/features/magic-context/memory-maintainer/manifest.d.ts.map +1 -0
  107. package/dist/features/magic-context/memory-maintainer/manual-commands.d.ts +46 -0
  108. package/dist/features/magic-context/memory-maintainer/manual-commands.d.ts.map +1 -0
  109. package/dist/features/magic-context/memory-maintainer/oc2-adapter.d.ts +79 -0
  110. package/dist/features/magic-context/memory-maintainer/oc2-adapter.d.ts.map +1 -0
  111. package/dist/features/magic-context/memory-maintainer/pause-report.d.ts +37 -0
  112. package/dist/features/magic-context/memory-maintainer/pause-report.d.ts.map +1 -0
  113. package/dist/features/magic-context/memory-maintainer/pipeline.d.ts +199 -0
  114. package/dist/features/magic-context/memory-maintainer/pipeline.d.ts.map +1 -0
  115. package/dist/features/magic-context/memory-maintainer/provider-output-failure.d.ts +15 -0
  116. package/dist/features/magic-context/memory-maintainer/provider-output-failure.d.ts.map +1 -0
  117. package/dist/features/magic-context/memory-maintainer/schedule-storage.d.ts +76 -0
  118. package/dist/features/magic-context/memory-maintainer/schedule-storage.d.ts.map +1 -0
  119. package/dist/features/magic-context/memory-maintainer/schedule.d.ts +90 -0
  120. package/dist/features/magic-context/memory-maintainer/schedule.d.ts.map +1 -0
  121. package/dist/features/magic-context/merged-reasoning-decisions.d.ts +6 -0
  122. package/dist/features/magic-context/merged-reasoning-decisions.d.ts.map +1 -0
  123. package/dist/features/magic-context/message-fts-rowid-map.d.ts +50 -0
  124. package/dist/features/magic-context/message-fts-rowid-map.d.ts.map +1 -0
  125. package/dist/features/magic-context/message-fts-session-filter.d.ts +14 -0
  126. package/dist/features/magic-context/message-fts-session-filter.d.ts.map +1 -0
  127. package/dist/features/magic-context/message-index-async.d.ts +33 -0
  128. package/dist/features/magic-context/message-index-async.d.ts.map +1 -0
  129. package/dist/features/magic-context/message-index-sweep.d.ts +11 -0
  130. package/dist/features/magic-context/message-index-sweep.d.ts.map +1 -0
  131. package/dist/features/magic-context/message-index.d.ts +88 -0
  132. package/dist/features/magic-context/message-index.d.ts.map +1 -0
  133. package/dist/features/magic-context/message-time-backfill.d.ts +19 -0
  134. package/dist/features/magic-context/message-time-backfill.d.ts.map +1 -0
  135. package/dist/features/magic-context/migration-v2-write-split.d.ts +62 -0
  136. package/dist/features/magic-context/migration-v2-write-split.d.ts.map +1 -0
  137. package/dist/features/magic-context/migrations.d.ts +73 -0
  138. package/dist/features/magic-context/migrations.d.ts.map +1 -0
  139. package/dist/features/magic-context/mock-database.d.ts +3 -0
  140. package/dist/features/magic-context/mock-database.d.ts.map +1 -0
  141. package/dist/features/magic-context/mural/storage-mural-cues.d.ts +65 -0
  142. package/dist/features/magic-context/mural/storage-mural-cues.d.ts.map +1 -0
  143. package/dist/features/magic-context/no-content-compartment.d.ts +12 -0
  144. package/dist/features/magic-context/no-content-compartment.d.ts.map +1 -0
  145. package/dist/features/magic-context/opencode2-relabel.d.ts +132 -0
  146. package/dist/features/magic-context/opencode2-relabel.d.ts.map +1 -0
  147. package/dist/features/magic-context/overflow-detection.d.ts +108 -0
  148. package/dist/features/magic-context/overflow-detection.d.ts.map +1 -0
  149. package/dist/features/magic-context/pi-content-decisions.d.ts +9 -0
  150. package/dist/features/magic-context/pi-content-decisions.d.ts.map +1 -0
  151. package/dist/features/magic-context/project-identity.d.ts +2 -0
  152. package/dist/features/magic-context/project-identity.d.ts.map +1 -0
  153. package/dist/features/magic-context/protection-window.d.ts +79 -0
  154. package/dist/features/magic-context/protection-window.d.ts.map +1 -0
  155. package/dist/features/magic-context/range-parser.d.ts +18 -0
  156. package/dist/features/magic-context/range-parser.d.ts.map +1 -0
  157. package/dist/features/magic-context/reclaim-protection.d.ts +13 -0
  158. package/dist/features/magic-context/reclaim-protection.d.ts.map +1 -0
  159. package/dist/features/magic-context/resolve-subagent-fallback.d.ts +42 -0
  160. package/dist/features/magic-context/resolve-subagent-fallback.d.ts.map +1 -0
  161. package/dist/features/magic-context/scheduler.d.ts +20 -0
  162. package/dist/features/magic-context/scheduler.d.ts.map +1 -0
  163. package/dist/features/magic-context/schema-fence-probe.d.ts +29 -0
  164. package/dist/features/magic-context/schema-fence-probe.d.ts.map +1 -0
  165. package/dist/features/magic-context/search.d.ts +118 -0
  166. package/dist/features/magic-context/search.d.ts.map +1 -0
  167. package/dist/features/magic-context/session-cache-ttl.d.ts +10 -0
  168. package/dist/features/magic-context/session-cache-ttl.d.ts.map +1 -0
  169. package/dist/features/magic-context/session-decision-calibration.d.ts +31 -0
  170. package/dist/features/magic-context/session-decision-calibration.d.ts.map +1 -0
  171. package/dist/features/magic-context/session-project-backfill.d.ts +37 -0
  172. package/dist/features/magic-context/session-project-backfill.d.ts.map +1 -0
  173. package/dist/features/magic-context/session-project-storage.d.ts +23 -0
  174. package/dist/features/magic-context/session-project-storage.d.ts.map +1 -0
  175. package/dist/features/magic-context/storage-caveman-rules.d.ts +21 -0
  176. package/dist/features/magic-context/storage-caveman-rules.d.ts.map +1 -0
  177. package/dist/features/magic-context/storage-clone.d.ts +44 -0
  178. package/dist/features/magic-context/storage-clone.d.ts.map +1 -0
  179. package/dist/features/magic-context/storage-db.d.ts +183 -0
  180. package/dist/features/magic-context/storage-db.d.ts.map +1 -0
  181. package/dist/features/magic-context/storage-historian-runs.d.ts +79 -0
  182. package/dist/features/magic-context/storage-historian-runs.d.ts.map +1 -0
  183. package/dist/features/magic-context/storage-identity-merge.d.ts +26 -0
  184. package/dist/features/magic-context/storage-identity-merge.d.ts.map +1 -0
  185. package/dist/features/magic-context/storage-identity-rekey-map.d.ts +11 -0
  186. package/dist/features/magic-context/storage-identity-rekey-map.d.ts.map +1 -0
  187. package/dist/features/magic-context/storage-m0-mutation-log.d.ts +22 -0
  188. package/dist/features/magic-context/storage-m0-mutation-log.d.ts.map +1 -0
  189. package/dist/features/magic-context/storage-memory-mutation-log.d.ts +29 -0
  190. package/dist/features/magic-context/storage-memory-mutation-log.d.ts.map +1 -0
  191. package/dist/features/magic-context/storage-meta-persisted.d.ts +623 -0
  192. package/dist/features/magic-context/storage-meta-persisted.d.ts.map +1 -0
  193. package/dist/features/magic-context/storage-meta-session.d.ts +14 -0
  194. package/dist/features/magic-context/storage-meta-session.d.ts.map +1 -0
  195. package/dist/features/magic-context/storage-meta-shared.d.ts +102 -0
  196. package/dist/features/magic-context/storage-meta-shared.d.ts.map +1 -0
  197. package/dist/features/magic-context/storage-meta.d.ts +4 -0
  198. package/dist/features/magic-context/storage-meta.d.ts.map +1 -0
  199. package/dist/features/magic-context/storage-native-replay.d.ts +29 -0
  200. package/dist/features/magic-context/storage-native-replay.d.ts.map +1 -0
  201. package/dist/features/magic-context/storage-notes.d.ts +80 -0
  202. package/dist/features/magic-context/storage-notes.d.ts.map +1 -0
  203. package/dist/features/magic-context/storage-ops.d.ts +14 -0
  204. package/dist/features/magic-context/storage-ops.d.ts.map +1 -0
  205. package/dist/features/magic-context/storage-primers.d.ts +96 -0
  206. package/dist/features/magic-context/storage-primers.d.ts.map +1 -0
  207. package/dist/features/magic-context/storage-project-state.d.ts +19 -0
  208. package/dist/features/magic-context/storage-project-state.d.ts.map +1 -0
  209. package/dist/features/magic-context/storage-reasoning-removal.d.ts +30 -0
  210. package/dist/features/magic-context/storage-reasoning-removal.d.ts.map +1 -0
  211. package/dist/features/magic-context/storage-replay-document.d.ts +72 -0
  212. package/dist/features/magic-context/storage-replay-document.d.ts.map +1 -0
  213. package/dist/features/magic-context/storage-schema-helpers.d.ts +31 -0
  214. package/dist/features/magic-context/storage-schema-helpers.d.ts.map +1 -0
  215. package/dist/features/magic-context/storage-session-tables.d.ts +18 -0
  216. package/dist/features/magic-context/storage-session-tables.d.ts.map +1 -0
  217. package/dist/features/magic-context/storage-source.d.ts +5 -0
  218. package/dist/features/magic-context/storage-source.d.ts.map +1 -0
  219. package/dist/features/magic-context/storage-subagent-invocations.d.ts +62 -0
  220. package/dist/features/magic-context/storage-subagent-invocations.d.ts.map +1 -0
  221. package/dist/features/magic-context/storage-tags.d.ts +542 -0
  222. package/dist/features/magic-context/storage-tags.d.ts.map +1 -0
  223. package/dist/features/magic-context/storage-unavailable-reason.d.ts +17 -0
  224. package/dist/features/magic-context/storage-unavailable-reason.d.ts.map +1 -0
  225. package/dist/features/magic-context/storage-v22-backfill-failures.d.ts +26 -0
  226. package/dist/features/magic-context/storage-v22-backfill-failures.d.ts.map +1 -0
  227. package/dist/features/magic-context/storage.d.ts +23 -0
  228. package/dist/features/magic-context/storage.d.ts.map +1 -0
  229. package/dist/features/magic-context/store-generation-rebase.d.ts +188 -0
  230. package/dist/features/magic-context/store-generation-rebase.d.ts.map +1 -0
  231. package/dist/features/magic-context/subagent-token-capture.d.ts +35 -0
  232. package/dist/features/magic-context/subagent-token-capture.d.ts.map +1 -0
  233. package/dist/features/magic-context/tag-input.d.ts +4 -0
  234. package/dist/features/magic-context/tag-input.d.ts.map +1 -0
  235. package/dist/features/magic-context/tagger.d.ts +119 -0
  236. package/dist/features/magic-context/tagger.d.ts.map +1 -0
  237. package/dist/features/magic-context/tool-definition-tokens.d.ts +90 -0
  238. package/dist/features/magic-context/tool-definition-tokens.d.ts.map +1 -0
  239. package/dist/features/magic-context/tool-owner-backfill.d.ts +93 -0
  240. package/dist/features/magic-context/tool-owner-backfill.d.ts.map +1 -0
  241. package/dist/features/magic-context/transform-decision-log.d.ts +110 -0
  242. package/dist/features/magic-context/transform-decision-log.d.ts.map +1 -0
  243. package/dist/features/magic-context/types.d.ts +133 -0
  244. package/dist/features/magic-context/types.d.ts.map +1 -0
  245. package/dist/features/magic-context/window-report-ledger.d.ts +70 -0
  246. package/dist/features/magic-context/window-report-ledger.d.ts.map +1 -0
  247. package/dist/features/magic-context/work-metrics.d.ts +79 -0
  248. package/dist/features/magic-context/work-metrics.d.ts.map +1 -0
  249. package/dist/features/magic-context/workspaces.d.ts +28 -0
  250. package/dist/features/magic-context/workspaces.d.ts.map +1 -0
  251. package/dist/hooks/auto-update-checker/semver.d.ts +26 -0
  252. package/dist/hooks/auto-update-checker/semver.d.ts.map +1 -0
  253. package/dist/hooks/magic-context/apply-operations.d.ts +158 -0
  254. package/dist/hooks/magic-context/apply-operations.d.ts.map +1 -0
  255. package/dist/hooks/magic-context/auto-search-deadline.d.ts +10 -0
  256. package/dist/hooks/magic-context/auto-search-deadline.d.ts.map +1 -0
  257. package/dist/hooks/magic-context/auto-search-hint.d.ts +36 -0
  258. package/dist/hooks/magic-context/auto-search-hint.d.ts.map +1 -0
  259. package/dist/hooks/magic-context/auto-search-runner.d.ts +60 -0
  260. package/dist/hooks/magic-context/auto-search-runner.d.ts.map +1 -0
  261. package/dist/hooks/magic-context/cache-busting-signals.d.ts +42 -0
  262. package/dist/hooks/magic-context/cache-busting-signals.d.ts.map +1 -0
  263. package/dist/hooks/magic-context/caveman-cleanup.d.ts +98 -0
  264. package/dist/hooks/magic-context/caveman-cleanup.d.ts.map +1 -0
  265. package/dist/hooks/magic-context/caveman.d.ts +90 -0
  266. package/dist/hooks/magic-context/caveman.d.ts.map +1 -0
  267. package/dist/hooks/magic-context/channel2-cycle.d.ts +16 -0
  268. package/dist/hooks/magic-context/channel2-cycle.d.ts.map +1 -0
  269. package/dist/hooks/magic-context/channel2-delivery.d.ts +32 -0
  270. package/dist/hooks/magic-context/channel2-delivery.d.ts.map +1 -0
  271. package/dist/hooks/magic-context/child-session-spawn.d.ts +27 -0
  272. package/dist/hooks/magic-context/child-session-spawn.d.ts.map +1 -0
  273. package/dist/hooks/magic-context/compaction-marker-manager.d.ts +154 -0
  274. package/dist/hooks/magic-context/compaction-marker-manager.d.ts.map +1 -0
  275. package/dist/hooks/magic-context/compaction-off-transition.d.ts +97 -0
  276. package/dist/hooks/magic-context/compaction-off-transition.d.ts.map +1 -0
  277. package/dist/hooks/magic-context/compartment-parser.d.ts +66 -0
  278. package/dist/hooks/magic-context/compartment-parser.d.ts.map +1 -0
  279. package/dist/hooks/magic-context/compartment-prompt.d.ts +33 -0
  280. package/dist/hooks/magic-context/compartment-prompt.d.ts.map +1 -0
  281. package/dist/hooks/magic-context/compartment-render-epoch.d.ts +27 -0
  282. package/dist/hooks/magic-context/compartment-render-epoch.d.ts.map +1 -0
  283. package/dist/hooks/magic-context/compartment-runner-drop-queue.d.ts +29 -0
  284. package/dist/hooks/magic-context/compartment-runner-drop-queue.d.ts.map +1 -0
  285. package/dist/hooks/magic-context/compartment-runner-historian.d.ts +43 -0
  286. package/dist/hooks/magic-context/compartment-runner-historian.d.ts.map +1 -0
  287. package/dist/hooks/magic-context/compartment-runner-incremental.d.ts +31 -0
  288. package/dist/hooks/magic-context/compartment-runner-incremental.d.ts.map +1 -0
  289. package/dist/hooks/magic-context/compartment-runner-mapping.d.ts +25 -0
  290. package/dist/hooks/magic-context/compartment-runner-mapping.d.ts.map +1 -0
  291. package/dist/hooks/magic-context/compartment-runner-partial-recomp.d.ts +29 -0
  292. package/dist/hooks/magic-context/compartment-runner-partial-recomp.d.ts.map +1 -0
  293. package/dist/hooks/magic-context/compartment-runner-recomp.d.ts +11 -0
  294. package/dist/hooks/magic-context/compartment-runner-recomp.d.ts.map +1 -0
  295. package/dist/hooks/magic-context/compartment-runner-types.d.ts +295 -0
  296. package/dist/hooks/magic-context/compartment-runner-types.d.ts.map +1 -0
  297. package/dist/hooks/magic-context/compartment-runner-validation.d.ts +83 -0
  298. package/dist/hooks/magic-context/compartment-runner-validation.d.ts.map +1 -0
  299. package/dist/hooks/magic-context/compartment-runner.d.ts +59 -0
  300. package/dist/hooks/magic-context/compartment-runner.d.ts.map +1 -0
  301. package/dist/hooks/magic-context/compartment-trigger.d.ts +77 -0
  302. package/dist/hooks/magic-context/compartment-trigger.d.ts.map +1 -0
  303. package/dist/hooks/magic-context/ctx-reduce-availability.d.ts +170 -0
  304. package/dist/hooks/magic-context/ctx-reduce-availability.d.ts.map +1 -0
  305. package/dist/hooks/magic-context/ctx-reduce-nudge.d.ts +104 -0
  306. package/dist/hooks/magic-context/ctx-reduce-nudge.d.ts.map +1 -0
  307. package/dist/hooks/magic-context/decay-curve.d.ts +84 -0
  308. package/dist/hooks/magic-context/decay-curve.d.ts.map +1 -0
  309. package/dist/hooks/magic-context/decay-render.d.ts +80 -0
  310. package/dist/hooks/magic-context/decay-render.d.ts.map +1 -0
  311. package/dist/hooks/magic-context/decision-calibration.d.ts +24 -0
  312. package/dist/hooks/magic-context/decision-calibration.d.ts.map +1 -0
  313. package/dist/hooks/magic-context/degraded-pass-refusal.d.ts +35 -0
  314. package/dist/hooks/magic-context/degraded-pass-refusal.d.ts.map +1 -0
  315. package/dist/hooks/magic-context/derive-budgets.d.ts +60 -0
  316. package/dist/hooks/magic-context/derive-budgets.d.ts.map +1 -0
  317. package/dist/hooks/magic-context/drop-stale-reduce-calls.d.ts +39 -0
  318. package/dist/hooks/magic-context/drop-stale-reduce-calls.d.ts.map +1 -0
  319. package/dist/hooks/magic-context/dropped-input-guard.d.ts +55 -0
  320. package/dist/hooks/magic-context/dropped-input-guard.d.ts.map +1 -0
  321. package/dist/hooks/magic-context/dropped-token-estimate.d.ts +20 -0
  322. package/dist/hooks/magic-context/dropped-token-estimate.d.ts.map +1 -0
  323. package/dist/hooks/magic-context/edit-marker.d.ts +11 -0
  324. package/dist/hooks/magic-context/edit-marker.d.ts.map +1 -0
  325. package/dist/hooks/magic-context/emergency-drop.d.ts +112 -0
  326. package/dist/hooks/magic-context/emergency-drop.d.ts.map +1 -0
  327. package/dist/hooks/magic-context/emergency-fail-closed.d.ts +14 -0
  328. package/dist/hooks/magic-context/emergency-fail-closed.d.ts.map +1 -0
  329. package/dist/hooks/magic-context/empty-task-output.d.ts +16 -0
  330. package/dist/hooks/magic-context/empty-task-output.d.ts.map +1 -0
  331. package/dist/hooks/magic-context/event-payloads.d.ts +73 -0
  332. package/dist/hooks/magic-context/event-payloads.d.ts.map +1 -0
  333. package/dist/hooks/magic-context/event-resolvers.d.ts +114 -0
  334. package/dist/hooks/magic-context/event-resolvers.d.ts.map +1 -0
  335. package/dist/hooks/magic-context/execute-flush.d.ts +3 -0
  336. package/dist/hooks/magic-context/execute-flush.d.ts.map +1 -0
  337. package/dist/hooks/magic-context/final-wire-token-estimate.d.ts +56 -0
  338. package/dist/hooks/magic-context/final-wire-token-estimate.d.ts.map +1 -0
  339. package/dist/hooks/magic-context/fold-execution-gate.d.ts +2 -0
  340. package/dist/hooks/magic-context/fold-execution-gate.d.ts.map +1 -0
  341. package/dist/hooks/magic-context/format-bytes.d.ts +2 -0
  342. package/dist/hooks/magic-context/format-bytes.d.ts.map +1 -0
  343. package/dist/hooks/magic-context/heuristic-cleanup.d.ts +48 -0
  344. package/dist/hooks/magic-context/heuristic-cleanup.d.ts.map +1 -0
  345. package/dist/hooks/magic-context/historian-no-fire-cause.d.ts +5 -0
  346. package/dist/hooks/magic-context/historian-no-fire-cause.d.ts.map +1 -0
  347. package/dist/hooks/magic-context/historian-prompt-fit.d.ts +112 -0
  348. package/dist/hooks/magic-context/historian-prompt-fit.d.ts.map +1 -0
  349. package/dist/hooks/magic-context/historian-prompt.generated.d.ts +2 -0
  350. package/dist/hooks/magic-context/historian-prompt.generated.d.ts.map +1 -0
  351. package/dist/hooks/magic-context/historian-publish-stage-logger.d.ts +3 -0
  352. package/dist/hooks/magic-context/historian-publish-stage-logger.d.ts.map +1 -0
  353. package/dist/hooks/magic-context/historian-state-file.d.ts +43 -0
  354. package/dist/hooks/magic-context/historian-state-file.d.ts.map +1 -0
  355. package/dist/hooks/magic-context/history-boundary-repair.d.ts +44 -0
  356. package/dist/hooks/magic-context/history-boundary-repair.d.ts.map +1 -0
  357. package/dist/hooks/magic-context/hook-handlers.d.ts +177 -0
  358. package/dist/hooks/magic-context/hook-handlers.d.ts.map +1 -0
  359. package/dist/hooks/magic-context/host-served-rows.d.ts +58 -0
  360. package/dist/hooks/magic-context/host-served-rows.d.ts.map +1 -0
  361. package/dist/hooks/magic-context/image-token-estimate.d.ts +15 -0
  362. package/dist/hooks/magic-context/image-token-estimate.d.ts.map +1 -0
  363. package/dist/hooks/magic-context/inject-compartments.d.ts +389 -0
  364. package/dist/hooks/magic-context/inject-compartments.d.ts.map +1 -0
  365. package/dist/hooks/magic-context/issue-135-wire-fixtures.d.ts +8 -0
  366. package/dist/hooks/magic-context/issue-135-wire-fixtures.d.ts.map +1 -0
  367. package/dist/hooks/magic-context/issue-423-fixture.d.ts +37 -0
  368. package/dist/hooks/magic-context/issue-423-fixture.d.ts.map +1 -0
  369. package/dist/hooks/magic-context/issue-424-fixture.d.ts +11 -0
  370. package/dist/hooks/magic-context/issue-424-fixture.d.ts.map +1 -0
  371. package/dist/hooks/magic-context/legacy-compartments.d.ts +20 -0
  372. package/dist/hooks/magic-context/legacy-compartments.d.ts.map +1 -0
  373. package/dist/hooks/magic-context/live-session-state.d.ts +68 -0
  374. package/dist/hooks/magic-context/live-session-state.d.ts.map +1 -0
  375. package/dist/hooks/magic-context/lkg-persist.d.ts +22 -0
  376. package/dist/hooks/magic-context/lkg-persist.d.ts.map +1 -0
  377. package/dist/hooks/magic-context/lkg-replay.d.ts +71 -0
  378. package/dist/hooks/magic-context/lkg-replay.d.ts.map +1 -0
  379. package/dist/hooks/magic-context/lkg-slot.d.ts +119 -0
  380. package/dist/hooks/magic-context/lkg-slot.d.ts.map +1 -0
  381. package/dist/hooks/magic-context/m0-token-breakdown.d.ts +44 -0
  382. package/dist/hooks/magic-context/m0-token-breakdown.d.ts.map +1 -0
  383. package/dist/hooks/magic-context/maintenance-authority.d.ts +2 -0
  384. package/dist/hooks/magic-context/maintenance-authority.d.ts.map +1 -0
  385. package/dist/hooks/magic-context/openai-compat-adjacency.d.ts +38 -0
  386. package/dist/hooks/magic-context/openai-compat-adjacency.d.ts.map +1 -0
  387. package/dist/hooks/magic-context/opencode-v1-store-fixture.d.ts +12 -0
  388. package/dist/hooks/magic-context/opencode-v1-store-fixture.d.ts.map +1 -0
  389. package/dist/hooks/magic-context/pass-outcome.d.ts +70 -0
  390. package/dist/hooks/magic-context/pass-outcome.d.ts.map +1 -0
  391. package/dist/hooks/magic-context/persist-filtered-noise.d.ts +5 -0
  392. package/dist/hooks/magic-context/persist-filtered-noise.d.ts.map +1 -0
  393. package/dist/hooks/magic-context/postprocess-read-cache.d.ts +8 -0
  394. package/dist/hooks/magic-context/postprocess-read-cache.d.ts.map +1 -0
  395. package/dist/hooks/magic-context/producer-window-guard.d.ts +63 -0
  396. package/dist/hooks/magic-context/producer-window-guard.d.ts.map +1 -0
  397. package/dist/hooks/magic-context/producer-window-test-support.d.ts +14 -0
  398. package/dist/hooks/magic-context/producer-window-test-support.d.ts.map +1 -0
  399. package/dist/hooks/magic-context/protected-tail-boundary.d.ts +234 -0
  400. package/dist/hooks/magic-context/protected-tail-boundary.d.ts.map +1 -0
  401. package/dist/hooks/magic-context/raw-fallback-context-limit.d.ts +10 -0
  402. package/dist/hooks/magic-context/raw-fallback-context-limit.d.ts.map +1 -0
  403. package/dist/hooks/magic-context/read-session-chunk.d.ts +271 -0
  404. package/dist/hooks/magic-context/read-session-chunk.d.ts.map +1 -0
  405. package/dist/hooks/magic-context/read-session-db.d.ts +66 -0
  406. package/dist/hooks/magic-context/read-session-db.d.ts.map +1 -0
  407. package/dist/hooks/magic-context/read-session-formatting.d.ts +65 -0
  408. package/dist/hooks/magic-context/read-session-formatting.d.ts.map +1 -0
  409. package/dist/hooks/magic-context/read-session-raw.d.ts +164 -0
  410. package/dist/hooks/magic-context/read-session-raw.d.ts.map +1 -0
  411. package/dist/hooks/magic-context/read-session-true-raw-tokens.d.ts +82 -0
  412. package/dist/hooks/magic-context/read-session-true-raw-tokens.d.ts.map +1 -0
  413. package/dist/hooks/magic-context/reasoning-removal.d.ts +60 -0
  414. package/dist/hooks/magic-context/reasoning-removal.d.ts.map +1 -0
  415. package/dist/hooks/magic-context/recomp-orchestrator.d.ts +93 -0
  416. package/dist/hooks/magic-context/recomp-orchestrator.d.ts.map +1 -0
  417. package/dist/hooks/magic-context/reference-retrieval.d.ts +72 -0
  418. package/dist/hooks/magic-context/reference-retrieval.d.ts.map +1 -0
  419. package/dist/hooks/magic-context/reference-seeds.generated.d.ts +8 -0
  420. package/dist/hooks/magic-context/reference-seeds.generated.d.ts.map +1 -0
  421. package/dist/hooks/magic-context/send-session-notification.d.ts +43 -0
  422. package/dist/hooks/magic-context/send-session-notification.d.ts.map +1 -0
  423. package/dist/hooks/magic-context/sentinel.d.ts +146 -0
  424. package/dist/hooks/magic-context/sentinel.d.ts.map +1 -0
  425. package/dist/hooks/magic-context/storage-busy-refusal.d.ts +20 -0
  426. package/dist/hooks/magic-context/storage-busy-refusal.d.ts.map +1 -0
  427. package/dist/hooks/magic-context/strip-content.d.ts +216 -0
  428. package/dist/hooks/magic-context/strip-content.d.ts.map +1 -0
  429. package/dist/hooks/magic-context/strip-structural-noise.d.ts +15 -0
  430. package/dist/hooks/magic-context/strip-structural-noise.d.ts.map +1 -0
  431. package/dist/hooks/magic-context/stripped-command.d.ts +56 -0
  432. package/dist/hooks/magic-context/stripped-command.d.ts.map +1 -0
  433. package/dist/hooks/magic-context/supersession-reclaim.d.ts +58 -0
  434. package/dist/hooks/magic-context/supersession-reclaim.d.ts.map +1 -0
  435. package/dist/hooks/magic-context/system-injection-stripper.d.ts +2 -0
  436. package/dist/hooks/magic-context/system-injection-stripper.d.ts.map +1 -0
  437. package/dist/hooks/magic-context/system-prompt-hash.d.ts +129 -0
  438. package/dist/hooks/magic-context/system-prompt-hash.d.ts.map +1 -0
  439. package/dist/hooks/magic-context/tag-content-primitives.d.ts +31 -0
  440. package/dist/hooks/magic-context/tag-content-primitives.d.ts.map +1 -0
  441. package/dist/hooks/magic-context/tag-id-fallback.d.ts +11 -0
  442. package/dist/hooks/magic-context/tag-id-fallback.d.ts.map +1 -0
  443. package/dist/hooks/magic-context/tag-messages.d.ts +145 -0
  444. package/dist/hooks/magic-context/tag-messages.d.ts.map +1 -0
  445. package/dist/hooks/magic-context/tag-part-guards.d.ts +23 -0
  446. package/dist/hooks/magic-context/tag-part-guards.d.ts.map +1 -0
  447. package/dist/hooks/magic-context/tail-hygiene-walk.d.ts +178 -0
  448. package/dist/hooks/magic-context/tail-hygiene-walk.d.ts.map +1 -0
  449. package/dist/hooks/magic-context/temporal-awareness.d.ts +73 -0
  450. package/dist/hooks/magic-context/temporal-awareness.d.ts.map +1 -0
  451. package/dist/hooks/magic-context/text-complete.d.ts +31 -0
  452. package/dist/hooks/magic-context/text-complete.d.ts.map +1 -0
  453. package/dist/hooks/magic-context/todo-view.d.ts +127 -0
  454. package/dist/hooks/magic-context/todo-view.d.ts.map +1 -0
  455. package/dist/hooks/magic-context/tokenizer-calibration.d.ts +92 -0
  456. package/dist/hooks/magic-context/tokenizer-calibration.d.ts.map +1 -0
  457. package/dist/hooks/magic-context/tool-drop-target.d.ts +144 -0
  458. package/dist/hooks/magic-context/tool-drop-target.d.ts.map +1 -0
  459. package/dist/hooks/magic-context/tool-input-size.d.ts +21 -0
  460. package/dist/hooks/magic-context/tool-input-size.d.ts.map +1 -0
  461. package/dist/hooks/magic-context/tool-reclaim.d.ts +12 -0
  462. package/dist/hooks/magic-context/tool-reclaim.d.ts.map +1 -0
  463. package/dist/hooks/magic-context/tool-sweep-policy.d.ts +50 -0
  464. package/dist/hooks/magic-context/tool-sweep-policy.d.ts.map +1 -0
  465. package/dist/hooks/magic-context/transform-compartment-phase.d.ts +133 -0
  466. package/dist/hooks/magic-context/transform-compartment-phase.d.ts.map +1 -0
  467. package/dist/hooks/magic-context/transform-context-state.d.ts +28 -0
  468. package/dist/hooks/magic-context/transform-context-state.d.ts.map +1 -0
  469. package/dist/hooks/magic-context/transform-message-helpers.d.ts +32 -0
  470. package/dist/hooks/magic-context/transform-message-helpers.d.ts.map +1 -0
  471. package/dist/hooks/magic-context/transform-operations.d.ts +5 -0
  472. package/dist/hooks/magic-context/transform-operations.d.ts.map +1 -0
  473. package/dist/hooks/magic-context/transform-postprocess-phase.d.ts +350 -0
  474. package/dist/hooks/magic-context/transform-postprocess-phase.d.ts.map +1 -0
  475. package/dist/hooks/magic-context/transform-stage-logger.d.ts +2 -0
  476. package/dist/hooks/magic-context/transform-stage-logger.d.ts.map +1 -0
  477. package/dist/hooks/magic-context/transform.d.ts +334 -0
  478. package/dist/hooks/magic-context/transform.d.ts.map +1 -0
  479. package/dist/hooks/magic-context/unmanaged-over-window.d.ts +36 -0
  480. package/dist/hooks/magic-context/unmanaged-over-window.d.ts.map +1 -0
  481. package/dist/hooks/magic-context/unresolved-history-boundary.d.ts +15 -0
  482. package/dist/hooks/magic-context/unresolved-history-boundary.d.ts.map +1 -0
  483. package/dist/hooks/magic-context/wrapup-orchestrator.d.ts +14 -0
  484. package/dist/hooks/magic-context/wrapup-orchestrator.d.ts.map +1 -0
  485. package/dist/index-1vs6anwz.js +126 -0
  486. package/dist/index-3wagyrnj.js +670 -0
  487. package/dist/index-53g38ggt.js +40 -0
  488. package/dist/index-5pg0acf7.js +410 -0
  489. package/dist/index-977gxfz0.js +514 -0
  490. package/dist/index-by6h2pav.js +27883 -0
  491. package/dist/index-e1q8002h.js +16 -0
  492. package/dist/index-fg34g6a5.js +584 -0
  493. package/dist/index-jdxxq8cz.js +99 -0
  494. package/dist/index-me3zcj5t.js +69 -0
  495. package/dist/index-qbkzdkk0.js +496 -0
  496. package/dist/index-wgt4gamw.js +6388 -0
  497. package/dist/index-zx63j2e2.js +907 -0
  498. package/dist/index.d.ts +7 -0
  499. package/dist/index.d.ts.map +1 -0
  500. package/dist/index.js +37 -0
  501. package/dist/message-time-backfill-5ewk0axe.js +116 -0
  502. package/dist/model-resolution-5haaxnpt.js +6 -0
  503. package/dist/plugin/boot-deadline.d.ts +47 -0
  504. package/dist/plugin/boot-deadline.d.ts.map +1 -0
  505. package/dist/plugin/boot-quiet.d.ts +12 -0
  506. package/dist/plugin/boot-quiet.d.ts.map +1 -0
  507. package/dist/plugin/normalize-tool-arg-schemas.d.ts +7 -0
  508. package/dist/plugin/normalize-tool-arg-schemas.d.ts.map +1 -0
  509. package/dist/plugin/rpc-handlers.d.ts +52 -0
  510. package/dist/plugin/rpc-handlers.d.ts.map +1 -0
  511. package/dist/plugin/sidebar-snapshot-cache.d.ts +19 -0
  512. package/dist/plugin/sidebar-snapshot-cache.d.ts.map +1 -0
  513. package/dist/plugin/subagent-tool-policy.d.ts +9 -0
  514. package/dist/plugin/subagent-tool-policy.d.ts.map +1 -0
  515. package/dist/plugin/types.d.ts +3 -0
  516. package/dist/plugin/types.d.ts.map +1 -0
  517. package/dist/prompt-context-ffa5xcfx.js +76 -0
  518. package/dist/read-session-chunk-apjwrttc.js +56 -0
  519. package/dist/recomp-orchestrator-gyeevxaw.js +21 -0
  520. package/dist/rpc-notifications-4amf6mf4.js +14 -0
  521. package/dist/safe-notification-target-ph3xd1ve.js +9 -0
  522. package/dist/send-session-notification-y29y9fsr.js +18 -0
  523. package/dist/shared/announcement.d.ts +69 -0
  524. package/dist/shared/announcement.d.ts.map +1 -0
  525. package/dist/shared/assistant-message-extractor.d.ts +13 -0
  526. package/dist/shared/assistant-message-extractor.d.ts.map +1 -0
  527. package/dist/shared/auto-update-provenance.d.ts +9 -0
  528. package/dist/shared/auto-update-provenance.d.ts.map +1 -0
  529. package/dist/shared/bounded-session-map.d.ts +45 -0
  530. package/dist/shared/bounded-session-map.d.ts.map +1 -0
  531. package/dist/shared/builtin-commands.d.ts +24 -0
  532. package/dist/shared/builtin-commands.d.ts.map +1 -0
  533. package/dist/shared/cache-ttl-display.d.ts +25 -0
  534. package/dist/shared/cache-ttl-display.d.ts.map +1 -0
  535. package/dist/shared/cache-ttl-seed.d.ts +10 -0
  536. package/dist/shared/cache-ttl-seed.d.ts.map +1 -0
  537. package/dist/shared/child-session-teardown.d.ts +34 -0
  538. package/dist/shared/child-session-teardown.d.ts.map +1 -0
  539. package/dist/shared/commit-detection.d.ts +29 -0
  540. package/dist/shared/commit-detection.d.ts.map +1 -0
  541. package/dist/shared/config-diagnostics.d.ts +30 -0
  542. package/dist/shared/config-diagnostics.d.ts.map +1 -0
  543. package/dist/shared/conflict-detector.d.ts +139 -0
  544. package/dist/shared/conflict-detector.d.ts.map +1 -0
  545. package/dist/shared/conflict-fixer.d.ts +20 -0
  546. package/dist/shared/conflict-fixer.d.ts.map +1 -0
  547. package/dist/shared/context-limit-provenance.d.ts +3 -0
  548. package/dist/shared/context-limit-provenance.d.ts.map +1 -0
  549. package/dist/shared/data-path.d.ts +176 -0
  550. package/dist/shared/data-path.d.ts.map +1 -0
  551. package/dist/shared/error-message.d.ts +32 -0
  552. package/dist/shared/error-message.d.ts.map +1 -0
  553. package/dist/shared/escalation-bands.d.ts +9 -0
  554. package/dist/shared/escalation-bands.d.ts.map +1 -0
  555. package/dist/shared/format-bytes.d.ts +2 -0
  556. package/dist/shared/format-bytes.d.ts.map +1 -0
  557. package/dist/shared/format-threshold.d.ts +43 -0
  558. package/dist/shared/format-threshold.d.ts.map +1 -0
  559. package/dist/shared/harness-provider-map.d.ts +64 -0
  560. package/dist/shared/harness-provider-map.d.ts.map +1 -0
  561. package/dist/shared/harness.d.ts +55 -0
  562. package/dist/shared/harness.d.ts.map +1 -0
  563. package/dist/shared/hidden-variant-warnings.d.ts +5 -0
  564. package/dist/shared/hidden-variant-warnings.d.ts.map +1 -0
  565. package/dist/shared/historian-tool-expansions.d.ts +5 -0
  566. package/dist/shared/historian-tool-expansions.d.ts.map +1 -0
  567. package/dist/shared/historian-tool-template.d.ts +5 -0
  568. package/dist/shared/historian-tool-template.d.ts.map +1 -0
  569. package/dist/shared/historian-transient-error.d.ts +2 -0
  570. package/dist/shared/historian-transient-error.d.ts.map +1 -0
  571. package/dist/shared/host-limitations.d.ts +14 -0
  572. package/dist/shared/host-limitations.d.ts.map +1 -0
  573. package/dist/shared/index.d.ts +8 -0
  574. package/dist/shared/index.d.ts.map +1 -0
  575. package/dist/shared/internal-initiator-marker.d.ts +2 -0
  576. package/dist/shared/internal-initiator-marker.d.ts.map +1 -0
  577. package/dist/shared/jsonc-edit.d.ts +23 -0
  578. package/dist/shared/jsonc-edit.d.ts.map +1 -0
  579. package/dist/shared/jsonc-parser.d.ts +30 -0
  580. package/dist/shared/jsonc-parser.d.ts.map +1 -0
  581. package/dist/shared/keep-subagents.d.ts +7 -0
  582. package/dist/shared/keep-subagents.d.ts.map +1 -0
  583. package/dist/shared/logger.d.ts +18 -0
  584. package/dist/shared/logger.d.ts.map +1 -0
  585. package/dist/shared/model-cache-ttl.d.ts +9 -0
  586. package/dist/shared/model-cache-ttl.d.ts.map +1 -0
  587. package/dist/shared/model-resolution.d.ts +35 -0
  588. package/dist/shared/model-resolution.d.ts.map +1 -0
  589. package/dist/shared/model-suggestion-retry.d.ts +138 -0
  590. package/dist/shared/model-suggestion-retry.d.ts.map +1 -0
  591. package/dist/shared/models-dev-cache.d.ts +156 -0
  592. package/dist/shared/models-dev-cache.d.ts.map +1 -0
  593. package/dist/shared/normalize-sdk-response.d.ts +5 -0
  594. package/dist/shared/normalize-sdk-response.d.ts.map +1 -0
  595. package/dist/shared/opencode-config-dir-types.d.ts +14 -0
  596. package/dist/shared/opencode-config-dir-types.d.ts.map +1 -0
  597. package/dist/shared/opencode-config-dir.d.ts +57 -0
  598. package/dist/shared/opencode-config-dir.d.ts.map +1 -0
  599. package/dist/shared/opencode-db-path.d.ts +68 -0
  600. package/dist/shared/opencode-db-path.d.ts.map +1 -0
  601. package/dist/shared/pi-executable.d.ts +6 -0
  602. package/dist/shared/pi-executable.d.ts.map +1 -0
  603. package/dist/shared/plugin-package-version.d.ts +14 -0
  604. package/dist/shared/plugin-package-version.d.ts.map +1 -0
  605. package/dist/shared/project-directory-key.d.ts +26 -0
  606. package/dist/shared/project-directory-key.d.ts.map +1 -0
  607. package/dist/shared/prompt-context.d.ts +31 -0
  608. package/dist/shared/prompt-context.d.ts.map +1 -0
  609. package/dist/shared/prompt-surface-a1-golden.d.ts +28 -0
  610. package/dist/shared/prompt-surface-a1-golden.d.ts.map +1 -0
  611. package/dist/shared/prompt-surface-runtime.d.ts +62 -0
  612. package/dist/shared/prompt-surface-runtime.d.ts.map +1 -0
  613. package/dist/shared/prompt-surface.d.ts +53 -0
  614. package/dist/shared/prompt-surface.d.ts.map +1 -0
  615. package/dist/shared/provider-response-completion.d.ts +12 -0
  616. package/dist/shared/provider-response-completion.d.ts.map +1 -0
  617. package/dist/shared/record-type-guard.d.ts +2 -0
  618. package/dist/shared/record-type-guard.d.ts.map +1 -0
  619. package/dist/shared/redaction.d.ts +7 -0
  620. package/dist/shared/redaction.d.ts.map +1 -0
  621. package/dist/shared/resolve-fallbacks.d.ts +48 -0
  622. package/dist/shared/resolve-fallbacks.d.ts.map +1 -0
  623. package/dist/shared/rpc-client.d.ts +28 -0
  624. package/dist/shared/rpc-client.d.ts.map +1 -0
  625. package/dist/shared/rpc-notifications.d.ts +74 -0
  626. package/dist/shared/rpc-notifications.d.ts.map +1 -0
  627. package/dist/shared/rpc-server.d.ts +52 -0
  628. package/dist/shared/rpc-server.d.ts.map +1 -0
  629. package/dist/shared/rpc-types.d.ts +385 -0
  630. package/dist/shared/rpc-types.d.ts.map +1 -0
  631. package/dist/shared/rpc-utils.d.ts +162 -0
  632. package/dist/shared/rpc-utils.d.ts.map +1 -0
  633. package/dist/shared/run-token-log.d.ts +13 -0
  634. package/dist/shared/run-token-log.d.ts.map +1 -0
  635. package/dist/shared/safe-notification-target.d.ts +23 -0
  636. package/dist/shared/safe-notification-target.d.ts.map +1 -0
  637. package/dist/shared/sqlite-context-pragmas.d.ts +12 -0
  638. package/dist/shared/sqlite-context-pragmas.d.ts.map +1 -0
  639. package/dist/shared/sqlite-helpers.d.ts +25 -0
  640. package/dist/shared/sqlite-helpers.d.ts.map +1 -0
  641. package/dist/shared/sqlite-write-locker-test-support.d.ts +7 -0
  642. package/dist/shared/sqlite-write-locker-test-support.d.ts.map +1 -0
  643. package/dist/shared/sqlite.d.ts +163 -0
  644. package/dist/shared/sqlite.d.ts.map +1 -0
  645. package/dist/shared/stable-json.d.ts +21 -0
  646. package/dist/shared/stable-json.d.ts.map +1 -0
  647. package/dist/shared/status-detail-text.d.ts +4 -0
  648. package/dist/shared/status-detail-text.d.ts.map +1 -0
  649. package/dist/shared/status-summary.d.ts +54 -0
  650. package/dist/shared/status-summary.d.ts.map +1 -0
  651. package/dist/shared/status-view-check.d.ts +130 -0
  652. package/dist/shared/status-view-check.d.ts.map +1 -0
  653. package/dist/shared/status-view.d.ts +230 -0
  654. package/dist/shared/status-view.d.ts.map +1 -0
  655. package/dist/shared/storage-permissions.d.ts +29 -0
  656. package/dist/shared/storage-permissions.d.ts.map +1 -0
  657. package/dist/shared/subagent-runner.d.ts +231 -0
  658. package/dist/shared/subagent-runner.d.ts.map +1 -0
  659. package/dist/shared/summarize-child-stderr.d.ts +2 -0
  660. package/dist/shared/summarize-child-stderr.d.ts.map +1 -0
  661. package/dist/shared/system-directive.d.ts +3 -0
  662. package/dist/shared/system-directive.d.ts.map +1 -0
  663. package/dist/shared/tag-owner-id.d.ts +19 -0
  664. package/dist/shared/tag-owner-id.d.ts.map +1 -0
  665. package/dist/shared/tag-transcript.d.ts +103 -0
  666. package/dist/shared/tag-transcript.d.ts.map +1 -0
  667. package/dist/shared/tail-hygiene-status.d.ts +24 -0
  668. package/dist/shared/tail-hygiene-status.d.ts.map +1 -0
  669. package/dist/shared/test-temp-dir.d.ts +46 -0
  670. package/dist/shared/test-temp-dir.d.ts.map +1 -0
  671. package/dist/shared/transcript.d.ts +251 -0
  672. package/dist/shared/transcript.d.ts.map +1 -0
  673. package/dist/shared/user-answer.d.ts +4 -0
  674. package/dist/shared/user-answer.d.ts.map +1 -0
  675. package/dist/shared/user-facing-codes.d.ts +135 -0
  676. package/dist/shared/user-facing-codes.d.ts.map +1 -0
  677. package/dist/shared/window-geometry.d.ts +121 -0
  678. package/dist/shared/window-geometry.d.ts.map +1 -0
  679. package/dist/shared/write-transaction-timing.d.ts +11 -0
  680. package/dist/shared/write-transaction-timing.d.ts.map +1 -0
  681. package/dist/shared/xml-unescape.d.ts +9 -0
  682. package/dist/shared/xml-unescape.d.ts.map +1 -0
  683. package/dist/tools/ctx-expand/constants.d.ts +3 -0
  684. package/dist/tools/ctx-expand/constants.d.ts.map +1 -0
  685. package/dist/tools/ctx-expand/index.d.ts +2 -0
  686. package/dist/tools/ctx-expand/index.d.ts.map +1 -0
  687. package/dist/tools/ctx-expand/mode.d.ts +35 -0
  688. package/dist/tools/ctx-expand/mode.d.ts.map +1 -0
  689. package/dist/tools/ctx-expand/render.d.ts +47 -0
  690. package/dist/tools/ctx-expand/render.d.ts.map +1 -0
  691. package/dist/tools/ctx-expand/tools.d.ts +10 -0
  692. package/dist/tools/ctx-expand/tools.d.ts.map +1 -0
  693. package/dist/tools/ctx-expand/types.d.ts +11 -0
  694. package/dist/tools/ctx-expand/types.d.ts.map +1 -0
  695. package/dist/tools/ctx-memory/constants.d.ts +3 -0
  696. package/dist/tools/ctx-memory/constants.d.ts.map +1 -0
  697. package/dist/tools/ctx-memory/index.d.ts +4 -0
  698. package/dist/tools/ctx-memory/index.d.ts.map +1 -0
  699. package/dist/tools/ctx-memory/tools.d.ts +5 -0
  700. package/dist/tools/ctx-memory/tools.d.ts.map +1 -0
  701. package/dist/tools/ctx-memory/types.d.ts +38 -0
  702. package/dist/tools/ctx-memory/types.d.ts.map +1 -0
  703. package/dist/tools/ctx-memory/verification-recording.d.ts +8 -0
  704. package/dist/tools/ctx-memory/verification-recording.d.ts.map +1 -0
  705. package/dist/tools/ctx-note/constants.d.ts +2 -0
  706. package/dist/tools/ctx-note/constants.d.ts.map +1 -0
  707. package/dist/tools/ctx-note/index.d.ts +4 -0
  708. package/dist/tools/ctx-note/index.d.ts.map +1 -0
  709. package/dist/tools/ctx-note/render.d.ts +67 -0
  710. package/dist/tools/ctx-note/render.d.ts.map +1 -0
  711. package/dist/tools/ctx-note/tools.d.ts +13 -0
  712. package/dist/tools/ctx-note/tools.d.ts.map +1 -0
  713. package/dist/tools/ctx-note/types.d.ts +14 -0
  714. package/dist/tools/ctx-note/types.d.ts.map +1 -0
  715. package/dist/tools/ctx-reduce/constants.d.ts +4 -0
  716. package/dist/tools/ctx-reduce/constants.d.ts.map +1 -0
  717. package/dist/tools/ctx-reduce/index.d.ts +4 -0
  718. package/dist/tools/ctx-reduce/index.d.ts.map +1 -0
  719. package/dist/tools/ctx-reduce/tools.d.ts +19 -0
  720. package/dist/tools/ctx-reduce/tools.d.ts.map +1 -0
  721. package/dist/tools/ctx-reduce/types.d.ts +5 -0
  722. package/dist/tools/ctx-reduce/types.d.ts.map +1 -0
  723. package/dist/tools/ctx-search/constants.d.ts +4 -0
  724. package/dist/tools/ctx-search/constants.d.ts.map +1 -0
  725. package/dist/tools/ctx-search/date-range.d.ts +9 -0
  726. package/dist/tools/ctx-search/date-range.d.ts.map +1 -0
  727. package/dist/tools/ctx-search/index.d.ts +4 -0
  728. package/dist/tools/ctx-search/index.d.ts.map +1 -0
  729. package/dist/tools/ctx-search/tools.d.ts +5 -0
  730. package/dist/tools/ctx-search/tools.d.ts.map +1 -0
  731. package/dist/tools/ctx-search/types.d.ts +34 -0
  732. package/dist/tools/ctx-search/types.d.ts.map +1 -0
  733. package/dist/tools/light-descriptions.d.ts +6 -0
  734. package/dist/tools/light-descriptions.d.ts.map +1 -0
  735. package/dist/tools/parameter-descriptions.d.ts +75 -0
  736. package/dist/tools/parameter-descriptions.d.ts.map +1 -0
  737. package/dist/tools/unwrap-imitated-reduced-args.d.ts +21 -0
  738. package/dist/tools/unwrap-imitated-reduced-args.d.ts.map +1 -0
  739. package/dist/v2/fold/boundary.d.ts +61 -0
  740. package/dist/v2/fold/boundary.d.ts.map +1 -0
  741. package/dist/v2/fold/host-media.d.ts +36 -0
  742. package/dist/v2/fold/host-media.d.ts.map +1 -0
  743. package/dist/v2/fold/markers.d.ts +7 -0
  744. package/dist/v2/fold/markers.d.ts.map +1 -0
  745. package/dist/v2/fold/owner.d.ts +40 -0
  746. package/dist/v2/fold/owner.d.ts.map +1 -0
  747. package/dist/v2/fold/restore.d.ts +31 -0
  748. package/dist/v2/fold/restore.d.ts.map +1 -0
  749. package/dist/v2/fork-inheritance.d.ts +101 -0
  750. package/dist/v2/fork-inheritance.d.ts.map +1 -0
  751. package/dist/v2/hidden-child-cleanup.d.ts +11 -0
  752. package/dist/v2/hidden-child-cleanup.d.ts.map +1 -0
  753. package/dist/v2/hidden-child-native.d.ts +29 -0
  754. package/dist/v2/hidden-child-native.d.ts.map +1 -0
  755. package/dist/v2/hidden-child-record.d.ts +137 -0
  756. package/dist/v2/hidden-child-record.d.ts.map +1 -0
  757. package/dist/v2/hidden-completion.d.ts +57 -0
  758. package/dist/v2/hidden-completion.d.ts.map +1 -0
  759. package/dist/v2/hooks/channel2.d.ts +10 -0
  760. package/dist/v2/hooks/channel2.d.ts.map +1 -0
  761. package/dist/v2/hooks/commands.d.ts +29 -0
  762. package/dist/v2/hooks/commands.d.ts.map +1 -0
  763. package/dist/v2/hooks/context.d.ts +112 -0
  764. package/dist/v2/hooks/context.d.ts.map +1 -0
  765. package/dist/v2/hooks/deleted-session-tombstones.d.ts +10 -0
  766. package/dist/v2/hooks/deleted-session-tombstones.d.ts.map +1 -0
  767. package/dist/v2/hooks/generate.d.ts +10 -0
  768. package/dist/v2/hooks/generate.d.ts.map +1 -0
  769. package/dist/v2/hooks/hidden-child.d.ts +76 -0
  770. package/dist/v2/hooks/hidden-child.d.ts.map +1 -0
  771. package/dist/v2/hooks/hidden-terminal-error.d.ts +8 -0
  772. package/dist/v2/hooks/hidden-terminal-error.d.ts.map +1 -0
  773. package/dist/v2/hooks/lkg-system.d.ts +11 -0
  774. package/dist/v2/hooks/lkg-system.d.ts.map +1 -0
  775. package/dist/v2/hooks/model-limit-cache.d.ts +19 -0
  776. package/dist/v2/hooks/model-limit-cache.d.ts.map +1 -0
  777. package/dist/v2/hooks/payload.d.ts +15 -0
  778. package/dist/v2/hooks/payload.d.ts.map +1 -0
  779. package/dist/v2/hooks/refusal.d.ts +15 -0
  780. package/dist/v2/hooks/refusal.d.ts.map +1 -0
  781. package/dist/v2/hooks/restore-rows.d.ts +29 -0
  782. package/dist/v2/hooks/restore-rows.d.ts.map +1 -0
  783. package/dist/v2/hooks/rpc-live-state.d.ts +9 -0
  784. package/dist/v2/hooks/rpc-live-state.d.ts.map +1 -0
  785. package/dist/v2/hooks/session-api-gate.d.ts +4 -0
  786. package/dist/v2/hooks/session-api-gate.d.ts.map +1 -0
  787. package/dist/v2/hooks/session-project-backfill.d.ts +15 -0
  788. package/dist/v2/hooks/session-project-backfill.d.ts.map +1 -0
  789. package/dist/v2/hooks/storage-gate.d.ts +48 -0
  790. package/dist/v2/hooks/storage-gate.d.ts.map +1 -0
  791. package/dist/v2/hooks/storage-notice.d.ts +29 -0
  792. package/dist/v2/hooks/storage-notice.d.ts.map +1 -0
  793. package/dist/v2/hooks/store.d.ts +58 -0
  794. package/dist/v2/hooks/store.d.ts.map +1 -0
  795. package/dist/v2/hooks/tools.d.ts +8 -0
  796. package/dist/v2/hooks/tools.d.ts.map +1 -0
  797. package/dist/v2/hooks/types.d.ts +250 -0
  798. package/dist/v2/hooks/types.d.ts.map +1 -0
  799. package/dist/v2/hooks/usage-persist.d.ts +31 -0
  800. package/dist/v2/hooks/usage-persist.d.ts.map +1 -0
  801. package/dist/v2/hooks/usage-reading.d.ts +46 -0
  802. package/dist/v2/hooks/usage-reading.d.ts.map +1 -0
  803. package/dist/v2/server.d.ts +27 -0
  804. package/dist/v2/server.d.ts.map +1 -0
  805. package/dist/v2/server.js +76235 -0
  806. package/dist/v2/store-reader.d.ts +218 -0
  807. package/dist/v2/store-reader.d.ts.map +1 -0
  808. package/dist/web/api.d.ts +40 -0
  809. package/dist/web/api.d.ts.map +1 -0
  810. package/dist/web/context-store.d.ts +74 -0
  811. package/dist/web/context-store.d.ts.map +1 -0
  812. package/dist/web/fixtures.d.ts +53 -0
  813. package/dist/web/fixtures.d.ts.map +1 -0
  814. package/dist/web/host-opencode.d.ts +56 -0
  815. package/dist/web/host-opencode.d.ts.map +1 -0
  816. package/dist/web/host-pi.d.ts +116 -0
  817. package/dist/web/host-pi.d.ts.map +1 -0
  818. package/dist/web/main.d.ts +24 -0
  819. package/dist/web/main.d.ts.map +1 -0
  820. package/dist/web/main.js +6071 -0
  821. package/dist/web/memories.d.ts +67 -0
  822. package/dist/web/memories.d.ts.map +1 -0
  823. package/dist/web/server.d.ts +42 -0
  824. package/dist/web/server.d.ts.map +1 -0
  825. package/dist/web/types.d.ts +52 -0
  826. package/dist/web/types.d.ts.map +1 -0
  827. package/dist/web/ui/favicon.svg +4 -0
  828. package/dist/web/ui/index.html +36 -0
  829. package/dist/web/ui/panel.css +8 -0
  830. package/dist/web/ui/panel.js +373 -0
  831. package/dist/web/views.d.ts +155 -0
  832. package/dist/web/views.d.ts.map +1 -0
  833. package/dist/web/writes.d.ts +86 -0
  834. package/dist/web/writes.d.ts.map +1 -0
  835. package/dist/wrapup-orchestrator-z9sqpqjf.js +420 -0
  836. package/index.js +1 -0
  837. package/package.json +84 -4
  838. package/src/agents/historian.ts +3 -0
  839. package/src/agents/language-directive.test.ts +129 -0
  840. package/src/agents/language-directive.ts +113 -0
  841. package/src/agents/magic-context-prompt.language.test.ts +37 -0
  842. package/src/agents/magic-context-prompt.test.ts +520 -0
  843. package/src/agents/magic-context-prompt.ts +196 -0
  844. package/src/agents/memory-maintainer.test.ts +249 -0
  845. package/src/agents/memory-maintainer.ts +374 -0
  846. package/src/config/agent-disable.ts +58 -0
  847. package/src/config/compaction-accessor-guard.test.ts +81 -0
  848. package/src/config/compaction-backcompat.test.ts +52 -0
  849. package/src/config/config-paths.ts +42 -0
  850. package/src/config/index.test.ts +1252 -0
  851. package/src/config/index.ts +762 -0
  852. package/src/config/latch-permanence-guard.test.ts +218 -0
  853. package/src/config/live-run-config.test.ts +139 -0
  854. package/src/config/live-run-config.ts +79 -0
  855. package/src/config/live-schema-drift.test.ts +67 -0
  856. package/src/config/live-snapshot.test.ts +86 -0
  857. package/src/config/live-snapshot.ts +187 -0
  858. package/src/config/migrate-experimental.ts +92 -0
  859. package/src/config/misplaced-agent-model.test.ts +55 -0
  860. package/src/config/profiles.ts +106 -0
  861. package/src/config/project-config-trust-boundary.test.ts +185 -0
  862. package/src/config/project-security.hostile-matrix.test.ts +281 -0
  863. package/src/config/project-security.test.ts +329 -0
  864. package/src/config/project-security.ts +940 -0
  865. package/src/config/protected-tokens.test.ts +229 -0
  866. package/src/config/prune-config-leaf.test.ts +78 -0
  867. package/src/config/prune-config-leaf.ts +67 -0
  868. package/src/config/raw-loader.test.ts +389 -0
  869. package/src/config/raw-loader.ts +435 -0
  870. package/src/config/removed-agent-config.ts +45 -0
  871. package/src/config/removed-agent-source-fence.test.ts +53 -0
  872. package/src/config/removed-config-keys.test.ts +106 -0
  873. package/src/config/schema/agent-overrides.ts +45 -0
  874. package/src/config/schema/magic-context.test.ts +434 -0
  875. package/src/config/schema/magic-context.ts +1019 -0
  876. package/src/config/variable.test.ts +324 -0
  877. package/src/config/variable.ts +192 -0
  878. package/src/shared/__fixtures__/window-overlay.v1.json +337 -0
  879. package/src/shared/announcement.test.ts +198 -0
  880. package/src/shared/announcement.ts +145 -0
  881. package/src/shared/assistant-message-extractor.test.ts +47 -0
  882. package/src/shared/assistant-message-extractor.ts +156 -0
  883. package/src/shared/auto-update-provenance.ts +42 -0
  884. package/src/shared/bounded-session-map.test.ts +97 -0
  885. package/src/shared/bounded-session-map.ts +84 -0
  886. package/src/shared/builtin-commands.ts +46 -0
  887. package/src/shared/cache-ttl-display.test.ts +84 -0
  888. package/src/shared/cache-ttl-display.ts +58 -0
  889. package/src/shared/cache-ttl-seed.ts +23 -0
  890. package/src/shared/child-session-teardown.test.ts +241 -0
  891. package/src/shared/child-session-teardown.ts +66 -0
  892. package/src/shared/commit-detection.test.ts +63 -0
  893. package/src/shared/commit-detection.ts +53 -0
  894. package/src/shared/config-diagnostics.test.ts +29 -0
  895. package/src/shared/config-diagnostics.ts +64 -0
  896. package/src/shared/conflict-detector.test.ts +780 -0
  897. package/src/shared/conflict-detector.ts +596 -0
  898. package/src/shared/conflict-fixer.test.ts +608 -0
  899. package/src/shared/conflict-fixer.ts +295 -0
  900. package/src/shared/context-limit-provenance.ts +6 -0
  901. package/src/shared/data-path.test.ts +352 -0
  902. package/src/shared/data-path.ts +310 -0
  903. package/src/shared/error-message.test.ts +94 -0
  904. package/src/shared/error-message.ts +115 -0
  905. package/src/shared/escalation-bands.test.ts +23 -0
  906. package/src/shared/escalation-bands.ts +18 -0
  907. package/src/shared/format-bytes.ts +5 -0
  908. package/src/shared/format-threshold.ts +54 -0
  909. package/src/shared/harness-provider-map.test.ts +176 -0
  910. package/src/shared/harness-provider-map.ts +130 -0
  911. package/src/shared/harness.ts +76 -0
  912. package/src/shared/hidden-variant-warnings.ts +21 -0
  913. package/src/shared/historian-tool-defaults.json +13 -0
  914. package/src/shared/historian-tool-expansions.ts +18 -0
  915. package/src/shared/historian-tool-template.ts +248 -0
  916. package/src/shared/historian-transient-error.test.ts +36 -0
  917. package/src/shared/historian-transient-error.ts +22 -0
  918. package/src/shared/host-limitations.ts +43 -0
  919. package/src/shared/index.ts +7 -0
  920. package/src/shared/internal-initiator-marker.ts +1 -0
  921. package/src/shared/jsonc-edit.ts +387 -0
  922. package/src/shared/jsonc-parser.test.ts +46 -0
  923. package/src/shared/jsonc-parser.ts +283 -0
  924. package/src/shared/keep-subagents.test.ts +39 -0
  925. package/src/shared/keep-subagents.ts +28 -0
  926. package/src/shared/logger.test.ts +292 -0
  927. package/src/shared/logger.ts +248 -0
  928. package/src/shared/model-cache-ttl.test.ts +40 -0
  929. package/src/shared/model-cache-ttl.ts +58 -0
  930. package/src/shared/model-resolution.test.ts +132 -0
  931. package/src/shared/model-resolution.ts +158 -0
  932. package/src/shared/model-suggestion-retry.test.ts +698 -0
  933. package/src/shared/model-suggestion-retry.ts +838 -0
  934. package/src/shared/models-dev-cache.test.ts +720 -0
  935. package/src/shared/models-dev-cache.ts +661 -0
  936. package/src/shared/normalize-sdk-response.ts +40 -0
  937. package/src/shared/opencode-config-dir-types.ts +15 -0
  938. package/src/shared/opencode-config-dir.ts +111 -0
  939. package/src/shared/opencode-db-path.test.ts +389 -0
  940. package/src/shared/opencode-db-path.ts +396 -0
  941. package/src/shared/opencode-host-generation.test.ts +29 -0
  942. package/src/shared/pi-executable.ts +20 -0
  943. package/src/shared/plugin-package-version.ts +52 -0
  944. package/src/shared/project-directory-key.test.ts +111 -0
  945. package/src/shared/project-directory-key.ts +54 -0
  946. package/src/shared/prompt-context.ts +135 -0
  947. package/src/shared/prompt-surface-a1-golden.md +407 -0
  948. package/src/shared/prompt-surface-a1-golden.ts +41 -0
  949. package/src/shared/prompt-surface-runtime.test.ts +190 -0
  950. package/src/shared/prompt-surface-runtime.ts +263 -0
  951. package/src/shared/prompt-surface.test.ts +195 -0
  952. package/src/shared/prompt-surface.ts +162 -0
  953. package/src/shared/provider-response-completion.ts +23 -0
  954. package/src/shared/record-type-guard.ts +3 -0
  955. package/src/shared/redaction.test.ts +134 -0
  956. package/src/shared/redaction.ts +298 -0
  957. package/src/shared/resolve-fallbacks.test.ts +114 -0
  958. package/src/shared/resolve-fallbacks.ts +95 -0
  959. package/src/shared/rpc-async-probes.test.ts +320 -0
  960. package/src/shared/rpc-client.test.ts +576 -0
  961. package/src/shared/rpc-client.ts +218 -0
  962. package/src/shared/rpc-notifications.test.ts +151 -0
  963. package/src/shared/rpc-notifications.ts +222 -0
  964. package/src/shared/rpc-server.ts +431 -0
  965. package/src/shared/rpc-types.ts +386 -0
  966. package/src/shared/rpc-utils.test.ts +822 -0
  967. package/src/shared/rpc-utils.ts +1146 -0
  968. package/src/shared/run-token-log.test.ts +65 -0
  969. package/src/shared/run-token-log.ts +39 -0
  970. package/src/shared/safe-notification-target.test.ts +97 -0
  971. package/src/shared/safe-notification-target.ts +102 -0
  972. package/src/shared/session-messages-bounded.test.ts +112 -0
  973. package/src/shared/sqlite-acquisition-fence.test.ts +133 -0
  974. package/src/shared/sqlite-acquisition-routing.test.ts +145 -0
  975. package/src/shared/sqlite-bind-style.test.ts +80 -0
  976. package/src/shared/sqlite-context-pragmas.ts +24 -0
  977. package/src/shared/sqlite-helpers.ts +44 -0
  978. package/src/shared/sqlite-import-fence.test.ts +19 -0
  979. package/src/shared/sqlite-pass-scope.test.ts +154 -0
  980. package/src/shared/sqlite-transaction-mode-guard.test.ts +234 -0
  981. package/src/shared/sqlite-write-locker-test-support.ts +63 -0
  982. package/src/shared/sqlite.test.ts +58 -0
  983. package/src/shared/sqlite.ts +988 -0
  984. package/src/shared/stable-json.test.ts +87 -0
  985. package/src/shared/stable-json.ts +37 -0
  986. package/src/shared/status-detail-text.test.ts +194 -0
  987. package/src/shared/status-detail-text.ts +7 -0
  988. package/src/shared/status-summary.ts +189 -0
  989. package/src/shared/status-view-check.test.ts +252 -0
  990. package/src/shared/status-view-check.ts +519 -0
  991. package/src/shared/status-view.test.ts +395 -0
  992. package/src/shared/status-view.ts +794 -0
  993. package/src/shared/storage-busy.test.ts +73 -0
  994. package/src/shared/storage-permissions.test.ts +190 -0
  995. package/src/shared/storage-permissions.ts +212 -0
  996. package/src/shared/subagent-runner.ts +240 -0
  997. package/src/shared/summarize-child-stderr.test.ts +55 -0
  998. package/src/shared/summarize-child-stderr.ts +33 -0
  999. package/src/shared/system-directive.ts +9 -0
  1000. package/src/shared/tag-owner-id.test.ts +33 -0
  1001. package/src/shared/tag-owner-id.ts +29 -0
  1002. package/src/shared/tag-transcript.test.ts +554 -0
  1003. package/src/shared/tag-transcript.ts +1400 -0
  1004. package/src/shared/tail-hygiene-status.ts +73 -0
  1005. package/src/shared/test-temp-dir.test.ts +84 -0
  1006. package/src/shared/test-temp-dir.ts +192 -0
  1007. package/src/shared/transcript.ts +274 -0
  1008. package/src/shared/user-answer.test.ts +12 -0
  1009. package/src/shared/user-answer.ts +17 -0
  1010. package/src/shared/user-facing-codes.test.ts +82 -0
  1011. package/src/shared/user-facing-codes.ts +180 -0
  1012. package/src/shared/window-geometry.test.ts +405 -0
  1013. package/src/shared/window-geometry.ts +726 -0
  1014. package/src/shared/windows-hidden-spawns.test.ts +133 -0
  1015. package/src/shared/write-transaction-attribution.test.ts +214 -0
  1016. package/src/shared/write-transaction-timing.ts +26 -0
  1017. package/src/shared/xml-unescape.ts +19 -0
  1018. package/README.md +0 -3
@@ -0,0 +1,130 @@
1
+ /**
2
+ * The one place a `/mmc-status` payload is checked before a status surface
3
+ * draws it.
4
+ *
5
+ * The OpenCode status dialog receives its data over RPC from the Magic Context
6
+ * server, and nothing guarantees that server is the same version as the UI or
7
+ * that it answered with a full status snapshot at all: it answers
8
+ * `{ sessionId, disabled: true }` for a directory it keeps no state for, an
9
+ * error envelope when it cannot read the session, and an older or newer field
10
+ * set when OpenCode was not restarted after an update. The shared view model
11
+ * used to read those fields unguarded, so a payload without `usagePercentage`
12
+ * threw inside the dialog's first render and took the whole TUI down.
13
+ *
14
+ * Every payload therefore passes through here first. Required fields are
15
+ * checked once; a payload missing any of them becomes a named "status
16
+ * unavailable" reason instead of a view. Optional fields with an unexpected
17
+ * shape are dropped (and listed) rather than passed on, so `buildStatusView`
18
+ * only ever sees values it can format. Pi builds its snapshot in process, but
19
+ * its overlay goes through the same check so both hosts draw from one contract.
20
+ *
21
+ * Fork note (upstream port batch 5, 2026-10-01): the warning derivation lives
22
+ * in status-summary.ts (upstream 44ce0e05b); the upstream shape's embedding
23
+ * and dreamer inputs are absent here — this fork removed those stacks (T-004)
24
+ * — and docsTokens/profileTokens are absent from StatusViewSource
25
+ * (T-005/T-010), so they are not required here.
26
+ */
27
+ import type { SidebarSnapshot } from "./rpc-types";
28
+ import type { CheckedStatusViewSource } from "./status-view";
29
+ /** Why a status surface shows "status unavailable" instead of the status view. */
30
+ export type StatusUnavailableReason =
31
+ /** The server could not be reached, or it answered with an error. */
32
+ {
33
+ readonly kind: "rpc_error";
34
+ readonly message: string;
35
+ }
36
+ /**
37
+ * The server answered that it keeps no Magic Context state for this
38
+ * directory: it is the user's home directory, or no project identity could
39
+ * be resolved for it (memory features are paused).
40
+ */
41
+ | {
42
+ readonly kind: "not_tracked";
43
+ readonly cause: "home_directory" | "identity_paused";
44
+ }
45
+ /** The payload lacks fields the view needs, or carries them with the wrong type. */
46
+ | {
47
+ readonly kind: "malformed";
48
+ readonly fields: readonly string[];
49
+ }
50
+ /**
51
+ * Building the view from a checked payload still threw. The check is meant
52
+ * to make this impossible; the reason exists so a gap in the check shows up
53
+ * as a named message in the dialog rather than as a crashed TUI.
54
+ */
55
+ | {
56
+ readonly kind: "view_error";
57
+ readonly message: string;
58
+ };
59
+ /** Plugin versions on both ends of the status RPC. */
60
+ export interface StatusVersions {
61
+ /**
62
+ * Version the Magic Context server reported, or null when it answered
63
+ * without one: servers older than the `pluginVersion` field. A request that
64
+ * got no answer carries no versions at all rather than a null here.
65
+ */
66
+ readonly server: string | null;
67
+ /** Version of the package drawing the status view. */
68
+ readonly ui: string;
69
+ }
70
+ /**
71
+ * Result of checking one status payload. `extras` carries host-specific values
72
+ * the host draws outside the shared view model (OpenCode's live recomp progress,
73
+ * for example); a host with none uses `undefined`.
74
+ */
75
+ export type StatusCheck<Extras = undefined> = {
76
+ readonly state: "ready";
77
+ readonly source: CheckedStatusViewSource;
78
+ /** Optional fields that were present with an unexpected shape and were left out. */
79
+ readonly ignoredFields: readonly string[];
80
+ /** Null on hosts where the status comes from the same process as the view. */
81
+ readonly versions: StatusVersions | null;
82
+ readonly extras: Extras;
83
+ } | {
84
+ readonly state: "unavailable";
85
+ readonly reason: StatusUnavailableReason;
86
+ readonly versions: StatusVersions | null;
87
+ };
88
+ /** What the OpenCode dialog draws beyond the shared view model. */
89
+ export interface OpenCodeStatusExtras {
90
+ readonly recompProgress: NonNullable<SidebarSnapshot["recompProgress"]> | null;
91
+ /** True when Rust authority has rerouted host tool and historian paths to the module. */
92
+ readonly hostBackendsModuleSide: boolean;
93
+ /** Read by OpenCode 2's plain-text status, drawn where no component dialog can be. */
94
+ readonly historianRunning: boolean;
95
+ readonly lastTransformError: string | null;
96
+ }
97
+ /**
98
+ * Checks a status snapshot against what `buildStatusView` reads and returns a
99
+ * copy holding only those fields. A missing or mistyped required field fails
100
+ * the check with its name; a malformed optional field is dropped and listed.
101
+ */
102
+ export declare function checkStatusViewSource(candidate: unknown): {
103
+ readonly ok: true;
104
+ readonly source: CheckedStatusViewSource;
105
+ readonly ignoredFields: string[];
106
+ } | {
107
+ readonly ok: false;
108
+ readonly fields: string[];
109
+ };
110
+ /** A host that builds its status in process: no transport, no version to compare. */
111
+ export declare function checkLocalStatusSource(candidate: unknown): StatusCheck;
112
+ /**
113
+ * An RPC failure (transport error, timeout, or client not started) as a status
114
+ * result. No server answered, so there is no server version to compare.
115
+ */
116
+ export declare function statusRpcFailure(message: string): StatusCheck<never>;
117
+ /**
118
+ * Checks a `status-detail` RPC reply for the OpenCode dialog (both host
119
+ * generations). `uiVersion` is the version of the package drawing the dialog;
120
+ * the server reports its own in `pluginVersion`, and a server too old to send
121
+ * it reports `null`.
122
+ */
123
+ export declare function checkStatusDetailPayload(raw: unknown, uiVersion: string): StatusCheck<OpenCodeStatusExtras>;
124
+ /**
125
+ * One line naming a server/UI version difference, or null when both ends run
126
+ * the same version (or the status comes from the same process). A server that
127
+ * reports no version predates the field, so it is older than this UI.
128
+ */
129
+ export declare function statusVersionNotice(versions: StatusVersions | null): string | null;
130
+ //# sourceMappingURL=status-view-check.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status-view-check.d.ts","sourceRoot":"","sources":["../../src/shared/status-view-check.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,230 @@
1
+ import { type ConfigParseFailure } from "./config-diagnostics";
2
+ import type { TailHygieneStatus } from "./rpc-types";
3
+ import { type StatusCheck, type StatusUnavailableReason, type StatusVersions } from "./status-view-check";
4
+ import { type UserFacingFailureKey } from "./user-facing-codes";
5
+ import { type WindowGeometryResult } from "./window-geometry";
6
+ /** Theme-independent colour role; each host maps these onto its own palette. */
7
+ export type StatusTone = "accent" | "text" | "muted" | "warning" | "error";
8
+ export interface StatusRow {
9
+ readonly label: string;
10
+ readonly value: string;
11
+ readonly tone: StatusTone;
12
+ }
13
+ export interface StatusSection {
14
+ readonly title: string;
15
+ /**
16
+ * Characters reserved for the label column of this section. Labels are
17
+ * padded to it and values start after it, so a label can never be squeezed
18
+ * into a mid-word wrap by a long value next to it.
19
+ */
20
+ readonly labelWidth: number;
21
+ readonly rows: readonly StatusRow[];
22
+ }
23
+ /** One coloured slice of the breakdown bar, sized by its token count. */
24
+ export interface StatusBarSegment {
25
+ readonly label: string;
26
+ readonly tokens: number;
27
+ readonly color: string;
28
+ }
29
+ export interface StatusBreakdownRow {
30
+ readonly label: string;
31
+ readonly value: string;
32
+ readonly color: string;
33
+ }
34
+ export interface StatusWarning {
35
+ readonly text: string;
36
+ readonly tone: "warning" | "error";
37
+ }
38
+ export interface StatusHeadlineCell {
39
+ readonly text: string;
40
+ readonly tone: StatusTone;
41
+ }
42
+ export interface StatusView {
43
+ readonly title: string;
44
+ readonly version: string;
45
+ /** Left cell is pressure against the threshold, right cell is the absolute count. */
46
+ readonly headline: {
47
+ readonly left: StatusHeadlineCell;
48
+ readonly right: StatusHeadlineCell;
49
+ };
50
+ readonly windowLine: string | null;
51
+ readonly bar: readonly StatusBarSegment[];
52
+ readonly breakdown: readonly StatusBreakdownRow[];
53
+ readonly hygiene: StatusRow | null;
54
+ readonly sections: readonly StatusSection[];
55
+ readonly warnings: readonly StatusWarning[];
56
+ readonly footer: string;
57
+ }
58
+ /**
59
+ * The status fields the view reads. Field names follow the OpenCode RPC
60
+ * `StatusDetail`, so that host passes its snapshot straight in; Pi builds the
61
+ * same shape from its own detail (see `statusViewSourceFromPiDetail`).
62
+ */
63
+ export interface StatusViewSource {
64
+ readonly usagePercentage: number;
65
+ readonly inputTokens: number;
66
+ readonly contextLimit: number;
67
+ readonly executeThreshold: number;
68
+ readonly executeThresholdClamped?: boolean;
69
+ readonly windowGeometry?: WindowGeometryResult;
70
+ readonly tailHygiene?: TailHygieneStatus;
71
+ readonly systemPromptTokens: number;
72
+ readonly compartmentTokens: number;
73
+ readonly compartmentCount: number;
74
+ readonly factTokens: number;
75
+ readonly memoryTokens: number;
76
+ readonly memoryBlockCount: number;
77
+ readonly conversationTokens: number;
78
+ readonly toolCallTokens: number;
79
+ readonly toolDefinitionTokens: number;
80
+ readonly activeTags: number;
81
+ readonly droppedTags: number;
82
+ readonly totalTags: number;
83
+ readonly activeBytes: number;
84
+ /** False when only a module-side total is authoritative; active/dropped are then unknown. */
85
+ readonly tagCountsAuthoritative?: boolean;
86
+ readonly lastNudgeTokens: number;
87
+ readonly pendingOpsCount: number;
88
+ readonly compactionMarker?: {
89
+ readonly code: "MC-C11" | null;
90
+ readonly attempts: number;
91
+ readonly lastError: string | null;
92
+ readonly pendingSinceMs: number | null;
93
+ };
94
+ readonly protectedTagCount: number;
95
+ readonly isSubagent: boolean;
96
+ readonly cacheTtl: string;
97
+ readonly cacheTtlSource?: import("./cache-ttl-display").CacheTtlDisplaySource;
98
+ readonly cacheTtlModelKey?: string;
99
+ readonly lastResponseTime: number;
100
+ readonly cacheRemainingMs: number;
101
+ readonly cacheExpired: boolean;
102
+ readonly cacheNeverExpires?: boolean;
103
+ readonly historyBlockTokens: number;
104
+ readonly compressionBudget: number | null;
105
+ readonly compressionUsage: string | null;
106
+ readonly memoryCount: number;
107
+ readonly sessionNoteCount?: number;
108
+ readonly archivedCompartmentCount?: number;
109
+ readonly configParseFailures?: readonly ConfigParseFailure[];
110
+ readonly configGeneration?: number;
111
+ readonly configAdoptedAt?: number;
112
+ readonly configReloadFailure?: {
113
+ readonly path: string;
114
+ readonly message: string;
115
+ };
116
+ /** OpenCode spells this `compaction_enabled`; both spellings are accepted. */
117
+ readonly compaction_enabled?: boolean;
118
+ readonly compactionEnabled?: boolean;
119
+ /** Failure codes to print under the sections, already selected by the host. */
120
+ readonly warnings?: readonly UserFacingFailureKey[];
121
+ /**
122
+ * Set when this server migrated the shared store at startup while other
123
+ * OpenCode servers (these PIDs, from their RPC discovery records) could not
124
+ * be checked; if one was an older build still running, it now reads a
125
+ * store newer than it supports.
126
+ */
127
+ readonly unconfirmedMigrationHolders?: {
128
+ readonly pids: readonly number[];
129
+ readonly fromVersion: number;
130
+ readonly toVersion: number;
131
+ };
132
+ readonly hiddenVariantWarnings?: readonly string[];
133
+ }
134
+ declare const checkedStatusViewSource: unique symbol;
135
+ /**
136
+ * A `StatusViewSource` that has passed `checkStatusViewSource`. The brand exists
137
+ * only in the type system: `buildStatusView` accepts nothing else, so a payload
138
+ * cannot reach the view model without going through the check.
139
+ */
140
+ export type CheckedStatusViewSource = StatusViewSource & {
141
+ readonly [checkedStatusViewSource]: true;
142
+ };
143
+ export interface StatusViewOptions {
144
+ /** Plugin version shown next to the title. */
145
+ readonly version: string;
146
+ /** Clock used for the cache "last response"/"remaining" values. */
147
+ readonly now?: number;
148
+ }
149
+ /**
150
+ * Category palette for status breakdowns, so one colour means one category
151
+ * wherever it is drawn.
152
+ */
153
+ export declare const STATUS_CATEGORY_COLORS: {
154
+ readonly system: "#c084fc";
155
+ readonly compartments: "#60a5fa";
156
+ readonly facts: "#fbbf24";
157
+ readonly memories: "#34d399";
158
+ readonly profile: "#a3e635";
159
+ readonly conversation: "#f87171";
160
+ readonly toolCalls: "#fb923c";
161
+ readonly toolDefs: "#f472b6";
162
+ };
163
+ /**
164
+ * Columns reserved between the two section columns when the grid is drawn.
165
+ * The dialog draws its two columns at equal width with this gap between them.
166
+ */
167
+ export declare const STATUS_COLUMN_GAP = 4;
168
+ /**
169
+ * Columns one section needs so that neither its labels nor its values wrap:
170
+ * the label column, one separating space, and the longest value in the section.
171
+ */
172
+ export declare function statusSectionWidth(section: StatusSection): number;
173
+ /** How the sections are laid out at one content width. */
174
+ export interface StatusColumnLayout {
175
+ /** True when both columns fit; false means the caller draws one column. */
176
+ readonly twoColumn: boolean;
177
+ /** Columns the widest section in the left column needs. */
178
+ readonly leftWidth: number;
179
+ /** Columns the widest section in the right column needs. */
180
+ readonly rightWidth: number;
181
+ }
182
+ /**
183
+ * Whether the sections fit in two columns at this content width, and how wide
184
+ * each column has to be.
185
+ *
186
+ * A value never wraps, so a section needs `labelWidth + 1 + longest value`
187
+ * columns and the grid is drawn only when both columns' requirements plus the
188
+ * gap fit the content width. When they do not, the caller draws the same
189
+ * sections in one column instead of squeezing values into mid-word wraps.
190
+ *
191
+ * The returned widths are the columns' own requirements, so a caller that sizes
192
+ * its columns from them cannot wrap a value even when the two requirements are
193
+ * very different. Both renderers call this so neither decides the layout on its
194
+ * own.
195
+ */
196
+ export declare function statusColumnsFor(sections: readonly StatusSection[], contentWidth: number): StatusColumnLayout;
197
+ /**
198
+ * Integer column widths for the breakdown bar, summing exactly to `totalWidth`.
199
+ *
200
+ * Each segment's proportional share is rounded down and the leftover columns go
201
+ * to the largest fractional remainders, so the widths always add up to the bar
202
+ * width. Rounding every segment independently instead leaves the bar short of
203
+ * its container by up to one column per segment, which paints as blank cells
204
+ * between the coloured runs.
205
+ *
206
+ * Every segment that carries tokens keeps at least one column, so a category
207
+ * whose share rounds below a column stays visible in the bar.
208
+ */
209
+ export declare function distributeBarWidths(tokens: readonly number[], totalWidth: number): number[];
210
+ /** Compact token count, e.g. 623K. Shared so every host prints one spelling. */
211
+ export declare function formatStatusTokens(value: number): string;
212
+ /** Builds the full status view from one checked snapshot. */
213
+ export declare function buildStatusView(source: CheckedStatusViewSource, options: StatusViewOptions): StatusView;
214
+ /**
215
+ * The view drawn instead of the status when there is no usable snapshot. It has
216
+ * the same shape as a full view (headline, sections, warnings, footer), so a
217
+ * host draws it with the same code and cannot crash on a missing part.
218
+ */
219
+ export declare function buildUnavailableStatusView(reason: StatusUnavailableReason, versions: StatusVersions | null, options: StatusViewOptions): StatusView;
220
+ /**
221
+ * The view for one checked status result: the full status, or the
222
+ * "status unavailable" view naming why there is none. A version difference
223
+ * between the server and this UI is named in both. This never throws, so a
224
+ * host can call it inside a render without guarding it.
225
+ */
226
+ export declare function buildStatusViewFor(check: StatusCheck<unknown>, options: StatusViewOptions): StatusView;
227
+ /** Pads one row to its section's label column; values print flush right. */
228
+ export declare function formatStatusRowText(row: StatusRow, labelWidth: number, width: number): string;
229
+ export {};
230
+ //# sourceMappingURL=status-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status-view.d.ts","sourceRoot":"","sources":["../../src/shared/status-view.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { WriteStream } from "node:fs";
2
+ import type { FileHandle } from "node:fs/promises";
3
+ export declare function setStoragePrivatePermissionEnforcement(enforce: boolean): void;
4
+ export declare function shouldEnforcePrivateStoragePermissions(): boolean;
5
+ /** Test-only reset for suites that exercise both permission policies in one process. */
6
+ export declare function __resetStoragePrivatePermissionEnforcementForTests(): void;
7
+ /** Create storage directories with owner-only permissions at their creation. */
8
+ export declare function ensureStorageDirectorySync(directory: string, forcePrivate?: boolean, recursive?: boolean): void;
9
+ /** Create or replace a storage file using a private mode from the first byte. */
10
+ export declare function writeStorageFileSync(filePath: string, content: string | Uint8Array, options?: {
11
+ encoding?: BufferEncoding;
12
+ flag?: string;
13
+ forcePrivate?: boolean;
14
+ }): void;
15
+ /** Write a private sibling then atomically publish it without a permissive temp window. */
16
+ export declare function writeStorageFileAtomicSync(filePath: string, content: string | Uint8Array, forcePrivate?: boolean): void;
17
+ export declare function copyStorageFileSync(sourcePath: string, destinationPath: string, forcePrivate?: boolean): void;
18
+ export declare function copyStorageTreeSync(sourcePath: string, destinationPath: string, forcePrivate?: boolean): void;
19
+ export declare function openStorageFileSync(filePath: string, flags: string, forcePrivate?: boolean): number;
20
+ export declare function writeStorageFileAsync(filePath: string, content: string | Uint8Array, forcePrivate?: boolean): Promise<void>;
21
+ export declare function writeStorageFileHandleAsync(handle: FileHandle, content: string): Promise<void>;
22
+ export declare function createStorageWriteStream(filePath: string, forcePrivate?: boolean): WriteStream;
23
+ export declare function createStorageFileHandleAsync(filePath: string, flags: string, forcePrivate?: boolean): Promise<FileHandle>;
24
+ /** Tighten existing entries during storage startup; symlinks are never followed. */
25
+ export declare function tightenStorageTreeSync(root: string): {
26
+ tightened: number;
27
+ failures: number;
28
+ };
29
+ //# sourceMappingURL=storage-permissions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-permissions.d.ts","sourceRoot":"","sources":["../../src/shared/storage-permissions.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAiB3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAMnD,wBAAgB,sCAAsC,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAE7E;AAED,wBAAgB,sCAAsC,IAAI,OAAO,CAEhE;AAED,wFAAwF;AACxF,wBAAgB,kDAAkD,IAAI,IAAI,CAEzE;AAED,gFAAgF;AAChF,wBAAgB,0BAA0B,CACtC,SAAS,EAAE,MAAM,EACjB,YAAY,UAAQ,EACpB,SAAS,UAAO,GACjB,IAAI,CAMN;AAED,iFAAiF;AACjF,wBAAgB,oBAAoB,CAChC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,UAAU,EAC5B,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,cAAc,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAO,GACnF,IAAI,CAON;AAED,2FAA2F;AAC3F,wBAAgB,0BAA0B,CACtC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,UAAU,EAC5B,YAAY,UAAQ,GACrB,IAAI,CAUN;AAED,wBAAgB,mBAAmB,CAC/B,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,YAAY,UAAQ,GACrB,IAAI,CAuBN;AAED,wBAAgB,mBAAmB,CAC/B,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,YAAY,UAAQ,GACrB,IAAI,CAeN;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,UAAQ,GAAG,MAAM,CAIjG;AAED,wBAAsB,qBAAqB,CACvC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,UAAU,EAC5B,YAAY,UAAQ,GACrB,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,2BAA2B,CAC7C,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,UAAQ,GAAG,WAAW,CAG5F;AAED,wBAAsB,4BAA4B,CAC9C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,YAAY,UAAQ,uBAIvB;AAED,oFAAoF;AACpF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAoC5F"}
@@ -0,0 +1,231 @@
1
+ /**
2
+ * Cross-harness subagent runner abstraction.
3
+ *
4
+ * Magic Context spawns the historian
5
+ * each as a child "session" with its own model/prompt/tools. OpenCode and Pi
6
+ * have very different APIs for this:
7
+ *
8
+ * - OpenCode: `client.session.create({parentID}) → client.session.prompt() →
9
+ * client.session.messages() → client.session.delete()`. The plugin runs
10
+ * in-process with the OpenCode server and uses its SDK client directly.
11
+ *
12
+ * - Pi: no in-process child-session API. Instead `pi --print --mode=json`
13
+ * spawns a non-interactive subprocess that emits structured JSON events
14
+ * and exits when the agent loop finishes. Sessions are JSONL files on
15
+ * disk, optionally addressed via `--session <path>`.
16
+ *
17
+ * The runner interface below normalizes both into the same shape so the
18
+ * actual subagent business logic (historian XML parsing)
19
+ * can stay harness-agnostic. Each harness ships its
20
+ * own runner implementation; agents take a `SubagentRunner` as a dep instead
21
+ * of reaching for `client.session.*` directly.
22
+ *
23
+ * Step 5a (this commit) defines the contract and ships `PiSubagentRunner`.
24
+ * Step 5b will refactor the OpenCode-side spawn paths in
25
+ * `compartment-runner-historian.ts` onto an
26
+ * `OpenCodeSubagentRunner` so both harnesses
27
+ * share the agent business logic instead of duplicating it. Until 5b lands,
28
+ * OpenCode keeps its existing direct `client.session.*` calls untouched —
29
+ * the runner contract is purely additive on the OpenCode side.
30
+ */
31
+ import type { ModelInput } from "./model-resolution";
32
+ /**
33
+ * Configuration for one subagent invocation.
34
+ *
35
+ * Mirrors the union of OpenCode's `session.create` + `session.prompt` body
36
+ * fields and Pi's `--print` CLI flags, picking the shared subset that the
37
+ * historian subagent actually uses today.
38
+ *
39
+ * Fields:
40
+ * - `agent`: harness-specific agent name. OpenCode looks this up in its
41
+ * agent registry (`HISTORIAN_AGENT`).
42
+ * Pi has no concept of "agent name" beyond config, so this is ignored
43
+ * on the Pi side and used only by `OpenCodeSubagentRunner`.
44
+ * - `systemPrompt`: full system prompt for this child run. Replaces (not
45
+ * appends to) any harness-default system prompt.
46
+ * - `userMessage`: the single user-turn prompt. Subagent runs are always
47
+ * one-shot — no multi-turn conversation in the child.
48
+ * - `model`: provider/model identifier in the canonical "provider/model"
49
+ * shape (e.g. "anthropic/claude-sonnet-4-7"). Each runner is responsible
50
+ * for translating to its harness's native model selection.
51
+ * - `fallbackModels`: ordered list of models to try if `model` fails. Both
52
+ * harnesses retry on transient model failures.
53
+ * - `timeoutMs`: hard cap on the child run. The runner aborts the child on
54
+ * exceeding this and returns `{ ok: false, reason: "timeout" }`.
55
+ * - `cwd`: working directory for the child. OpenCode uses this for
56
+ * `query.directory`; Pi uses it as the spawn cwd so that `--cwd`-aware
57
+ * tools see the right project root.
58
+ * - `signal`: optional AbortSignal so callers can cancel an in-flight run.
59
+ */
60
+ export interface SubagentRunOptions {
61
+ agent: string;
62
+ systemPrompt: string;
63
+ userMessage: string;
64
+ model?: string | undefined;
65
+ fallbackModels?: readonly ModelInput[];
66
+ timeoutMs?: number | undefined;
67
+ /** Sampling temperature for the provider request when the harness can enforce it. */
68
+ temperature?: number | undefined;
69
+ /** Requested output-token budget for the provider request. */
70
+ maxOutputTokens?: number | undefined;
71
+ cwd?: string | undefined;
72
+ signal?: AbortSignal | undefined;
73
+ /**
74
+ * Pi only: explicit thinking level, passed as `--thinking <level>` to the
75
+ * Pi subprocess. OpenCode ignores this field — thinking/reasoning is
76
+ * controlled via `variant` in the OpenCode agent config instead.
77
+ *
78
+ * Required when the configured historian model supports reasoning
79
+ * (e.g. github-copilot/gpt-5.4) because Pi's own default resolution may
80
+ * pick a value the provider rejects. Set to "off" to disable thinking for
81
+ * speed (local models), or "medium"/"high" for better quality.
82
+ */
83
+ thinkingLevel?: string | undefined;
84
+ /**
85
+ * Optional progress callback. The runner invokes it for milestone events
86
+ * during the run: spawn, first event received, terminal stop reason
87
+ * detected, child exit. Used by the historian to write
88
+ * lifecycle entries to the magic-context.log without polluting the
89
+ * normal stdout stream.
90
+ *
91
+ * Implementations must be non-throwing and fast — they're called on the
92
+ * runner's hot path. Errors are swallowed.
93
+ */
94
+ onProgress?: (event: SubagentProgressEvent) => void;
95
+ /** Optional token accounting metadata. When present, harness runners persist subagent_invocations. */
96
+ accountingSessionId?: string | undefined;
97
+ accountingSubagent?: "historian" | "historian_editor" | "compressor" | "recomp" | undefined;
98
+ accountingTask?: string | null | undefined;
99
+ accountingParentInvocationId?: number | null | undefined;
100
+ }
101
+ /**
102
+ * Progress events emitted by a runner during a run. Distinct from the final
103
+ * `SubagentRunResult` — these are mid-run milestones plus (optionally) every
104
+ * raw event the underlying harness emits, so callers can write a complete
105
+ * trace to the log when diagnosing hangs.
106
+ *
107
+ * Categories:
108
+ * - `spawned` / `child_exit` / `stderr` — process lifecycle.
109
+ * - `first_event` — convenience: first event received from the child, useful
110
+ * for measuring auth/network warmup time.
111
+ * - `terminal` — runner detected the final assistant turn (Pi: assistant
112
+ * message_end with terminal stopReason and no toolCall; OpenCode: SDK
113
+ * `agent_end` equivalent).
114
+ * - `raw_event` — every parsed event from the harness's structured output
115
+ * stream (Pi NDJSON / OpenCode SDK events). Emitted unconditionally so
116
+ * debug logs can capture the full timeline. The `event` payload is
117
+ * harness-shaped — callers should treat it as `unknown` and log it raw.
118
+ */
119
+ export type SubagentProgressEvent = {
120
+ type: "spawned";
121
+ argv: readonly string[];
122
+ pid: number | undefined;
123
+ } | {
124
+ type: "first_event";
125
+ eventType: string;
126
+ ms: number;
127
+ } | {
128
+ type: "raw_event";
129
+ eventType: string | undefined;
130
+ event: unknown;
131
+ ms: number;
132
+ } | {
133
+ type: "terminal";
134
+ stopReason: string | undefined;
135
+ textLength: number;
136
+ hasToolCall: boolean;
137
+ ms: number;
138
+ } | {
139
+ type: "stderr";
140
+ chunk: string;
141
+ } | {
142
+ type: "child_exit";
143
+ code: number | null;
144
+ signal: string | null;
145
+ ms: number;
146
+ };
147
+ /**
148
+ * Result of one subagent invocation.
149
+ *
150
+ * The runner contract is "fail soft": transient errors, timeouts, model
151
+ * failures, and aborts all surface as `{ ok: false, reason }` with a
152
+ * machine-readable reason and a human-readable message. Throwing is
153
+ * reserved for programmer errors (bad arguments, missing dependencies)
154
+ * that the agent code couldn't have caused.
155
+ *
156
+ * Fields:
157
+ * - `ok`: true iff the child produced a final assistant message.
158
+ * - `assistantText`: concatenated text content from the final assistant
159
+ * message, with leading/trailing whitespace trimmed. Empty assistant text is
160
+ * reported as `ok: false, reason: "no_assistant"` so callers can try fallback
161
+ * models instead of accepting an unusable success.
162
+ * - `reason`: failure category, one of:
163
+ * - `"invalid_prompt"`: a known zero-tool child was given no system prompt
164
+ * - `"timeout"`: hit `timeoutMs` before the child finished
165
+ * - `"abort"`: caller's `signal` was triggered
166
+ * - `"model_failed"`: every configured model + fallback returned an error
167
+ * - `"truncated"`: child stopped because model output hit length limits
168
+ * - `"spawn_failed"`: subprocess couldn't start (Pi only — binary missing,
169
+ * permission denied, etc.)
170
+ * - `"non_zero_exit"`: child exited unsuccessfully before a final answer
171
+ * - `"no_assistant"`: child completed without a final assistant message
172
+ * - `"parse_failed"`: child emitted output we couldn't parse (Pi only —
173
+ * JSON malformed or unexpected event ordering)
174
+ * - `error`: human-readable detail; safe to log, may include stack info.
175
+ * - `durationMs`: wall-clock time from runner-call to runner-return.
176
+ * - `meta`: optional harness-specific debug payload. Currently unused; left
177
+ * here so the OpenCode runner can surface the child session ID for log
178
+ * correlation when Step 5b lands.
179
+ */
180
+ export interface CompletedSubagentToolCall {
181
+ name: string;
182
+ arguments: Record<string, unknown>;
183
+ }
184
+ export type SubagentRunResult = {
185
+ ok: true;
186
+ assistantText: string;
187
+ durationMs: number;
188
+ /**
189
+ * Number of tool invocations the agent made during the run. Pi reports
190
+ * this so callers that gate on "did the agent actually investigate vs
191
+ * just paraphrase" (refresh-primers' grounding gate) work on Pi, whose
192
+ * facade otherwise surfaces only the final assistant text. OpenCode
193
+ * leaves it undefined — its callers read tool-call parts straight off
194
+ * the real session messages.
195
+ */
196
+ toolCallCount?: number;
197
+ /** Completed, non-error tool results preserved by runners that can
198
+ * reconstruct invocation/result pairs from their transcript. */
199
+ completedToolCalls?: CompletedSubagentToolCall[];
200
+ meta?: Record<string, unknown>;
201
+ } | {
202
+ ok: false;
203
+ reason: "invalid_prompt" | "timeout" | "abort" | "model_failed" | "truncated" | "spawn_failed" | "non_zero_exit" | "no_assistant" | "parse_failed";
204
+ error: string;
205
+ durationMs: number;
206
+ /** True when the caller should retry the task rather than advance its schedule. */
207
+ transient?: boolean;
208
+ meta?: Record<string, unknown>;
209
+ };
210
+ /**
211
+ * Abstract runner contract.
212
+ *
213
+ * Each harness ships a single instance — the OpenCode plugin wires
214
+ * `OpenCodeSubagentRunner` and the Pi plugin wires `PiSubagentRunner` in
215
+ * its `extension` boot path. Agent code (the historian)
216
+ * receives the runner as a dep and never reaches for harness-specific
217
+ * client APIs directly.
218
+ */
219
+ export interface SubagentRunner {
220
+ /** Human-readable harness name, for logging (`"opencode"` or `"pi"`). */
221
+ readonly harness: string;
222
+ /**
223
+ * Run one subagent invocation to completion.
224
+ *
225
+ * Always resolves with a `SubagentRunResult` — never throws for
226
+ * runtime/transport/model failures. Throwing is reserved for caller
227
+ * misuse (e.g. missing required option fields).
228
+ */
229
+ run(options: SubagentRunOptions): Promise<SubagentRunResult>;
230
+ }
231
+ //# sourceMappingURL=subagent-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subagent-runner.d.ts","sourceRoot":"","sources":["../../src/shared/subagent-runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function summarizeChildStderr(stderr: string): string;
2
+ //# sourceMappingURL=summarize-child-stderr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"summarize-child-stderr.d.ts","sourceRoot":"","sources":["../../src/shared/summarize-child-stderr.ts"],"names":[],"mappings":"AAaA,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAmB3D"}