omp-fabric 0.85.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (772) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +170 -0
  3. package/THIRD_PARTY_NOTICES.md +33 -0
  4. package/dist/activity/store.d.ts +32 -0
  5. package/dist/activity/store.d.ts.map +1 -0
  6. package/dist/activity/types.d.ts +104 -0
  7. package/dist/activity/types.d.ts.map +1 -0
  8. package/dist/actors/binding-store.d.ts +17 -0
  9. package/dist/actors/binding-store.d.ts.map +1 -0
  10. package/dist/actors/context.d.ts +13 -0
  11. package/dist/actors/context.d.ts.map +1 -0
  12. package/dist/actors/delivery-policy.d.ts +8 -0
  13. package/dist/actors/delivery-policy.d.ts.map +1 -0
  14. package/dist/actors/directory.d.ts +47 -0
  15. package/dist/actors/directory.d.ts.map +1 -0
  16. package/dist/actors/global-registry.d.ts +47 -0
  17. package/dist/actors/global-registry.d.ts.map +1 -0
  18. package/dist/actors/host-event-observer.d.ts +5 -0
  19. package/dist/actors/host-event-observer.d.ts.map +1 -0
  20. package/dist/actors/host-event-payload.d.ts +14 -0
  21. package/dist/actors/host-event-payload.d.ts.map +1 -0
  22. package/dist/actors/manager.d.ts +175 -0
  23. package/dist/actors/manager.d.ts.map +1 -0
  24. package/dist/actors/predicate.d.ts +7 -0
  25. package/dist/actors/predicate.d.ts.map +1 -0
  26. package/dist/actors/types.d.ts +211 -0
  27. package/dist/actors/types.d.ts.map +1 -0
  28. package/dist/agents/bash-worktree-add.d.ts +24 -0
  29. package/dist/agents/bash-worktree-add.d.ts.map +1 -0
  30. package/dist/agents/budget-ledger.d.ts +88 -0
  31. package/dist/agents/budget-ledger.d.ts.map +1 -0
  32. package/dist/agents/claude-cli.d.ts +32 -0
  33. package/dist/agents/claude-cli.d.ts.map +1 -0
  34. package/dist/agents/claude-cli.js +17 -0
  35. package/dist/agents/claude-cli.js.map +7 -0
  36. package/dist/agents/clone-first-worktree.d.ts +17 -0
  37. package/dist/agents/clone-first-worktree.d.ts.map +1 -0
  38. package/dist/agents/compact-control.d.ts +32 -0
  39. package/dist/agents/compact-control.d.ts.map +1 -0
  40. package/dist/agents/compact-control.js +127 -0
  41. package/dist/agents/compact-control.js.map +7 -0
  42. package/dist/agents/constants.d.ts +5 -0
  43. package/dist/agents/constants.d.ts.map +1 -0
  44. package/dist/agents/cow-clone.d.ts +8 -0
  45. package/dist/agents/cow-clone.d.ts.map +1 -0
  46. package/dist/agents/handoff.d.ts +19 -0
  47. package/dist/agents/handoff.d.ts.map +1 -0
  48. package/dist/agents/manager.d.ts +68 -0
  49. package/dist/agents/manager.d.ts.map +1 -0
  50. package/dist/agents/omp-binary.d.ts +7 -0
  51. package/dist/agents/omp-binary.d.ts.map +1 -0
  52. package/dist/agents/rm.d.ts +15 -0
  53. package/dist/agents/rm.d.ts.map +1 -0
  54. package/dist/agents/semaphore.d.ts +7 -0
  55. package/dist/agents/semaphore.d.ts.map +1 -0
  56. package/dist/agents/session-export.d.ts +9 -0
  57. package/dist/agents/session-export.d.ts.map +1 -0
  58. package/dist/agents/thinking-transfer.d.ts +39 -0
  59. package/dist/agents/thinking-transfer.d.ts.map +1 -0
  60. package/dist/agents/transports/herdr-transport.d.ts +10 -0
  61. package/dist/agents/transports/herdr-transport.d.ts.map +1 -0
  62. package/dist/agents/transports/localterm-transport.d.ts +7 -0
  63. package/dist/agents/transports/localterm-transport.d.ts.map +1 -0
  64. package/dist/agents/transports/process-transport.d.ts +7 -0
  65. package/dist/agents/transports/process-transport.d.ts.map +1 -0
  66. package/dist/agents/transports/process-utils.d.ts +29 -0
  67. package/dist/agents/transports/process-utils.d.ts.map +1 -0
  68. package/dist/agents/transports/screen-transport.d.ts +7 -0
  69. package/dist/agents/transports/screen-transport.d.ts.map +1 -0
  70. package/dist/agents/transports/tmux-transport.d.ts +7 -0
  71. package/dist/agents/transports/tmux-transport.d.ts.map +1 -0
  72. package/dist/agents/types.d.ts +251 -0
  73. package/dist/agents/types.d.ts.map +1 -0
  74. package/dist/agents/veda-cli.d.ts +22 -0
  75. package/dist/agents/veda-cli.d.ts.map +1 -0
  76. package/dist/agents/veda-cli.js +13 -0
  77. package/dist/agents/veda-cli.js.map +7 -0
  78. package/dist/agents/worktree-manager.d.ts +14 -0
  79. package/dist/agents/worktree-manager.d.ts.map +1 -0
  80. package/dist/agents/worktree-paths.d.ts +5 -0
  81. package/dist/agents/worktree-paths.d.ts.map +1 -0
  82. package/dist/async-settlement.d.ts +4 -0
  83. package/dist/async-settlement.d.ts.map +1 -0
  84. package/dist/audit/details.d.ts +82 -0
  85. package/dist/audit/details.d.ts.map +1 -0
  86. package/dist/audit/index.d.ts +4 -0
  87. package/dist/audit/index.d.ts.map +1 -0
  88. package/dist/audit/projection.d.ts +20 -0
  89. package/dist/audit/projection.d.ts.map +1 -0
  90. package/dist/audit/trace.d.ts +95 -0
  91. package/dist/audit/trace.d.ts.map +1 -0
  92. package/dist/capture/catalog.d.ts +29 -0
  93. package/dist/capture/catalog.d.ts.map +1 -0
  94. package/dist/capture/interceptor.d.ts +21 -0
  95. package/dist/capture/interceptor.d.ts.map +1 -0
  96. package/dist/capture/wrapper.d.ts +15 -0
  97. package/dist/capture/wrapper.d.ts.map +1 -0
  98. package/dist/chunks/chunk-2GQC324T.js +5001 -0
  99. package/dist/chunks/chunk-2GQC324T.js.map +7 -0
  100. package/dist/chunks/chunk-2KEWFW56.js +1229 -0
  101. package/dist/chunks/chunk-2KEWFW56.js.map +7 -0
  102. package/dist/chunks/chunk-3J7BKUNG.js +354 -0
  103. package/dist/chunks/chunk-3J7BKUNG.js.map +7 -0
  104. package/dist/chunks/chunk-4A4MVZQW.js +253 -0
  105. package/dist/chunks/chunk-4A4MVZQW.js.map +7 -0
  106. package/dist/chunks/chunk-4HQDSTHN.js +221 -0
  107. package/dist/chunks/chunk-4HQDSTHN.js.map +7 -0
  108. package/dist/chunks/chunk-4LEDA76O.js +688 -0
  109. package/dist/chunks/chunk-4LEDA76O.js.map +7 -0
  110. package/dist/chunks/chunk-5GTPD4BA.js +1318 -0
  111. package/dist/chunks/chunk-5GTPD4BA.js.map +7 -0
  112. package/dist/chunks/chunk-5IWFSDU5.js +87 -0
  113. package/dist/chunks/chunk-5IWFSDU5.js.map +7 -0
  114. package/dist/chunks/chunk-6N4XGAZY.js +21 -0
  115. package/dist/chunks/chunk-6N4XGAZY.js.map +7 -0
  116. package/dist/chunks/chunk-6QBPSZJ5.js +647 -0
  117. package/dist/chunks/chunk-6QBPSZJ5.js.map +7 -0
  118. package/dist/chunks/chunk-6X6WUU2K.js +73 -0
  119. package/dist/chunks/chunk-6X6WUU2K.js.map +7 -0
  120. package/dist/chunks/chunk-7363CD5A.js +38 -0
  121. package/dist/chunks/chunk-7363CD5A.js.map +7 -0
  122. package/dist/chunks/chunk-77FQHHZD.js +231 -0
  123. package/dist/chunks/chunk-77FQHHZD.js.map +7 -0
  124. package/dist/chunks/chunk-7BIA5BJN.js +112 -0
  125. package/dist/chunks/chunk-7BIA5BJN.js.map +7 -0
  126. package/dist/chunks/chunk-7BOAOKWH.js +64 -0
  127. package/dist/chunks/chunk-7BOAOKWH.js.map +7 -0
  128. package/dist/chunks/chunk-7TB7NXSL.js +58 -0
  129. package/dist/chunks/chunk-7TB7NXSL.js.map +7 -0
  130. package/dist/chunks/chunk-7VIQNUPS.js +17 -0
  131. package/dist/chunks/chunk-7VIQNUPS.js.map +7 -0
  132. package/dist/chunks/chunk-CT2AJ2UI.js +225 -0
  133. package/dist/chunks/chunk-CT2AJ2UI.js.map +7 -0
  134. package/dist/chunks/chunk-DLXPTBPL.js +151 -0
  135. package/dist/chunks/chunk-DLXPTBPL.js.map +7 -0
  136. package/dist/chunks/chunk-ED3BRM6P.js +17 -0
  137. package/dist/chunks/chunk-ED3BRM6P.js.map +7 -0
  138. package/dist/chunks/chunk-G2IBGGBM.js +42 -0
  139. package/dist/chunks/chunk-G2IBGGBM.js.map +7 -0
  140. package/dist/chunks/chunk-GKOFZ76R.js +1596 -0
  141. package/dist/chunks/chunk-GKOFZ76R.js.map +7 -0
  142. package/dist/chunks/chunk-HDJBUXDX.js +1102 -0
  143. package/dist/chunks/chunk-HDJBUXDX.js.map +7 -0
  144. package/dist/chunks/chunk-IGVDD2HT.js +10 -0
  145. package/dist/chunks/chunk-IGVDD2HT.js.map +7 -0
  146. package/dist/chunks/chunk-JHKOG5GS.js +187 -0
  147. package/dist/chunks/chunk-JHKOG5GS.js.map +7 -0
  148. package/dist/chunks/chunk-JP4LIZFT.js +1334 -0
  149. package/dist/chunks/chunk-JP4LIZFT.js.map +7 -0
  150. package/dist/chunks/chunk-JSBTB3P6.js +127 -0
  151. package/dist/chunks/chunk-JSBTB3P6.js.map +7 -0
  152. package/dist/chunks/chunk-KAD7UWT2.js +99 -0
  153. package/dist/chunks/chunk-KAD7UWT2.js.map +7 -0
  154. package/dist/chunks/chunk-KIH3KLZU.js +95 -0
  155. package/dist/chunks/chunk-KIH3KLZU.js.map +7 -0
  156. package/dist/chunks/chunk-KIREBD2V.js +2208 -0
  157. package/dist/chunks/chunk-KIREBD2V.js.map +7 -0
  158. package/dist/chunks/chunk-LMAVZN7J.js +8 -0
  159. package/dist/chunks/chunk-LMAVZN7J.js.map +7 -0
  160. package/dist/chunks/chunk-NCPJZXLM.js +57 -0
  161. package/dist/chunks/chunk-NCPJZXLM.js.map +7 -0
  162. package/dist/chunks/chunk-OJZNMROB.js +195 -0
  163. package/dist/chunks/chunk-OJZNMROB.js.map +7 -0
  164. package/dist/chunks/chunk-OPTP4PSE.js +469 -0
  165. package/dist/chunks/chunk-OPTP4PSE.js.map +7 -0
  166. package/dist/chunks/chunk-QPXSCMTG.js +24 -0
  167. package/dist/chunks/chunk-QPXSCMTG.js.map +7 -0
  168. package/dist/chunks/chunk-ROKMBLGN.js +1265 -0
  169. package/dist/chunks/chunk-ROKMBLGN.js.map +7 -0
  170. package/dist/chunks/chunk-SXMWV447.js +2445 -0
  171. package/dist/chunks/chunk-SXMWV447.js.map +7 -0
  172. package/dist/chunks/chunk-T5ZA5YRU.js +786 -0
  173. package/dist/chunks/chunk-T5ZA5YRU.js.map +7 -0
  174. package/dist/chunks/chunk-T6OAX4FO.js +1835 -0
  175. package/dist/chunks/chunk-T6OAX4FO.js.map +7 -0
  176. package/dist/chunks/chunk-U5FYOMG5.js +119 -0
  177. package/dist/chunks/chunk-U5FYOMG5.js.map +7 -0
  178. package/dist/chunks/chunk-UOSJZXJV.js +142 -0
  179. package/dist/chunks/chunk-UOSJZXJV.js.map +7 -0
  180. package/dist/chunks/chunk-UPCARIJP.js +6627 -0
  181. package/dist/chunks/chunk-UPCARIJP.js.map +7 -0
  182. package/dist/chunks/chunk-VPPIJRNZ.js +50 -0
  183. package/dist/chunks/chunk-VPPIJRNZ.js.map +7 -0
  184. package/dist/chunks/chunk-XU5Z4JCQ.js +297 -0
  185. package/dist/chunks/chunk-XU5Z4JCQ.js.map +7 -0
  186. package/dist/chunks/chunk-YWEXP724.js +427 -0
  187. package/dist/chunks/chunk-YWEXP724.js.map +7 -0
  188. package/dist/chunks/chunk-YZZIKJX6.js +60 -0
  189. package/dist/chunks/chunk-YZZIKJX6.js.map +7 -0
  190. package/dist/chunks/chunk-ZNAJDPT7.js +2203 -0
  191. package/dist/chunks/chunk-ZNAJDPT7.js.map +7 -0
  192. package/dist/chunks/chunk-ZTM45GH5.js +163 -0
  193. package/dist/chunks/chunk-ZTM45GH5.js.map +7 -0
  194. package/dist/commands/fabric.d.ts +17 -0
  195. package/dist/commands/fabric.d.ts.map +1 -0
  196. package/dist/compaction/bounds.d.ts +23 -0
  197. package/dist/compaction/bounds.d.ts.map +1 -0
  198. package/dist/compaction/branch-details.d.ts +83 -0
  199. package/dist/compaction/branch-details.d.ts.map +1 -0
  200. package/dist/compaction/branch-summary.d.ts +9 -0
  201. package/dist/compaction/branch-summary.d.ts.map +1 -0
  202. package/dist/compaction/enrichers.d.ts +10 -0
  203. package/dist/compaction/enrichers.d.ts.map +1 -0
  204. package/dist/compaction/hook.d.ts +98 -0
  205. package/dist/compaction/hook.d.ts.map +1 -0
  206. package/dist/compaction/hook.js +19 -0
  207. package/dist/compaction/hook.js.map +7 -0
  208. package/dist/compaction/instructions.d.ts +38 -0
  209. package/dist/compaction/instructions.d.ts.map +1 -0
  210. package/dist/compaction/normalize.d.ts +83 -0
  211. package/dist/compaction/normalize.d.ts.map +1 -0
  212. package/dist/compaction/projections.d.ts +31 -0
  213. package/dist/compaction/projections.d.ts.map +1 -0
  214. package/dist/compaction/qa.d.ts +27 -0
  215. package/dist/compaction/qa.d.ts.map +1 -0
  216. package/dist/compaction/render.d.ts +10 -0
  217. package/dist/compaction/render.d.ts.map +1 -0
  218. package/dist/compaction/threshold.d.ts +5 -0
  219. package/dist/compaction/threshold.d.ts.map +1 -0
  220. package/dist/compaction/trace-events.d.ts +23 -0
  221. package/dist/compaction/trace-events.d.ts.map +1 -0
  222. package/dist/components/catalog.d.ts +25 -0
  223. package/dist/components/catalog.d.ts.map +1 -0
  224. package/dist/components/effect-scope.d.ts +31 -0
  225. package/dist/components/effect-scope.d.ts.map +1 -0
  226. package/dist/components/loader.d.ts +27 -0
  227. package/dist/components/loader.d.ts.map +1 -0
  228. package/dist/components/model-guidance.d.ts +48 -0
  229. package/dist/components/model-guidance.d.ts.map +1 -0
  230. package/dist/components/provider-component.d.ts +31 -0
  231. package/dist/components/provider-component.d.ts.map +1 -0
  232. package/dist/components/supervisor.d.ts +29 -0
  233. package/dist/components/supervisor.d.ts.map +1 -0
  234. package/dist/components/types.d.ts +140 -0
  235. package/dist/components/types.d.ts.map +1 -0
  236. package/dist/config-migrations.d.ts +11 -0
  237. package/dist/config-migrations.d.ts.map +1 -0
  238. package/dist/config.d.ts +269 -0
  239. package/dist/config.d.ts.map +1 -0
  240. package/dist/core/action-registry.d.ts +159 -0
  241. package/dist/core/action-registry.d.ts.map +1 -0
  242. package/dist/core/action-registry.js +17 -0
  243. package/dist/core/action-registry.js.map +7 -0
  244. package/dist/core/action-repair.d.ts +20 -0
  245. package/dist/core/action-repair.d.ts.map +1 -0
  246. package/dist/core/agent-dir.d.ts +2 -0
  247. package/dist/core/agent-dir.d.ts.map +1 -0
  248. package/dist/core/approval-controller.d.ts +30 -0
  249. package/dist/core/approval-controller.d.ts.map +1 -0
  250. package/dist/core/atomic-write.d.ts +15 -0
  251. package/dist/core/atomic-write.d.ts.map +1 -0
  252. package/dist/core/auto-approval-classifier.d.ts +13 -0
  253. package/dist/core/auto-approval-classifier.d.ts.map +1 -0
  254. package/dist/core/call-preview.d.ts +8 -0
  255. package/dist/core/call-preview.d.ts.map +1 -0
  256. package/dist/core/child-tool-allowlist.d.ts +3 -0
  257. package/dist/core/child-tool-allowlist.d.ts.map +1 -0
  258. package/dist/core/compact-controller.d.ts +42 -0
  259. package/dist/core/compact-controller.d.ts.map +1 -0
  260. package/dist/core/core-override-guidance.d.ts +7 -0
  261. package/dist/core/core-override-guidance.d.ts.map +1 -0
  262. package/dist/core/direct-tool-approval.d.ts +19 -0
  263. package/dist/core/direct-tool-approval.d.ts.map +1 -0
  264. package/dist/core/effect-conflict.d.ts +3 -0
  265. package/dist/core/effect-conflict.d.ts.map +1 -0
  266. package/dist/core/file-lock.d.ts +12 -0
  267. package/dist/core/file-lock.d.ts.map +1 -0
  268. package/dist/core/model-resolution.d.ts +62 -0
  269. package/dist/core/model-resolution.d.ts.map +1 -0
  270. package/dist/core/model-usage.d.ts +8 -0
  271. package/dist/core/model-usage.d.ts.map +1 -0
  272. package/dist/core/omp-bash-error.d.ts +11 -0
  273. package/dist/core/omp-bash-error.d.ts.map +1 -0
  274. package/dist/core/omp-tools.d.ts +9 -0
  275. package/dist/core/omp-tools.d.ts.map +1 -0
  276. package/dist/core/provider-bindings.d.ts +47 -0
  277. package/dist/core/provider-bindings.d.ts.map +1 -0
  278. package/dist/core/proxy-contract.d.ts +18 -0
  279. package/dist/core/proxy-contract.d.ts.map +1 -0
  280. package/dist/core/session-context.d.ts +6 -0
  281. package/dist/core/session-context.d.ts.map +1 -0
  282. package/dist/core/skill-block.d.ts +10 -0
  283. package/dist/core/skill-block.d.ts.map +1 -0
  284. package/dist/core/skill-dir.d.ts +4 -0
  285. package/dist/core/skill-dir.d.ts.map +1 -0
  286. package/dist/core/skill-prompt.d.ts +3 -0
  287. package/dist/core/skill-prompt.d.ts.map +1 -0
  288. package/dist/core/skill-references.d.ts +7 -0
  289. package/dist/core/skill-references.d.ts.map +1 -0
  290. package/dist/core/stable-hash.d.ts +3 -0
  291. package/dist/core/stable-hash.d.ts.map +1 -0
  292. package/dist/core/system-guidance.d.ts +12 -0
  293. package/dist/core/system-guidance.d.ts.map +1 -0
  294. package/dist/core/token-math.d.ts +16 -0
  295. package/dist/core/token-math.d.ts.map +1 -0
  296. package/dist/core/tool-ownership.d.ts +52 -0
  297. package/dist/core/tool-ownership.d.ts.map +1 -0
  298. package/dist/core/tool-result-proxy.d.ts +18 -0
  299. package/dist/core/tool-result-proxy.d.ts.map +1 -0
  300. package/dist/entropy/active.d.ts +7 -0
  301. package/dist/entropy/active.d.ts.map +1 -0
  302. package/dist/entropy/compiled-store.d.ts +16 -0
  303. package/dist/entropy/compiled-store.d.ts.map +1 -0
  304. package/dist/entropy/compiled-surface.d.ts +51 -0
  305. package/dist/entropy/compiled-surface.d.ts.map +1 -0
  306. package/dist/entropy/compiler.d.ts +28 -0
  307. package/dist/entropy/compiler.d.ts.map +1 -0
  308. package/dist/entropy/corpus.d.ts +22 -0
  309. package/dist/entropy/corpus.d.ts.map +1 -0
  310. package/dist/entropy/fingerprint.d.ts +9 -0
  311. package/dist/entropy/fingerprint.d.ts.map +1 -0
  312. package/dist/entropy/index.d.ts +15 -0
  313. package/dist/entropy/index.d.ts.map +1 -0
  314. package/dist/entropy/index.js +172 -0
  315. package/dist/entropy/index.js.map +7 -0
  316. package/dist/entropy/meter.d.ts +10 -0
  317. package/dist/entropy/meter.d.ts.map +1 -0
  318. package/dist/entropy/passes.d.ts +13 -0
  319. package/dist/entropy/passes.d.ts.map +1 -0
  320. package/dist/entropy/pool-store.d.ts +15 -0
  321. package/dist/entropy/pool-store.d.ts.map +1 -0
  322. package/dist/entropy/pool.d.ts +41 -0
  323. package/dist/entropy/pool.d.ts.map +1 -0
  324. package/dist/entropy/presentation.d.ts +13 -0
  325. package/dist/entropy/presentation.d.ts.map +1 -0
  326. package/dist/entropy/sessions.d.ts +47 -0
  327. package/dist/entropy/sessions.d.ts.map +1 -0
  328. package/dist/entropy/surface.d.ts +30 -0
  329. package/dist/entropy/surface.d.ts.map +1 -0
  330. package/dist/entropy/trial.d.ts +35 -0
  331. package/dist/entropy/trial.d.ts.map +1 -0
  332. package/dist/entropy/types.d.ts +158 -0
  333. package/dist/entropy/types.d.ts.map +1 -0
  334. package/dist/execution-service.d.ts +63 -0
  335. package/dist/execution-service.d.ts.map +1 -0
  336. package/dist/fabric-exec-arguments.d.ts +5 -0
  337. package/dist/fabric-exec-arguments.d.ts.map +1 -0
  338. package/dist/fabric-exec-tool.d.ts +8 -0
  339. package/dist/fabric-exec-tool.d.ts.map +1 -0
  340. package/dist/fabric-runtime-state.d.ts +90 -0
  341. package/dist/fabric-runtime-state.d.ts.map +1 -0
  342. package/dist/fabric-runtime-state.js +13060 -0
  343. package/dist/fabric-runtime-state.js.map +7 -0
  344. package/dist/fabric-state.d.ts +89 -0
  345. package/dist/fabric-state.d.ts.map +1 -0
  346. package/dist/failure-progress.d.ts +3 -0
  347. package/dist/failure-progress.d.ts.map +1 -0
  348. package/dist/host-compatibility.d.ts +5 -0
  349. package/dist/host-compatibility.d.ts.map +1 -0
  350. package/dist/index.d.ts +6 -0
  351. package/dist/index.d.ts.map +1 -0
  352. package/dist/index.js +5719 -0
  353. package/dist/index.js.map +7 -0
  354. package/dist/lifecycle/broker.d.ts +30 -0
  355. package/dist/lifecycle/broker.d.ts.map +1 -0
  356. package/dist/lifecycle/delivery-scheduler.d.ts +30 -0
  357. package/dist/lifecycle/delivery-scheduler.d.ts.map +1 -0
  358. package/dist/lifecycle/types.d.ts +91 -0
  359. package/dist/lifecycle/types.d.ts.map +1 -0
  360. package/dist/log-tail.d.ts +11 -0
  361. package/dist/log-tail.d.ts.map +1 -0
  362. package/dist/main-agent.d.ts +70 -0
  363. package/dist/main-agent.d.ts.map +1 -0
  364. package/dist/memory/context.d.ts +112 -0
  365. package/dist/memory/context.d.ts.map +1 -0
  366. package/dist/memory/digest.d.ts +48 -0
  367. package/dist/memory/digest.d.ts.map +1 -0
  368. package/dist/memory/digest.js +7 -0
  369. package/dist/memory/digest.js.map +7 -0
  370. package/dist/memory/discovery.d.ts +43 -0
  371. package/dist/memory/discovery.d.ts.map +1 -0
  372. package/dist/memory/discovery.js +23 -0
  373. package/dist/memory/discovery.js.map +7 -0
  374. package/dist/memory/index.d.ts +107 -0
  375. package/dist/memory/index.d.ts.map +1 -0
  376. package/dist/memory/lineage.d.ts +20 -0
  377. package/dist/memory/lineage.d.ts.map +1 -0
  378. package/dist/memory/normalize.d.ts +170 -0
  379. package/dist/memory/normalize.d.ts.map +1 -0
  380. package/dist/memory/normalize.js +22 -0
  381. package/dist/memory/normalize.js.map +7 -0
  382. package/dist/memory/regex.d.ts +19 -0
  383. package/dist/memory/regex.d.ts.map +1 -0
  384. package/dist/memory/search.d.ts +98 -0
  385. package/dist/memory/search.d.ts.map +1 -0
  386. package/dist/memory/search.js +22 -0
  387. package/dist/memory/search.js.map +7 -0
  388. package/dist/memory/tokenize.d.ts +24 -0
  389. package/dist/memory/tokenize.d.ts.map +1 -0
  390. package/dist/mesh/store.d.ts +78 -0
  391. package/dist/mesh/store.d.ts.map +1 -0
  392. package/dist/output-budget.d.ts +12 -0
  393. package/dist/output-budget.d.ts.map +1 -0
  394. package/dist/prewalk/arm.d.ts +8 -0
  395. package/dist/prewalk/arm.d.ts.map +1 -0
  396. package/dist/prewalk/controller.d.ts +60 -0
  397. package/dist/prewalk/controller.d.ts.map +1 -0
  398. package/dist/prewalk/fs-drift.d.ts +19 -0
  399. package/dist/prewalk/fs-drift.d.ts.map +1 -0
  400. package/dist/prewalk/handoff.d.ts +45 -0
  401. package/dist/prewalk/handoff.d.ts.map +1 -0
  402. package/dist/protocol.d.ts +273 -0
  403. package/dist/protocol.d.ts.map +1 -0
  404. package/dist/protocol.js +46 -0
  405. package/dist/protocol.js.map +7 -0
  406. package/dist/providers/agents-actions.d.ts +3 -0
  407. package/dist/providers/agents-actions.d.ts.map +1 -0
  408. package/dist/providers/agents-provider.d.ts +59 -0
  409. package/dist/providers/agents-provider.d.ts.map +1 -0
  410. package/dist/providers/arg-normalization.d.ts +15 -0
  411. package/dist/providers/arg-normalization.d.ts.map +1 -0
  412. package/dist/providers/captured-tools-provider.d.ts +23 -0
  413. package/dist/providers/captured-tools-provider.d.ts.map +1 -0
  414. package/dist/providers/compact-provider.d.ts +14 -0
  415. package/dist/providers/compact-provider.d.ts.map +1 -0
  416. package/dist/providers/components-provider.d.ts +12 -0
  417. package/dist/providers/components-provider.d.ts.map +1 -0
  418. package/dist/providers/mcp-descriptor-cache.d.ts +47 -0
  419. package/dist/providers/mcp-descriptor-cache.d.ts.map +1 -0
  420. package/dist/providers/mcp-provider.d.ts +27 -0
  421. package/dist/providers/mcp-provider.d.ts.map +1 -0
  422. package/dist/providers/memory-provider.d.ts +35 -0
  423. package/dist/providers/memory-provider.d.ts.map +1 -0
  424. package/dist/providers/memory-provider.js +16 -0
  425. package/dist/providers/memory-provider.js.map +7 -0
  426. package/dist/providers/mesh-provider.d.ts +17 -0
  427. package/dist/providers/mesh-provider.d.ts.map +1 -0
  428. package/dist/providers/omp-bash-cwd.d.ts +31 -0
  429. package/dist/providers/omp-bash-cwd.d.ts.map +1 -0
  430. package/dist/providers/omp-tools-provider.d.ts +15 -0
  431. package/dist/providers/omp-tools-provider.d.ts.map +1 -0
  432. package/dist/providers/schema-provider.d.ts +15 -0
  433. package/dist/providers/schema-provider.d.ts.map +1 -0
  434. package/dist/providers/state-provider.d.ts +16 -0
  435. package/dist/providers/state-provider.d.ts.map +1 -0
  436. package/dist/providers/write-diff-limits.d.ts +5 -0
  437. package/dist/providers/write-diff-limits.d.ts.map +1 -0
  438. package/dist/providers/write-preview.d.ts +3 -0
  439. package/dist/providers/write-preview.d.ts.map +1 -0
  440. package/dist/ref-names.d.ts +2 -0
  441. package/dist/ref-names.d.ts.map +1 -0
  442. package/dist/repairs/active.d.ts +7 -0
  443. package/dist/repairs/active.d.ts.map +1 -0
  444. package/dist/repairs/apply.d.ts +7 -0
  445. package/dist/repairs/apply.d.ts.map +1 -0
  446. package/dist/repairs/catalog-digest.d.ts +5 -0
  447. package/dist/repairs/catalog-digest.d.ts.map +1 -0
  448. package/dist/repairs/classify.d.ts +10 -0
  449. package/dist/repairs/classify.d.ts.map +1 -0
  450. package/dist/repairs/compiler.d.ts +33 -0
  451. package/dist/repairs/compiler.d.ts.map +1 -0
  452. package/dist/repairs/promote.d.ts +4 -0
  453. package/dist/repairs/promote.d.ts.map +1 -0
  454. package/dist/repairs/store.d.ts +10 -0
  455. package/dist/repairs/store.d.ts.map +1 -0
  456. package/dist/repairs/types.d.ts +49 -0
  457. package/dist/repairs/types.d.ts.map +1 -0
  458. package/dist/residency/actor-client.d.ts +16 -0
  459. package/dist/residency/actor-client.d.ts.map +1 -0
  460. package/dist/residency/actor-client.js +9 -0
  461. package/dist/residency/actor-client.js.map +7 -0
  462. package/dist/residency/client.d.ts +44 -0
  463. package/dist/residency/client.d.ts.map +1 -0
  464. package/dist/residency/host.d.ts +3 -0
  465. package/dist/residency/host.d.ts.map +1 -0
  466. package/dist/residency/host.js +25 -0
  467. package/dist/residency/host.js.map +7 -0
  468. package/dist/residency/launcher-owner.d.ts +7 -0
  469. package/dist/residency/launcher-owner.d.ts.map +1 -0
  470. package/dist/residency/launcher.d.ts +3 -0
  471. package/dist/residency/launcher.d.ts.map +1 -0
  472. package/dist/residency/launcher.js +152 -0
  473. package/dist/residency/launcher.js.map +7 -0
  474. package/dist/residency/omp-entry.d.ts +3 -0
  475. package/dist/residency/omp-entry.d.ts.map +1 -0
  476. package/dist/residency/omp-entry.js +41 -0
  477. package/dist/residency/omp-entry.js.map +7 -0
  478. package/dist/residency/protocol.d.ts +119 -0
  479. package/dist/residency/protocol.d.ts.map +1 -0
  480. package/dist/run-display.d.ts +3 -0
  481. package/dist/run-display.d.ts.map +1 -0
  482. package/dist/runtime/core-override-guest-types.d.ts +15 -0
  483. package/dist/runtime/core-override-guest-types.d.ts.map +1 -0
  484. package/dist/runtime/core-override-guest-types.js +291 -0
  485. package/dist/runtime/core-override-guest-types.js.map +7 -0
  486. package/dist/runtime/core-tool-properties.d.ts +6 -0
  487. package/dist/runtime/core-tool-properties.d.ts.map +1 -0
  488. package/dist/runtime/dynamic-guest-types.d.ts +3 -0
  489. package/dist/runtime/dynamic-guest-types.d.ts.map +1 -0
  490. package/dist/runtime/dynamic-guest-types.js +226 -0
  491. package/dist/runtime/dynamic-guest-types.js.map +7 -0
  492. package/dist/runtime/guest-code-repair.d.ts +2 -0
  493. package/dist/runtime/guest-code-repair.d.ts.map +1 -0
  494. package/dist/runtime/guest-stack-map.d.ts +11 -0
  495. package/dist/runtime/guest-stack-map.d.ts.map +1 -0
  496. package/dist/runtime/guest-types.d.ts +35 -0
  497. package/dist/runtime/guest-types.d.ts.map +1 -0
  498. package/dist/runtime/guest-types.js +13 -0
  499. package/dist/runtime/guest-types.js.map +7 -0
  500. package/dist/runtime/node-process-child-source.d.ts +2 -0
  501. package/dist/runtime/node-process-child-source.d.ts.map +1 -0
  502. package/dist/runtime/node-process-runtime.d.ts +10 -0
  503. package/dist/runtime/node-process-runtime.d.ts.map +1 -0
  504. package/dist/runtime/node-process-runtime.js +319 -0
  505. package/dist/runtime/node-process-runtime.js.map +7 -0
  506. package/dist/runtime/orchestration.d.ts +3 -0
  507. package/dist/runtime/orchestration.d.ts.map +1 -0
  508. package/dist/runtime/quickjs-runtime.d.ts +24 -0
  509. package/dist/runtime/quickjs-runtime.d.ts.map +1 -0
  510. package/dist/runtime/quickjs-runtime.js +12 -0
  511. package/dist/runtime/quickjs-runtime.js.map +7 -0
  512. package/dist/runtime/type-checker.d.ts +21 -0
  513. package/dist/runtime/type-checker.d.ts.map +1 -0
  514. package/dist/runtime/type-checker.js +15 -0
  515. package/dist/runtime/type-checker.js.map +7 -0
  516. package/dist/runtime-paths.d.ts +7 -0
  517. package/dist/runtime-paths.d.ts.map +1 -0
  518. package/dist/schema/controller.d.ts +35 -0
  519. package/dist/schema/controller.d.ts.map +1 -0
  520. package/dist/schema/types.d.ts +86 -0
  521. package/dist/schema/types.d.ts.map +1 -0
  522. package/dist/schema/workspace.d.ts +19 -0
  523. package/dist/schema/workspace.d.ts.map +1 -0
  524. package/dist/speculation/eligibility.d.ts +22 -0
  525. package/dist/speculation/eligibility.d.ts.map +1 -0
  526. package/dist/speculation/freshness.d.ts +10 -0
  527. package/dist/speculation/freshness.d.ts.map +1 -0
  528. package/dist/speculation/partial-json.d.ts +9 -0
  529. package/dist/speculation/partial-json.d.ts.map +1 -0
  530. package/dist/speculation/scanner.d.ts +13 -0
  531. package/dist/speculation/scanner.d.ts.map +1 -0
  532. package/dist/speculation/scanner.js +182 -0
  533. package/dist/speculation/scanner.js.map +7 -0
  534. package/dist/speculation/store.d.ts +39 -0
  535. package/dist/speculation/store.d.ts.map +1 -0
  536. package/dist/speculation/stream-tap.d.ts +27 -0
  537. package/dist/speculation/stream-tap.d.ts.map +1 -0
  538. package/dist/speculation/types.d.ts +44 -0
  539. package/dist/speculation/types.d.ts.map +1 -0
  540. package/dist/state/complexity.d.ts +13 -0
  541. package/dist/state/complexity.d.ts.map +1 -0
  542. package/dist/state/evidence-runner.d.ts +17 -0
  543. package/dist/state/evidence-runner.d.ts.map +1 -0
  544. package/dist/state/store.d.ts +76 -0
  545. package/dist/state/store.d.ts.map +1 -0
  546. package/dist/state/types.d.ts +165 -0
  547. package/dist/state/types.d.ts.map +1 -0
  548. package/dist/storage/retention.d.ts +22 -0
  549. package/dist/storage/retention.d.ts.map +1 -0
  550. package/dist/thinking.d.ts +19 -0
  551. package/dist/thinking.d.ts.map +1 -0
  552. package/dist/topology/control-plane.d.ts +58 -0
  553. package/dist/topology/control-plane.d.ts.map +1 -0
  554. package/dist/topology/participant-directory.d.ts +33 -0
  555. package/dist/topology/participant-directory.d.ts.map +1 -0
  556. package/dist/topology/peer-settle.d.ts +51 -0
  557. package/dist/topology/peer-settle.d.ts.map +1 -0
  558. package/dist/topology/records.d.ts +6 -0
  559. package/dist/topology/records.d.ts.map +1 -0
  560. package/dist/topology/types.d.ts +89 -0
  561. package/dist/topology/types.d.ts.map +1 -0
  562. package/dist/type-error-guidance.d.ts +3 -0
  563. package/dist/type-error-guidance.d.ts.map +1 -0
  564. package/dist/ui/arc-group.d.ts +17 -0
  565. package/dist/ui/arc-group.d.ts.map +1 -0
  566. package/dist/ui/code-preview-shell.d.ts +26 -0
  567. package/dist/ui/code-preview-shell.d.ts.map +1 -0
  568. package/dist/ui/code-preview.d.ts +53 -0
  569. package/dist/ui/code-preview.d.ts.map +1 -0
  570. package/dist/ui/controller.d.ts +20 -0
  571. package/dist/ui/controller.d.ts.map +1 -0
  572. package/dist/ui/conversation-chrome.d.ts +15 -0
  573. package/dist/ui/conversation-chrome.d.ts.map +1 -0
  574. package/dist/ui/conversation-chrome.js +10 -0
  575. package/dist/ui/conversation-chrome.js.map +7 -0
  576. package/dist/ui/conversation-native-reader.d.ts +106 -0
  577. package/dist/ui/conversation-native-reader.d.ts.map +1 -0
  578. package/dist/ui/conversation-native-reader.js +784 -0
  579. package/dist/ui/conversation-native-reader.js.map +7 -0
  580. package/dist/ui/conversation-queue-store.d.ts +12 -0
  581. package/dist/ui/conversation-queue-store.d.ts.map +1 -0
  582. package/dist/ui/conversation-queue.d.ts +242 -0
  583. package/dist/ui/conversation-queue.d.ts.map +1 -0
  584. package/dist/ui/conversation-render.d.ts +45 -0
  585. package/dist/ui/conversation-render.d.ts.map +1 -0
  586. package/dist/ui/conversation-shortcut.d.ts +3 -0
  587. package/dist/ui/conversation-shortcut.d.ts.map +1 -0
  588. package/dist/ui/conversation-targets.d.ts +7 -0
  589. package/dist/ui/conversation-targets.d.ts.map +1 -0
  590. package/dist/ui/conversation-targets.js +12 -0
  591. package/dist/ui/conversation-targets.js.map +7 -0
  592. package/dist/ui/conversation-transcript.d.ts +25 -0
  593. package/dist/ui/conversation-transcript.d.ts.map +1 -0
  594. package/dist/ui/conversation.d.ts +170 -0
  595. package/dist/ui/conversation.d.ts.map +1 -0
  596. package/dist/ui/conversation.js +1868 -0
  597. package/dist/ui/conversation.js.map +7 -0
  598. package/dist/ui/core-tool-render.d.ts +20 -0
  599. package/dist/ui/core-tool-render.d.ts.map +1 -0
  600. package/dist/ui/dashboard-detail.d.ts +68 -0
  601. package/dist/ui/dashboard-detail.d.ts.map +1 -0
  602. package/dist/ui/dashboard-fabric-graph.d.ts +50 -0
  603. package/dist/ui/dashboard-fabric-graph.d.ts.map +1 -0
  604. package/dist/ui/dashboard-model.d.ts +111 -0
  605. package/dist/ui/dashboard-model.d.ts.map +1 -0
  606. package/dist/ui/dashboard-presentation.d.ts +6 -0
  607. package/dist/ui/dashboard-presentation.d.ts.map +1 -0
  608. package/dist/ui/dashboard.d.ts +188 -0
  609. package/dist/ui/dashboard.d.ts.map +1 -0
  610. package/dist/ui/dashboard.js +4604 -0
  611. package/dist/ui/dashboard.js.map +7 -0
  612. package/dist/ui/diff-background.d.ts +12 -0
  613. package/dist/ui/diff-background.d.ts.map +1 -0
  614. package/dist/ui/dynamic-border.d.ts +8 -0
  615. package/dist/ui/dynamic-border.d.ts.map +1 -0
  616. package/dist/ui/escape-halt.d.ts +11 -0
  617. package/dist/ui/escape-halt.d.ts.map +1 -0
  618. package/dist/ui/fabric-actor-delivery-selector.d.ts +17 -0
  619. package/dist/ui/fabric-actor-delivery-selector.d.ts.map +1 -0
  620. package/dist/ui/fabric-actor-tool-selector.d.ts +22 -0
  621. package/dist/ui/fabric-actor-tool-selector.d.ts.map +1 -0
  622. package/dist/ui/fabric-code-parser.d.ts +8 -0
  623. package/dist/ui/fabric-code-parser.d.ts.map +1 -0
  624. package/dist/ui/fabric-host-event-selector.d.ts +29 -0
  625. package/dist/ui/fabric-host-event-selector.d.ts.map +1 -0
  626. package/dist/ui/fabric-model-selector.d.ts +64 -0
  627. package/dist/ui/fabric-model-selector.d.ts.map +1 -0
  628. package/dist/ui/fabric-render.d.ts +113 -0
  629. package/dist/ui/fabric-render.d.ts.map +1 -0
  630. package/dist/ui/fabric-thinking-selector.d.ts +26 -0
  631. package/dist/ui/fabric-thinking-selector.d.ts.map +1 -0
  632. package/dist/ui/fabric-title-hint.d.ts +2 -0
  633. package/dist/ui/fabric-title-hint.d.ts.map +1 -0
  634. package/dist/ui/format.d.ts +9 -0
  635. package/dist/ui/format.d.ts.map +1 -0
  636. package/dist/ui/highlight.d.ts +69 -0
  637. package/dist/ui/highlight.d.ts.map +1 -0
  638. package/dist/ui/model-picker.d.ts +46 -0
  639. package/dist/ui/model-picker.d.ts.map +1 -0
  640. package/dist/ui/model-picker.js +17 -0
  641. package/dist/ui/model-picker.js.map +7 -0
  642. package/dist/ui/preview-lines.d.ts +16 -0
  643. package/dist/ui/preview-lines.d.ts.map +1 -0
  644. package/dist/ui/row-balance.d.ts +29 -0
  645. package/dist/ui/row-balance.d.ts.map +1 -0
  646. package/dist/ui/settings.d.ts +57 -0
  647. package/dist/ui/settings.d.ts.map +1 -0
  648. package/dist/ui/settings.js +1908 -0
  649. package/dist/ui/settings.js.map +7 -0
  650. package/dist/ui/shiki-language.d.ts +7 -0
  651. package/dist/ui/shiki-language.d.ts.map +1 -0
  652. package/dist/ui/shiki-theme.d.ts +7 -0
  653. package/dist/ui/shiki-theme.d.ts.map +1 -0
  654. package/dist/ui/snapshot.d.ts +7 -0
  655. package/dist/ui/snapshot.d.ts.map +1 -0
  656. package/dist/ui/spinner.d.ts +6 -0
  657. package/dist/ui/spinner.d.ts.map +1 -0
  658. package/dist/ui/state-file-preview.d.ts +13 -0
  659. package/dist/ui/state-file-preview.d.ts.map +1 -0
  660. package/dist/ui/structured.d.ts +9 -0
  661. package/dist/ui/structured.d.ts.map +1 -0
  662. package/dist/ui/symbol-theme.d.ts +3 -0
  663. package/dist/ui/symbol-theme.d.ts.map +1 -0
  664. package/dist/ui/tool-call-timing.d.ts +2 -0
  665. package/dist/ui/tool-call-timing.d.ts.map +1 -0
  666. package/dist/ui/tool-display.d.ts +8 -0
  667. package/dist/ui/tool-display.d.ts.map +1 -0
  668. package/dist/ui/topology.d.ts +162 -0
  669. package/dist/ui/topology.d.ts.map +1 -0
  670. package/dist/ui/transcript-parser.d.ts +18 -0
  671. package/dist/ui/transcript-parser.d.ts.map +1 -0
  672. package/dist/ui/transcript-reader.d.ts +10 -0
  673. package/dist/ui/transcript-reader.d.ts.map +1 -0
  674. package/dist/ui/transcript-sanitization.d.ts +14 -0
  675. package/dist/ui/transcript-sanitization.d.ts.map +1 -0
  676. package/dist/ui/transcript.d.ts +52 -0
  677. package/dist/ui/transcript.d.ts.map +1 -0
  678. package/dist/ui/types.d.ts +84 -0
  679. package/dist/ui/types.d.ts.map +1 -0
  680. package/dist/ui/widget.d.ts +16 -0
  681. package/dist/ui/widget.d.ts.map +1 -0
  682. package/dist/ui/word-diff/alignment.d.ts +6 -0
  683. package/dist/ui/word-diff/alignment.d.ts.map +1 -0
  684. package/dist/ui/word-diff/change-block.d.ts +18 -0
  685. package/dist/ui/word-diff/change-block.d.ts.map +1 -0
  686. package/dist/ui/word-diff/changed-line.d.ts +14 -0
  687. package/dist/ui/word-diff/changed-line.d.ts.map +1 -0
  688. package/dist/ui/word-diff/emphasis.d.ts +9 -0
  689. package/dist/ui/word-diff/emphasis.d.ts.map +1 -0
  690. package/dist/ui/word-diff/line-emphasis.d.ts +7 -0
  691. package/dist/ui/word-diff/line-emphasis.d.ts.map +1 -0
  692. package/dist/ui/word-diff/line-matching.d.ts +10 -0
  693. package/dist/ui/word-diff/line-matching.d.ts.map +1 -0
  694. package/dist/ui/word-diff/line-similarity.d.ts +16 -0
  695. package/dist/ui/word-diff/line-similarity.d.ts.map +1 -0
  696. package/dist/ui/word-diff/normalize.d.ts +3 -0
  697. package/dist/ui/word-diff/normalize.d.ts.map +1 -0
  698. package/dist/ui/word-diff/parse.d.ts +17 -0
  699. package/dist/ui/word-diff/parse.d.ts.map +1 -0
  700. package/dist/ui/word-diff/range-refinement.d.ts +5 -0
  701. package/dist/ui/word-diff/range-refinement.d.ts.map +1 -0
  702. package/dist/ui/word-diff/ranges.d.ts +11 -0
  703. package/dist/ui/word-diff/ranges.d.ts.map +1 -0
  704. package/dist/ui/word-diff/smart-filter.d.ts +3 -0
  705. package/dist/ui/word-diff/smart-filter.d.ts.map +1 -0
  706. package/dist/ui/word-diff/sparse-line-matching.d.ts +25 -0
  707. package/dist/ui/word-diff/sparse-line-matching.d.ts.map +1 -0
  708. package/dist/ui/word-diff/text-boundaries.d.ts +11 -0
  709. package/dist/ui/word-diff/text-boundaries.d.ts.map +1 -0
  710. package/dist/ui/word-diff/token-alignment.d.ts +9 -0
  711. package/dist/ui/word-diff/token-alignment.d.ts.map +1 -0
  712. package/dist/ui/word-diff/token-text-refinement.d.ts +4 -0
  713. package/dist/ui/word-diff/token-text-refinement.d.ts.map +1 -0
  714. package/dist/ui/word-diff/tokens.d.ts +16 -0
  715. package/dist/ui/word-diff/tokens.d.ts.map +1 -0
  716. package/dist/ui/word-diff/types.d.ts +10 -0
  717. package/dist/ui/word-diff/types.d.ts.map +1 -0
  718. package/dist/util.d.ts +3 -0
  719. package/dist/util.d.ts.map +1 -0
  720. package/dist/worker/options.d.ts +3 -0
  721. package/dist/worker/options.d.ts.map +1 -0
  722. package/dist/worker/options.js +104 -0
  723. package/dist/worker/options.js.map +7 -0
  724. package/dist/worker/run-record.d.ts +22 -0
  725. package/dist/worker/run-record.d.ts.map +1 -0
  726. package/dist/worker/run-record.js +123 -0
  727. package/dist/worker/run-record.js.map +7 -0
  728. package/dist/worker/session-export.d.ts +45 -0
  729. package/dist/worker/session-export.d.ts.map +1 -0
  730. package/dist/worker/session-export.js +91 -0
  731. package/dist/worker/session-export.js.map +7 -0
  732. package/dist/worker.d.ts +3 -0
  733. package/dist/worker.d.ts.map +1 -0
  734. package/dist/worker.js +1061 -0
  735. package/dist/worker.js.map +7 -0
  736. package/docs/agents.md +564 -0
  737. package/docs/architecture.md +139 -0
  738. package/docs/audit-trace.md +116 -0
  739. package/docs/certification.md +134 -0
  740. package/docs/compaction.md +332 -0
  741. package/docs/component-calculus.md +191 -0
  742. package/docs/components.md +329 -0
  743. package/docs/configuration.md +478 -0
  744. package/docs/entropy.md +396 -0
  745. package/docs/interface.md +149 -0
  746. package/docs/memory-recall.md +614 -0
  747. package/docs/programmatic-compaction.md +207 -0
  748. package/docs/provider-component-calculus.md +378 -0
  749. package/docs/providers.md +109 -0
  750. package/docs/repairs.md +69 -0
  751. package/docs/residency-runtime.md +82 -0
  752. package/docs/schema-enforcement.md +166 -0
  753. package/docs/skills.md +48 -0
  754. package/docs/speculation.md +132 -0
  755. package/docs/state-layer.md +197 -0
  756. package/package.json +116 -0
  757. package/skills/fabric-advisor/SKILL.md +29 -0
  758. package/skills/fabric-ambient/SKILL.md +44 -0
  759. package/skills/fabric-ambient/references/setup.md +90 -0
  760. package/skills/fabric-council/SKILL.md +94 -0
  761. package/skills/fabric-exec/SKILL.md +123 -0
  762. package/skills/fabric-exec/references/agents.md +211 -0
  763. package/skills/fabric-exec/references/mcp.md +49 -0
  764. package/skills/fabric-exec/references/mesh.md +51 -0
  765. package/skills/fabric-fusion/SKILL.md +332 -0
  766. package/skills/fabric-guide/SKILL.md +28 -0
  767. package/skills/fabric-rlm/SKILL.md +284 -0
  768. package/skills/fabric-schema/SKILL.md +121 -0
  769. package/skills/fabric-spec/SKILL.md +42 -0
  770. package/skills/fabric-supervisor/SKILL.md +37 -0
  771. package/skills/fabric-swarm/SKILL.md +80 -0
  772. package/skills/fabric-workflow/SKILL.md +133 -0
@@ -0,0 +1,614 @@
1
+ # Memory & Recall
2
+
3
+ OMP Fabric's `memory` provider searches OMP session JSONL files. Session JSONL
4
+ forms the source of truth. The memory index holds derived, disposable state.
5
+
6
+ Structural extraction is the only indexing method. Regexes never classify
7
+ goals, preferences, errors, or other prose concepts. Roles, tool names,
8
+ timestamps, entry IDs, operation addresses, exact `ref`/`provider`/`action`
9
+ identities, execution outcomes, tool errors, and tool argument paths all come
10
+ from typed session fields.
11
+
12
+ ## Retrieval workflow
13
+
14
+ Treat recall as navigation and expansion as reading:
15
+
16
+ 1. `memory.recall` locates ranked, bounded evidence.
17
+ 2. Inspect entry snippets directly. Every hit has one copy-ready `follow` call.
18
+ 3. Run `await tools.call(hit.follow)` to expand an entry or resolve a cold session.
19
+ 4. Continue any paged result with `await tools.call(result.next)` until `next` is `null`.
20
+ 5. Use guest-local `memory.walk` when TypeScript should scan, filter, reduce, join,
21
+ or traverse complete normalized records.
22
+
23
+ These calls are the supported session-data API. Consumers should not open,
24
+ scan, or parse OMP session files themselves. Follow calls carry source hashes and
25
+ selected lineages without duplicating that integrity metadata on each hit;
26
+ single-session page continuations preserve the same bindings. Coverage explains
27
+ when indexed absence is not authoritative.
28
+
29
+ ## Active branches
30
+
31
+ `memory.recall`, `memory.sessions`, and `memory.expand` accept
32
+ `branches: "active" | "all"`. Every scope defaults to `"active"`, including
33
+ `project`, `global`, and explicit `session:<id-or-path>` scopes. Only records
34
+ carried on each session's active parent-linked path contribute to hot text,
35
+ cold vocabulary, structural addresses, hits, and entry counts, so an
36
+ abandoned sibling cannot match by default. `branches: "all"` asks explicitly
37
+ for every branch. Expansion results and session rows identify their branch
38
+ mode; recall follow calls preserve it.
39
+
40
+ For the current live session, every memory action calls the extension
41
+ context's live `SessionManager.getBranch()` and `getLeafId()` getters.
42
+ These live reads observe `/tree` navigation even when no new record has
43
+ been appended. For another persisted session, Fabric follows the OMP host's
44
+ persisted semantics. The last persisted non-header entry serves as the
45
+ leaf, duplicate IDs resolve to the last record in the ID map, and Fabric
46
+ walks `parentId` links from that leaf to a root. Append order never counts as one transcript. When a parent
47
+ cycle occurs, Fabric stops defensively and marks coverage incomplete with
48
+ `invalid_parent_graph`.
49
+
50
+ Each derived record carries `branches` and a SHA-256 `lineageFingerprint`
51
+ over the selected branch mode, leaf, and active path IDs. Active and all
52
+ caches use separate filenames. Branch mode, lineage fingerprint, and privacy
53
+ settings all feed cache policy, so navigation, an append, or a policy change
54
+ rebuilds the relevant derived record without contaminating the other mode.
55
+ `sourceHash` still covers the complete JSONL source, including off-lineage
56
+ records.
57
+
58
+ ## Cache V6
59
+
60
+ Cache records carry `cacheVersion: 6`. Fabric removes older or malformed
61
+ records and rebuilds them from source. Rebuilding from source replaces any
62
+ migration of old records into V6. Refresh also clears orphan records,
63
+ records whose encoded cache path fails to match their source identity, and
64
+ records for deleted source sessions.
65
+
66
+ Every cache record stores the exact session file path, branch mode, lineage
67
+ fingerprint, privacy policy, and a SHA-256 `sourceHash`, along with source
68
+ mtime and size. A same-size rewrite that preserves mtime still invalidates
69
+ the record. Fabric creates cache directories with `0700` permissions and
70
+ cache files with `0600` permissions on a best-effort basis.
71
+
72
+ A hot shard holds bounded normalized entry text plus `indexCoverage`. Each
73
+ cold digest contains:
74
+
75
+ ```ts
76
+ {
77
+ cacheVersion: 6,
78
+ kind: "digest",
79
+ sessionId, file, cwd,
80
+ mtime, size, sourceHash,
81
+ branches, lineageFingerprint, policy,
82
+ firstTs, lastTs, entryCount,
83
+ filesTouched, toolHistogram, errorCount,
84
+ vocabulary, // sorted unique canonical strings, no posting lists
85
+ addresses, // structural identity + ref/provider/action/outcome postings
86
+ indexCoverage,
87
+ cacheBytes, cacheSourceRatio
88
+ }
89
+ ```
90
+
91
+ Cold vocabulary maps each exact lexical term only to the session that
92
+ contains it. The digest keeps no per-term entry indices. Structural address
93
+ tuples separately keep exact entry identity, role/tool/time, and persisted
94
+ `ref`/`provider`/`action`/`outcome` fields. A cold lexical result remains a
95
+ compact session candidate whose `follow` call carries its exact source and
96
+ hash bindings. It never appears as an inferred lexical entry range. Exact
97
+ lexical entry matches come back only after following that call.
98
+
99
+ `maxColdVocabularyBytes` bounds vocabulary construction for each session.
100
+ `maxColdCacheBytes` is a hard per-session cap on the persisted cache.
101
+ Reaching either cap sets `indexCoverage.complete` to false with an explicit
102
+ reason. The cache-size cap can force structural addresses or vocabulary to
103
+ persist as exact prefixes only. Fabric always reports this state as
104
+ `max_cold_cache_bytes` and never treats it as complete. `cacheSourceRatio`
105
+ divides persisted cache bytes by source bytes.
106
+
107
+ ## Capability heads and exact structural retrieval
108
+
109
+ Fabric separates capability navigation from memory evidence.
110
+ `tools.catalog()` returns a deterministic current tree:
111
+
112
+ ```text
113
+ Fabric capabilities
114
+ └── provider head
115
+ └── action head
116
+ ```
117
+
118
+ Provider/action names, descriptions, and descriptor hashes describe the
119
+ currently registered catalog. Full schemas stay available through
120
+ `tools.search()` and `tools.describe()`. A caller can use this metadata to
121
+ choose an action ref. Fabric never copies it into session entries.
122
+ Historical evidence comes from session records alone. Catalog descriptor
123
+ changes can shift discovery ranking. Historical structural membership stays
124
+ intact.
125
+
126
+ `memory.recall` accepts exact structural filters:
127
+
128
+ - `ref`, for example `omp.grep`.
129
+ - `provider`, for example `omp`.
130
+ - `action`, for example `grep`.
131
+ - `outcome`: one of `succeeded | failed | aborted | timed_out`.
132
+ - the existing `role`, `tool`, `since`, and `until` filters.
133
+
134
+ With no `query` present, persisted typed fields alone decide membership. A
135
+ `query` value constrains lexical or explicit-regex search with the same exact
136
+ filters. The result does not echo request diagnostics; the call already records
137
+ them. Catalog description text never becomes a lexical match.
138
+
139
+ ```ts
140
+ const heads = await tools.search({ query: "search source files" });
141
+ const history = await memory.recall({
142
+ scope: "project",
143
+ ref: heads[0]?.ref,
144
+ });
145
+ const failures = await memory.recall({
146
+ scope: "project",
147
+ query: "timeout",
148
+ ref: "agents.run",
149
+ outcome: "failed",
150
+ });
151
+ ```
152
+
153
+ A complete cold structural posting proves that the selected session contains
154
+ a matching typed entry. The cold response remains an integrity-bound session
155
+ candidate. A combined cold lexical + structural candidate cannot prove that
156
+ both conditions occur on the same entry, because cold vocabulary has no
157
+ posting lists. Coverage reports
158
+ `cold_structural_filter_requires_hydration`; follow the candidate before
159
+ claiming entry-level co-location.
160
+
161
+ ## Exact lexical queries
162
+
163
+ Callers choose `queryMode` explicitly:
164
+
165
+ - `"literal"` is the default token mode.
166
+ - `"phrase"` performs a case-insensitive contiguous text search after Unicode
167
+ normalization.
168
+ - `"regex"` requires an explicit opt-in.
169
+
170
+ Literal mode does not inspect punctuation to guess whether input is a regular
171
+ expression. It never compiles input with `RegExp`; a path such as `src/foo.ts`
172
+ stays literal text. Quotes are punctuation only in literal mode; quoted words
173
+ still become independent canonical terms and never turn into regex syntax.
174
+
175
+ `tokenize.ts` is the single canonical tokenizer for literal queries, hot BM25
176
+ scoring, and cold vocabulary creation. It applies Unicode NFKC normalization,
177
+ extracts Unicode letters, numbers, and `_` characters, then lowercases them.
178
+ Literal terms match through exact canonical-token equality. Fabric applies no
179
+ stemming, synonym expansion, or semantic regex classification.
180
+
181
+ Multi-term literal queries default to `queryMatch: "any"` so recall does not
182
+ silently lose an answer whose wording differs from the query. BM25 relevance
183
+ is weighted by typed provenance: assistant and user prose ranks ahead of
184
+ tool-call plumbing unless structural filters explicitly request operations.
185
+ Every exact entry is ranked individually; context-segment grouping cannot give
186
+ thousands of neighbors one shared score.
187
+
188
+ The response is still hard-bounded, so broad discovery cannot flood model
189
+ context. Request `queryMatch: "all"` when every canonical term must occur in
190
+ one indexed entry:
191
+
192
+ ```ts
193
+ memory.recall({
194
+ query: '"Use CEF" "Stage 1" browser Heddlework',
195
+ queryMatch: "all"
196
+ })
197
+ ```
198
+
199
+ Use `queryMode: "phrase"` when word order and adjacency are material. The
200
+ request is not echoed in the compact result.
201
+
202
+ In a cold session with complete coverage, every unique canonical token of the
203
+ normalized source text occurs exactly once in the sorted vocabulary. An
204
+ `all` query requires every term in that vocabulary, but the vocabulary cannot
205
+ prove same-entry co-location. Phrase adjacency cannot be proved either. Both
206
+ cases return an explicit incomplete cold-coverage reason until the session is
207
+ resolved. Rare terms stay exactly discoverable as
208
+ long as the configured vocabulary and cache bounds hold. Exceeding a bound
209
+ makes an empty result explicitly non-authoritative.
210
+
211
+ Unicode scalar count sets the hot-text limit. Raw UTF-16 code units play no
212
+ part. A cut cannot split a surrogate pair, and the shard text remains valid
213
+ UTF-8. Hot shards retain no separate complete tail vocabulary, so truncating
214
+ any normalized entry sets shard `indexCoverage.complete: false` with reason
215
+ `max_entry_chars`. A token that occurs only after the cut cannot yield an
216
+ authoritative no-match. Recall returns no hit and reports that reason through
217
+ `coverage`. Expansion still re-reads the complete source record.
218
+
219
+ ## Bounded regular expressions
220
+
221
+ Regex mode runs JavaScript regex inside a disposable worker thread. The host
222
+ never evaluates an untrusted pattern. Fabric terminates the worker forcibly
223
+ at the hard timeout, so catastrophic backtracking cannot continue on the
224
+ host thread. Four limits bound regex execution:
225
+
226
+ - UTF-8 pattern byte count.
227
+ - haystack item count.
228
+ - aggregate UTF-8 haystack bytes.
229
+ - wall-clock worker timeout.
230
+
231
+ A hot haystack is normalized entry text. A cold haystack is one bounded
232
+ canonical vocabulary term. Transcript prose never serves as a cold
233
+ haystack. Invalid patterns, oversized patterns, haystack truncation,
234
+ worker failures, and timeouts each return structured query coverage. A timeout, for example, returns `coverage.complete: false`, the
235
+ reason `regex_timeout`, and a structured `coverage.error`. An incomplete
236
+ regex result never counts as an authoritative no-match.
237
+
238
+ ## Tiers, refresh, and work budgets
239
+
240
+ The `memory.hotSessions` most recently modified sessions stay hot. Every
241
+ older session is cold. Once a session crosses the boundary, Fabric drops
242
+ the old derived tier record after building the replacement. Explicit
243
+ hydration re-reads source without promoting a cold session.
244
+
245
+ Session count and aggregate source bytes bound cache synchronization.
246
+ Cache cleanup follows budgets on inspected cache files and aggregate
247
+ cache bytes. The cleanup byte budget is shared with
248
+ `maxSyncSourceBytes`. Reaching a work budget stops additional indexing
249
+ and sets `coverage.complete: false`. All eligible sessions remain
250
+ counted. Fabric bounds every background job, and the index needs no
251
+ database dependency.
252
+
253
+ Query mode and no-query browse mode both discover every eligible session.
254
+ `memory.maxSessions` limits session listing only. Search materialization
255
+ works under explicit deterministic per-call budgets: 50,000 filtered hot
256
+ entry candidates, 10,000 cold digest candidates, and 10,000 ranked result
257
+ candidates. Hitting one of these marks coverage incomplete with
258
+ `candidate_entry_budget`, `candidate_digest_budget`, or
259
+ `candidate_item_budget`. Public totals count the retained exact entry hits
260
+ and cold session candidates after filtering. Unknown omitted candidates stay
261
+ outside those totals.
262
+ Coverage reports:
263
+
264
+ ```ts
265
+ coverage: {
266
+ complete: boolean,
267
+ indexedSessions: number,
268
+ eligibleSessions: number,
269
+ staleSessions: number,
270
+ incompleteSessions: number,
271
+ reasons: string[],
272
+ error?: { code: string, message: string }
273
+ }
274
+ ```
275
+
276
+ An empty `hits` array is authoritative only when cache/index coverage and
277
+ query execution coverage are both complete. Otherwise `coverage.reasons` names
278
+ causes such as source unavailability, `max_entry_chars`, duplicate identities,
279
+ vocabulary, file-metadata, or cache caps, candidate or synchronization budgets,
280
+ or regex limits.
281
+
282
+ ## Scopes
283
+
284
+ | Scope | Meaning |
285
+ | --- | --- |
286
+ | `session` | The current session, or the newest session for the current cwd. |
287
+ | `project` | All sessions in the current cwd's OMP session directory. |
288
+ | `global` | Sessions under the agent directory. This scope requires an explicit request and can never be the default. |
289
+ | `session:<id-or-path>` | One source session, resolved explicitly without promotion. |
290
+
291
+ Duplicate session IDs are ambiguous. `session:<id>` and `memory.expand`
292
+ reject an ambiguous ID with `ambiguous_session` and list the candidate paths.
293
+ Normal recall navigation does not require extracting a path: copy the hit
294
+ `follow` call unchanged.
295
+ Duplicate normalized entry IDs and operation addresses also mark index
296
+ coverage incomplete, with `duplicate_entry_id` or
297
+ `duplicate_operation_address`. Stable-address expansion demands exactly one
298
+ record. Zero matches return `address_not_found`. More than one match
299
+ returns `ambiguous_address`. Fabric returns no source records in either case.
300
+
301
+ ## Compact results and call tokens
302
+
303
+ `memory.recall` returns one flat, bounded hit stream:
304
+
305
+ ```ts
306
+ type FabricCall = {
307
+ ref: "memory.recall" | "memory.expand";
308
+ args: Record<string, unknown>;
309
+ };
310
+
311
+ type RecallPage = {
312
+ total: number;
313
+ hits: MemoryHit[];
314
+ next: FabricCall | null;
315
+ coverage: MemoryCoverage;
316
+ error?: MemoryError;
317
+ };
318
+ ```
319
+
320
+ `total` is the retained pre-page count of exact entry hits plus cold session
321
+ candidates. `hits.length` is the returned count. The request already records
322
+ query semantics, so results do not echo query terms, modes, filters, offsets,
323
+ or redundant counts and prose.
324
+
325
+ A hot or explicitly resolved entry hit carries evidence plus one action:
326
+
327
+ ```ts
328
+ {
329
+ kind: "entry",
330
+ sessionId,
331
+ tier,
332
+ index,
333
+ entryId,
334
+ parentId,
335
+ operationAddress,
336
+ type,
337
+ role,
338
+ tool,
339
+ ref,
340
+ provider,
341
+ action,
342
+ outcome,
343
+ timestamp,
344
+ isError,
345
+ score,
346
+ snippet,
347
+ truncated,
348
+ follow: { ref: "memory.expand", args: { /* integrity-bound selector */ } }
349
+ }
350
+ ```
351
+
352
+ A cold candidate cannot claim an exact source entry. It carries only
353
+ session-level evidence and a recall action:
354
+
355
+ ```ts
356
+ {
357
+ kind: "session",
358
+ sessionId,
359
+ tier: "cold",
360
+ cwd,
361
+ lastTimestamp,
362
+ score,
363
+ matchedTerms,
364
+ matchedStructuralEntries,
365
+ follow: { ref: "memory.recall", args: { /* integrity-bound request */ } }
366
+ }
367
+ ```
368
+
369
+ The integrity arguments live only inside `follow`; they are not duplicated in
370
+ separate source or action-specific pointer objects. Dispatch either hit without
371
+ branch-specific plumbing:
372
+
373
+ ```ts
374
+ const detail = await tools.call(hit.follow);
375
+ ```
376
+
377
+ When a statically typed result is useful, discriminate the hit and call the
378
+ known provider method:
379
+
380
+ ```ts
381
+ const detail = hit.kind === "entry"
382
+ ? await memory.expand(hit.follow.args)
383
+ : await memory.recall(hit.follow.args);
384
+ ```
385
+
386
+ Recall ranks one mixed stream and then paginates it. `pageSize` is a request
387
+ ceiling, not permission to exceed the hard 30,000-character JSON envelope.
388
+ If more retained items remain, `next` is another complete call token:
389
+
390
+ ```ts
391
+ let page = await memory.recall({ query: "timeout", scope: "project" });
392
+ while (page.next !== null) {
393
+ page = await memory.recall(page.next.args);
394
+ }
395
+ ```
396
+
397
+ A single-session continuation includes exact source-hash and lineage bindings;
398
+ an append or branch change returns `stale_pointer`, preventing a silent page
399
+ shift. Each project or global call takes a fresh, nontransactional snapshot.
400
+ Every snippet is independently bounded and reports only whether it was
401
+ truncated.
402
+
403
+ An optional inclusive `entryRange` can bound explicit single-session recall.
404
+ Both endpoints must be valid normalized indices. Out-of-range or negative
405
+ addresses return `index_out_of_bounds`; Fabric never clamps them.
406
+
407
+ ## Expansion and guest-local computation
408
+
409
+ `memory.expand` re-reads full, untruncated normalized records. It accepts
410
+ indices, stable entry IDs, operation addresses, or an inclusive range.
411
+ `before` and `after` add adjacent entries around exactly one selected anchor:
412
+
413
+ ```ts
414
+ const exact = await memory.expand(hit.follow.args);
415
+ const around = await memory.expand({
416
+ ...hit.follow.args,
417
+ before: 2,
418
+ after: 3,
419
+ });
420
+ const operation = await memory.expand({
421
+ session,
422
+ operationAddresses: ["entry-uuid/7"],
423
+ });
424
+ ```
425
+
426
+ Expansion results use `entries`. Recall and expansion both call the capability
427
+ field `tool`. Expanded records include OMP's `parentId`, so code can reconstruct
428
+ branch relationships under `branches: "all"`; `parentEntryId` remains the
429
+ separate carrier link for extracted Fabric child records.
430
+
431
+ Expansion never silently slices away a long record. Every returned chunk has
432
+ `textRange: { start, end, total, complete }`. A partial final entry returns a
433
+ non-null `next`; follow it to reconstruct the exact text:
434
+
435
+ ```ts
436
+ let chunk = await memory.expand(args);
437
+ while (chunk.next !== null && chunk.next !== undefined) {
438
+ chunk = await memory.expand(chunk.next.args);
439
+ }
440
+ ```
441
+
442
+ The default aggregate text budget is 20,000 characters and `maxChars` can
443
+ request a smaller chunk. Valid typed operation and branch-fact payloads stay
444
+ available as bounded structured fields. Oversized structured payloads set
445
+ `structuredTruncated` and stay out of the envelope.
446
+
447
+ For arbitrary filtering, projection, aggregation, joins, and parent traversal,
448
+ the query language is the surrounding TypeScript. `memory.walk` is a
449
+ guest-only combinator, not a fourth host action and not a serialized callback:
450
+
451
+ ```ts
452
+ const failedFiles = new Set<string>();
453
+ const parents = new Map<string, string | null>();
454
+
455
+ const walk = await memory.walk(
456
+ { session, branches: "all" },
457
+ async (entry) => {
458
+ if (entry.entryId) parents.set(entry.entryId, entry.parentId);
459
+ if (entry.outcome === "failed") {
460
+ for (const file of entry.filesTouched ?? []) {
461
+ if (file) failedFiles.add(file);
462
+ }
463
+ }
464
+ return failedFiles.size < 20; // exactly false stops early
465
+ },
466
+ );
467
+
468
+ return { files: [...failedFiles], visited: walk.visited };
469
+ ```
470
+
471
+ With no selector, `memory.walk` obtains an integrity-bound session range and
472
+ visits the whole normalized session. With a selector, it visits only that
473
+ selection and optional context. Start it from an original selection, not a
474
+ continuation with a nonzero `textOffset`, because every callback receives a
475
+ complete entry. The helper follows all expansion pages, validates continuity,
476
+ and reassembles each `textRange` fully before invoking the visitor,
477
+ awaits async visitors and nested tool calls, and returns `{visited, stopped}`.
478
+ A provider error is returned as `walk.error`. Functions remain inside the guest
479
+ runtime, isolated by default; no predicate source or closure crosses the host
480
+ bridge.
481
+
482
+ This is the Python replacement boundary: the host supplies bounded search and
483
+ lossless normalized records; the fabric program supplies callbacks, maps,
484
+ sets, joins, reductions, and the small final `return`. Do not add JSONPath,
485
+ SQL, projection, grouping, or host-evaluated predicate fields, and do not open
486
+ OMP session JSONL directly.
487
+
488
+ During recall follow calls and expansion, Fabric compares the expected source
489
+ hash and lineage fingerprint with the selected live or persisted session. A
490
+ rewrite, append, or active-leaf navigation that changes a binding returns
491
+ `stale_pointer` and no source content. Under active mode, an off-lineage stable
492
+ address returns `address_not_found`; `branches: "all"` is the explicit way to
493
+ read it.
494
+
495
+ A valid `FabricExecutionTraceV1` on an outer `fabric_exec` result emits one
496
+ child record per operation, placed immediately after the outer normalized
497
+ entry. Each child keeps `parentEntryId`, `operationAddress`, the exact
498
+ `tool`, `ref`, `provider`, `action`, typed `filesTouched`, `outcome`, and a
499
+ bounded structured `operation` object. Expansion re-reads and
500
+ re-normalizes source. Fabric never reconstructs operations from output
501
+ prose.
502
+
503
+ Valid `FabricBranchSummaryDetailsV1` and V2 envelopes emit typed child
504
+ records for user, phase, and operation facts. Under V2, they also emit
505
+ children for named `fabricRun` facts. Run children keep the bounded declared
506
+ name and description, the paired aggregate outcome, and the original call
507
+ address. They index as `fabric_exec` and expand by that operation address.
508
+ Other children keep the original fact address, the
509
+ ref/provider/action/tool/outcome/arguments values, and the structurally
510
+ derived paths, plus `carrierEntryId`, `carrierParentId`, and
511
+ `carrierFromId`. Operation facts expand by their original operation address.
512
+ User and phase facts use that address as their stable entry ID. Fabric
513
+ deduplicates repeated nested summaries by exact fact address in source
514
+ order, which keeps the earliest carrier deterministic. Inside each consumed
515
+ details envelope, addresses must be unique. Fabric rejects an envelope with
516
+ a duplicate address and marks coverage incomplete. Unknown or malformed
517
+ details and all branch-summary prose remain non-semantic.
518
+
519
+ ## Local-cache privacy and deletion
520
+
521
+ Treat the memory index as local derived state. It sets no encryption or
522
+ semantic-privacy boundary. Depending on configuration and tier, cache JSON
523
+ can retain plaintext lexical vocabulary, cwd and file paths, source
524
+ pointers and hashes, structural tool and capability metadata, selected
525
+ user/assistant/custom-message content, tool arguments, and selected tool
526
+ output when the default `indexToolOutput: true` applies. Cold vocabulary
527
+ holds no posting lists. The exact words still appear in it as plaintext.
528
+ Thinking text stays excluded by default. Enabling it explicitly stores it
529
+ as plaintext. Fabric runs no secret scanning. Privacy here comes from
530
+ structural inclusion or exclusion, and regex classification plays no
531
+ part.
532
+
533
+ Fabric requests `0700` for cache directories and `0600` for cache files.
534
+ These permissions are best effort and inherit the host filesystem, account,
535
+ backup, and administrative trust model. The cache stays unencrypted. Fabric
536
+ reads project configuration only for a project that OMP has marked trusted.
537
+ Otherwise, only global Fabric configuration applies. A `global` memory
538
+ search is an explicit scope, never the default. Under that explicit scope,
539
+ global indexing still creates local derived records for the sessions that
540
+ the call selects.
541
+
542
+ Deleting an OMP session removes the source of truth. A later memory refresh
543
+ removes the orphaned cache records on a best-effort basis. When immediate
544
+ cache removal is required, delete the configured `memory.indexDir` as
545
+ well.
546
+ Removing that directory is safe, because every record is disposable and
547
+ rebuilt from the remaining session JSONL. Cache deletion leaves source
548
+ sessions, filesystem backups, and copies outside the index directory
549
+ untouched.
550
+
551
+ ## Benchmarking capability-head retrieval
552
+
553
+ After changes to discovery, structural postings, ranking, or cache layout,
554
+ run the deterministic synthetic benchmark:
555
+
556
+ ```sh
557
+ bun run benchmark:memory-heads
558
+ ```
559
+
560
+ The benchmark reports catalog head selection separately from source
561
+ retrieval, hot exact operation-address recall, cold session recall, combined
562
+ lexical + structural retrieval, negative controls, the cold digest/source
563
+ ratio, and p50/p95/p99 search latency. The command fails when catalog
564
+ description text leaks into lexical matches, structural provenance is lost,
565
+ cold combined candidates omit the hydration requirement, or a nonexistent
566
+ ref returns history. Repository tests cover source JSONL, branches, staleness, and cache generation.
567
+ The synthetic timing corpus covers the measured search paths.
568
+
569
+ ## Configuration
570
+
571
+ ```json
572
+ {
573
+ "memory": {
574
+ "enabled": true,
575
+ "indexDir": "<active OMP agent dir>/fabric/memory-index",
576
+ "maxSessions": 500,
577
+ "maxEntryChars": 2000,
578
+ "indexThinking": false,
579
+ "indexToolOutput": true,
580
+ "hotSessions": 50,
581
+ "maxColdVocabularyBytes": 524288,
582
+ "maxColdCacheBytes": 1048576,
583
+ "maxSyncSessions": 10000,
584
+ "maxSyncSourceBytes": 536870912,
585
+ "maxCacheCleanupFiles": 100000,
586
+ "regexMaxPatternBytes": 1024,
587
+ "regexMaxHaystackTerms": 20000,
588
+ "regexMaxHaystackBytes": 2097152,
589
+ "regexTimeoutMs": 250
590
+ }
591
+ }
592
+ ```
593
+
594
+ - `maxSessions`: limits session-list discovery only. Candidate and indexing
595
+ budgets control recall.
596
+ - `maxEntryChars`: Unicode-scalar limit for persisted hot entry text. Any
597
+ cut marks lexical coverage incomplete, and expand still re-reads full
598
+ source.
599
+ - `indexThinking`: when true, assistant thinking blocks enter normalized
600
+ text and lexical vocabulary. Default: false.
601
+ - `indexToolOutput`: when true, tool-result bodies, bash output, and typed
602
+ Fabric operation results enter derived text. Default: true. Coding recall then includes tool outputs. When false, typed tool name/ref/action,
603
+ error/outcome, and structurally extracted path metadata stay searchable.
604
+ Output bodies do not.
605
+ - `hotSessions`: count of globally newest sessions that keep hot shards.
606
+ - `maxColdVocabularyBytes`: per-session bound on the canonical vocabulary.
607
+ - `maxColdCacheBytes`: hard per-session bound on the cold cache file.
608
+ - `maxSyncSessions` / `maxSyncSourceBytes`: work budgets for synchronous
609
+ indexing.
610
+ - `maxCacheCleanupFiles`: count budget for synchronous cache-file cleanup.
611
+ Cleanup bytes draw on `maxSyncSourceBytes`.
612
+ - `regexMaxPatternBytes`, `regexMaxHaystackTerms`,
613
+ `regexMaxHaystackBytes`, `regexTimeoutMs`: bounds on isolated regex
614
+ execution.