hippo-memory 1.72.0 → 2.1.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 (995) hide show
  1. package/README.md +6 -4
  2. package/dist/agent-memories/apply.d.ts +7 -5
  3. package/dist/agent-memories/apply.js +66 -39
  4. package/dist/agent-memories/claude-code.d.ts +8 -2
  5. package/dist/agent-memories/claude-code.js +26 -7
  6. package/dist/agent-memories/copilot.js +2 -1
  7. package/dist/agent-memories/files.js +2 -1
  8. package/dist/agent-memories/legacy.d.ts +6 -3
  9. package/dist/agent-memories/legacy.js +35 -14
  10. package/dist/agent-memories/markdown.d.ts +3 -1
  11. package/dist/agent-memories/markdown.js +3 -1
  12. package/dist/agent-memories/openclaw.js +5 -2
  13. package/dist/agent-memories/plan.js +11 -1
  14. package/dist/agent-memories/project-folds.js +2 -1
  15. package/dist/agent-memories/report.d.ts +4 -1
  16. package/dist/agent-memories/report.js +43 -9
  17. package/dist/agent-memories/source.d.ts +8 -2
  18. package/dist/agent-memories/source.js +11 -3
  19. package/dist/agent-memories/sync.d.ts +7 -2
  20. package/dist/agent-memories/sync.js +141 -101
  21. package/dist/api/assemble.d.ts +6 -4
  22. package/dist/api/assemble.js +11 -5
  23. package/dist/api/{audit.d.ts → auth/audit.d.ts} +18 -16
  24. package/dist/api/auth/audit.js +58 -0
  25. package/dist/api/{auth.d.ts → auth/auth.d.ts} +19 -16
  26. package/dist/api/{auth.js → auth/auth.js} +66 -54
  27. package/dist/api/{quarantine.d.ts → auth/quarantine.d.ts} +8 -7
  28. package/dist/api/{quarantine.js → auth/quarantine.js} +8 -7
  29. package/dist/api/auth/session-owners.d.ts +10 -0
  30. package/dist/api/auth/session-owners.js +35 -0
  31. package/dist/api/availability.d.ts +3 -1
  32. package/dist/api/availability.js +3 -1
  33. package/dist/api/busy.d.ts +2 -0
  34. package/dist/api/busy.js +2 -0
  35. package/dist/api/cli-surface.d.ts +6 -0
  36. package/dist/api/cli-surface.js +6 -0
  37. package/dist/api/config-of.d.ts +5 -0
  38. package/dist/api/config-of.js +6 -0
  39. package/dist/api/context-auto.d.ts +4 -1
  40. package/dist/api/context-auto.js +14 -4
  41. package/dist/api/context-render.js +14 -7
  42. package/dist/api/context-select.d.ts +4 -1
  43. package/dist/api/context-select.js +31 -34
  44. package/dist/api/context-types.d.ts +38 -12
  45. package/dist/api/context.d.ts +8 -5
  46. package/dist/api/context.js +120 -63
  47. package/dist/api/continuity.d.ts +24 -21
  48. package/dist/api/continuity.js +18 -20
  49. package/dist/api/correction-latency.d.ts +3 -1
  50. package/dist/api/correction-latency.js +3 -1
  51. package/dist/api/error-reply.d.ts +4 -1
  52. package/dist/api/error-reply.js +12 -3
  53. package/dist/api/index.d.ts +39 -23
  54. package/dist/api/index.js +21 -23
  55. package/dist/api/instruction-detect.d.ts +4 -1
  56. package/dist/api/instruction-detect.js +75 -20
  57. package/dist/api/ledger-db.d.ts +15 -11
  58. package/dist/api/ledger-db.js +21 -23
  59. package/dist/api/memories/conflicts.d.ts +33 -0
  60. package/dist/api/memories/conflicts.js +67 -0
  61. package/dist/api/{forget.d.ts → memories/forget.d.ts} +11 -9
  62. package/dist/api/{forget.js → memories/forget.js} +23 -17
  63. package/dist/api/memories/memories.d.ts +27 -0
  64. package/dist/api/memories/memories.js +52 -0
  65. package/dist/api/memories/outcome.d.ts +22 -0
  66. package/dist/api/memories/outcome.js +28 -0
  67. package/dist/api/memories/promote.d.ts +40 -0
  68. package/dist/api/memories/promote.js +76 -0
  69. package/dist/api/memories/refine.d.ts +10 -0
  70. package/dist/api/memories/refine.js +12 -0
  71. package/dist/api/{remember-local.d.ts → memories/remember-local.d.ts} +17 -9
  72. package/dist/api/{remember-local.js → memories/remember-local.js} +46 -24
  73. package/dist/api/{remember.d.ts → memories/remember.d.ts} +22 -13
  74. package/dist/api/{remember.js → memories/remember.js} +50 -32
  75. package/dist/api/objects/cards.d.ts +39 -0
  76. package/dist/api/{cards.js → objects/cards.js} +12 -14
  77. package/dist/api/{drill-down.d.ts → objects/drill-down.d.ts} +12 -10
  78. package/dist/api/{drill-down.js → objects/drill-down.js} +7 -7
  79. package/dist/api/objects/goals.d.ts +18 -0
  80. package/dist/api/{goals.js → objects/goals.js} +12 -12
  81. package/dist/api/objects/graph.d.ts +11 -0
  82. package/dist/api/objects/graph.js +16 -0
  83. package/dist/api/objects/objects.d.ts +9 -0
  84. package/dist/api/{objects.js → objects/objects.js} +2 -3
  85. package/dist/api/objects/predictions.d.ts +11 -0
  86. package/dist/api/{predictions.js → objects/predictions.js} +7 -5
  87. package/dist/api/{projects.d.ts → objects/projects.d.ts} +8 -5
  88. package/dist/api/{projects.js → objects/projects.js} +8 -4
  89. package/dist/api/pilot-arm.d.ts +8 -4
  90. package/dist/api/pilot-arm.js +5 -4
  91. package/dist/api/prompt-hook.d.ts +35 -20
  92. package/dist/api/prompt-hook.js +66 -44
  93. package/dist/api/provenance-coverage.d.ts +3 -1
  94. package/dist/api/provenance-coverage.js +3 -1
  95. package/dist/api/recall/finish.d.ts +185 -0
  96. package/dist/api/recall/finish.js +301 -0
  97. package/dist/api/{recall-pipeline.d.ts → recall/pipeline.d.ts} +12 -8
  98. package/dist/api/{recall-pipeline.js → recall/pipeline.js} +185 -101
  99. package/dist/api/recall/recall.d.ts +6 -0
  100. package/dist/api/{recall.js → recall/recall.js} +116 -72
  101. package/dist/api/recall/render.d.ts +39 -0
  102. package/dist/api/recall/render.js +60 -0
  103. package/dist/api/{recall-request.d.ts → recall/request.d.ts} +7 -5
  104. package/dist/api/recall/request.js +261 -0
  105. package/dist/api/{recall-cli.d.ts → recall/rows.d.ts} +18 -12
  106. package/dist/api/{recall-cli.js → recall/rows.js} +28 -27
  107. package/dist/api/{recall-types.d.ts → recall/types.d.ts} +95 -68
  108. package/dist/api/{recall-types.js → recall/types.js} +1 -1
  109. package/dist/api/session-end.d.ts +36 -8
  110. package/dist/api/session-end.js +71 -25
  111. package/dist/api/{auto-sleep.d.ts → sleep/auto-sleep.d.ts} +9 -5
  112. package/dist/api/{auto-sleep.js → sleep/auto-sleep.js} +7 -12
  113. package/dist/api/sleep/dormant.d.ts +25 -0
  114. package/dist/api/sleep/dormant.js +64 -0
  115. package/dist/api/{learn.d.ts → sleep/learn.d.ts} +5 -4
  116. package/dist/api/sleep/learn.js +138 -0
  117. package/dist/api/sleep/sleep-run.d.ts +38 -0
  118. package/dist/api/{sleep-run.js → sleep/sleep-run.js} +54 -45
  119. package/dist/api/{sleep.d.ts → sleep/sleep.d.ts} +17 -11
  120. package/dist/api/sleep/sleep.js +9 -0
  121. package/dist/api/status.d.ts +3 -1
  122. package/dist/api/status.js +3 -1
  123. package/dist/api/store-init.d.ts +4 -1
  124. package/dist/api/store-init.js +4 -1
  125. package/dist/api/tokens.d.ts +10 -9
  126. package/dist/api/tokens.js +9 -10
  127. package/dist/api/types.d.ts +27 -12
  128. package/dist/api/types.js +13 -4
  129. package/dist/capture/caller-session.d.ts +8 -2
  130. package/dist/capture/caller-session.js +16 -6
  131. package/dist/capture/capture-error.d.ts +3 -1
  132. package/dist/capture/capture-error.js +3 -1
  133. package/dist/capture/codex-patch.js +7 -2
  134. package/dist/capture/command.d.ts +4 -2
  135. package/dist/capture/command.js +34 -15
  136. package/dist/capture/compact-resume-caller.js +15 -8
  137. package/dist/capture/compact.d.ts +8 -5
  138. package/dist/capture/compact.js +34 -23
  139. package/dist/capture/compaction-items-caller.js +9 -3
  140. package/dist/capture/compaction-record.d.ts +4 -3
  141. package/dist/capture/compaction-record.js +20 -12
  142. package/dist/capture/compaction-spool.d.ts +18 -9
  143. package/dist/capture/compaction-spool.js +105 -63
  144. package/dist/capture/copilot-transcript.d.ts +11 -3
  145. package/dist/capture/copilot-transcript.js +16 -6
  146. package/dist/capture/extract.js +20 -8
  147. package/dist/capture/failure-caller.js +23 -12
  148. package/dist/capture/failure-reading.d.ts +10 -3
  149. package/dist/capture/failure-reading.js +24 -7
  150. package/dist/capture/pre-compact-caller.js +11 -4
  151. package/dist/capture/session-digest.d.ts +15 -4
  152. package/dist/capture/session-digest.js +39 -13
  153. package/dist/capture/session-end-caller.d.ts +4 -1
  154. package/dist/capture/session-end-caller.js +20 -8
  155. package/dist/capture/session-texts.d.ts +6 -2
  156. package/dist/capture/session-texts.js +22 -7
  157. package/dist/capture/session-worker.d.ts +4 -2
  158. package/dist/capture/session-worker.js +58 -17
  159. package/dist/capture/transcript.d.ts +13 -4
  160. package/dist/capture/transcript.js +32 -10
  161. package/dist/capture/working-state.d.ts +13 -4
  162. package/dist/capture/working-state.js +50 -56
  163. package/dist/cli/api-context.d.ts +14 -2
  164. package/dist/cli/api-context.js +45 -2
  165. package/dist/cli/audit.js +33 -33
  166. package/dist/cli/auth.js +23 -31
  167. package/dist/cli/briefs.d.ts +1 -1
  168. package/dist/cli/briefs.js +20 -15
  169. package/dist/cli/card.d.ts +1 -1
  170. package/dist/cli/card.js +56 -73
  171. package/dist/cli/client.d.ts +12 -5
  172. package/dist/cli/client.js +53 -23
  173. package/dist/cli/compact-resume-payload.d.ts +4 -1
  174. package/dist/cli/compact-resume-payload.js +12 -5
  175. package/dist/cli/context.js +43 -18
  176. package/dist/cli/continuity.d.ts +5 -5
  177. package/dist/cli/continuity.js +90 -107
  178. package/dist/cli/curate.d.ts +5 -4
  179. package/dist/cli/curate.js +55 -77
  180. package/dist/cli/dag.d.ts +1 -1
  181. package/dist/cli/dag.js +14 -17
  182. package/dist/cli/decisions.js +30 -30
  183. package/dist/cli/eval.js +16 -21
  184. package/dist/cli/exit.d.ts +4 -1
  185. package/dist/cli/exit.js +10 -2
  186. package/dist/cli/explain.js +12 -11
  187. package/dist/cli/flag-values.d.ts +1 -1
  188. package/dist/cli/flag-values.js +9 -18
  189. package/dist/cli/github.d.ts +6 -0
  190. package/dist/cli/github.js +25 -13
  191. package/dist/cli/goals.d.ts +1 -1
  192. package/dist/cli/goals.js +39 -56
  193. package/dist/cli/graph.d.ts +1 -1
  194. package/dist/cli/graph.js +15 -11
  195. package/dist/cli/hook-runtime.d.ts +34 -10
  196. package/dist/cli/hook-runtime.js +41 -16
  197. package/dist/cli/incidents.d.ts +1 -1
  198. package/dist/cli/incidents.js +25 -25
  199. package/dist/cli/init.d.ts +1 -1
  200. package/dist/cli/init.js +35 -20
  201. package/dist/cli/install-steps.d.ts +12 -3
  202. package/dist/cli/install-steps.js +42 -18
  203. package/dist/cli/last-sleep.d.ts +4 -1
  204. package/dist/cli/last-sleep.js +9 -4
  205. package/dist/cli/maintenance.d.ts +1 -1
  206. package/dist/cli/maintenance.js +11 -12
  207. package/dist/cli/notes.d.ts +1 -1
  208. package/dist/cli/notes.js +8 -5
  209. package/dist/cli/object-verbs.d.ts +5 -5
  210. package/dist/cli/object-verbs.js +13 -16
  211. package/dist/cli/open-browser.js +11 -2
  212. package/dist/cli/playbooks.d.ts +3 -3
  213. package/dist/cli/playbooks.js +40 -32
  214. package/dist/cli/predictions.js +17 -22
  215. package/dist/cli/print.js +4 -2
  216. package/dist/cli/projects.js +21 -11
  217. package/dist/cli/quality-repair-once.d.ts +1 -1
  218. package/dist/cli/quality-repair-once.js +7 -6
  219. package/dist/cli/recall.js +129 -93
  220. package/dist/cli/refine-llm.d.ts +15 -4
  221. package/dist/cli/refine-llm.js +17 -7
  222. package/dist/cli/remember.js +51 -55
  223. package/dist/cli/scheduler.d.ts +4 -1
  224. package/dist/cli/scheduler.js +9 -5
  225. package/dist/cli/serve.js +28 -18
  226. package/dist/cli/session-hooks.d.ts +2 -6
  227. package/dist/cli/session-hooks.js +140 -112
  228. package/dist/cli/setup.d.ts +1 -1
  229. package/dist/cli/setup.js +56 -34
  230. package/dist/cli/shared.d.ts +4 -2
  231. package/dist/cli/shared.js +26 -11
  232. package/dist/cli/slack.js +15 -24
  233. package/dist/cli/sleep-render.d.ts +3 -1
  234. package/dist/cli/sleep-render.js +8 -5
  235. package/dist/cli/sleep.js +16 -8
  236. package/dist/cli/status.d.ts +4 -4
  237. package/dist/cli/status.js +32 -27
  238. package/dist/cli/stdin.d.ts +10 -3
  239. package/dist/cli/stdin.js +10 -3
  240. package/dist/cli/transfer.d.ts +4 -4
  241. package/dist/cli/transfer.js +97 -82
  242. package/dist/cli/usage.d.ts +1 -1
  243. package/dist/cli/usage.js +1 -1
  244. package/dist/cli/verb-row.d.ts +2 -0
  245. package/dist/cli/verbs/health.js +2 -0
  246. package/dist/cli/verbs/memory.js +47 -53
  247. package/dist/cli/verbs/objects.js +16 -7
  248. package/dist/cli/verbs/sessions.js +4 -2
  249. package/dist/cli/versioned-verbs.d.ts +8 -7
  250. package/dist/cli/versioned-verbs.js +31 -21
  251. package/dist/cli.js +14 -18
  252. package/dist/connectors/dlq.d.ts +6 -6
  253. package/dist/connectors/dlq.js +12 -7
  254. package/dist/connectors/github/backfill.d.ts +4 -4
  255. package/dist/connectors/github/backfill.js +6 -4
  256. package/dist/connectors/github/deletion.d.ts +6 -4
  257. package/dist/connectors/github/deletion.js +5 -4
  258. package/dist/connectors/github/dlq.d.ts +8 -6
  259. package/dist/connectors/github/dlq.js +11 -5
  260. package/dist/connectors/github/ingest.d.ts +2 -2
  261. package/dist/connectors/github/ingest.js +9 -5
  262. package/dist/connectors/github/octokit-client.d.ts +3 -1
  263. package/dist/connectors/github/octokit-client.js +7 -2
  264. package/dist/connectors/github/ratelimit.d.ts +6 -2
  265. package/dist/connectors/github/ratelimit.js +6 -2
  266. package/dist/connectors/github/signature.d.ts +14 -3
  267. package/dist/connectors/github/signature.js +17 -3
  268. package/dist/connectors/github/tenant-routing.d.ts +6 -4
  269. package/dist/connectors/github/tenant-routing.js +6 -5
  270. package/dist/connectors/github/transform.js +50 -67
  271. package/dist/connectors/github/types.d.ts +10 -3
  272. package/dist/connectors/github/types.js +6 -2
  273. package/dist/connectors/github/webhook.d.ts +5 -5
  274. package/dist/connectors/github/webhook.js +36 -23
  275. package/dist/connectors/ingest.d.ts +5 -3
  276. package/dist/connectors/ingest.js +3 -3
  277. package/dist/connectors/slack/backfill.d.ts +5 -5
  278. package/dist/connectors/slack/backfill.js +3 -3
  279. package/dist/connectors/slack/deletion.d.ts +4 -4
  280. package/dist/connectors/slack/deletion.js +6 -5
  281. package/dist/connectors/slack/dlq.d.ts +4 -4
  282. package/dist/connectors/slack/dlq.js +6 -6
  283. package/dist/connectors/slack/ingest.d.ts +6 -4
  284. package/dist/connectors/slack/ingest.js +5 -4
  285. package/dist/connectors/slack/signature.d.ts +4 -1
  286. package/dist/connectors/slack/tenant-routing.d.ts +6 -4
  287. package/dist/connectors/slack/tenant-routing.js +6 -5
  288. package/dist/connectors/slack/transform.d.ts +6 -2
  289. package/dist/connectors/slack/transform.js +6 -2
  290. package/dist/connectors/slack/types.d.ts +3 -1
  291. package/dist/connectors/slack/web-client.js +8 -3
  292. package/dist/connectors/slack/webhook.d.ts +5 -5
  293. package/dist/connectors/slack/webhook.js +19 -11
  294. package/dist/connectors/slack/workspaces.d.ts +7 -3
  295. package/dist/connectors/slack/workspaces.js +7 -3
  296. package/dist/connectors/store.d.ts +8 -0
  297. package/dist/connectors/store.js +2 -0
  298. package/dist/consolidate/conflicts.js +24 -10
  299. package/dist/consolidate/dag-summary.js +2 -1
  300. package/dist/consolidate/dag.d.ts +10 -5
  301. package/dist/consolidate/dag.js +45 -39
  302. package/dist/consolidate/decay.js +19 -6
  303. package/dist/consolidate/dedupe.d.ts +14 -5
  304. package/dist/consolidate/dedupe.js +28 -17
  305. package/dist/consolidate/flush-units.d.ts +4 -1
  306. package/dist/consolidate/flush-units.js +4 -1
  307. package/dist/consolidate/half-life-migration.d.ts +18 -8
  308. package/dist/consolidate/half-life-migration.js +48 -18
  309. package/dist/consolidate/llm-passes.js +27 -11
  310. package/dist/consolidate/memory-value-weights.d.ts +6 -2
  311. package/dist/consolidate/memory-value-weights.js +6 -2
  312. package/dist/consolidate/memory-value.d.ts +30 -10
  313. package/dist/consolidate/memory-value.js +37 -14
  314. package/dist/consolidate/merge.d.ts +4 -1
  315. package/dist/consolidate/merge.js +47 -37
  316. package/dist/consolidate/overlap-index.d.ts +8 -2
  317. package/dist/consolidate/overlap-index.js +11 -4
  318. package/dist/consolidate/physics-pass.d.ts +3 -1
  319. package/dist/consolidate/physics-pass.js +10 -7
  320. package/dist/consolidate/replay.d.ts +11 -4
  321. package/dist/consolidate/replay.js +19 -7
  322. package/dist/consolidate/run.d.ts +13 -5
  323. package/dist/consolidate/run.js +4 -4
  324. package/dist/consolidate/sleep.d.ts +14 -6
  325. package/dist/consolidate/sleep.js +42 -39
  326. package/dist/consolidate/trace.d.ts +7 -2
  327. package/dist/consolidate/trace.js +7 -2
  328. package/dist/consolidate/traces.js +27 -30
  329. package/dist/core/ablation.d.ts +9 -3
  330. package/dist/core/ablation.js +14 -4
  331. package/dist/core/active-scope.d.ts +3 -1
  332. package/dist/core/active-scope.js +3 -1
  333. package/dist/core/agent-memory-tools.d.ts +2 -0
  334. package/dist/core/agent-memory-tools.js +2 -0
  335. package/dist/core/ambient.d.ts +4 -3
  336. package/dist/core/ambient.js +8 -6
  337. package/dist/core/api-errors.d.ts +9 -3
  338. package/dist/core/api-errors.js +9 -3
  339. package/dist/core/capture-contract.d.ts +4 -1
  340. package/dist/core/capture-contract.js +27 -8
  341. package/dist/core/compare.d.ts +24 -8
  342. package/dist/core/compare.js +24 -8
  343. package/dist/core/config.d.ts +18 -9
  344. package/dist/core/config.js +38 -29
  345. package/dist/core/cosine.d.ts +4 -1
  346. package/dist/core/cosine.js +4 -1
  347. package/dist/core/handoff.d.ts +7 -2
  348. package/dist/core/handoff.js +4 -1
  349. package/dist/core/markdown.js +22 -17
  350. package/dist/core/memory-audit.js +14 -3
  351. package/dist/core/memory-quality.d.ts +12 -3
  352. package/dist/core/memory-quality.js +57 -21
  353. package/dist/core/memory.d.ts +87 -30
  354. package/dist/core/memory.js +82 -33
  355. package/dist/core/merged-row.d.ts +8 -2
  356. package/dist/core/merged-row.js +10 -3
  357. package/dist/core/package-root.d.ts +3 -1
  358. package/dist/core/package-root.js +3 -1
  359. package/dist/core/particle-refresh.d.ts +8 -0
  360. package/dist/core/particle-refresh.js +22 -0
  361. package/dist/core/physics-config.d.ts +4 -1
  362. package/dist/core/physics-config.js +6 -2
  363. package/dist/core/physics.d.ts +39 -11
  364. package/dist/core/physics.js +71 -21
  365. package/dist/core/project-identity.d.ts +34 -17
  366. package/dist/core/project-identity.js +35 -18
  367. package/dist/core/project-remote.d.ts +8 -4
  368. package/dist/core/project-remote.js +31 -14
  369. package/dist/core/recall-scope.d.ts +33 -11
  370. package/dist/core/recall-scope.js +42 -15
  371. package/dist/core/rejection-digest.d.ts +7 -0
  372. package/dist/core/rejection-digest.js +13 -0
  373. package/dist/core/salience.d.ts +3 -1
  374. package/dist/core/salience.js +10 -4
  375. package/dist/core/search-types.d.ts +15 -2
  376. package/dist/core/search-types.js +11 -0
  377. package/dist/dashboard/dashboard-actions.d.ts +2 -2
  378. package/dist/dashboard/dashboard-actions.js +18 -7
  379. package/dist/dashboard/dashboard-queries.js +2 -7
  380. package/dist/dashboard/dashboard-snapshot.d.ts +2 -2
  381. package/dist/dashboard/dashboard-snapshot.js +5 -7
  382. package/dist/dashboard/dashboard.js +22 -8
  383. package/dist/db/backup.js +2 -2
  384. package/dist/db/busy.d.ts +10 -3
  385. package/dist/db/busy.js +27 -5
  386. package/dist/db/connect.d.ts +10 -2
  387. package/dist/db/connect.js +8 -2
  388. package/dist/db/continuity.d.ts +1 -1
  389. package/dist/db/continuity.js +27 -11
  390. package/dist/db/meta.d.ts +4 -1
  391. package/dist/db/meta.js +4 -1
  392. package/dist/db/migrate.d.ts +10 -5
  393. package/dist/db/migrate.js +40 -20
  394. package/dist/db/migrations/index.d.ts +1 -1
  395. package/dist/db/migrations/index.js +3 -1
  396. package/dist/db/migrations/types.d.ts +2 -1
  397. package/dist/db/migrations/v11.js +1 -0
  398. package/dist/db/migrations/v12.js +2 -1
  399. package/dist/db/migrations/v14.js +2 -0
  400. package/dist/db/migrations/v15.js +4 -2
  401. package/dist/db/migrations/v16.js +6 -3
  402. package/dist/db/migrations/v17.js +2 -1
  403. package/dist/db/migrations/v19.js +4 -2
  404. package/dist/db/migrations/v20.js +2 -1
  405. package/dist/db/migrations/v22.js +12 -6
  406. package/dist/db/migrations/v23.js +6 -3
  407. package/dist/db/migrations/v24.js +6 -3
  408. package/dist/db/migrations/v25.js +4 -2
  409. package/dist/db/migrations/v26.js +4 -2
  410. package/dist/db/migrations/v27.js +6 -3
  411. package/dist/db/migrations/v28.js +4 -2
  412. package/dist/db/migrations/v29.js +4 -2
  413. package/dist/db/migrations/v30.js +6 -3
  414. package/dist/db/migrations/v31.js +4 -2
  415. package/dist/db/migrations/v32.js +6 -3
  416. package/dist/db/migrations/v33.js +4 -2
  417. package/dist/db/migrations/v34.js +2 -1
  418. package/dist/db/migrations/v35.js +2 -1
  419. package/dist/db/migrations/v36.js +2 -1
  420. package/dist/db/migrations/v37.js +10 -5
  421. package/dist/db/migrations/v38.js +10 -5
  422. package/dist/db/migrations/v39.js +14 -6
  423. package/dist/db/migrations/v40.js +4 -2
  424. package/dist/db/migrations/v41.js +4 -2
  425. package/dist/db/migrations/v42.js +2 -1
  426. package/dist/db/migrations/v44.js +4 -2
  427. package/dist/db/migrations/v45.js +4 -2
  428. package/dist/db/migrations/v49.js +2 -1
  429. package/dist/db/migrations/v50.js +4 -2
  430. package/dist/db/migrations/v51.js +4 -2
  431. package/dist/db/migrations/v52.js +2 -1
  432. package/dist/db/migrations/v53.js +8 -4
  433. package/dist/db/migrations/v54.js +2 -1
  434. package/dist/db/migrations/v55.js +4 -2
  435. package/dist/db/migrations/v56.d.ts +3 -0
  436. package/dist/db/migrations/v56.js +28 -0
  437. package/dist/db/open.d.ts +24 -12
  438. package/dist/db/open.js +25 -13
  439. package/dist/db/physics-state.d.ts +8 -8
  440. package/dist/db/physics-state.js +17 -50
  441. package/dist/db/raw-archive-mirror-cleanup.d.ts +4 -2
  442. package/dist/db/raw-archive-mirror-cleanup.js +6 -4
  443. package/dist/db/request-stores.d.ts +20 -5
  444. package/dist/db/request-stores.js +15 -5
  445. package/dist/db/tables.d.ts +2 -1
  446. package/dist/db/tables.js +12 -4
  447. package/dist/db/vector-store.d.ts +13 -4
  448. package/dist/db/vector-store.js +35 -14
  449. package/dist/db/wal-checkpointer.d.ts +2 -1
  450. package/dist/db/wal-checkpointer.js +19 -7
  451. package/dist/doctor.d.ts +7 -1
  452. package/dist/doctor.js +128 -46
  453. package/dist/embeddings/local.d.ts +8 -4
  454. package/dist/embeddings/local.js +11 -7
  455. package/dist/embeddings/provider.d.ts +19 -10
  456. package/dist/embeddings/provider.js +32 -27
  457. package/dist/embeddings/transformers.d.ts +16 -4
  458. package/dist/embeddings/transformers.js +32 -15
  459. package/dist/entry/json-hooks.d.ts +1 -1
  460. package/dist/entry/json-hooks.js +1 -1
  461. package/dist/entry/project-identity.js +2 -1
  462. package/dist/entry/session-text.d.ts +1 -1
  463. package/dist/entry/session-text.js +1 -1
  464. package/dist/entry/sqlite-handles.d.ts +10 -0
  465. package/dist/entry/sqlite-handles.js +9 -0
  466. package/dist/entry/store-kit.d.ts +50 -0
  467. package/dist/entry/store-kit.js +27 -0
  468. package/dist/entry/testing.d.ts +6 -0
  469. package/dist/entry/testing.js +7 -0
  470. package/dist/eval/eval-stats.d.ts +27 -8
  471. package/dist/eval/eval-stats.js +17 -5
  472. package/dist/eval/eval-suite.d.ts +3 -1
  473. package/dist/eval/eval-suite.js +409 -187
  474. package/dist/eval/eval.d.ts +8 -2
  475. package/dist/eval/eval.js +8 -2
  476. package/dist/eval/judgment.js +17 -7
  477. package/dist/graph/delta.d.ts +9 -42
  478. package/dist/graph/delta.js +17 -11
  479. package/dist/graph/extract.d.ts +10 -7
  480. package/dist/graph/extract.js +57 -25
  481. package/dist/graph/recall.d.ts +12 -4
  482. package/dist/graph/recall.js +30 -13
  483. package/dist/graph/stream.d.ts +18 -6
  484. package/dist/graph/stream.js +32 -10
  485. package/dist/graph/view.d.ts +19 -6
  486. package/dist/graph/view.js +42 -17
  487. package/dist/hooks/codex-session.js +2 -2
  488. package/dist/hooks/codex-wrapper.d.ts +3 -1
  489. package/dist/hooks/codex-wrapper.js +9 -4
  490. package/dist/hooks/copilot.d.ts +19 -5
  491. package/dist/hooks/copilot.js +54 -15
  492. package/dist/hooks/hook-blocks.d.ts +4 -1
  493. package/dist/hooks/hook-blocks.js +8 -3
  494. package/dist/hooks/json-hooks.d.ts +9 -5
  495. package/dist/hooks/json-hooks.js +72 -33
  496. package/dist/hooks/opencode.js +15 -5
  497. package/dist/hooks/shared.d.ts +27 -8
  498. package/dist/hooks/shared.js +57 -16
  499. package/dist/importers/core.d.ts +12 -4
  500. package/dist/importers/core.js +11 -10
  501. package/dist/importers/markdown-parse.d.ts +15 -5
  502. package/dist/importers/markdown-parse.js +16 -7
  503. package/dist/importers/markdown.js +6 -9
  504. package/dist/importers/sources.js +10 -23
  505. package/dist/importers/vault.d.ts +3 -3
  506. package/dist/importers/vault.js +61 -45
  507. package/dist/index.d.ts +33 -7
  508. package/dist/index.js +26 -8
  509. package/dist/learn/autolearn.d.ts +21 -6
  510. package/dist/learn/autolearn.js +57 -26
  511. package/dist/learn/churn-git.d.ts +4 -1
  512. package/dist/learn/churn-git.js +29 -5
  513. package/dist/learn/extract.d.ts +4 -1
  514. package/dist/learn/extract.js +17 -10
  515. package/dist/learn/forward-claim-detector.d.ts +17 -5
  516. package/dist/learn/forward-claim-detector.js +34 -15
  517. package/dist/learn/invalidation.d.ts +12 -6
  518. package/dist/learn/invalidation.js +62 -28
  519. package/dist/learn/roots.d.ts +3 -0
  520. package/dist/learn/roots.js +5 -0
  521. package/dist/mcp/admin-tools.d.ts +5 -5
  522. package/dist/mcp/admin-tools.js +28 -23
  523. package/dist/mcp/format.d.ts +1 -1
  524. package/dist/mcp/format.js +4 -2
  525. package/dist/mcp/framing.d.ts +3 -1
  526. package/dist/mcp/framing.js +20 -8
  527. package/dist/mcp/memory-tools.d.ts +3 -3
  528. package/dist/mcp/memory-tools.js +21 -20
  529. package/dist/mcp/protocol.d.ts +32 -16
  530. package/dist/mcp/protocol.js +12 -9
  531. package/dist/mcp/recall-tools.d.ts +3 -3
  532. package/dist/mcp/recall-tools.js +62 -74
  533. package/dist/mcp/request.d.ts +7 -5
  534. package/dist/mcp/request.js +61 -77
  535. package/dist/mcp/server.d.ts +3 -1
  536. package/dist/mcp/server.js +8 -3
  537. package/dist/mcp/session-state.d.ts +1 -1
  538. package/dist/mcp/session-state.js +4 -3
  539. package/dist/mcp/shared-gate.d.ts +3 -2
  540. package/dist/mcp/shared-gate.js +3 -2
  541. package/dist/mcp/stdio.d.ts +6 -3
  542. package/dist/mcp/stdio.js +59 -23
  543. package/dist/mcp/tool-args.d.ts +4 -1
  544. package/dist/mcp/tool-args.js +8 -3
  545. package/dist/mcp/tools.js +76 -32
  546. package/dist/objects/customer-notes.d.ts +12 -10
  547. package/dist/objects/customer-notes.js +21 -15
  548. package/dist/objects/decisions.d.ts +18 -10
  549. package/dist/objects/decisions.js +23 -17
  550. package/dist/objects/descriptor.js +2 -1
  551. package/dist/objects/fields.d.ts +4 -1
  552. package/dist/objects/fields.js +6 -2
  553. package/dist/objects/incidents.d.ts +14 -16
  554. package/dist/objects/incidents.js +29 -30
  555. package/dist/objects/lifecycle.d.ts +0 -4
  556. package/dist/objects/lifecycle.js +21 -24
  557. package/dist/objects/policies.d.ts +12 -16
  558. package/dist/objects/policies.js +17 -21
  559. package/dist/objects/processes.d.ts +16 -10
  560. package/dist/objects/processes.js +20 -15
  561. package/dist/objects/project-briefs.d.ts +13 -14
  562. package/dist/objects/project-briefs.js +33 -39
  563. package/dist/objects/skills.d.ts +10 -12
  564. package/dist/objects/skills.js +17 -22
  565. package/dist/postinstall.js +15 -7
  566. package/dist/predictions/planning-fallacy.d.ts +19 -6
  567. package/dist/predictions/planning-fallacy.js +4 -2
  568. package/dist/rerankers/clef.d.ts +8 -2
  569. package/dist/rerankers/clef.js +14 -9
  570. package/dist/rerankers/cross-encoder.d.ts +2 -1
  571. package/dist/rerankers/cross-encoder.js +19 -9
  572. package/dist/rerankers/index.js +2 -1
  573. package/dist/rerankers/jev.js +2 -1
  574. package/dist/rerankers/llm.d.ts +6 -2
  575. package/dist/rerankers/llm.js +8 -3
  576. package/dist/rerankers/remote.d.ts +3 -1
  577. package/dist/rerankers/remote.js +5 -2
  578. package/dist/rerankers/types.d.ts +6 -2
  579. package/dist/search/bm25-search.d.ts +3 -1
  580. package/dist/search/bm25-search.js +15 -2
  581. package/dist/search/boosts.js +4 -3
  582. package/dist/search/embed-memories.d.ts +12 -4
  583. package/dist/search/embed-memories.js +96 -58
  584. package/dist/search/engine.d.ts +11 -0
  585. package/dist/search/engine.js +14 -0
  586. package/dist/search/goal-boost.d.ts +10 -3
  587. package/dist/search/goal-boost.js +13 -6
  588. package/dist/search/hybrid-score.d.ts +4 -1
  589. package/dist/search/hybrid-score.js +4 -1
  590. package/dist/search/hybrid.d.ts +23 -8
  591. package/dist/search/hybrid.js +12 -7
  592. package/dist/search/multihop.js +14 -13
  593. package/dist/search/path-context.d.ts +10 -3
  594. package/dist/search/path-context.js +10 -3
  595. package/dist/search/physics-search.d.ts +9 -4
  596. package/dist/search/physics-search.js +38 -14
  597. package/dist/search/rerank.d.ts +2 -1
  598. package/dist/search/rerank.js +2 -1
  599. package/dist/search/rrf.d.ts +14 -5
  600. package/dist/search/rrf.js +11 -4
  601. package/dist/search/vector.d.ts +8 -2
  602. package/dist/search/vector.js +14 -8
  603. package/dist/server/auth.d.ts +19 -15
  604. package/dist/server/auth.js +68 -38
  605. package/dist/server/boot.d.ts +4 -1
  606. package/dist/server/boot.js +115 -67
  607. package/dist/server/client-ip.d.ts +17 -5
  608. package/dist/server/client-ip.js +56 -21
  609. package/dist/server/cursor.d.ts +10 -3
  610. package/dist/server/cursor.js +10 -3
  611. package/dist/server/deadline.d.ts +5 -2
  612. package/dist/server/deadline.js +10 -3
  613. package/dist/server/key-check-bounds.js +12 -4
  614. package/dist/server/lifecycle.d.ts +4 -1
  615. package/dist/server/lifecycle.js +10 -4
  616. package/dist/server/mcp-http.d.ts +2 -1
  617. package/dist/server/mcp-http.js +37 -22
  618. package/dist/server/rate-limit.d.ts +17 -5
  619. package/dist/server/rate-limit.js +55 -26
  620. package/dist/server/ready.js +7 -4
  621. package/dist/server/request.d.ts +15 -4
  622. package/dist/server/request.js +42 -15
  623. package/dist/server/route-checks.d.ts +4 -1
  624. package/dist/server/route-checks.js +8 -3
  625. package/dist/server/route-table.d.ts +8 -6
  626. package/dist/server/route-table.js +550 -97
  627. package/dist/server/routes/admin.d.ts +7 -7
  628. package/dist/server/routes/admin.js +36 -15
  629. package/dist/server/routes/customer-notes.d.ts +5 -5
  630. package/dist/server/routes/customer-notes.js +5 -4
  631. package/dist/server/routes/decisions.d.ts +5 -5
  632. package/dist/server/routes/decisions.js +12 -6
  633. package/dist/server/routes/incidents.d.ts +5 -5
  634. package/dist/server/routes/incidents.js +10 -4
  635. package/dist/server/routes/memories.d.ts +8 -8
  636. package/dist/server/routes/memories.js +12 -17
  637. package/dist/server/routes/object-routes.d.ts +8 -5
  638. package/dist/server/routes/object-routes.js +4 -2
  639. package/dist/server/routes/policies.d.ts +6 -6
  640. package/dist/server/routes/policies.js +11 -4
  641. package/dist/server/routes/predictions.d.ts +5 -5
  642. package/dist/server/routes/predictions.js +9 -4
  643. package/dist/server/routes/processes.d.ts +5 -5
  644. package/dist/server/routes/processes.js +15 -6
  645. package/dist/server/routes/project-briefs.d.ts +6 -6
  646. package/dist/server/routes/project-briefs.js +3 -2
  647. package/dist/server/routes/recall.d.ts +3 -3
  648. package/dist/server/routes/recall.js +21 -10
  649. package/dist/server/routes/skills.d.ts +6 -6
  650. package/dist/server/routes/skills.js +12 -4
  651. package/dist/server/server-detect.d.ts +24 -8
  652. package/dist/server/server-detect.js +57 -22
  653. package/dist/server/sleep-child.js +16 -10
  654. package/dist/server/sleep-offload.d.ts +8 -5
  655. package/dist/server/sleep-offload.js +40 -18
  656. package/dist/server/tls.d.ts +10 -2
  657. package/dist/server/tls.js +25 -5
  658. package/dist/server/types.d.ts +41 -24
  659. package/dist/server/validation.d.ts +4 -1
  660. package/dist/server/validation.js +22 -9
  661. package/dist/server.d.ts +17 -49
  662. package/dist/server.js +33 -40
  663. package/dist/sharing/global-store.d.ts +6 -12
  664. package/dist/sharing/global-store.js +8 -48
  665. package/dist/sharing/global-sync.d.ts +3 -1
  666. package/dist/sharing/global-sync.js +17 -7
  667. package/dist/sharing/project-merge.d.ts +25 -7
  668. package/dist/sharing/project-merge.js +49 -17
  669. package/dist/sharing/search-both.d.ts +8 -4
  670. package/dist/sharing/search-both.js +28 -14
  671. package/dist/sharing/share.d.ts +8 -4
  672. package/dist/sharing/share.js +40 -18
  673. package/dist/store/ambient.js +10 -5
  674. package/dist/store/audit-event.d.ts +2 -2
  675. package/dist/store/audit-event.js +8 -3
  676. package/dist/store/audit.d.ts +6 -3
  677. package/dist/store/audit.js +16 -6
  678. package/dist/store/auth.d.ts +4 -2
  679. package/dist/store/auth.js +63 -20
  680. package/dist/store/busy.d.ts +9 -0
  681. package/dist/store/busy.js +16 -0
  682. package/dist/store/candidates.d.ts +12 -5
  683. package/dist/store/candidates.js +90 -41
  684. package/dist/store/capture-write.d.ts +2 -1
  685. package/dist/store/capture-write.js +2 -1
  686. package/dist/store/card-detail.d.ts +4 -4
  687. package/dist/store/card-detail.js +15 -8
  688. package/dist/store/cards.d.ts +24 -10
  689. package/dist/store/cards.js +97 -63
  690. package/dist/store/compaction-caller.d.ts +2 -1
  691. package/dist/store/compaction-caller.js +2 -1
  692. package/dist/store/compactions-record.d.ts +14 -8
  693. package/dist/store/compactions-record.js +101 -37
  694. package/dist/store/compactions.js +35 -15
  695. package/dist/store/conflicts.d.ts +16 -5
  696. package/dist/store/conflicts.js +104 -48
  697. package/dist/store/connectors/dlq.d.ts +17 -5
  698. package/dist/store/connectors/dlq.js +58 -6
  699. package/dist/store/connectors/event-log.d.ts +122 -0
  700. package/dist/store/connectors/event-log.js +25 -0
  701. package/dist/store/connectors/github.d.ts +6 -3
  702. package/dist/store/connectors/github.js +30 -48
  703. package/dist/store/connectors/slack.d.ts +2 -1
  704. package/dist/store/connectors/slack.js +31 -47
  705. package/dist/store/dashboard-reads.d.ts +7 -3
  706. package/dist/store/dashboard-reads.js +32 -10
  707. package/dist/store/delete-and-batch.d.ts +17 -11
  708. package/dist/store/delete-and-batch.js +70 -28
  709. package/dist/store/delivery-recorder.d.ts +10 -7
  710. package/dist/store/delivery-recorder.js +70 -37
  711. package/dist/store/descendant-page.d.ts +2 -1
  712. package/dist/store/descendant-page.js +26 -10
  713. package/dist/store/diagnostics.d.ts +2 -1
  714. package/dist/store/diagnostics.js +2 -1
  715. package/dist/store/doctor-reads.d.ts +2 -1
  716. package/dist/store/doctor-reads.js +13 -5
  717. package/dist/store/dormant.d.ts +19 -11
  718. package/dist/store/dormant.js +45 -19
  719. package/dist/store/embeddings/index.d.ts +13 -9
  720. package/dist/store/embeddings/index.js +19 -12
  721. package/dist/store/entry-reads.d.ts +72 -21
  722. package/dist/store/entry-reads.js +215 -69
  723. package/dist/store/entry-row.d.ts +10 -6
  724. package/dist/store/entry-row.js +26 -14
  725. package/dist/store/entry-writes.d.ts +28 -13
  726. package/dist/store/entry-writes.js +61 -22
  727. package/dist/store/failure-log-at.js +1 -1
  728. package/dist/store/failure-log.d.ts +4 -2
  729. package/dist/store/failure-log.js +13 -6
  730. package/dist/store/gated-write.d.ts +3 -3
  731. package/dist/store/gated-write.js +3 -3
  732. package/dist/store/goals.d.ts +5 -4
  733. package/dist/store/goals.js +11 -12
  734. package/dist/store/graph-apply.d.ts +21 -0
  735. package/dist/{graph/write.js → store/graph-apply.js} +31 -11
  736. package/dist/store/graph-queue.d.ts +9 -6
  737. package/dist/store/graph-queue.js +15 -10
  738. package/dist/store/graph-reads.d.ts +16 -11
  739. package/dist/store/graph-reads.js +29 -19
  740. package/dist/store/graph-rows.d.ts +41 -3
  741. package/dist/store/graph-rows.js +10 -7
  742. package/dist/store/graph-view-rows.js +15 -7
  743. package/dist/store/graph-writes.d.ts +16 -10
  744. package/dist/store/graph-writes.js +59 -36
  745. package/dist/store/half-life.js +2 -2
  746. package/dist/store/handoffs.d.ts +13 -7
  747. package/dist/store/handoffs.js +44 -22
  748. package/dist/store/index-and-stats.d.ts +2 -2
  749. package/dist/store/index-and-stats.js +6 -5
  750. package/dist/store/index.d.ts +4 -2
  751. package/dist/store/index.js +2 -1
  752. package/dist/store/key-audit.d.ts +2 -1
  753. package/dist/store/key-audit.js +2 -1
  754. package/dist/store/key-writes.d.ts +2 -1
  755. package/dist/store/key-writes.js +9 -2
  756. package/dist/store/ledger-turn.d.ts +4 -1
  757. package/dist/store/ledger-turn.js +7 -2
  758. package/dist/store/mirrors.d.ts +11 -4
  759. package/dist/store/mirrors.js +96 -19
  760. package/dist/store/narrow.d.ts +6 -0
  761. package/dist/store/narrow.js +11 -0
  762. package/dist/store/open.d.ts +6 -3
  763. package/dist/store/open.js +20 -10
  764. package/dist/store/pilot-arm.d.ts +2 -1
  765. package/dist/store/pilot-arm.js +18 -6
  766. package/dist/store/planning-fallacy-evidence.d.ts +2 -2
  767. package/dist/store/planning-fallacy-evidence.js +8 -5
  768. package/dist/store/port/agent-import.d.ts +62 -0
  769. package/dist/store/port/agent-import.js +2 -0
  770. package/dist/store/port/consolidation.d.ts +129 -0
  771. package/dist/store/port/consolidation.js +2 -0
  772. package/dist/store/port/learning.d.ts +19 -0
  773. package/dist/store/port/learning.js +2 -0
  774. package/dist/store/port/local-files.d.ts +18 -0
  775. package/dist/store/port/local-files.js +2 -0
  776. package/dist/store/port/promotion.d.ts +20 -0
  777. package/dist/store/port/promotion.js +3 -0
  778. package/dist/store/port-groups.d.ts +160 -0
  779. package/dist/store/port-groups.js +2 -0
  780. package/dist/store/port.d.ts +261 -219
  781. package/dist/store/port.js +3 -9
  782. package/dist/store/predictions.d.ts +14 -10
  783. package/dist/store/predictions.js +37 -17
  784. package/dist/store/project-tags.d.ts +4 -1
  785. package/dist/store/project-tags.js +16 -5
  786. package/dist/store/quality-repair.d.ts +8 -4
  787. package/dist/store/quality-repair.js +53 -20
  788. package/dist/store/quarantine.d.ts +1 -0
  789. package/dist/store/quarantine.js +23 -9
  790. package/dist/store/raw-archive.d.ts +5 -4
  791. package/dist/store/raw-archive.js +11 -10
  792. package/dist/store/recall-trace.d.ts +22 -17
  793. package/dist/store/recall-trace.js +128 -64
  794. package/dist/store/rejected-values.d.ts +15 -10
  795. package/dist/store/rejected-values.js +46 -20
  796. package/dist/store/rejection.d.ts +12 -11
  797. package/dist/store/rejection.js +18 -19
  798. package/dist/store/report-reads.d.ts +2 -1
  799. package/dist/store/report-reads.js +2 -1
  800. package/dist/store/rows.d.ts +7 -5
  801. package/dist/store/rows.js +20 -13
  802. package/dist/store/rule-sql.d.ts +7 -3
  803. package/dist/store/rule-sql.js +26 -13
  804. package/dist/store/search-rows.d.ts +16 -11
  805. package/dist/store/search-rows.js +54 -32
  806. package/dist/store/sessions.d.ts +12 -10
  807. package/dist/store/sessions.js +40 -21
  808. package/dist/store/set-aside.d.ts +2 -2
  809. package/dist/store/set-aside.js +18 -5
  810. package/dist/store/sqlite/agent-import.d.ts +3 -0
  811. package/dist/store/sqlite/agent-import.js +77 -0
  812. package/dist/store/sqlite/cards-group.d.ts +6 -0
  813. package/dist/store/sqlite/cards-group.js +37 -0
  814. package/dist/store/sqlite/conflicts-group.d.ts +6 -0
  815. package/dist/store/sqlite/conflicts-group.js +18 -0
  816. package/dist/store/sqlite/connector-events-group.d.ts +2 -1
  817. package/dist/store/sqlite/connector-events-group.js +17 -6
  818. package/dist/store/sqlite/connector-writes-group.d.ts +2 -1
  819. package/dist/store/sqlite/connector-writes-group.js +12 -5
  820. package/dist/store/sqlite/consolidation-group.d.ts +4 -0
  821. package/dist/store/sqlite/consolidation-group.js +64 -0
  822. package/dist/store/sqlite/dag-reads-group.js +1 -1
  823. package/dist/store/sqlite/dormant-group.d.ts +6 -0
  824. package/dist/store/sqlite/dormant-group.js +29 -0
  825. package/dist/store/sqlite/entry-writes-group.d.ts +9 -6
  826. package/dist/store/sqlite/entry-writes-group.js +37 -14
  827. package/dist/store/sqlite/error-codec.d.ts +4 -2
  828. package/dist/store/sqlite/error-codec.js +32 -10
  829. package/dist/store/sqlite/executor-counts.js +2 -1
  830. package/dist/store/sqlite/executor.d.ts +8 -3
  831. package/dist/store/sqlite/executor.js +56 -18
  832. package/dist/store/sqlite/global-promote.d.ts +5 -0
  833. package/dist/store/sqlite/global-promote.js +48 -0
  834. package/dist/store/sqlite/goals-group.d.ts +6 -0
  835. package/dist/store/sqlite/goals-group.js +23 -0
  836. package/dist/store/sqlite/graph-reads-group.d.ts +2 -1
  837. package/dist/store/sqlite/graph-reads-group.js +2 -1
  838. package/dist/store/sqlite/held-connection.d.ts +8 -0
  839. package/dist/store/sqlite/held-connection.js +34 -7
  840. package/dist/store/sqlite/last-recall-group.d.ts +15 -0
  841. package/dist/store/sqlite/last-recall-group.js +62 -0
  842. package/dist/store/sqlite/learning-group.d.ts +4 -0
  843. package/dist/store/sqlite/learning-group.js +17 -0
  844. package/dist/store/sqlite/maintenance-groups.d.ts +6 -0
  845. package/dist/store/sqlite/maintenance-groups.js +61 -0
  846. package/dist/store/sqlite/object-rows.d.ts +6 -3
  847. package/dist/store/sqlite/object-rows.js +34 -5
  848. package/dist/store/sqlite/objects-group.d.ts +5 -4
  849. package/dist/store/sqlite/objects-group.js +97 -38
  850. package/dist/store/sqlite/predictions-group.d.ts +2 -1
  851. package/dist/store/sqlite/predictions-group.js +4 -2
  852. package/dist/store/sqlite/promotion-group.d.ts +3 -0
  853. package/dist/store/sqlite/promotion-group.js +10 -0
  854. package/dist/store/sqlite/quarantine-group.d.ts +2 -1
  855. package/dist/store/sqlite/quarantine-group.js +4 -2
  856. package/dist/store/sqlite/reports-group.d.ts +6 -0
  857. package/dist/store/sqlite/reports-group.js +33 -0
  858. package/dist/store/sqlite/request-scope.d.ts +6 -0
  859. package/dist/store/sqlite/request-scope.js +18 -0
  860. package/dist/store/sqlite/sessions-group.d.ts +6 -0
  861. package/dist/store/sqlite/sessions-group.js +46 -0
  862. package/dist/store/sqlite/store.d.ts +22 -18
  863. package/dist/store/sqlite/store.js +95 -33
  864. package/dist/store/sqlite/vector-pack.js +2 -1
  865. package/dist/store/sqlite/vector-reads-group.js +2 -1
  866. package/dist/store/sqlite/worker-jobs.d.ts +2 -1
  867. package/dist/store/sqlite/worker-jobs.js +19 -7
  868. package/dist/store/sqlite/worker-ops.d.ts +10 -5
  869. package/dist/store/sqlite/worker-ops.js +6 -3
  870. package/dist/store/sqlite/worker-store.d.ts +4 -3
  871. package/dist/store/sqlite/worker-store.js +24 -14
  872. package/dist/store/summaries.d.ts +25 -11
  873. package/dist/store/summaries.js +84 -27
  874. package/dist/store/summary-dirty.d.ts +2 -1
  875. package/dist/store/summary-dirty.js +2 -1
  876. package/dist/store/tenant.d.ts +3 -2
  877. package/dist/store/tenant.js +5 -4
  878. package/dist/store/token-ledger-rows.js +8 -4
  879. package/dist/store/token-ledger.d.ts +19 -13
  880. package/dist/store/token-ledger.js +27 -14
  881. package/dist/store/tombstone-checks.d.ts +4 -1
  882. package/dist/store/tombstone-checks.js +10 -1
  883. package/dist/store/usage-reports.js +2 -1
  884. package/dist/store/vector-index.d.ts +8 -5
  885. package/dist/store/vector-index.js +28 -11
  886. package/dist/store/working-memory.d.ts +6 -4
  887. package/dist/store/working-memory.js +14 -9
  888. package/dist/support-bundle.js +10 -5
  889. package/dist/trust/quarantine.d.ts +1 -2
  890. package/dist/trust/quarantine.js +1 -5
  891. package/dist/trust/reject-flow.d.ts +12 -3
  892. package/dist/trust/reject-flow.js +12 -4
  893. package/dist/util/anthropic-messages.d.ts +7 -2
  894. package/dist/util/anthropic-messages.js +18 -7
  895. package/dist/util/atomic-write.d.ts +8 -3
  896. package/dist/util/atomic-write.js +36 -21
  897. package/dist/util/compaction-items.d.ts +4 -1
  898. package/dist/util/compaction-items.js +8 -2
  899. package/dist/util/crash-handlers.d.ts +7 -2
  900. package/dist/util/crash-handlers.js +13 -4
  901. package/dist/util/env.d.ts +26 -5
  902. package/dist/util/env.js +87 -25
  903. package/dist/util/format.d.ts +2 -0
  904. package/dist/util/format.js +4 -0
  905. package/dist/util/home-path.js +12 -6
  906. package/dist/util/hook-payload.d.ts +3 -1
  907. package/dist/util/hook-payload.js +3 -1
  908. package/dist/util/http-retry.d.ts +12 -6
  909. package/dist/util/http-retry.js +16 -6
  910. package/dist/util/http-util.d.ts +20 -5
  911. package/dist/util/http-util.js +28 -9
  912. package/dist/util/json.d.ts +4 -1
  913. package/dist/util/json.js +4 -1
  914. package/dist/util/keyset.js +2 -1
  915. package/dist/util/limits.js +4 -2
  916. package/dist/util/log.d.ts +13 -5
  917. package/dist/util/log.js +29 -6
  918. package/dist/util/net.d.ts +5 -0
  919. package/dist/util/net.js +19 -0
  920. package/dist/util/real-path.d.ts +2 -1
  921. package/dist/util/real-path.js +4 -3
  922. package/dist/util/request-scope.d.ts +16 -4
  923. package/dist/util/request-scope.js +19 -6
  924. package/dist/util/same-text.d.ts +10 -3
  925. package/dist/util/same-text.js +10 -3
  926. package/dist/util/secret-detect.d.ts +24 -7
  927. package/dist/util/secret-detect.js +49 -14
  928. package/dist/util/spawn-argv.d.ts +11 -0
  929. package/dist/util/spawn-argv.js +66 -0
  930. package/dist/util/sql.d.ts +3 -0
  931. package/dist/util/sql.js +6 -0
  932. package/dist/util/sqlite-blocked.d.ts +15 -4
  933. package/dist/util/sqlite-blocked.js +19 -6
  934. package/dist/util/stored-json.d.ts +4 -1
  935. package/dist/util/stored-json.js +6 -2
  936. package/dist/util/stream-tee.d.ts +2 -1
  937. package/dist/util/stream-tee.js +8 -5
  938. package/dist/util/transcript-tail.d.ts +4 -1
  939. package/dist/util/transcript-tail.js +4 -1
  940. package/dist/util/vector-codec.d.ts +4 -0
  941. package/dist/util/vector-codec.js +15 -0
  942. package/dist/util/version.d.ts +8 -3
  943. package/dist/util/version.js +8 -3
  944. package/dist/util/write-budget.d.ts +7 -2
  945. package/dist/util/write-budget.js +5 -2
  946. package/dist/util/yaml.d.ts +4 -1
  947. package/dist/util/yaml.js +4 -1
  948. package/extensions/openclaw-plugin/openclaw.plugin.json +1 -1
  949. package/extensions/openclaw-plugin/package.json +1 -1
  950. package/openclaw.plugin.json +1 -1
  951. package/package.json +4 -1
  952. package/scripts/postinstall.cjs +3 -1
  953. package/dist/api/audit.js +0 -56
  954. package/dist/api/cards.d.ts +0 -42
  955. package/dist/api/conflicts.d.ts +0 -28
  956. package/dist/api/conflicts.js +0 -61
  957. package/dist/api/dormant.d.ts +0 -14
  958. package/dist/api/dormant.js +0 -58
  959. package/dist/api/goals.d.ts +0 -18
  960. package/dist/api/graph.d.ts +0 -8
  961. package/dist/api/graph.js +0 -7
  962. package/dist/api/learn.js +0 -124
  963. package/dist/api/memories.d.ts +0 -23
  964. package/dist/api/memories.js +0 -46
  965. package/dist/api/objects.d.ts +0 -9
  966. package/dist/api/on-store.d.ts +0 -16
  967. package/dist/api/on-store.js +0 -38
  968. package/dist/api/outcome.d.ts +0 -19
  969. package/dist/api/outcome.js +0 -21
  970. package/dist/api/predictions.d.ts +0 -11
  971. package/dist/api/promote.d.ts +0 -36
  972. package/dist/api/promote.js +0 -65
  973. package/dist/api/recall-core.d.ts +0 -4
  974. package/dist/api/recall-core.js +0 -120
  975. package/dist/api/recall-finish.d.ts +0 -53
  976. package/dist/api/recall-finish.js +0 -30
  977. package/dist/api/recall-history.d.ts +0 -64
  978. package/dist/api/recall-history.js +0 -159
  979. package/dist/api/recall-record.d.ts +0 -43
  980. package/dist/api/recall-record.js +0 -78
  981. package/dist/api/recall-request.js +0 -121
  982. package/dist/api/recall.d.ts +0 -6
  983. package/dist/api/refine.d.ts +0 -7
  984. package/dist/api/refine.js +0 -10
  985. package/dist/api/session-owners.d.ts +0 -4
  986. package/dist/api/session-owners.js +0 -17
  987. package/dist/api/sleep-run.d.ts +0 -26
  988. package/dist/api/sleep.js +0 -10
  989. package/dist/cli/lenient-id.d.ts +0 -2
  990. package/dist/cli/lenient-id.js +0 -13
  991. package/dist/graph/write.d.ts +0 -14
  992. package/dist/store/sqlite/busy.d.ts +0 -3
  993. package/dist/store/sqlite/busy.js +0 -8
  994. package/dist/store/sqlite/local.d.ts +0 -21
  995. package/dist/store/sqlite/local.js +0 -39
@@ -1,10 +1,13 @@
1
- /** Decision object: the `decisions` table is the source of truth, so an in-force decision stays `active` despite memory decay.
2
- * The memory mirror (memory_id NULLABLE, ON DELETE SET NULL) is for recall only; saveDecision commits both in one `objects` transaction. */
1
+ /**
2
+ * Decision object: the `decisions` table is the source of truth, so an
3
+ * in-force decision stays `active` despite memory decay. The memory
4
+ * mirror (memory_id NULLABLE, ON DELETE SET NULL) is for recall only;
5
+ * saveDecision commits both in one `objects` transaction.
6
+ */
3
7
  import { BadRequestError } from '../core/api-errors.js';
4
8
  import { writeEntry } from '../store/entry-writes.js';
5
9
  import { assertTenantId } from '../store/tenant.js';
6
- import { closeObjectAt, listObjectsAt, objectByIdAt, saveObjectAt } from './lifecycle.js';
7
- import { objectIdByMemory } from '../store/sqlite/objects-group.js';
10
+ import { closeObject, listObjects, objectById, saveObject } from './lifecycle.js';
8
11
  const SUPERSEDED_TAG = 'superseded';
9
12
  export const VALID_DECISION_STATES = new Set([
10
13
  'active',
@@ -32,32 +35,35 @@ export const DECISION = {
32
35
  };
33
36
  /** Create a decision; the memory mirror and the row commit in one transaction.
34
37
  * Superseding CASes the old row (WHERE status='active'), so a duplicate supersede aborts the whole write. */
35
- export function saveDecision(hippoRoot, tenantId, opts, actor = 'cli') {
36
- return saveObjectAt(DECISION, { hippoRoot, tenantId, actor }, opts);
38
+ export function saveDecision(objects, hippoRoot, tenantId, opts, actor = 'cli') {
39
+ return saveObject(objects, DECISION, { hippoRoot, tenantId, actor }, opts);
37
40
  }
38
- /** Weaken the memory a new decision replaces, once the save has committed: half-life halved to a day at least, marked stale, tagged `superseded`. */
41
+ /**
42
+ * Weaken the memory a new decision replaces, once the save has committed: half-life halved to a day at least, marked
43
+ * stale, tagged `superseded`.
44
+ */
39
45
  export function weakenSupersededMemory(hippoRoot, entry, actor = 'cli') {
40
46
  const tags = entry.tags.includes(SUPERSEDED_TAG) ? entry.tags : [...entry.tags, SUPERSEDED_TAG];
41
47
  const halved = Math.max(1, Math.floor(entry.half_life_days / 2));
42
48
  writeEntry(hippoRoot, { ...entry, half_life_days: halved, confidence: 'stale', tags }, { actor });
43
49
  }
44
50
  /** Close (retire) an active decision with no successor; the memory mirror is not mutated. */
45
- export function closeDecision(hippoRoot, tenantId, id, actor = 'cli') {
46
- return closeObjectAt(hippoRoot, DECISION, tenantId, id, actor);
51
+ export function closeDecision(objects, tenantId, id, actor = 'cli') {
52
+ return closeObject(objects, DECISION, tenantId, id, actor);
47
53
  }
48
- export function loadDecisionById(hippoRoot, tenantId, id) {
49
- return objectByIdAt(hippoRoot, DECISION, tenantId, id);
54
+ export function loadDecisionById(objects, tenantId, id) {
55
+ return objectById(objects, DECISION, tenantId, id);
50
56
  }
51
- export function loadDecisions(hippoRoot, tenantId, opts = {}) {
52
- return listObjectsAt(hippoRoot, DECISION, tenantId, opts);
57
+ export function loadDecisions(objects, tenantId, opts = {}) {
58
+ return listObjects(objects, DECISION, tenantId, opts);
53
59
  }
54
- export function loadActiveDecisions(hippoRoot, tenantId, opts = {}) {
55
- return loadDecisions(hippoRoot, tenantId, { status: 'active', limit: opts.limit });
60
+ export function loadActiveDecisions(objects, tenantId, opts = {}) {
61
+ return loadDecisions(objects, tenantId, { status: 'active', limit: opts.limit });
56
62
  }
57
63
  /** Resolve a `--supersedes <memory-id>` to the table id of the ACTIVE decision backed by that memory, or null.
58
64
  * Exported so the CLI's backward-compat path is testable at the store layer. */
59
- export function resolveActiveDecisionIdByMemory(hippoRoot, tenantId, memoryId) {
65
+ export async function resolveActiveDecisionIdByMemory(objects, tenantId, memoryId) {
60
66
  assertTenantId('resolveActiveDecisionIdByMemory', tenantId);
61
- return objectIdByMemory(hippoRoot, tenantId, 'decision', 'active', memoryId);
67
+ return objects.objectIdByMemory(tenantId, 'decision', 'active', memoryId);
62
68
  }
63
69
  //# sourceMappingURL=decisions.js.map
@@ -1,4 +1,5 @@
1
- // The words and rules that differ between the typed objects (decision, project brief and the rest), held as data so one lifecycle serves every kind.
1
+ // The words and rules that differ between the typed objects (decision, project brief and the rest), held as data so one
2
+ // lifecycle serves every kind.
2
3
  // A kind's table, columns and audit keys sit behind the `objects` store group.
3
4
  export {};
4
5
  //# sourceMappingURL=descriptor.js.map
@@ -3,7 +3,10 @@ export interface LineMessages {
3
3
  readonly singleLine: string;
4
4
  readonly tooLong: string;
5
5
  }
6
- /** A one-line name such as a repo or a customer: trimmed first, because the trimmed value is what gets stored and matched. */
6
+ /**
7
+ * A one-line name such as a repo or a customer: trimmed first, because the trimmed value is what gets stored and
8
+ * matched.
9
+ */
7
10
  export declare function requireLine(value: string, max: number, m: LineMessages): string;
8
11
  export interface TextMessages {
9
12
  /** Leave out for an optional field. */
@@ -1,6 +1,10 @@
1
- // Field checks the typed objects share. The module passes each error text in full, because the wording differs per type.
1
+ // Field checks the typed objects share. The module passes each error text in full, because the wording differs per
2
+ // type.
2
3
  import { BadRequestError } from '../core/api-errors.js';
3
- /** A one-line name such as a repo or a customer: trimmed first, because the trimmed value is what gets stored and matched. */
4
+ /**
5
+ * A one-line name such as a repo or a customer: trimmed first, because the trimmed value is what gets stored and
6
+ * matched.
7
+ */
4
8
  export function requireLine(value, max, m) {
5
9
  const line = (value ?? '').trim();
6
10
  if (line.length === 0)
@@ -1,6 +1,6 @@
1
- /** Incident object: a postmortem capsule with lifecycle open -> resolved -> closed (no supersede chain) and optional linked receipts.
2
- * The `incidents` table is the source of truth; the memory mirror (memory_id NULLABLE, ON DELETE SET NULL) is for recall.
3
- * linked_memory_ids must all exist in the SAME tenant or save throws before the insert. */
1
+ /** Incident object: a postmortem capsule with lifecycle open -> resolved -> closed (no supersede chain) and optional
2
+ * linked receipts. The `incidents` table is the source of truth; the memory mirror (memory_id NULLABLE, ON DELETE SET
3
+ * NULL) is for recall. linked_memory_ids must all exist in the SAME tenant or save throws before the insert. */
4
4
  import type { KeysetPosition } from '../util/keyset.js';
5
5
  import type { ObjectDescriptor } from './descriptor.js';
6
6
  import type { Incident, IncidentStatus } from '../core/object-types.js';
@@ -24,22 +24,20 @@ export interface ListIncidentsOpts {
24
24
  after?: KeysetPosition;
25
25
  }
26
26
  export declare const INCIDENT: ObjectDescriptor<'incident'>;
27
- /** Opens an incident with its mirror memory (content "<text>\n\nContext: <context>" when
28
- * context is given) in one write; a linked memory outside the tenant refuses the whole write. */
29
- export declare function saveIncident(hippoRoot: string, tenantId: string, opts: SaveIncidentOpts, actor?: string): Incident;
30
- /** `saveIncident` over a served store's group. */
27
+ /** Opens an incident with its mirror memory (content "<text>
28
+
29
+ Context: <context>" when context is given) in one write; a linked memory outside the tenant refuses the whole write. */
31
30
  export declare function openIncident(objects: Objects, hippoRoot: string, tenantId: string, opts: SaveIncidentOpts, actor: string): Promise<Incident>;
32
- /** Moves an open incident to resolved and keeps it on record; a missing incident and one that is not open are told apart. */
33
- export declare function resolveIncident(hippoRoot: string, tenantId: string, id: number, resolutionText: string, actor?: string): Incident;
34
- /** `resolveIncident` over a served store's group. */
31
+ /** Moves an open incident to resolved and keeps it on record;
32
+ * a missing incident and one that is not open are told apart. */
35
33
  export declare function resolveOpenIncident(objects: Objects, tenantId: string, id: number, resolutionText: string, actor: string): Promise<Incident>;
36
34
  /** Close (retire) an incident from open or resolved; sets closed_at only, the memory mirror is not mutated. */
37
- export declare function closeIncident(hippoRoot: string, tenantId: string, id: number, actor?: string): Incident;
38
- export declare function loadIncidentById(hippoRoot: string, tenantId: string, id: number): Incident | null;
39
- export declare function loadIncidents(hippoRoot: string, tenantId: string, opts?: ListIncidentsOpts): Incident[];
40
- export declare function loadOpenIncidents(hippoRoot: string, tenantId: string, opts?: {
35
+ export declare function closeIncident(objects: Objects, tenantId: string, id: number, actor?: string): Promise<Incident>;
36
+ export declare function loadIncidentById(objects: Objects, tenantId: string, id: number): Promise<Incident | null>;
37
+ export declare function loadIncidents(objects: Objects, tenantId: string, opts?: ListIncidentsOpts): Promise<Incident[]>;
38
+ export declare function loadOpenIncidents(objects: Objects, tenantId: string, opts?: {
41
39
  limit?: number;
42
- }): Incident[];
40
+ }): Promise<Incident[]>;
43
41
  /** Resolve a memory id to the table id of the OPEN incident backed by it, or null; exported for store-layer tests. */
44
- export declare function resolveActiveIncidentIdByMemory(hippoRoot: string, tenantId: string, memoryId: string): number | null;
42
+ export declare function resolveActiveIncidentIdByMemory(objects: Objects, tenantId: string, memoryId: string): Promise<number | null>;
45
43
  //# sourceMappingURL=incidents.d.ts.map
@@ -1,11 +1,10 @@
1
- /** Incident object: a postmortem capsule with lifecycle open -> resolved -> closed (no supersede chain) and optional linked receipts.
2
- * The `incidents` table is the source of truth; the memory mirror (memory_id NULLABLE, ON DELETE SET NULL) is for recall.
3
- * linked_memory_ids must all exist in the SAME tenant or save throws before the insert. */
1
+ /** Incident object: a postmortem capsule with lifecycle open -> resolved -> closed (no supersede chain) and optional
2
+ * linked receipts. The `incidents` table is the source of truth; the memory mirror (memory_id NULLABLE, ON DELETE SET
3
+ * NULL) is for recall. linked_memory_ids must all exist in the SAME tenant or save throws before the insert. */
4
4
  import { BadRequestError, ConflictError, NotFoundError } from '../core/api-errors.js';
5
5
  import { assertTenantId } from '../store/tenant.js';
6
- import { closeObjectAt, listObjectsAt, objectByIdAt, objectMirror } from './lifecycle.js';
7
- import { isObjectRefusal } from '../store/port.js';
8
- import { objectIdByMemory, sqliteObjects } from '../store/sqlite/objects-group.js';
6
+ import { closeObject, listObjects, objectById, objectMirror } from './lifecycle.js';
7
+ import { isObjectRefusal, } from '../store/port.js';
9
8
  export const VALID_INCIDENT_STATES = new Set([
10
9
  'open',
11
10
  'resolved',
@@ -31,23 +30,25 @@ function incidentOpen(hippoRoot, tenantId, opts, actor) {
31
30
  ? `${opts.incidentText}\n\nContext: ${opts.context}`
32
31
  : opts.incidentText;
33
32
  const mirror = objectMirror(hippoRoot, tenantId, 'incident', { content, tags: opts.extraTags ?? [] });
34
- const fields = { incidentText: opts.incidentText, context: opts.context ?? undefined, linkedMemoryIds: opts.linkedMemoryIds ?? [] };
33
+ const fields = {
34
+ incidentText: opts.incidentText,
35
+ context: opts.context ?? undefined,
36
+ linkedMemoryIds: opts.linkedMemoryIds ?? [],
37
+ };
35
38
  return { mirror, fields, actor, at };
36
39
  }
37
40
  function opened(tenantId, written) {
38
41
  if (!('refused' in written))
39
42
  return written;
40
43
  // A linked id of another tenant reads as missing, so an unverifiable receipt is never recorded.
41
- if (written.refused === 'unlinked')
44
+ if (written.refused === 'unlinked') {
42
45
  throw new NotFoundError(`saveIncident: linked memory ${written.memoryId} not found for tenant ${tenantId}`);
46
+ }
43
47
  throw new Error('saveIncident: failed to reload saved incident row');
44
48
  }
45
- /** Opens an incident with its mirror memory (content "<text>\n\nContext: <context>" when
46
- * context is given) in one write; a linked memory outside the tenant refuses the whole write. */
47
- export function saveIncident(hippoRoot, tenantId, opts, actor = 'cli') {
48
- return opened(tenantId, sqliteObjects(hippoRoot).openIncident(tenantId, incidentOpen(hippoRoot, tenantId, opts, actor)));
49
- }
50
- /** `saveIncident` over a served store's group. */
49
+ /** Opens an incident with its mirror memory (content "<text>
50
+
51
+ Context: <context>" when context is given) in one write; a linked memory outside the tenant refuses the whole write. */
51
52
  export async function openIncident(objects, hippoRoot, tenantId, opts, actor) {
52
53
  return opened(tenantId, await objects.openIncident(tenantId, incidentOpen(hippoRoot, tenantId, opts, actor)));
53
54
  }
@@ -61,36 +62,34 @@ function resolving(tenantId, resolutionText, actor) {
61
62
  function resolved(tenantId, id, written) {
62
63
  if (!isObjectRefusal(written))
63
64
  return written;
64
- if (written.refused === 'missing')
65
+ if (written.refused === 'missing') {
65
66
  throw new NotFoundError(`resolveIncident: incident ${id} not found for tenant ${tenantId}`);
67
+ }
66
68
  if (written.refused !== 'status')
67
69
  throw new NotFoundError(`resolveIncident: incident ${id} not found after UPDATE`);
68
70
  throw new ConflictError(`resolveIncident: incident ${id} is not open (status='${written.status}'); only open incidents can be resolved.`);
69
71
  }
70
- /** Moves an open incident to resolved and keeps it on record; a missing incident and one that is not open are told apart. */
71
- export function resolveIncident(hippoRoot, tenantId, id, resolutionText, actor = 'cli') {
72
- return resolved(tenantId, id, sqliteObjects(hippoRoot).resolveIncident(tenantId, id, resolving(tenantId, resolutionText, actor)));
73
- }
74
- /** `resolveIncident` over a served store's group. */
72
+ /** Moves an open incident to resolved and keeps it on record;
73
+ * a missing incident and one that is not open are told apart. */
75
74
  export async function resolveOpenIncident(objects, tenantId, id, resolutionText, actor) {
76
75
  return resolved(tenantId, id, await objects.resolveIncident(tenantId, id, resolving(tenantId, resolutionText, actor)));
77
76
  }
78
77
  /** Close (retire) an incident from open or resolved; sets closed_at only, the memory mirror is not mutated. */
79
- export function closeIncident(hippoRoot, tenantId, id, actor = 'cli') {
80
- return closeObjectAt(hippoRoot, INCIDENT, tenantId, id, actor);
78
+ export function closeIncident(objects, tenantId, id, actor = 'cli') {
79
+ return closeObject(objects, INCIDENT, tenantId, id, actor);
81
80
  }
82
- export function loadIncidentById(hippoRoot, tenantId, id) {
83
- return objectByIdAt(hippoRoot, INCIDENT, tenantId, id);
81
+ export function loadIncidentById(objects, tenantId, id) {
82
+ return objectById(objects, INCIDENT, tenantId, id);
84
83
  }
85
- export function loadIncidents(hippoRoot, tenantId, opts = {}) {
86
- return listObjectsAt(hippoRoot, INCIDENT, tenantId, opts);
84
+ export function loadIncidents(objects, tenantId, opts = {}) {
85
+ return listObjects(objects, INCIDENT, tenantId, opts);
87
86
  }
88
- export function loadOpenIncidents(hippoRoot, tenantId, opts = {}) {
89
- return loadIncidents(hippoRoot, tenantId, { status: 'open', limit: opts.limit });
87
+ export function loadOpenIncidents(objects, tenantId, opts = {}) {
88
+ return loadIncidents(objects, tenantId, { status: 'open', limit: opts.limit });
90
89
  }
91
90
  /** Resolve a memory id to the table id of the OPEN incident backed by it, or null; exported for store-layer tests. */
92
- export function resolveActiveIncidentIdByMemory(hippoRoot, tenantId, memoryId) {
91
+ export async function resolveActiveIncidentIdByMemory(objects, tenantId, memoryId) {
93
92
  assertTenantId('resolveActiveIncidentIdByMemory', tenantId);
94
- return objectIdByMemory(hippoRoot, tenantId, 'incident', 'open', memoryId);
93
+ return objects.objectIdByMemory(tenantId, 'incident', 'open', memoryId);
95
94
  }
96
95
  //# sourceMappingURL=incidents.js.map
@@ -3,12 +3,9 @@ import type { ObjectByKind, ObjectKind, SavableKind } from '../core/object-types
3
3
  import { type Objects } from '../store/port.js';
4
4
  import type { ObjectDescriptor, ObjectListOpts, SavableDescriptor } from './descriptor.js';
5
5
  /** Newest first. */
6
- export declare function listObjectsAt<K extends ObjectKind>(hippoRoot: string, d: ObjectDescriptor<K>, tenantId: string, opts: ObjectListOpts<K>): ObjectByKind[K][];
7
6
  export declare function listObjects<K extends ObjectKind>(objects: Objects, d: ObjectDescriptor<K>, tenantId: string, opts: ObjectListOpts<K>): Promise<ObjectByKind[K][]>;
8
- export declare function objectByIdAt<K extends ObjectKind>(hippoRoot: string, d: ObjectDescriptor<K>, tenantId: string, id: number): ObjectByKind[K] | null;
9
7
  export declare function objectById<K extends ObjectKind>(objects: Objects, d: ObjectDescriptor<K>, tenantId: string, id: number): Promise<ObjectByKind[K] | null>;
10
8
  /** Retires one object; its mirror memory stays as saved. */
11
- export declare function closeObjectAt<K extends ObjectKind>(hippoRoot: string, d: ObjectDescriptor<K>, tenantId: string, id: number, actor: string): ObjectByKind[K];
12
9
  export declare function closeObject<K extends ObjectKind>(objects: Objects, d: ObjectDescriptor<K>, tenantId: string, id: number, actor: string): Promise<ObjectByKind[K]>;
13
10
  /** The memory a typed object writes beside its row, so recall finds the object. */
14
11
  export declare function objectMirror(hippoRoot: string, tenantId: string, source: ObjectKind, text: {
@@ -22,6 +19,5 @@ export interface ObjectSaveSite {
22
19
  readonly actor: string;
23
20
  }
24
21
  /** Creates an object, or the version that replaces the one its options name, with its mirror memory in one write. */
25
- export declare function saveObjectAt<K extends SavableKind, W>(d: SavableDescriptor<K, W>, site: ObjectSaveSite, opts: W): ObjectByKind[K];
26
22
  export declare function saveObject<K extends SavableKind, W>(objects: Objects, d: SavableDescriptor<K, W>, site: ObjectSaveSite, opts: W): Promise<ObjectByKind[K]>;
27
23
  //# sourceMappingURL=lifecycle.d.ts.map
@@ -1,12 +1,12 @@
1
- // Save, close, load-by-id and list for every typed object: the checks, the mirror memory and the error text, over the `objects` store group.
2
- // Each flow is written twice over the same steps: `...At` answers at once on hippo.db for the CLI, and the other awaits a served store's group for the routes.
3
- // The tenant, the fields and the list status are checked first, so a bad request fails before a store is asked.
1
+ // Save, close, load-by-id and list for every typed object: the checks, the mirror memory and the error text, over the
2
+ // `objects` store group. Each flow runs once, over the `objects` group of whatever store the caller holds: the CLI's, a
3
+ // served one, or a test's. The tenant, the fields and the list status are checked first, so a bad request fails before
4
+ // a store is asked.
4
5
  import { DEFAULT_LIST_LIMIT } from '../util/limits.js';
5
6
  import { BadRequestError, ConflictError, NotFoundError } from '../core/api-errors.js';
6
7
  import { loadConfig } from '../core/config.js';
7
8
  import { createMemory, Layer } from '../core/memory.js';
8
- import { isObjectRefusal } from '../store/port.js';
9
- import { sqliteObjects } from '../store/sqlite/objects-group.js';
9
+ import { isObjectRefusal, } from '../store/port.js';
10
10
  import { assertTenantId } from '../store/tenant.js';
11
11
  /** An empty status or filter lists every row, as an absent one does. */
12
12
  function listQuery(d, tenantId, opts) {
@@ -14,19 +14,17 @@ function listQuery(d, tenantId, opts) {
14
14
  if (opts.status && !d.states.has(opts.status)) {
15
15
  throw new BadRequestError(`${d.fn.list}: status must be one of ${Array.from(d.states).join('|')}; got ${opts.status}`);
16
16
  }
17
- return { status: opts.status || undefined, filter: opts.filter || undefined, limit: opts.limit ?? DEFAULT_LIST_LIMIT, after: opts.after };
17
+ return {
18
+ status: opts.status || undefined,
19
+ filter: opts.filter || undefined,
20
+ limit: opts.limit ?? DEFAULT_LIST_LIMIT,
21
+ after: opts.after,
22
+ };
18
23
  }
19
24
  /** Newest first. */
20
- export function listObjectsAt(hippoRoot, d, tenantId, opts) {
21
- return sqliteObjects(hippoRoot).listObjects(tenantId, d.kind, listQuery(d, tenantId, opts));
22
- }
23
25
  export async function listObjects(objects, d, tenantId, opts) {
24
26
  return objects.listObjects(tenantId, d.kind, listQuery(d, tenantId, opts));
25
27
  }
26
- export function objectByIdAt(hippoRoot, d, tenantId, id) {
27
- assertTenantId(d.fn.get, tenantId);
28
- return sqliteObjects(hippoRoot).objectById(tenantId, d.kind, id);
29
- }
30
28
  export async function objectById(objects, d, tenantId, id) {
31
29
  assertTenantId(d.fn.get, tenantId);
32
30
  return objects.objectById(tenantId, d.kind, id);
@@ -38,18 +36,15 @@ function closing(d, tenantId, actor) {
38
36
  function closed(d, tenantId, id, written) {
39
37
  if (!isObjectRefusal(written))
40
38
  return written;
41
- if (written.refused === 'missing')
39
+ if (written.refused === 'missing') {
42
40
  throw new NotFoundError(`${d.fn.close}: ${d.label} ${id} not found for tenant ${tenantId}`);
41
+ }
43
42
  if (written.refused !== 'status')
44
43
  throw new NotFoundError(`${d.fn.close}: ${d.label} ${id} not found after UPDATE`);
45
44
  const closable = d.closableFrom.join(' or ');
46
45
  throw new ConflictError(`${d.fn.close}: ${d.label} ${id} is ${d.closeRefusal ?? `not ${closable}`} (status='${written.status}'); only ${closable} ${d.plural} can be closed.`);
47
46
  }
48
47
  /** Retires one object; its mirror memory stays as saved. */
49
- export function closeObjectAt(hippoRoot, d, tenantId, id, actor) {
50
- const close = closing(d, tenantId, actor);
51
- return closed(d, tenantId, id, sqliteObjects(hippoRoot).closeObject(tenantId, d.kind, id, close));
52
- }
53
48
  export async function closeObject(objects, d, tenantId, id, actor) {
54
49
  const close = closing(d, tenantId, actor);
55
50
  return closed(d, tenantId, id, await objects.closeObject(tenantId, d.kind, id, close));
@@ -67,7 +62,14 @@ export function objectMirror(hippoRoot, tenantId, source, text) {
67
62
  }
68
63
  function objectSave(site, kind, draft) {
69
64
  const mirror = objectMirror(site.hippoRoot, site.tenantId, kind, draft);
70
- return { mirror, fields: draft.fields, supersedesId: draft.supersedesId, changeSummary: draft.changeSummary, actor: site.actor, at: draft.at };
65
+ return {
66
+ mirror,
67
+ fields: draft.fields,
68
+ supersedesId: draft.supersedesId,
69
+ changeSummary: draft.changeSummary,
70
+ actor: site.actor,
71
+ at: draft.at,
72
+ };
71
73
  }
72
74
  function saved(d, tenantId, replaced, written) {
73
75
  if (!isObjectRefusal(written))
@@ -84,11 +86,6 @@ function saved(d, tenantId, replaced, written) {
84
86
  }
85
87
  }
86
88
  /** Creates an object, or the version that replaces the one its options name, with its mirror memory in one write. */
87
- export function saveObjectAt(d, site, opts) {
88
- assertTenantId(d.fn.save, site.tenantId);
89
- const draft = d.draft(opts);
90
- return saved(d, site.tenantId, draft.supersedesId, sqliteObjects(site.hippoRoot).saveObject(site.tenantId, d.kind, objectSave(site, d.kind, draft)));
91
- }
92
89
  export async function saveObject(objects, d, site, opts) {
93
90
  assertTenantId(d.fn.save, site.tenantId);
94
91
  const draft = d.draft(opts);
@@ -1,6 +1,6 @@
1
- /** Policy object: a rule in force over a valid-time range [valid_from, valid_to), evolving via supersession; `loadPoliciesAsOf` queries it.
2
- * Transaction-time travel (what we believed at past system time T) is deferred. Superseding keeps the predecessor's valid-time range.
3
- * All dates are normalised to ISO-8601 (`toISOString`) at the store boundary so the lexical half-open comparison is sound. */
1
+ /** Policy object: a rule in force over a valid-time range [valid_from, valid_to), evolving via supersession;
2
+ * `policiesAsOf` queries it. Transaction-time travel is deferred; superseding keeps the predecessor's range.
3
+ * Dates are normalised to ISO-8601 (`toISOString`) at the store boundary, so lexical half-open comparison is sound. */
4
4
  import type { KeysetPosition } from '../util/keyset.js';
5
5
  import type { SavableDescriptor } from './descriptor.js';
6
6
  import type { Policy, PolicyStatus } from '../core/object-types.js';
@@ -38,21 +38,17 @@ export declare function validatePolicyDates(validFromRaw: string | undefined, va
38
38
  export declare const POLICY: SavableDescriptor<'policy', SavePolicyOpts>;
39
39
  /** Create a policy, or a new version superseding an existing one, in the `objects` store group's one transaction.
40
40
  * valid_from defaults to now; valid_to must be > valid_from (validatePolicyDates). */
41
- export declare function savePolicy(hippoRoot: string, tenantId: string, opts: SavePolicyOpts, actor?: string): Policy;
41
+ export declare function savePolicy(objects: Objects, hippoRoot: string, tenantId: string, opts: SavePolicyOpts, actor?: string): Promise<Policy>;
42
42
  /** Close (retire) an active policy with no successor; CAS on status='active', a superseded row is terminal. */
43
- export declare function closePolicy(hippoRoot: string, tenantId: string, id: number, actor?: string): Policy;
44
- export declare function loadPolicyById(hippoRoot: string, tenantId: string, id: number): Policy | null;
45
- export declare function loadPolicies(hippoRoot: string, tenantId: string, opts?: ListPoliciesOpts): Policy[];
46
- export declare function loadActivePolicies(hippoRoot: string, tenantId: string, opts?: {
43
+ export declare function closePolicy(objects: Objects, tenantId: string, id: number, actor?: string): Promise<Policy>;
44
+ export declare function loadPolicyById(objects: Objects, tenantId: string, id: number): Promise<Policy | null>;
45
+ export declare function loadPolicies(objects: Objects, tenantId: string, opts?: ListPoliciesOpts): Promise<Policy[]>;
46
+ export declare function loadActivePolicies(objects: Objects, tenantId: string, opts?: {
47
47
  limit?: number;
48
- }): Policy[];
49
- /** The policies in force at `asOfDate` (valid-time, half-open [valid_from, valid_to)); superseded rows still answer while the successor is not yet effective.
50
- * `closed` rows are excluded; a date-only asOfDate means the END of that UTC day (23:59:59.999Z), so a policy created today shows up in "as of today". */
51
- export declare function loadPoliciesAsOf(hippoRoot: string, tenantId: string, asOfDate: string, opts?: {
52
- name?: string;
53
- limit?: number;
54
- }): Policy[];
55
- /** `loadPoliciesAsOf` over a served store's group. */
48
+ }): Promise<Policy[]>;
49
+ /** The policies in force at `asOfDate` (valid-time, half-open [valid_from, valid_to)); superseded rows still answer
50
+ * while the successor is not yet effective. `closed` rows are excluded; a date-only asOfDate means the END of that
51
+ * UTC day (23:59:59.999Z), so a policy created today shows up in "as of today". */
56
52
  export declare function policiesAsOf(objects: Objects, tenantId: string, asOfDate: string, opts?: {
57
53
  name?: string;
58
54
  limit?: number;
@@ -1,11 +1,10 @@
1
- /** Policy object: a rule in force over a valid-time range [valid_from, valid_to), evolving via supersession; `loadPoliciesAsOf` queries it.
2
- * Transaction-time travel (what we believed at past system time T) is deferred. Superseding keeps the predecessor's valid-time range.
3
- * All dates are normalised to ISO-8601 (`toISOString`) at the store boundary so the lexical half-open comparison is sound. */
1
+ /** Policy object: a rule in force over a valid-time range [valid_from, valid_to), evolving via supersession;
2
+ * `policiesAsOf` queries it. Transaction-time travel is deferred; superseding keeps the predecessor's range.
3
+ * Dates are normalised to ISO-8601 (`toISOString`) at the store boundary, so lexical half-open comparison is sound. */
4
4
  import { DEFAULT_LIST_LIMIT } from '../util/limits.js';
5
5
  import { BadRequestError } from '../core/api-errors.js';
6
6
  import { assertTenantId } from '../store/tenant.js';
7
- import { closeObjectAt, listObjectsAt, objectByIdAt, saveObjectAt } from './lifecycle.js';
8
- import { sqliteObjects } from '../store/sqlite/objects-group.js';
7
+ import { closeObject, listObjects, objectById, saveObject } from './lifecycle.js';
9
8
  export const VALID_POLICY_STATES = new Set([
10
9
  'active',
11
10
  'superseded',
@@ -66,28 +65,25 @@ export const POLICY = {
66
65
  };
67
66
  /** Create a policy, or a new version superseding an existing one, in the `objects` store group's one transaction.
68
67
  * valid_from defaults to now; valid_to must be > valid_from (validatePolicyDates). */
69
- export function savePolicy(hippoRoot, tenantId, opts, actor = 'cli') {
70
- return saveObjectAt(POLICY, { hippoRoot, tenantId, actor }, opts);
68
+ export function savePolicy(objects, hippoRoot, tenantId, opts, actor = 'cli') {
69
+ return saveObject(objects, POLICY, { hippoRoot, tenantId, actor }, opts);
71
70
  }
72
71
  /** Close (retire) an active policy with no successor; CAS on status='active', a superseded row is terminal. */
73
- export function closePolicy(hippoRoot, tenantId, id, actor = 'cli') {
74
- return closeObjectAt(hippoRoot, POLICY, tenantId, id, actor);
72
+ export function closePolicy(objects, tenantId, id, actor = 'cli') {
73
+ return closeObject(objects, POLICY, tenantId, id, actor);
75
74
  }
76
- export function loadPolicyById(hippoRoot, tenantId, id) {
77
- return objectByIdAt(hippoRoot, POLICY, tenantId, id);
75
+ export function loadPolicyById(objects, tenantId, id) {
76
+ return objectById(objects, POLICY, tenantId, id);
78
77
  }
79
- export function loadPolicies(hippoRoot, tenantId, opts = {}) {
80
- return listObjectsAt(hippoRoot, POLICY, tenantId, opts);
78
+ export function loadPolicies(objects, tenantId, opts = {}) {
79
+ return listObjects(objects, POLICY, tenantId, opts);
81
80
  }
82
- export function loadActivePolicies(hippoRoot, tenantId, opts = {}) {
83
- return loadPolicies(hippoRoot, tenantId, { status: 'active', limit: opts.limit });
81
+ export function loadActivePolicies(objects, tenantId, opts = {}) {
82
+ return loadPolicies(objects, tenantId, { status: 'active', limit: opts.limit });
84
83
  }
85
- /** The policies in force at `asOfDate` (valid-time, half-open [valid_from, valid_to)); superseded rows still answer while the successor is not yet effective.
86
- * `closed` rows are excluded; a date-only asOfDate means the END of that UTC day (23:59:59.999Z), so a policy created today shows up in "as of today". */
87
- export function loadPoliciesAsOf(hippoRoot, tenantId, asOfDate, opts = {}) {
88
- return sqliteObjects(hippoRoot).policiesInForce(tenantId, inForceQuery(tenantId, asOfDate, opts));
89
- }
90
- /** `loadPoliciesAsOf` over a served store's group. */
84
+ /** The policies in force at `asOfDate` (valid-time, half-open [valid_from, valid_to)); superseded rows still answer
85
+ * while the successor is not yet effective. `closed` rows are excluded; a date-only asOfDate means the END of that
86
+ * UTC day (23:59:59.999Z), so a policy created today shows up in "as of today". */
91
87
  export async function policiesAsOf(objects, tenantId, asOfDate, opts = {}) {
92
88
  return objects.policiesInForce(tenantId, inForceQuery(tenantId, asOfDate, opts));
93
89
  }
@@ -1,7 +1,11 @@
1
- /** Process object: a named, ordered list of `steps` that evolves by supersession, each version recording `change_summary` and a server-derived `version`.
2
- * The `processes` table is the source of truth; the memory mirror (memory_id NULLABLE, ON DELETE SET NULL) is for recall.
1
+ /**
2
+ * Process object: a named, ordered list of `steps` that evolves by supersession, each version recording
3
+ * `change_summary` and a server-derived `version`.
4
+ * The `processes` table is the source of truth; the memory mirror (memory_id NULLABLE, ON DELETE SET NULL) is for
5
+ * recall.
3
6
  * Structural step-diffing is a deferred read-side feature; the version chain is the changelog. */
4
7
  import type { KeysetPosition } from '../util/keyset.js';
8
+ import type { Objects } from '../store/port.js';
5
9
  import { type JsonValue } from '../util/json.js';
6
10
  import type { SavableDescriptor } from './descriptor.js';
7
11
  import type { Process, ProcessStatus } from '../core/object-types.js';
@@ -30,14 +34,16 @@ export interface ListProcessesOpts {
30
34
  /** Validate and trim the steps body; throws on a non-array, a non-string or empty element, or a cap breach. */
31
35
  export declare function validateProcessSteps(steps: JsonValue): string[];
32
36
  export declare const PROCESS: SavableDescriptor<'process', SaveProcessOpts>;
33
- /** Create a process, or a new version superseding an existing one, in the `objects` store group's one transaction.
34
- * The supersede CAS (WHERE status='active' AND id != <new id>) throws on changes===0 so a duplicate supersede aborts the write. */
35
- export declare function saveProcess(hippoRoot: string, tenantId: string, opts: SaveProcessOpts, actor?: string): Process;
37
+ /** Create a process, or a new version superseding an existing one, in the `objects`
38
+ * store group's one transaction. The supersede CAS (WHERE status='active' AND id
39
+ * != <new id>) throws on changes===0 so a duplicate supersede aborts the write.
40
+ */
41
+ export declare function saveProcess(objects: Objects, hippoRoot: string, tenantId: string, opts: SaveProcessOpts, actor?: string): Promise<Process>;
36
42
  /** Close (retire) an active process with no successor; a superseded row cannot be closed. */
37
- export declare function closeProcess(hippoRoot: string, tenantId: string, id: number, actor?: string): Process;
38
- export declare function loadProcessById(hippoRoot: string, tenantId: string, id: number): Process | null;
39
- export declare function loadProcesses(hippoRoot: string, tenantId: string, opts?: ListProcessesOpts): Process[];
40
- export declare function loadActiveProcesses(hippoRoot: string, tenantId: string, opts?: {
43
+ export declare function closeProcess(objects: Objects, tenantId: string, id: number, actor?: string): Promise<Process>;
44
+ export declare function loadProcessById(objects: Objects, tenantId: string, id: number): Promise<Process | null>;
45
+ export declare function loadProcesses(objects: Objects, tenantId: string, opts?: ListProcessesOpts): Promise<Process[]>;
46
+ export declare function loadActiveProcesses(objects: Objects, tenantId: string, opts?: {
41
47
  limit?: number;
42
- }): Process[];
48
+ }): Promise<Process[]>;
43
49
  //# sourceMappingURL=processes.d.ts.map
@@ -1,9 +1,12 @@
1
- /** Process object: a named, ordered list of `steps` that evolves by supersession, each version recording `change_summary` and a server-derived `version`.
2
- * The `processes` table is the source of truth; the memory mirror (memory_id NULLABLE, ON DELETE SET NULL) is for recall.
1
+ /**
2
+ * Process object: a named, ordered list of `steps` that evolves by supersession, each version recording
3
+ * `change_summary` and a server-derived `version`.
4
+ * The `processes` table is the source of truth; the memory mirror (memory_id NULLABLE, ON DELETE SET NULL) is for
5
+ * recall.
3
6
  * Structural step-diffing is a deferred read-side feature; the version chain is the changelog. */
4
7
  import { BadRequestError } from '../core/api-errors.js';
5
8
  import { isJsonString } from '../util/json.js';
6
- import { closeObjectAt, listObjectsAt, objectByIdAt, saveObjectAt } from './lifecycle.js';
9
+ import { closeObject, listObjects, objectById, saveObject } from './lifecycle.js';
7
10
  export const VALID_PROCESS_STATES = new Set([
8
11
  'active',
9
12
  'superseded',
@@ -71,22 +74,24 @@ export const PROCESS = {
71
74
  };
72
75
  },
73
76
  };
74
- /** Create a process, or a new version superseding an existing one, in the `objects` store group's one transaction.
75
- * The supersede CAS (WHERE status='active' AND id != <new id>) throws on changes===0 so a duplicate supersede aborts the write. */
76
- export function saveProcess(hippoRoot, tenantId, opts, actor = 'cli') {
77
- return saveObjectAt(PROCESS, { hippoRoot, tenantId, actor }, opts);
77
+ /** Create a process, or a new version superseding an existing one, in the `objects`
78
+ * store group's one transaction. The supersede CAS (WHERE status='active' AND id
79
+ * != <new id>) throws on changes===0 so a duplicate supersede aborts the write.
80
+ */
81
+ export function saveProcess(objects, hippoRoot, tenantId, opts, actor = 'cli') {
82
+ return saveObject(objects, PROCESS, { hippoRoot, tenantId, actor }, opts);
78
83
  }
79
84
  /** Close (retire) an active process with no successor; a superseded row cannot be closed. */
80
- export function closeProcess(hippoRoot, tenantId, id, actor = 'cli') {
81
- return closeObjectAt(hippoRoot, PROCESS, tenantId, id, actor);
85
+ export function closeProcess(objects, tenantId, id, actor = 'cli') {
86
+ return closeObject(objects, PROCESS, tenantId, id, actor);
82
87
  }
83
- export function loadProcessById(hippoRoot, tenantId, id) {
84
- return objectByIdAt(hippoRoot, PROCESS, tenantId, id);
88
+ export function loadProcessById(objects, tenantId, id) {
89
+ return objectById(objects, PROCESS, tenantId, id);
85
90
  }
86
- export function loadProcesses(hippoRoot, tenantId, opts = {}) {
87
- return listObjectsAt(hippoRoot, PROCESS, tenantId, opts);
91
+ export function loadProcesses(objects, tenantId, opts = {}) {
92
+ return listObjects(objects, PROCESS, tenantId, opts);
88
93
  }
89
- export function loadActiveProcesses(hippoRoot, tenantId, opts = {}) {
90
- return loadProcesses(hippoRoot, tenantId, { status: 'active', limit: opts.limit });
94
+ export function loadActiveProcesses(objects, tenantId, opts = {}) {
95
+ return loadProcesses(objects, tenantId, { status: 'active', limit: opts.limit });
91
96
  }
92
97
  //# sourceMappingURL=processes.js.map