hippo-memory 1.61.0 → 1.63.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 (377) hide show
  1. package/README.md +37 -53
  2. package/dist/agent-memories/apply.d.ts +3 -1
  3. package/dist/agent-memories/apply.js +23 -1
  4. package/dist/agent-memories/claude-code.d.ts +4 -1
  5. package/dist/agent-memories/claude-code.js +53 -9
  6. package/dist/agent-memories/report.d.ts +1 -0
  7. package/dist/agent-memories/report.js +2 -2
  8. package/dist/agent-memories/sync.d.ts +3 -3
  9. package/dist/agent-memories/sync.js +46 -24
  10. package/dist/agent-memories/types.d.ts +0 -2
  11. package/dist/ambient-store.d.ts +4 -4
  12. package/dist/ambient-store.js +4 -3
  13. package/dist/api/assemble.d.ts +7 -10
  14. package/dist/api/assemble.js +62 -66
  15. package/dist/api/audit.d.ts +2 -2
  16. package/dist/api/audit.js +2 -2
  17. package/dist/api/auth.d.ts +6 -6
  18. package/dist/api/auth.js +5 -7
  19. package/dist/api/context-select.d.ts +50 -0
  20. package/dist/api/context-select.js +342 -0
  21. package/dist/api/context-types.d.ts +12 -17
  22. package/dist/api/context.d.ts +5 -4
  23. package/dist/api/context.js +208 -535
  24. package/dist/api/dormant.js +1 -1
  25. package/dist/api/drill-down.d.ts +4 -4
  26. package/dist/api/drill-down.js +56 -41
  27. package/dist/api/outcome.d.ts +8 -13
  28. package/dist/api/outcome.js +13 -17
  29. package/dist/api/promote.d.ts +5 -8
  30. package/dist/api/promote.js +55 -66
  31. package/dist/api/quarantine.js +3 -2
  32. package/dist/api/recall-types.d.ts +43 -55
  33. package/dist/api/recall.d.ts +3 -3
  34. package/dist/api/recall.js +310 -456
  35. package/dist/api/remember.d.ts +2 -2
  36. package/dist/api/sleep.d.ts +7 -35
  37. package/dist/api/sleep.js +206 -220
  38. package/dist/api/tokens.d.ts +2 -2
  39. package/dist/api/tokens.js +2 -2
  40. package/dist/api/types.d.ts +6 -10
  41. package/dist/api/types.js +2 -4
  42. package/dist/audit-prune.d.ts +4 -6
  43. package/dist/audit-prune.js +3 -5
  44. package/dist/audit.js +11 -33
  45. package/dist/auth.d.ts +8 -9
  46. package/dist/auth.js +5 -7
  47. package/dist/autolearn.d.ts +1 -1
  48. package/dist/autolearn.js +1 -1
  49. package/dist/availability.js +3 -5
  50. package/dist/capture/command.d.ts +5 -4
  51. package/dist/capture/command.js +8 -22
  52. package/dist/capture/compact.d.ts +2 -2
  53. package/dist/capture/compact.js +11 -15
  54. package/dist/capture/extract.js +37 -115
  55. package/dist/capture-error.d.ts +1 -1
  56. package/dist/capture-error.js +1 -1
  57. package/dist/churn-git.d.ts +1 -1
  58. package/dist/churn-git.js +1 -1
  59. package/dist/cli/audit.js +3 -4
  60. package/dist/cli/auth.js +3 -6
  61. package/dist/cli/briefs.js +324 -306
  62. package/dist/cli/context.js +44 -34
  63. package/dist/cli/continuity.js +283 -271
  64. package/dist/cli/curate.d.ts +1 -1
  65. package/dist/cli/curate.js +43 -58
  66. package/dist/cli/dag.js +5 -9
  67. package/dist/cli/decisions.js +334 -345
  68. package/dist/cli/explain.js +68 -61
  69. package/dist/cli/goals.js +1 -1
  70. package/dist/cli/init.js +1 -1
  71. package/dist/cli/maintenance.js +62 -51
  72. package/dist/cli/playbooks.js +391 -379
  73. package/dist/cli/projects.js +11 -6
  74. package/dist/cli/recall.js +30 -44
  75. package/dist/cli/remember.js +118 -87
  76. package/dist/cli/session-hooks.js +106 -115
  77. package/dist/cli/setup.d.ts +1 -1
  78. package/dist/cli/setup.js +267 -250
  79. package/dist/cli/shared.js +3 -3
  80. package/dist/cli/slack.js +1 -1
  81. package/dist/cli/sleep.js +27 -1
  82. package/dist/cli/status.d.ts +4 -4
  83. package/dist/cli/status.js +80 -76
  84. package/dist/cli/transfer.js +88 -107
  85. package/dist/cli/usage.js +9 -6
  86. package/dist/cli.d.ts +1 -1
  87. package/dist/cli.js +4 -9
  88. package/dist/compaction-record.d.ts +2 -2
  89. package/dist/compaction-record.js +89 -68
  90. package/dist/compare.d.ts +11 -16
  91. package/dist/compare.js +11 -16
  92. package/dist/config.d.ts +19 -18
  93. package/dist/config.js +90 -67
  94. package/dist/connectors/github/backfill.d.ts +2 -2
  95. package/dist/connectors/github/backfill.js +8 -15
  96. package/dist/connectors/github/cli-impl.js +3 -8
  97. package/dist/connectors/github/deletion.d.ts +5 -12
  98. package/dist/connectors/github/deletion.js +5 -12
  99. package/dist/connectors/github/dlq.d.ts +6 -9
  100. package/dist/connectors/github/dlq.js +2 -3
  101. package/dist/connectors/github/ingest.d.ts +5 -7
  102. package/dist/connectors/github/ingest.js +8 -12
  103. package/dist/connectors/github/octokit-client.d.ts +3 -5
  104. package/dist/connectors/github/octokit-client.js +5 -6
  105. package/dist/connectors/github/signature.d.ts +9 -39
  106. package/dist/connectors/github/signature.js +9 -39
  107. package/dist/connectors/github/tenant-routing.d.ts +1 -1
  108. package/dist/connectors/github/tenant-routing.js +1 -1
  109. package/dist/connectors/github/transform.js +2 -2
  110. package/dist/connectors/github/types.d.ts +2 -10
  111. package/dist/connectors/github/types.js +1 -3
  112. package/dist/connectors/slack/deletion.d.ts +3 -8
  113. package/dist/connectors/slack/deletion.js +3 -8
  114. package/dist/connectors/slack/dlq.d.ts +1 -1
  115. package/dist/connectors/slack/ingest.d.ts +1 -1
  116. package/dist/connectors/slack/ingest.js +7 -16
  117. package/dist/connectors/slack/signature.d.ts +1 -1
  118. package/dist/connectors/slack/tenant-routing.d.ts +3 -5
  119. package/dist/connectors/slack/tenant-routing.js +3 -5
  120. package/dist/connectors/slack/transform.d.ts +5 -6
  121. package/dist/connectors/slack/transform.js +5 -6
  122. package/dist/connectors/slack/types.d.ts +2 -6
  123. package/dist/connectors/slack/types.js +1 -3
  124. package/dist/connectors/slack/web-client.js +10 -3
  125. package/dist/connectors/slack/workspaces.d.ts +3 -5
  126. package/dist/connectors/slack/workspaces.js +3 -5
  127. package/dist/consolidate/conflicts.js +3 -14
  128. package/dist/consolidate/decay.js +9 -29
  129. package/dist/consolidate/llm-passes.js +4 -5
  130. package/dist/consolidate/merge.js +8 -23
  131. package/dist/consolidate/run.d.ts +1 -8
  132. package/dist/consolidate/run.js +3 -25
  133. package/dist/consolidate/sleep.js +5 -17
  134. package/dist/consolidate/traces.js +9 -21
  135. package/dist/customer-notes.d.ts +5 -7
  136. package/dist/customer-notes.js +82 -76
  137. package/dist/dag.d.ts +10 -21
  138. package/dist/dag.js +189 -203
  139. package/dist/db/continuity.js +2 -2
  140. package/dist/db/migrations/v14.js +1 -1
  141. package/dist/db/migrations/v15.js +1 -2
  142. package/dist/db/migrations/v16.js +3 -4
  143. package/dist/db/migrations/v17.js +2 -3
  144. package/dist/db/migrations/v19.js +1 -1
  145. package/dist/db/migrations/v20.js +1 -1
  146. package/dist/db/migrations/v21.js +2 -6
  147. package/dist/db/migrations/v22.js +2 -4
  148. package/dist/db/migrations/v23.js +1 -1
  149. package/dist/db/migrations/v24.js +4 -6
  150. package/dist/db/migrations/v25.js +2 -3
  151. package/dist/db/migrations/v26.js +3 -3
  152. package/dist/db/migrations/v27.js +2 -10
  153. package/dist/db/migrations/v28.js +5 -8
  154. package/dist/db/migrations/v29.js +3 -4
  155. package/dist/db/migrations/v30.js +2 -2
  156. package/dist/db/migrations/v31.js +1 -1
  157. package/dist/db/migrations/v32.js +1 -1
  158. package/dist/db/migrations/v33.js +3 -3
  159. package/dist/db/migrations/v34.js +1 -1
  160. package/dist/db/migrations/v35.js +3 -4
  161. package/dist/db/migrations/v36.js +3 -4
  162. package/dist/db/migrations/v37.js +5 -5
  163. package/dist/db/migrations/v38.js +7 -8
  164. package/dist/db/migrations/v39.js +1 -1
  165. package/dist/db/migrations/v40.js +4 -16
  166. package/dist/db/migrations/v41.js +3 -4
  167. package/dist/db/migrations/v42.js +3 -4
  168. package/dist/db/migrations/v45.js +1 -1
  169. package/dist/db/migrations/v46.js +1 -1
  170. package/dist/db/migrations/v47.js +1 -1
  171. package/dist/db/migrations/v48.js +1 -1
  172. package/dist/decisions.d.ts +2 -2
  173. package/dist/decisions.js +97 -80
  174. package/dist/dedupe.js +86 -61
  175. package/dist/delivery-recorder.js +154 -135
  176. package/dist/doctor.js +129 -110
  177. package/dist/dormant.js +1 -4
  178. package/dist/embedding-provider.d.ts +4 -8
  179. package/dist/embedding-provider.js +4 -8
  180. package/dist/embeddings.js +55 -47
  181. package/dist/env.d.ts +1 -1
  182. package/dist/env.js +12 -12
  183. package/dist/escape.d.ts +5 -0
  184. package/dist/escape.js +10 -0
  185. package/dist/eval-stats.d.ts +1 -2
  186. package/dist/eval-stats.js +1 -2
  187. package/dist/eval-suite.js +27 -21
  188. package/dist/extract.js +4 -9
  189. package/dist/failure-log.d.ts +3 -3
  190. package/dist/failure-log.js +1 -1
  191. package/dist/forward-claim-detector.d.ts +2 -4
  192. package/dist/forward-claim-detector.js +6 -11
  193. package/dist/goals.d.ts +3 -3
  194. package/dist/goals.js +103 -91
  195. package/dist/graph/read.d.ts +2 -2
  196. package/dist/graph/read.js +5 -6
  197. package/dist/graph/types.d.ts +8 -8
  198. package/dist/graph/write.d.ts +7 -14
  199. package/dist/graph/write.js +16 -23
  200. package/dist/graph-extract.d.ts +7 -8
  201. package/dist/graph-extract.js +62 -72
  202. package/dist/graph-recall.d.ts +2 -2
  203. package/dist/graph-recall.js +55 -49
  204. package/dist/graph-stream.d.ts +5 -6
  205. package/dist/graph-stream.js +66 -57
  206. package/dist/graph-view.d.ts +2 -2
  207. package/dist/graph-view.js +7 -7
  208. package/dist/half-life-migration.d.ts +1 -2
  209. package/dist/half-life-migration.js +2 -3
  210. package/dist/hooks/codex-session.js +1 -1
  211. package/dist/hooks/codex-wrapper.d.ts +1 -1
  212. package/dist/hooks/codex-wrapper.js +3 -2
  213. package/dist/hooks/json-hooks.d.ts +2 -2
  214. package/dist/hooks/json-hooks.js +5 -4
  215. package/dist/hooks/opencode.d.ts +1 -1
  216. package/dist/hooks/opencode.js +5 -4
  217. package/dist/hooks/shared.d.ts +3 -7
  218. package/dist/hooks/shared.js +1 -8
  219. package/dist/http-util.d.ts +2 -3
  220. package/dist/http-util.js +3 -0
  221. package/dist/importers/core.d.ts +2 -9
  222. package/dist/importers/core.js +15 -30
  223. package/dist/importers/sources.js +2 -1
  224. package/dist/importers/vault.js +2 -20
  225. package/dist/incidents.d.ts +1 -1
  226. package/dist/incidents.js +46 -39
  227. package/dist/instruction-detect.d.ts +1 -1
  228. package/dist/instruction-detect.js +1 -1
  229. package/dist/invalidation.d.ts +3 -0
  230. package/dist/invalidation.js +160 -114
  231. package/dist/json.d.ts +5 -0
  232. package/dist/json.js +4 -0
  233. package/dist/judgment.js +1 -2
  234. package/dist/local-embedding.js +1 -1
  235. package/dist/mcp/admin-tools.js +7 -17
  236. package/dist/mcp/format.js +1 -1
  237. package/dist/mcp/framing.js +3 -6
  238. package/dist/mcp/protocol.d.ts +2 -5
  239. package/dist/mcp/protocol.js +1 -3
  240. package/dist/mcp/recall-tools.js +12 -15
  241. package/dist/mcp/request.js +4 -3
  242. package/dist/mcp/session-state.js +2 -3
  243. package/dist/mcp/stdio.js +2 -1
  244. package/dist/mcp/tools.js +9 -6
  245. package/dist/memory-value-weights.d.ts +5 -8
  246. package/dist/memory-value-weights.js +5 -8
  247. package/dist/memory-value.d.ts +13 -13
  248. package/dist/memory-value.js +26 -37
  249. package/dist/memory.d.ts +20 -22
  250. package/dist/memory.js +24 -48
  251. package/dist/multihop.d.ts +1 -1
  252. package/dist/multihop.js +3 -2
  253. package/dist/owner-validation.d.ts +4 -5
  254. package/dist/owner-validation.js +4 -5
  255. package/dist/physics.d.ts +4 -4
  256. package/dist/physics.js +7 -9
  257. package/dist/policies.d.ts +9 -10
  258. package/dist/policies.js +96 -81
  259. package/dist/postinstall.js +3 -6
  260. package/dist/predictions/planning-fallacy.d.ts +9 -14
  261. package/dist/predictions/planning-fallacy.js +10 -16
  262. package/dist/predictions/store.d.ts +15 -23
  263. package/dist/predictions/store.js +36 -33
  264. package/dist/processes.d.ts +2 -7
  265. package/dist/processes.js +88 -72
  266. package/dist/project-briefs.d.ts +2 -3
  267. package/dist/project-briefs.js +141 -118
  268. package/dist/project-identity.d.ts +22 -9
  269. package/dist/project-identity.js +47 -12
  270. package/dist/project-merge.d.ts +28 -5
  271. package/dist/project-merge.js +213 -46
  272. package/dist/project-remote.d.ts +12 -0
  273. package/dist/project-remote.js +138 -0
  274. package/dist/prompt-recall.js +1 -2
  275. package/dist/rate-limit.d.ts +1 -1
  276. package/dist/rate-limit.js +1 -1
  277. package/dist/raw-archive.d.ts +9 -0
  278. package/dist/raw-archive.js +70 -53
  279. package/dist/recall-history.d.ts +19 -20
  280. package/dist/recall-history.js +24 -42
  281. package/dist/recall-pipeline.js +4 -28
  282. package/dist/recall-scope.d.ts +7 -8
  283. package/dist/recall-scope.js +7 -8
  284. package/dist/recall-trace.d.ts +5 -9
  285. package/dist/recall-trace.js +6 -10
  286. package/dist/refine-llm.d.ts +1 -1
  287. package/dist/refine-llm.js +2 -2
  288. package/dist/reject-flow.d.ts +3 -4
  289. package/dist/reject-flow.js +122 -117
  290. package/dist/rejection.d.ts +5 -6
  291. package/dist/rejection.js +7 -15
  292. package/dist/rerankers/clef.d.ts +1 -1
  293. package/dist/rerankers/jev.d.ts +1 -2
  294. package/dist/rerankers/jev.js +4 -5
  295. package/dist/rerankers/llm.d.ts +1 -2
  296. package/dist/rerankers/llm.js +1 -2
  297. package/dist/rerankers/types.d.ts +1 -2
  298. package/dist/rrf.d.ts +2 -2
  299. package/dist/rrf.js +2 -2
  300. package/dist/search/bm25-search.d.ts +1 -1
  301. package/dist/search/bm25-search.js +2 -1
  302. package/dist/search/boosts.js +2 -1
  303. package/dist/search/hybrid.d.ts +1 -1
  304. package/dist/search/hybrid.js +2 -1
  305. package/dist/search/physics-search.d.ts +1 -1
  306. package/dist/search/physics-search.js +2 -1
  307. package/dist/search/types.d.ts +2 -0
  308. package/dist/search/types.js +3 -1
  309. package/dist/secret-detect.d.ts +4 -5
  310. package/dist/secret-detect.js +6 -10
  311. package/dist/server/auth.js +5 -5
  312. package/dist/server/client-ip.js +1 -1
  313. package/dist/server/cursor.js +2 -1
  314. package/dist/server/mcp-http.js +4 -4
  315. package/dist/server/request.d.ts +3 -6
  316. package/dist/server/request.js +6 -7
  317. package/dist/server/routes/admin.js +5 -4
  318. package/dist/server/routes/customer-notes.js +6 -5
  319. package/dist/server/routes/decisions.js +4 -3
  320. package/dist/server/routes/incidents.js +7 -5
  321. package/dist/server/routes/memories.js +7 -7
  322. package/dist/server/routes/policies.js +3 -2
  323. package/dist/server/routes/predictions.js +12 -15
  324. package/dist/server/routes/processes.js +3 -2
  325. package/dist/server/routes/project-briefs.js +8 -7
  326. package/dist/server/routes/recall.js +95 -93
  327. package/dist/server/routes/skills.js +6 -5
  328. package/dist/server/types.d.ts +1 -1
  329. package/dist/server/validation.d.ts +1 -2
  330. package/dist/server/validation.js +7 -14
  331. package/dist/server-detect.js +72 -58
  332. package/dist/server.d.ts +2 -2
  333. package/dist/server.js +131 -117
  334. package/dist/shared.d.ts +26 -17
  335. package/dist/shared.js +102 -104
  336. package/dist/skills.d.ts +3 -3
  337. package/dist/skills.js +88 -72
  338. package/dist/store/audit-event.d.ts +2 -2
  339. package/dist/store/audit-event.js +1 -1
  340. package/dist/store/candidates.d.ts +2 -2
  341. package/dist/store/candidates.js +4 -3
  342. package/dist/store/conflicts.js +30 -22
  343. package/dist/store/delete-and-batch.d.ts +11 -14
  344. package/dist/store/delete-and-batch.js +40 -91
  345. package/dist/store/entry-reads.d.ts +17 -25
  346. package/dist/store/entry-reads.js +59 -40
  347. package/dist/store/entry-row.d.ts +6 -24
  348. package/dist/store/entry-row.js +6 -24
  349. package/dist/store/entry-writes.d.ts +6 -7
  350. package/dist/store/entry-writes.js +13 -11
  351. package/dist/store/handoffs.d.ts +1 -1
  352. package/dist/store/handoffs.js +7 -10
  353. package/dist/store/index-and-stats.d.ts +2 -6
  354. package/dist/store/index-and-stats.js +4 -10
  355. package/dist/store/mirrors.d.ts +6 -19
  356. package/dist/store/mirrors.js +14 -39
  357. package/dist/store/open.js +9 -31
  358. package/dist/store/rows.d.ts +5 -11
  359. package/dist/store/rows.js +6 -11
  360. package/dist/store/search-rows.d.ts +17 -34
  361. package/dist/store/search-rows.js +34 -56
  362. package/dist/store/sessions.d.ts +4 -5
  363. package/dist/store/sessions.js +5 -6
  364. package/dist/store/summaries.d.ts +13 -17
  365. package/dist/store/summaries.js +26 -70
  366. package/dist/support-bundle.js +4 -8
  367. package/dist/tenant.d.ts +1 -5
  368. package/dist/token-ledger.d.ts +1 -1
  369. package/dist/token-ledger.js +3 -5
  370. package/dist/trace.js +1 -3
  371. package/dist/version.d.ts +1 -1
  372. package/dist/version.js +1 -1
  373. package/dist/working-memory.d.ts +1 -1
  374. package/extensions/openclaw-plugin/openclaw.plugin.json +1 -1
  375. package/extensions/openclaw-plugin/package.json +1 -1
  376. package/openclaw.plugin.json +1 -1
  377. package/package.json +1 -1
@@ -9,10 +9,9 @@ export interface RecallOpts {
9
9
  query: string;
10
10
  limit?: number;
11
11
  /**
12
- * F3 (v1.7.0): scorer-window opt-in. When set, `loadSearchEntries`
12
+ * Scorer-window opt-in. When set, `loadSearchEntries`
13
13
  * loads up to `scorerWindow` candidates. When undefined (default),
14
- * the existing behaviour is preserved: store-internal 200-row default,
15
- * which every release before v1.7.0 silently relied on.
14
+ * the store-internal 200-row default applies.
16
15
  *
17
16
  * `scorerWindow` lets callers decouple "how many candidates do I want
18
17
  * the scorer to evaluate" from `limit` ("how many do I want returned").
@@ -26,18 +25,16 @@ export interface RecallOpts {
26
25
  *
27
26
  * Validated as a positive finite integer when set. `scorerWindow: 0`
28
27
  * or non-finite values throw `RecallContractError` with code
29
- * `invalid_scorer_window` to prevent the v1.6.x footgun where 0 fell
30
- * through to an uncapped fallback (codex v1.7.0 diff-pass P1).
28
+ * `invalid_scorer_window`, because 0 would otherwise fall through to an
29
+ * uncapped fallback.
31
30
  *
32
- * **Input is library-only at v1.7.0.** HTTP `/v1/memories`, MCP
31
+ * **Input is library-only.** HTTP `/v1/memories`, MCP
33
32
  * `hippo_recall`, and `client.ts` thin-client do NOT serialize this
34
33
  * INPUT field; remote callers cannot send `scorerWindow` and will see
35
34
  * the store default applied. The OUTPUT `RecallResult.windowSize` is
36
35
  * always serialized over the wire (HTTP `sendJson` ships the whole
37
36
  * RecallResult, so remote callers receive `windowSize: 200` in the
38
- * response). Transport exposure for the input planned for v1.7.1
39
- * alongside the deferred-queue items that need a wider candidate pool
40
- * (e.g. mean-of-children summary re-rank).
37
+ * response).
41
38
  */
42
39
  scorerWindow?: number;
43
40
  /** Candidate order. `recall` always keeps the BM25 order; `retrieve` honours this. */
@@ -53,21 +50,21 @@ export interface RecallOpts {
53
50
  */
54
51
  scope?: string;
55
52
  /**
56
- * v1.5.0 DAG-aware recall. When true (default), entries that overflow the
53
+ * DAG-aware recall. When true (default), entries that overflow the
57
54
  * `limit` and share a level-2 parent summary cause that summary to be
58
55
  * appended in their place, capped at ceil(limit * 0.3) extra rows. Set to
59
- * false to disable and get the pre-v1.5 strict-limit behaviour.
56
+ * false for a strict limit.
60
57
  */
61
58
  summarizeOverflow?: boolean;
62
59
  /**
63
- * v1.5.2 fresh-tail. When > 0, prepend the last N kind='raw' rows
60
+ * Fresh tail. When > 0, prepend the last N kind='raw' rows
64
61
  * (tenant + scope filtered, dedup against the BM25 hits) so an agent's
65
62
  * "what did I just see" recall path always covers the recent window
66
63
  * even when the query terms don't match. Capped at 200. Default 0 = off.
67
64
  */
68
65
  freshTailCount?: number;
69
66
  /**
70
- * v1.6.2 fresh-tail session scope. When set, restricts the fresh-tail
67
+ * Fresh-tail session scope. When set, restricts the fresh-tail
71
68
  * window to a specific session. Without it, fresh-tail is tenant-wide,
72
69
  * which surfaces newest rows across ALL sessions — useful for "anything
73
70
  * new in this tenant", but wrong for "what did I just see in this one
@@ -79,7 +76,7 @@ export interface RecallOpts {
79
76
  * session handoff, recent session events) on the result. Default false to keep
80
77
  * the hot path cheap; agent boot paths should set this to true.
81
78
  *
82
- * All three lookups are tenant-scoped to ctx.tenantId via the v0.40+ store
79
+ * All three lookups are tenant-scoped to ctx.tenantId via the store
83
80
  * helpers. No risk of cross-tenant leak.
84
81
  *
85
82
  * Note: when no active snapshot exists, sessionHandoff is null and
@@ -90,24 +87,23 @@ export interface RecallOpts {
90
87
  */
91
88
  includeContinuity?: boolean;
92
89
  /**
93
- * v1.7.4 -- when set AND `(ctx.tenantId, sessionId)` has active goals AND
90
+ * When set AND `(ctx.tenantId, sessionId)` has active goals AND
94
91
  * `goalTag` is unset, `api.recall` applies the dlPFC goal-stack boost lifted
95
- * from CLI cmdRecall. Pre-v1.7.4 the boost was CLI-only (env-driven via
96
- * HIPPO_SESSION_ID). Undefined preserves v1.7.3 behaviour (no boost).
92
+ * from CLI cmdRecall. Undefined means no boost.
97
93
  *
98
94
  * Why on RecallOpts and not Context: Context is shared by remember/recall/
99
95
  * assemble/outcome. Goal-stack boost is recall-scoped only.
100
96
  */
101
97
  sessionId?: string;
102
98
  /**
103
- * v1.7.4 -- explicit goal-tag override. When set, the goal-stack boost is
104
- * SUPPRESSED (mirrors the CLI's `goalTag === ''` gate from v0.38). Use to
99
+ * Explicit goal-tag override. When set, the goal-stack boost is
100
+ * SUPPRESSED (mirrors the CLI's `goalTag === ''` gate). Use to
105
101
  * pin recall ranking against one specific goal/tag without the multi-goal
106
102
  * stack interfering.
107
103
  */
108
104
  goalTag?: string;
109
105
  /**
110
- * v0.33 / J1 anchoring detector. Caller-supplied snapshot of the per-
106
+ * Anchoring detector. Caller-supplied snapshot of the per-
111
107
  * (tenant, session) recall ring. When present, api.recall computes
112
108
  * `RecallResult.anchoringHint` against this snapshot + the just-computed
113
109
  * top-1. When undefined (default), no anchoring detection runs on the
@@ -122,27 +118,25 @@ export interface RecallOpts {
122
118
  */
123
119
  recallHistory?: RecallHistorySnapshot;
124
120
  /**
125
- * v1.13.x / J2 — when true, api.recall does NOT compute or emit the
121
+ * When true, api.recall does NOT compute or emit the
126
122
  * availabilityHint. Callers that run their OWN per-pipeline availability
127
123
  * detection over a different result set (the MCP handler computes it over
128
124
  * physics/hybrid results, not api.recall's BM25 band) pass this to avoid a
129
125
  * double audit emission and a hint describing a result set the caller never
130
- * surfaces. Mirrors how J1 only computes anchoring when opts.recallHistory
126
+ * surfaces. Mirrors how anchoring only runs when opts.recallHistory
131
127
  * is supplied. HTTP / direct SDK callers leave this unset and receive the hint.
132
128
  */
133
129
  suppressAvailabilityHint?: boolean;
134
130
  /**
135
- * A7 recall-trace. When true, api.recall captures the lifecycle re-ranking
131
+ * Recall trace. When true, api.recall captures the lifecycle re-ranking
136
132
  * trace (currently the goal-boost step on the primary band) and attaches it
137
133
  * to each `RecallResultItem` as `rerankTrace`, plus `rerankPipeline:'api'`.
138
- * When undefined/false (default), both fields are absent on EVERY band so
139
- * the response shape is byte-identical to pre-A7. The api pipeline applies
140
- * only goal-boost; the richer CLI stages (interference/value/utility/
141
- * reranker/retrieval-count-downweight) are A7.2.
134
+ * When undefined/false (default), both fields are absent on EVERY band.
135
+ * The api pipeline applies only goal-boost; the richer CLI stages
136
+ * (interference/value/utility/reranker/retrieval-count-downweight) are not traced here.
142
137
  */
143
138
  explain?: boolean;
144
139
  /**
145
- * LC1 (docs/plans/2026-08-02-lc1-recall-trace-persistence.md) / F2 fix.
146
140
  * When true, api.recall does NOT write a recall_traces row for this call.
147
141
  * Mirrors `suppressAvailabilityHint`'s pattern: callers that run their OWN
148
142
  * tracing over a DIFFERENT result set must suppress api.recall's copy so
@@ -176,26 +170,24 @@ export interface RecallResultItem {
176
170
  layer: string;
177
171
  strength: number;
178
172
  /**
179
- * v1.5.0 DAG-aware recall (docs/plans/2026-05-05-dag-recall.md Task 2).
180
173
  * True when this row is a level-2 topic summary substituted in for
181
174
  * overflowed children that didn't fit the limit.
182
175
  */
183
176
  isSummary?: boolean;
184
177
  /**
185
178
  * IDs of the overflow leaves this summary covers. Caller can drill
186
- * into these via `drillDown` (Task 3) to recover the original detail.
179
+ * into these via `drillDown` to recover the original detail.
187
180
  */
188
181
  substitutedFor?: string[];
189
182
  /** Cached descendant count from schema v25; non-zero for level-2+ rows. */
190
183
  descendantCount?: number;
191
184
  /**
192
- * v1.5.2 fresh-tail (docs/plans/2026-05-05-dag-recall.md Task 4). True
193
- * for rows surfaced via the most-recent-N kind='raw' window, NOT by the
185
+ * True for rows surfaced via the most-recent-N kind='raw' window, NOT by the
194
186
  * BM25 query match. Caller can render them in a separate "recent" band.
195
187
  */
196
188
  isFreshTail?: boolean;
197
189
  /**
198
- * A7 recall-trace. Ordered lifecycle re-ranking steps that mutated this
190
+ * Ordered lifecycle re-ranking steps that mutated this
199
191
  * row's `score` after candidate generation. On the api pipeline this carries
200
192
  * the goal-boost step (the only re-ranking api.recall applies). Populated
201
193
  * ONLY when `RecallOpts.explain` is set; absent on the default path
@@ -204,11 +196,11 @@ export interface RecallResultItem {
204
196
  */
205
197
  rerankTrace?: RerankStep[];
206
198
  /**
207
- * A7 recall-trace. Names which pipeline produced `rerankTrace`. `'api'` on
199
+ * Names which pipeline produced `rerankTrace`. `'api'` on
208
200
  * every band returned by `api.recall` when `explain` is set; the CLI carries
209
201
  * its trace on `SearchResult` instead and does not set this. Absent on the
210
202
  * default path. Distinguishes the api pipeline (goal-boost only) from the
211
- * richer CLI pipeline (A7.2 will unify them).
203
+ * richer CLI pipeline.
212
204
  */
213
205
  rerankPipeline?: 'cli' | 'api';
214
206
  }
@@ -227,20 +219,20 @@ export interface RecallResult {
227
219
  */
228
220
  continuityTokens?: number;
229
221
  /**
230
- * F3 (v1.7.0): scorer window actually used for this recall. Equals
222
+ * Scorer window actually used for this recall. Equals
231
223
  * `opts.scorerWindow` when set, otherwise the store-internal default
232
224
  * (200) used by `loadSearchEntries(undefined, ...)`. Reported so
233
225
  * callers can introspect "did the scorer see enough candidates?"
234
226
  * without re-deriving the value.
235
227
  *
236
228
  * Optional in the type to keep `RecallResult` literal-construction
237
- * back-compatible with pre-v1.7 test fakes / mocks (senior review P1-2).
229
+ * back-compatible with test fakes / mocks that predate the field.
238
230
  * Always present on values returned by `api.recall` itself; consumers
239
231
  * reading from `api.recall` can treat it as defined.
240
232
  */
241
233
  windowSize?: number;
242
234
  /**
243
- * v1.12.13 / C5 — WYSIATI cutoff transparency. When present, gives the
235
+ * WYSIATI cutoff transparency. When present, gives the
244
236
  * calling agent a per-pipeline breakdown of what was excluded from
245
237
  * `results[]` and why. Always populated by `api.recall`, `cmdRecall`, and
246
238
  * the MCP `hippo_recall` handler. Optional in the type for back-compat
@@ -255,7 +247,7 @@ export interface RecallResult {
255
247
  */
256
248
  suppressionSummary?: RecallSuppressionSummary;
257
249
  /**
258
- * v0.32 / J3.2 — auto-injected planning-fallacy hint. When the recall
250
+ * Auto-injected planning-fallacy hint. When the recall
259
251
  * query carries a forward-prediction phrase ("will take ~3 days", "ship
260
252
  * by Friday", "ETA in 2 weeks") AND the closest matching prediction
261
253
  * class has closed historical data, this carries the base-rate stats so
@@ -275,15 +267,13 @@ export interface RecallResult {
275
267
  */
276
268
  planningFallacyHint?: PlanningFallacyHint;
277
269
  /**
278
- * v1.13.4 / J3.2 follow-up — "watching" variant emitted when the
270
+ * "Watching" variant emitted when the
279
271
  * forward-claim regex matched but no baserate could be produced
280
272
  * (either because no prediction class scored ≥ 1 on token overlap,
281
273
  * or because ≥2 classes tied at the best score). Mutually exclusive
282
274
  * with `planningFallacyHint`: at most one of the two is set per
283
- * recall. Dogfood diary (docs/dogfood/2026-05-27-track-j-warnings.md)
284
- * Trial 2a confirmed the pre-v1.13.4 silent-no-class-match path was
285
- * the dominant J3.2 failure mode, because natural-language queries
286
- * rarely share non-stopword tokens with class tags. The watching
275
+ * recall. Natural-language queries rarely share non-stopword tokens
276
+ * with class tags, so without it the hint would mostly stay silent. The watching
287
277
  * variant gives the agent enough signal to either re-tag the
288
278
  * prediction or pass the suggestion through to the user.
289
279
  *
@@ -293,9 +283,9 @@ export interface RecallResult {
293
283
  */
294
284
  planningFallacyWatching?: PlanningFallacyWatching;
295
285
  /**
296
- * v0.33 / J1 (v1.13.2) — recall-recurrence anchoring hint. Populated
286
+ * Recall-recurrence anchoring hint. Populated
297
287
  * when api.recall's `opts.recallHistory` snapshot + the just-computed
298
- * top-1 satisfy R1 (query_repeat) or R2 (memory_dominance).
288
+ * top-1 satisfy the query_repeat or memory_dominance rule.
299
289
  *
300
290
  * Per-pipeline detection: each pipeline (api.recall, cmdRecall, MCP)
301
291
  * computes its OWN hint against its OWN top-1. This field reflects
@@ -311,7 +301,7 @@ export interface RecallResult {
311
301
  */
312
302
  anchoringHint?: AnchoringHint;
313
303
  /**
314
- * v1.13.x / J2 — availability/recency-bias hint. Per-pipeline (computed
304
+ * Availability/recency-bias hint. Per-pipeline (computed
315
305
  * against this pipeline's own returned top-K + the matched candidate pool
316
306
  * it was drawn from), soft-warning ONLY: never filters, reorders, or
317
307
  * suppresses a result. Fires when the returned slice is recency-dominated
@@ -321,7 +311,7 @@ export interface RecallResult {
321
311
  availabilityHint?: AvailabilityHint;
322
312
  }
323
313
  /**
324
- * v1.12.13 / C5 — WYSIATI cutoff transparency (Track C Pineal Gland, C5).
314
+ * WYSIATI cutoff transparency.
325
315
  *
326
316
  * Surfaces what the recall pipeline excluded from `results[]` so the calling
327
317
  * agent does not treat the cutoff as the full picture (Kahneman's "What You
@@ -371,19 +361,17 @@ export interface RecallSuppressionSummary {
371
361
  */
372
362
  freshTailAdded: number;
373
363
  /** Counter of memories suppressed by detected interference patterns.
374
- * v0.33 / J1 (v1.13.2): incremented by 1 PER PIPELINE when that
375
- * pipeline's own R2 memory_dominance verdict fires (via the J1
376
- * anchoring detector — see `detectAnchoring()` in src/recall-history.ts).
364
+ * Incremented by 1 PER PIPELINE when that
365
+ * pipeline's own memory_dominance verdict fires (via the
366
+ * anchoring detector, see `detectAnchoring()` in src/recall-history.ts).
377
367
  * Each pipeline (api.recall, cmdRecall, MCP physics/hybrid) bumps its
378
368
  * OWN suppressionSummary independently because each runs its own
379
369
  * detector against its own top-1 + its own per-(tenant, session) ring
380
370
  * buffer. The number reflects this-pipeline interference only; not a
381
371
  * cross-pipeline aggregate.
382
372
  *
383
- * Future B4-depth work may add additional sources (e.g. vlPFC inhibition
384
- * scores). No `interference_suppression` table is built — the v1.12.13
385
- * doc that referenced one was speculative; J1 uses caller-side in-memory
386
- * rings instead.
373
+ * No `interference_suppression` table exists; the detector uses
374
+ * caller-side in-memory rings instead.
387
375
  */
388
376
  suppressedByInterference: number;
389
377
  }
@@ -5,7 +5,7 @@ import { type Context } from './types.js';
5
5
  * `api.recall`, `cmdRecall`, and the MCP `hippo_recall` handler so all three
6
6
  * pipelines produce the same shape without duplicating field-construction
7
7
  * logic. Pass-through identity today; kept as a helper so future field
8
- * additions (B4 interference counter wiring, etc.) land at one site.
8
+ * additions land at one site.
9
9
  */
10
10
  export declare function buildSuppressionSummary(counts: {
11
11
  totalCandidates: number;
@@ -20,7 +20,7 @@ export declare function buildSuppressionSummary(counts: {
20
20
  * `ctx.tenantId` and keeps that order whatever `mode` says; `retrieve` is the
21
21
  * mode-aware, strengthening variant the HTTP route uses.
22
22
  *
23
- * **api.recall does NOT mutate `index.last_retrieval_ids`** (v1.11.5 contract
23
+ * **api.recall does NOT mutate `index.last_retrieval_ids`** (contract
24
24
  * lock). The CLI `cmdRecall` (cli.ts) writes `last_retrieval_ids` because the
25
25
  * CLI is interactive (user is about to run `hippo outcome --good`). SDK callers
26
26
  * are programmatic: they either pass explicit ids to `api.outcome` or call
@@ -31,6 +31,6 @@ export declare function buildSuppressionSummary(counts: {
31
31
  * `tests/api-recall-no-side-effects.test.ts`.
32
32
  */
33
33
  export declare function recall(ctx: Context, opts: RecallOpts): RecallResult;
34
- /** Mode-aware recall that strengthens each returned row; never writes last_retrieval_ids (v1.11.5 lock). */
34
+ /** Mode-aware recall that strengthens each returned row; never writes last_retrieval_ids (contract lock). */
35
35
  export declare function retrieve(ctx: Context, opts: RecallOpts): Promise<RecallResult>;
36
36
  //# sourceMappingURL=recall.d.ts.map