audrey 1.1.2 → 1.2.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 (285) hide show
  1. package/CHANGELOG.md +101 -0
  2. package/README.md +39 -12
  3. package/dist/mcp-server/codex-hooks-probe.d.ts +22 -0
  4. package/dist/mcp-server/codex-hooks-probe.d.ts.map +1 -0
  5. package/dist/mcp-server/codex-hooks-probe.js +160 -0
  6. package/dist/mcp-server/codex-hooks-probe.js.map +1 -0
  7. package/dist/mcp-server/config.d.ts +26 -2
  8. package/dist/mcp-server/config.d.ts.map +1 -1
  9. package/dist/mcp-server/config.js +52 -20
  10. package/dist/mcp-server/config.js.map +1 -1
  11. package/dist/mcp-server/hooks.d.ts +28 -0
  12. package/dist/mcp-server/hooks.d.ts.map +1 -1
  13. package/dist/mcp-server/hooks.js +91 -2
  14. package/dist/mcp-server/hooks.js.map +1 -1
  15. package/dist/mcp-server/index.d.ts +242 -2
  16. package/dist/mcp-server/index.d.ts.map +1 -1
  17. package/dist/mcp-server/index.js +806 -240
  18. package/dist/mcp-server/index.js.map +1 -1
  19. package/dist/mcp-server/tool-schemas.d.ts +32 -2
  20. package/dist/mcp-server/tool-schemas.d.ts.map +1 -1
  21. package/dist/mcp-server/tool-schemas.js +55 -0
  22. package/dist/mcp-server/tool-schemas.js.map +1 -1
  23. package/dist/src/audrey.d.ts +14 -2
  24. package/dist/src/audrey.d.ts.map +1 -1
  25. package/dist/src/audrey.js +152 -28
  26. package/dist/src/audrey.js.map +1 -1
  27. package/dist/src/autopilot.d.ts +22 -0
  28. package/dist/src/autopilot.d.ts.map +1 -1
  29. package/dist/src/autopilot.js +271 -50
  30. package/dist/src/autopilot.js.map +1 -1
  31. package/dist/src/capsule.d.ts +23 -0
  32. package/dist/src/capsule.d.ts.map +1 -1
  33. package/dist/src/capsule.js +56 -11
  34. package/dist/src/capsule.js.map +1 -1
  35. package/dist/src/confidence.d.ts +9 -1
  36. package/dist/src/confidence.d.ts.map +1 -1
  37. package/dist/src/confidence.js +16 -2
  38. package/dist/src/confidence.js.map +1 -1
  39. package/dist/src/consolidate.d.ts +4 -0
  40. package/dist/src/consolidate.d.ts.map +1 -1
  41. package/dist/src/consolidate.js +206 -34
  42. package/dist/src/consolidate.js.map +1 -1
  43. package/dist/src/controller.d.ts +17 -1
  44. package/dist/src/controller.d.ts.map +1 -1
  45. package/dist/src/controller.js +244 -128
  46. package/dist/src/controller.js.map +1 -1
  47. package/dist/src/db.d.ts.map +1 -1
  48. package/dist/src/db.js +233 -56
  49. package/dist/src/db.js.map +1 -1
  50. package/dist/src/encode.d.ts +2 -1
  51. package/dist/src/encode.d.ts.map +1 -1
  52. package/dist/src/encode.js +41 -4
  53. package/dist/src/encode.js.map +1 -1
  54. package/dist/src/events.d.ts +48 -1
  55. package/dist/src/events.d.ts.map +1 -1
  56. package/dist/src/events.js +160 -62
  57. package/dist/src/events.js.map +1 -1
  58. package/dist/src/export.d.ts.map +1 -1
  59. package/dist/src/export.js +4 -4
  60. package/dist/src/export.js.map +1 -1
  61. package/dist/src/grounding.d.ts +111 -0
  62. package/dist/src/grounding.d.ts.map +1 -0
  63. package/dist/src/grounding.js +259 -0
  64. package/dist/src/grounding.js.map +1 -0
  65. package/dist/src/hybrid-recall.d.ts +16 -7
  66. package/dist/src/hybrid-recall.d.ts.map +1 -1
  67. package/dist/src/hybrid-recall.js +22 -11
  68. package/dist/src/hybrid-recall.js.map +1 -1
  69. package/dist/src/import.d.ts +10 -0
  70. package/dist/src/import.d.ts.map +1 -1
  71. package/dist/src/import.js +122 -22
  72. package/dist/src/import.js.map +1 -1
  73. package/dist/src/llm.d.ts.map +1 -1
  74. package/dist/src/llm.js +16 -0
  75. package/dist/src/llm.js.map +1 -1
  76. package/dist/src/preflight.d.ts.map +1 -1
  77. package/dist/src/preflight.js +89 -47
  78. package/dist/src/preflight.js.map +1 -1
  79. package/dist/src/project.d.ts +4 -1
  80. package/dist/src/project.d.ts.map +1 -1
  81. package/dist/src/project.js +65 -5
  82. package/dist/src/project.js.map +1 -1
  83. package/dist/src/recall.d.ts.map +1 -1
  84. package/dist/src/recall.js +138 -13
  85. package/dist/src/recall.js.map +1 -1
  86. package/dist/src/redact.d.ts +1 -1
  87. package/dist/src/redact.d.ts.map +1 -1
  88. package/dist/src/redact.js +185 -5
  89. package/dist/src/redact.js.map +1 -1
  90. package/dist/src/routes.d.ts.map +1 -1
  91. package/dist/src/routes.js +91 -18
  92. package/dist/src/routes.js.map +1 -1
  93. package/dist/src/trust.d.ts +35 -0
  94. package/dist/src/trust.d.ts.map +1 -0
  95. package/dist/src/trust.js +77 -0
  96. package/dist/src/trust.js.map +1 -0
  97. package/dist/src/types.d.ts +24 -0
  98. package/dist/src/types.d.ts.map +1 -1
  99. package/package.json +4 -38
  100. package/benchmarks/adapter-kit.mjs +0 -20
  101. package/benchmarks/adapter-self-test.mjs +0 -170
  102. package/benchmarks/adapters/example-allow.mjs +0 -31
  103. package/benchmarks/adapters/mem0-platform.mjs +0 -274
  104. package/benchmarks/adapters/registry.json +0 -51
  105. package/benchmarks/adapters/zep-cloud.mjs +0 -304
  106. package/benchmarks/baselines.js +0 -174
  107. package/benchmarks/build-leaderboard.mjs +0 -183
  108. package/benchmarks/cases.js +0 -549
  109. package/benchmarks/create-conformance-card.mjs +0 -148
  110. package/benchmarks/create-submission-bundle.mjs +0 -190
  111. package/benchmarks/dry-run-external-adapters.mjs +0 -177
  112. package/benchmarks/guardbench.js +0 -1265
  113. package/benchmarks/output/adapter-self-test/guardbench-adapter-self-test.json +0 -50
  114. package/benchmarks/output/external/guardbench-external-dry-run.json +0 -69
  115. package/benchmarks/output/external/guardbench-external-evidence.json +0 -56
  116. package/benchmarks/output/guardbench-conformance-card.json +0 -63
  117. package/benchmarks/output/guardbench-manifest.json +0 -414
  118. package/benchmarks/output/guardbench-raw.json +0 -1279
  119. package/benchmarks/output/guardbench-summary.json +0 -2123
  120. package/benchmarks/output/leaderboard/guardbench-leaderboard.json +0 -93
  121. package/benchmarks/output/leaderboard/guardbench-leaderboard.md +0 -7
  122. package/benchmarks/output/submission-bundle/guardbench-conformance-card.json +0 -63
  123. package/benchmarks/output/submission-bundle/guardbench-manifest.json +0 -414
  124. package/benchmarks/output/submission-bundle/guardbench-raw.json +0 -1279
  125. package/benchmarks/output/submission-bundle/guardbench-summary.json +0 -2123
  126. package/benchmarks/output/submission-bundle/schemas/guardbench-adapter-registry.schema.json +0 -69
  127. package/benchmarks/output/submission-bundle/schemas/guardbench-adapter-self-test.schema.json +0 -156
  128. package/benchmarks/output/submission-bundle/schemas/guardbench-conformance-card.schema.json +0 -184
  129. package/benchmarks/output/submission-bundle/schemas/guardbench-external-dry-run.schema.json +0 -74
  130. package/benchmarks/output/submission-bundle/schemas/guardbench-external-evidence.schema.json +0 -108
  131. package/benchmarks/output/submission-bundle/schemas/guardbench-external-run.schema.json +0 -160
  132. package/benchmarks/output/submission-bundle/schemas/guardbench-leaderboard.schema.json +0 -179
  133. package/benchmarks/output/submission-bundle/schemas/guardbench-manifest.schema.json +0 -213
  134. package/benchmarks/output/submission-bundle/schemas/guardbench-publication-verification.schema.json +0 -47
  135. package/benchmarks/output/submission-bundle/schemas/guardbench-raw.schema.json +0 -184
  136. package/benchmarks/output/submission-bundle/schemas/guardbench-submission-manifest.schema.json +0 -151
  137. package/benchmarks/output/submission-bundle/schemas/guardbench-summary.schema.json +0 -249
  138. package/benchmarks/output/submission-bundle/submission-manifest.json +0 -131
  139. package/benchmarks/output/submission-bundle/validation-report.json +0 -31
  140. package/benchmarks/output/summary.json +0 -2354
  141. package/benchmarks/perf-snapshot.js +0 -307
  142. package/benchmarks/perf.bench.js +0 -169
  143. package/benchmarks/public-paths.mjs +0 -97
  144. package/benchmarks/reference-results.js +0 -75
  145. package/benchmarks/report.js +0 -280
  146. package/benchmarks/run-external-guardbench.mjs +0 -303
  147. package/benchmarks/run.js +0 -735
  148. package/benchmarks/schemas/guardbench-adapter-registry.schema.json +0 -69
  149. package/benchmarks/schemas/guardbench-adapter-self-test.schema.json +0 -156
  150. package/benchmarks/schemas/guardbench-conformance-card.schema.json +0 -184
  151. package/benchmarks/schemas/guardbench-external-dry-run.schema.json +0 -74
  152. package/benchmarks/schemas/guardbench-external-evidence.schema.json +0 -108
  153. package/benchmarks/schemas/guardbench-external-run.schema.json +0 -160
  154. package/benchmarks/schemas/guardbench-leaderboard.schema.json +0 -179
  155. package/benchmarks/schemas/guardbench-manifest.schema.json +0 -213
  156. package/benchmarks/schemas/guardbench-publication-verification.schema.json +0 -47
  157. package/benchmarks/schemas/guardbench-raw.schema.json +0 -184
  158. package/benchmarks/schemas/guardbench-submission-manifest.schema.json +0 -151
  159. package/benchmarks/schemas/guardbench-summary.schema.json +0 -249
  160. package/benchmarks/snapshots/perf-0.22.2.json +0 -123
  161. package/benchmarks/snapshots/perf-0.23.0.json +0 -123
  162. package/benchmarks/validate-adapter-module.mjs +0 -107
  163. package/benchmarks/validate-adapter-registry.mjs +0 -145
  164. package/benchmarks/validate-adapter-self-test.mjs +0 -96
  165. package/benchmarks/validate-guardbench-artifacts.mjs +0 -400
  166. package/benchmarks/verify-external-evidence.mjs +0 -351
  167. package/benchmarks/verify-publication-artifacts.mjs +0 -309
  168. package/benchmarks/verify-submission-bundle.mjs +0 -172
  169. package/docs/AUDREY_PAPER_OUTLINE.md +0 -178
  170. package/docs/MEMORY_BENCHMARKING.md +0 -59
  171. package/docs/PRODUCTION_BACKLOG.md +0 -321
  172. package/docs/assets/audrey-feature-grid.jpg +0 -0
  173. package/docs/assets/audrey-logo.svg +0 -45
  174. package/docs/assets/audrey-wordmark.png +0 -0
  175. package/docs/paper/00-master.md +0 -48
  176. package/docs/paper/01-introduction.md +0 -27
  177. package/docs/paper/02-related-work.md +0 -47
  178. package/docs/paper/03-problem-definition.md +0 -108
  179. package/docs/paper/04-design.md +0 -164
  180. package/docs/paper/05-guardbench-spec.md +0 -412
  181. package/docs/paper/06-implementation.md +0 -115
  182. package/docs/paper/07-evaluation.md +0 -168
  183. package/docs/paper/08-discussion-limitations.md +0 -61
  184. package/docs/paper/09-conclusion.md +0 -11
  185. package/docs/paper/SUBMISSION_README.md +0 -162
  186. package/docs/paper/appendix-a-demo-transcript.md +0 -114
  187. package/docs/paper/arxiv-compile-report.schema.json +0 -116
  188. package/docs/paper/arxiv-source.schema.json +0 -61
  189. package/docs/paper/audrey-paper-v1.md +0 -1108
  190. package/docs/paper/browser-launch-plan.json +0 -209
  191. package/docs/paper/browser-launch-plan.schema.json +0 -100
  192. package/docs/paper/browser-launch-results.json +0 -86
  193. package/docs/paper/browser-launch-results.schema.json +0 -66
  194. package/docs/paper/claim-register.json +0 -138
  195. package/docs/paper/claim-register.schema.json +0 -81
  196. package/docs/paper/evidence-ledger.md +0 -103
  197. package/docs/paper/output/arxiv/README-arxiv.txt +0 -8
  198. package/docs/paper/output/arxiv/arxiv-manifest.json +0 -41
  199. package/docs/paper/output/arxiv/main.tex +0 -951
  200. package/docs/paper/output/arxiv/references.bib +0 -222
  201. package/docs/paper/output/arxiv-compile-report.json +0 -24
  202. package/docs/paper/output/submission-bundle/LICENSE +0 -21
  203. package/docs/paper/output/submission-bundle/README.md +0 -440
  204. package/docs/paper/output/submission-bundle/benchmarks/output/adapter-self-test/guardbench-adapter-self-test.json +0 -50
  205. package/docs/paper/output/submission-bundle/benchmarks/output/external/guardbench-external-dry-run.json +0 -69
  206. package/docs/paper/output/submission-bundle/benchmarks/output/external/guardbench-external-evidence.json +0 -56
  207. package/docs/paper/output/submission-bundle/benchmarks/output/guardbench-conformance-card.json +0 -63
  208. package/docs/paper/output/submission-bundle/benchmarks/output/guardbench-manifest.json +0 -414
  209. package/docs/paper/output/submission-bundle/benchmarks/output/guardbench-raw.json +0 -1279
  210. package/docs/paper/output/submission-bundle/benchmarks/output/guardbench-summary.json +0 -2123
  211. package/docs/paper/output/submission-bundle/benchmarks/output/leaderboard/guardbench-leaderboard.json +0 -93
  212. package/docs/paper/output/submission-bundle/benchmarks/output/leaderboard/guardbench-leaderboard.md +0 -7
  213. package/docs/paper/output/submission-bundle/benchmarks/output/submission-bundle/submission-manifest.json +0 -131
  214. package/docs/paper/output/submission-bundle/benchmarks/output/submission-bundle/validation-report.json +0 -31
  215. package/docs/paper/output/submission-bundle/benchmarks/output/summary.json +0 -2354
  216. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-adapter-registry.schema.json +0 -69
  217. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-adapter-self-test.schema.json +0 -156
  218. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-conformance-card.schema.json +0 -184
  219. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-external-dry-run.schema.json +0 -74
  220. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-external-evidence.schema.json +0 -108
  221. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-external-run.schema.json +0 -160
  222. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-leaderboard.schema.json +0 -179
  223. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-manifest.schema.json +0 -213
  224. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-publication-verification.schema.json +0 -47
  225. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-raw.schema.json +0 -184
  226. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-submission-manifest.schema.json +0 -151
  227. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-summary.schema.json +0 -249
  228. package/docs/paper/output/submission-bundle/docs/AUDREY_PAPER_OUTLINE.md +0 -178
  229. package/docs/paper/output/submission-bundle/docs/paper/00-master.md +0 -48
  230. package/docs/paper/output/submission-bundle/docs/paper/01-introduction.md +0 -27
  231. package/docs/paper/output/submission-bundle/docs/paper/02-related-work.md +0 -47
  232. package/docs/paper/output/submission-bundle/docs/paper/03-problem-definition.md +0 -108
  233. package/docs/paper/output/submission-bundle/docs/paper/04-design.md +0 -164
  234. package/docs/paper/output/submission-bundle/docs/paper/05-guardbench-spec.md +0 -412
  235. package/docs/paper/output/submission-bundle/docs/paper/06-implementation.md +0 -115
  236. package/docs/paper/output/submission-bundle/docs/paper/07-evaluation.md +0 -168
  237. package/docs/paper/output/submission-bundle/docs/paper/08-discussion-limitations.md +0 -61
  238. package/docs/paper/output/submission-bundle/docs/paper/09-conclusion.md +0 -11
  239. package/docs/paper/output/submission-bundle/docs/paper/SUBMISSION_README.md +0 -162
  240. package/docs/paper/output/submission-bundle/docs/paper/appendix-a-demo-transcript.md +0 -114
  241. package/docs/paper/output/submission-bundle/docs/paper/arxiv-compile-report.schema.json +0 -116
  242. package/docs/paper/output/submission-bundle/docs/paper/arxiv-source.schema.json +0 -61
  243. package/docs/paper/output/submission-bundle/docs/paper/audrey-paper-v1.md +0 -1108
  244. package/docs/paper/output/submission-bundle/docs/paper/browser-launch-plan.json +0 -209
  245. package/docs/paper/output/submission-bundle/docs/paper/browser-launch-plan.schema.json +0 -100
  246. package/docs/paper/output/submission-bundle/docs/paper/browser-launch-results.json +0 -86
  247. package/docs/paper/output/submission-bundle/docs/paper/browser-launch-results.schema.json +0 -66
  248. package/docs/paper/output/submission-bundle/docs/paper/claim-register.json +0 -138
  249. package/docs/paper/output/submission-bundle/docs/paper/claim-register.schema.json +0 -81
  250. package/docs/paper/output/submission-bundle/docs/paper/evidence-ledger.md +0 -103
  251. package/docs/paper/output/submission-bundle/docs/paper/output/arxiv/README-arxiv.txt +0 -8
  252. package/docs/paper/output/submission-bundle/docs/paper/output/arxiv/arxiv-manifest.json +0 -41
  253. package/docs/paper/output/submission-bundle/docs/paper/output/arxiv/main.tex +0 -951
  254. package/docs/paper/output/submission-bundle/docs/paper/output/arxiv/references.bib +0 -222
  255. package/docs/paper/output/submission-bundle/docs/paper/output/arxiv-compile-report.json +0 -24
  256. package/docs/paper/output/submission-bundle/docs/paper/paper-submission-bundle.schema.json +0 -70
  257. package/docs/paper/output/submission-bundle/docs/paper/publication-pack.json +0 -81
  258. package/docs/paper/output/submission-bundle/docs/paper/publication-pack.schema.json +0 -60
  259. package/docs/paper/output/submission-bundle/docs/paper/references.bib +0 -222
  260. package/docs/paper/output/submission-bundle/package.json +0 -235
  261. package/docs/paper/output/submission-bundle/paper-submission-manifest.json +0 -379
  262. package/docs/paper/paper-submission-bundle.schema.json +0 -70
  263. package/docs/paper/publication-pack.json +0 -81
  264. package/docs/paper/publication-pack.schema.json +0 -60
  265. package/docs/paper/references.bib +0 -222
  266. package/scripts/audit-release-completion.mjs +0 -440
  267. package/scripts/create-arxiv-source.mjs +0 -368
  268. package/scripts/create-paper-submission-bundle.mjs +0 -214
  269. package/scripts/finalize-release.mjs +0 -601
  270. package/scripts/prepare-release-cut.mjs +0 -277
  271. package/scripts/publish-release-bundle.mjs +0 -252
  272. package/scripts/publish-release-github-api.mjs +0 -494
  273. package/scripts/run-vitest.mjs +0 -34
  274. package/scripts/smoke-cli.js +0 -92
  275. package/scripts/sync-paper-artifacts.mjs +0 -112
  276. package/scripts/verify-arxiv-compile.mjs +0 -476
  277. package/scripts/verify-arxiv-source.mjs +0 -224
  278. package/scripts/verify-browser-launch-plan.mjs +0 -254
  279. package/scripts/verify-browser-launch-results.mjs +0 -303
  280. package/scripts/verify-paper-artifacts.mjs +0 -798
  281. package/scripts/verify-paper-claims.mjs +0 -254
  282. package/scripts/verify-paper-submission-bundle.mjs +0 -218
  283. package/scripts/verify-publication-pack.mjs +0 -210
  284. package/scripts/verify-python-package.py +0 -201
  285. package/scripts/verify-release-readiness.mjs +0 -920
@@ -1,6 +1,8 @@
1
1
  import { generateId } from './ulid.js';
2
2
  import { insertFTSSemantic, insertFTSProcedure } from './fts.js';
3
3
  import { buildPrincipleExtractionPrompt } from './prompts.js';
4
+ import { safeJsonParse } from './utils.js';
5
+ const DEFAULT_MERGE_SIMILARITY_THRESHOLD = 0.92;
4
6
  function clusterViaKNN(db, episodes, similarityThreshold, minClusterSize, agent) {
5
7
  const n = episodes.length;
6
8
  const k = Math.min(50, n);
@@ -68,10 +70,15 @@ function clusterViaKNN(db, episodes, similarityThreshold, minClusterSize, agent)
68
70
  return clusters;
69
71
  }
70
72
  export function clusterEpisodes(db, _embeddingProvider, options = {}) {
71
- const { similarityThreshold = 0.85, minClusterSize = 3, agent } = options;
73
+ const { similarityThreshold = 0.85, minClusterSize = 3, agent, excludePrivate = false, onlyPrivate = false, } = options;
74
+ const privacyClause = onlyPrivate
75
+ ? ' AND "private" = 1'
76
+ : excludePrivate
77
+ ? ' AND "private" = 0'
78
+ : '';
72
79
  const episodeQuery = agent
73
- ? 'SELECT * FROM episodes WHERE consolidated = 0 AND superseded_by IS NULL AND embedding IS NOT NULL AND agent = ?'
74
- : 'SELECT * FROM episodes WHERE consolidated = 0 AND superseded_by IS NULL AND embedding IS NOT NULL';
80
+ ? `SELECT * FROM episodes WHERE consolidated = 0 AND superseded_by IS NULL AND embedding IS NOT NULL AND agent = ?${privacyClause}`
81
+ : `SELECT * FROM episodes WHERE consolidated = 0 AND superseded_by IS NULL AND embedding IS NOT NULL${privacyClause}`;
75
82
  const episodes = agent
76
83
  ? db.prepare(episodeQuery).all(agent)
77
84
  : db.prepare(episodeQuery).all();
@@ -93,8 +100,132 @@ async function llmExtractPrinciple(llmProvider, episodes) {
93
100
  function inClause(ids) {
94
101
  return ids.map(() => '?').join(',');
95
102
  }
103
+ async function buildPreparedCluster(embeddingProvider, cluster, principle, consolidationModel) {
104
+ const vector = await embeddingProvider.embed(principle.content);
105
+ return {
106
+ principle,
107
+ clusterIds: cluster.map(ep => ep.id),
108
+ sourceTypeDiversity: new Set(cluster.map(ep => ep.source)).size,
109
+ embeddingBuffer: embeddingProvider.vectorToBuffer(vector),
110
+ memoryId: generateId(),
111
+ createdAt: new Date().toISOString(),
112
+ maxSalience: Math.max(...cluster.map(ep => ep.salience ?? 0.5)),
113
+ consolidationModel,
114
+ };
115
+ }
116
+ // Mirrors the vec_semantics/vec_procedures similarity lookup already used by
117
+ // src/interference.ts and src/validate.ts: a plain cosine-distance scan
118
+ // scoped to active/context_dependent memories for the same agent, rather
119
+ // than clusterViaKNN's vec0 MATCH plan (which is scoped to vec_episodes).
120
+ /**
121
+ * Candidates pulled from the vec0 index before the state filter runs.
122
+ *
123
+ * The merge lookup has to use indexed KNN rather than vec_distance_cosine
124
+ * over the whole partition: it runs once per extracted principle inside the
125
+ * consolidation write transaction, so a linear scan there holds SQLite's
126
+ * write lock against every concurrent Guard hook for the duration. Measured
127
+ * on the scan it replaces: 2.2ms at 500 active rows, 176ms at 30,000.
128
+ *
129
+ * State is filtered on the source table, never on the vec0 aux column of the
130
+ * same name — nothing updates vec_semantics.state / vec_procedures.state
131
+ * after insert, so those columns go stale as soon as a memory is superseded
132
+ * or decays. Over-fetching by MERGE_CANDIDATE_K and filtering afterwards
133
+ * keeps the fast path without trusting them. If every near neighbour turns
134
+ * out to be inactive the lookup reports no match and the principle is
135
+ * inserted fresh, which is what happened for all of them before merging
136
+ * existed.
137
+ */
138
+ const MERGE_CANDIDATE_K = 20;
139
+ function findActiveSemanticMatch(db, agent, embeddingBuffer) {
140
+ const row = db
141
+ .prepare(`
142
+ SELECT s.id, (1.0 - v.distance) AS similarity
143
+ FROM vec_semantics v
144
+ JOIN semantics s ON s.id = v.id
145
+ WHERE v.embedding MATCH ? AND k = ?
146
+ AND v.agent = ?
147
+ AND s.agent = ?
148
+ AND (s.state = 'active' OR s.state = 'context_dependent')
149
+ ORDER BY v.distance ASC
150
+ LIMIT 1
151
+ `)
152
+ .get(embeddingBuffer, MERGE_CANDIDATE_K, agent, agent);
153
+ return row ?? null;
154
+ }
155
+ function findActiveProceduralMatch(db, agent, embeddingBuffer) {
156
+ const row = db
157
+ .prepare(`
158
+ SELECT p.id, (1.0 - v.distance) AS similarity
159
+ FROM vec_procedures v
160
+ JOIN procedures p ON p.id = v.id
161
+ WHERE v.embedding MATCH ? AND k = ?
162
+ AND v.agent = ?
163
+ AND p.agent = ?
164
+ AND (p.state = 'active' OR p.state = 'context_dependent')
165
+ ORDER BY v.distance ASC
166
+ LIMIT 1
167
+ `)
168
+ .get(embeddingBuffer, MERGE_CANDIDATE_K, agent, agent);
169
+ return row ?? null;
170
+ }
171
+ function unionEvidenceIds(existingRaw, newIds) {
172
+ const ids = safeJsonParse(existingRaw, []);
173
+ const seen = new Set(ids);
174
+ let addedCount = 0;
175
+ for (const id of newIds) {
176
+ if (!seen.has(id)) {
177
+ ids.push(id);
178
+ seen.add(id);
179
+ addedCount++;
180
+ }
181
+ }
182
+ return { ids, addedCount };
183
+ }
184
+ function sourceDiversityFor(db, evidenceIds, agent) {
185
+ if (evidenceIds.length === 0)
186
+ return 0;
187
+ const placeholders = inClause(evidenceIds);
188
+ const rows = db
189
+ .prepare(`SELECT DISTINCT source FROM episodes WHERE id IN (${placeholders}) AND agent = ?`)
190
+ .all(...evidenceIds, agent);
191
+ return rows.length;
192
+ }
193
+ // Mirrors the bookkeeping src/validate.ts's reinforce() applies when a new
194
+ // episode matches an existing semantic, generalized to a whole cluster of
195
+ // new evidence ids landing at once.
196
+ function mergeIntoSemantic(db, semanticId, newEpisodeIds, agent) {
197
+ const current = db
198
+ .prepare('SELECT evidence_episode_ids FROM semantics WHERE id = ?')
199
+ .get(semanticId);
200
+ const { ids, addedCount } = unionEvidenceIds(current?.evidence_episode_ids ?? null, newEpisodeIds);
201
+ const diversity = sourceDiversityFor(db, ids, agent);
202
+ const now = new Date().toISOString();
203
+ db.prepare(`
204
+ UPDATE semantics SET
205
+ supporting_count = supporting_count + ?,
206
+ evidence_episode_ids = ?,
207
+ evidence_count = ?,
208
+ source_type_diversity = ?,
209
+ last_reinforced_at = ?
210
+ WHERE id = ?
211
+ `).run(addedCount, JSON.stringify(ids), ids.length, diversity, now, semanticId);
212
+ }
213
+ function mergeIntoProcedural(db, proceduralId, newEpisodeIds) {
214
+ const current = db
215
+ .prepare('SELECT evidence_episode_ids FROM procedures WHERE id = ?')
216
+ .get(proceduralId);
217
+ const { ids, addedCount } = unionEvidenceIds(current?.evidence_episode_ids ?? null, newEpisodeIds);
218
+ const now = new Date().toISOString();
219
+ db.prepare(`
220
+ UPDATE procedures SET
221
+ success_count = success_count + ?,
222
+ evidence_episode_ids = ?,
223
+ last_reinforced_at = ?
224
+ WHERE id = ?
225
+ `).run(addedCount, JSON.stringify(ids), now, proceduralId);
226
+ }
96
227
  export async function runConsolidation(db, embeddingProvider, options = {}) {
97
- const { similarityThreshold = 0.85, minClusterSize = 3, agent = 'default', extractPrinciple, llmProvider, } = options;
228
+ const { similarityThreshold = 0.85, minClusterSize = 3, agent = 'default', extractPrinciple, llmProvider, mergeSimilarityThreshold = DEFAULT_MERGE_SIMILARITY_THRESHOLD, } = options;
98
229
  const runId = generateId();
99
230
  const now = new Date().toISOString();
100
231
  db.prepare(`
@@ -104,11 +235,29 @@ export async function runConsolidation(db, embeddingProvider, options = {}) {
104
235
  VALUES (?, ?, 'running', '[]', '[]', ?, ?)
105
236
  `).run(runId, now, llmProvider?.modelName || null, now);
106
237
  try {
238
+ // Private memories must never be embedded into a prompt sent to a cloud
239
+ // LLM. When an external llmProvider is configured, non-private episodes
240
+ // cluster and extract normally (possibly via the LLM); private episodes
241
+ // are clustered separately and always extracted through the local
242
+ // heuristic (defaultExtractPrinciple), so they still consolidate instead
243
+ // of sitting unconsolidated forever. With no llmProvider, everything is
244
+ // already local, so private and non-private episodes cluster together
245
+ // exactly as before.
246
+ const restrictPrivateFromCloud = Boolean(llmProvider);
107
247
  const clusters = clusterEpisodes(db, embeddingProvider, {
108
248
  similarityThreshold,
109
249
  minClusterSize,
110
250
  agent,
251
+ excludePrivate: restrictPrivateFromCloud,
111
252
  });
253
+ const privateClusters = restrictPrivateFromCloud
254
+ ? clusterEpisodes(db, embeddingProvider, {
255
+ similarityThreshold,
256
+ minClusterSize,
257
+ agent,
258
+ onlyPrivate: true,
259
+ })
260
+ : [];
112
261
  const episodesEvaluated = (agent
113
262
  ? db
114
263
  .prepare('SELECT COUNT(*) as count FROM episodes WHERE consolidated = 0 AND superseded_by IS NULL AND embedding IS NOT NULL AND agent = ?')
@@ -119,7 +268,10 @@ export async function runConsolidation(db, embeddingProvider, options = {}) {
119
268
  const allInputIds = [];
120
269
  const allOutputIds = [];
121
270
  let principlesExtracted = 0;
122
- let proceduresExtracted = 0;
271
+ let semanticsCreatedCount = 0;
272
+ let proceduresCreatedCount = 0;
273
+ let semanticsMergedCount = 0;
274
+ let proceduresMergedCount = 0;
123
275
  const preparedClusters = [];
124
276
  const insertProcedure = db.prepare(`
125
277
  INSERT INTO procedures (
@@ -164,17 +316,13 @@ export async function runConsolidation(db, embeddingProvider, options = {}) {
164
316
  }
165
317
  if (!principle || !principle.content)
166
318
  continue;
167
- const vector = await embeddingProvider.embed(principle.content);
168
- const clusterIds = cluster.map(ep => ep.id);
169
- preparedClusters.push({
170
- principle,
171
- clusterIds,
172
- sourceTypeDiversity: new Set(cluster.map(ep => ep.source)).size,
173
- embeddingBuffer: embeddingProvider.vectorToBuffer(vector),
174
- memoryId: generateId(),
175
- createdAt: new Date().toISOString(),
176
- maxSalience: Math.max(...cluster.map(ep => ep.salience ?? 0.5)),
177
- });
319
+ preparedClusters.push(await buildPreparedCluster(embeddingProvider, cluster, principle, llmProvider?.modelName || null));
320
+ }
321
+ for (const cluster of privateClusters) {
322
+ const principle = defaultExtractPrinciple(cluster);
323
+ if (!principle || !principle.content)
324
+ continue;
325
+ preparedClusters.push(await buildPreparedCluster(embeddingProvider, cluster, principle, null));
178
326
  }
179
327
  db.prepare('BEGIN IMMEDIATE').run();
180
328
  try {
@@ -192,16 +340,37 @@ export async function runConsolidation(db, embeddingProvider, options = {}) {
192
340
  if (eligibleCount !== prepared.clusterIds.length) {
193
341
  continue;
194
342
  }
195
- if (prepared.principle.type === 'procedural') {
196
- insertProcedure.run(prepared.memoryId, prepared.principle.content, agent, prepared.embeddingBuffer, prepared.principle.conditions ? JSON.stringify(prepared.principle.conditions) : null, JSON.stringify(prepared.clusterIds), embeddingProvider.modelName, embeddingProvider.modelVersion, prepared.createdAt, prepared.maxSalience);
197
- insertVecProcedure.run(prepared.memoryId, agent, prepared.embeddingBuffer, 'active');
198
- insertFTSProcedure(db, prepared.memoryId, prepared.principle.content);
199
- proceduresExtracted++;
343
+ const isProcedural = prepared.principle.type === 'procedural';
344
+ const mergeMatch = isProcedural
345
+ ? findActiveProceduralMatch(db, agent, prepared.embeddingBuffer)
346
+ : findActiveSemanticMatch(db, agent, prepared.embeddingBuffer);
347
+ const shouldMerge = mergeMatch !== null && mergeMatch.similarity >= mergeSimilarityThreshold;
348
+ let outputId;
349
+ if (shouldMerge && mergeMatch) {
350
+ outputId = mergeMatch.id;
351
+ if (isProcedural) {
352
+ mergeIntoProcedural(db, mergeMatch.id, prepared.clusterIds);
353
+ proceduresMergedCount++;
354
+ }
355
+ else {
356
+ mergeIntoSemantic(db, mergeMatch.id, prepared.clusterIds, agent);
357
+ semanticsMergedCount++;
358
+ }
200
359
  }
201
360
  else {
202
- insertSemantic.run(prepared.memoryId, prepared.principle.content, agent, prepared.embeddingBuffer, JSON.stringify(prepared.clusterIds), prepared.clusterIds.length, prepared.clusterIds.length, prepared.sourceTypeDiversity, runId, embeddingProvider.modelName, embeddingProvider.modelVersion, llmProvider?.modelName || null, prepared.createdAt, prepared.maxSalience);
203
- insertVecSemantic.run(prepared.memoryId, agent, prepared.embeddingBuffer, 'active');
204
- insertFTSSemantic(db, prepared.memoryId, prepared.principle.content);
361
+ outputId = prepared.memoryId;
362
+ if (isProcedural) {
363
+ insertProcedure.run(prepared.memoryId, prepared.principle.content, agent, prepared.embeddingBuffer, prepared.principle.conditions ? JSON.stringify(prepared.principle.conditions) : null, JSON.stringify(prepared.clusterIds), embeddingProvider.modelName, embeddingProvider.modelVersion, prepared.createdAt, prepared.maxSalience);
364
+ insertVecProcedure.run(prepared.memoryId, agent, prepared.embeddingBuffer, 'active');
365
+ insertFTSProcedure(db, prepared.memoryId, prepared.principle.content);
366
+ proceduresCreatedCount++;
367
+ }
368
+ else {
369
+ insertSemantic.run(prepared.memoryId, prepared.principle.content, agent, prepared.embeddingBuffer, JSON.stringify(prepared.clusterIds), prepared.clusterIds.length, prepared.clusterIds.length, prepared.sourceTypeDiversity, runId, embeddingProvider.modelName, embeddingProvider.modelVersion, prepared.consolidationModel, prepared.createdAt, prepared.maxSalience);
370
+ insertVecSemantic.run(prepared.memoryId, agent, prepared.embeddingBuffer, 'active');
371
+ insertFTSSemantic(db, prepared.memoryId, prepared.principle.content);
372
+ semanticsCreatedCount++;
373
+ }
205
374
  }
206
375
  db.prepare(`UPDATE episodes SET consolidated = 1 WHERE id IN (${placeholders})`).run(...prepared.clusterIds);
207
376
  db.prepare(`DELETE FROM vec_episodes WHERE id IN (${placeholders})`).run(...prepared.clusterIds);
@@ -212,13 +381,24 @@ export async function runConsolidation(db, embeddingProvider, options = {}) {
212
381
  WHERE id IN (${placeholders}) AND embedding IS NOT NULL
213
382
  `).run(...prepared.clusterIds);
214
383
  allInputIds.push(...prepared.clusterIds);
215
- allOutputIds.push(prepared.memoryId);
384
+ allOutputIds.push(outputId);
216
385
  principlesExtracted++;
217
386
  }
387
+ const totalClustersFound = clusters.length + privateClusters.length;
218
388
  const completedAt = new Date().toISOString();
219
389
  updateRunCompleted.run(completedAt, JSON.stringify(allInputIds), JSON.stringify(allOutputIds), runId);
220
- insertMetrics.run(generateId(), runId, minClusterSize, similarityThreshold, episodesEvaluated, clusters.length, principlesExtracted, completedAt);
390
+ insertMetrics.run(generateId(), runId, minClusterSize, similarityThreshold, episodesEvaluated, totalClustersFound, principlesExtracted, completedAt);
221
391
  db.prepare('COMMIT').run();
392
+ return {
393
+ runId,
394
+ episodesEvaluated,
395
+ clustersFound: totalClustersFound,
396
+ principlesExtracted,
397
+ semanticsCreated: semanticsCreatedCount,
398
+ proceduresCreated: proceduresCreatedCount,
399
+ semanticsMerged: semanticsMergedCount,
400
+ proceduresMerged: proceduresMergedCount,
401
+ };
222
402
  }
223
403
  catch (err) {
224
404
  if (db.inTransaction) {
@@ -226,14 +406,6 @@ export async function runConsolidation(db, embeddingProvider, options = {}) {
226
406
  }
227
407
  throw err;
228
408
  }
229
- return {
230
- runId,
231
- episodesEvaluated,
232
- clustersFound: clusters.length,
233
- principlesExtracted,
234
- semanticsCreated: principlesExtracted - proceduresExtracted,
235
- proceduresCreated: proceduresExtracted,
236
- };
237
409
  }
238
410
  catch (err) {
239
411
  const failedAt = new Date().toISOString();
@@ -1 +1 @@
1
- {"version":3,"file":"consolidate.js","sourceRoot":"","sources":["../../src/consolidate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"consolidate.js","sourceRoot":"","sources":["../../src/consolidate.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  import type { Audrey } from './audrey.js';
2
2
  import type { MemoryCapsule } from './capsule.js';
3
- import type { EventOutcome } from './events.js';
3
+ import { type EventOutcome } from './events.js';
4
4
  import type { MemoryValidateOutcome, MemoryValidateResult } from './feedback.js';
5
5
  import { type MemoryPreflight, type PreflightOptions } from './preflight.js';
6
6
  import { type MemoryReflex } from './reflexes.js';
7
7
  export interface GuardBeforeOptions extends PreflightOptions {
8
8
  recordEvent?: boolean;
9
+ acknowledgePriorFailure?: boolean;
9
10
  }
10
11
  export interface GuardDecision {
11
12
  receipt_id: string;
@@ -42,6 +43,18 @@ export interface GuardAfterInput {
42
43
  retainDetails?: boolean;
43
44
  actorAgent?: string;
44
45
  evidenceFeedback?: Record<string, MemoryValidateOutcome>;
46
+ /**
47
+ * Required to record a `succeeded` outcome against a receipt whose
48
+ * beforeAction decision was `block`, when that block was not caused by an
49
+ * exact-repeat failure (a persistent policy or must-follow memory keeps
50
+ * blocking every fresh beforeAction check otherwise, with no way to ever
51
+ * record the outcome). Never inferred — a caller must state why the
52
+ * advisory block is being overridden, and the reason is written into the
53
+ * outcome event as durable, auditable evidence. Does not apply to an
54
+ * exact-repeat-failure block: that can only be cleared by re-running
55
+ * beforeAction with acknowledgePriorFailure.
56
+ */
57
+ overrideReason?: string;
45
58
  }
46
59
  export interface GuardValidatedEvidence {
47
60
  id: string;
@@ -86,6 +99,7 @@ export interface ControllerGuardResult {
86
99
  decision: ControllerGuardDecision;
87
100
  riskScore: number;
88
101
  summary: string;
102
+ warnings: MemoryPreflight['warnings'];
89
103
  evidenceIds: string[];
90
104
  recommendedActions: string[];
91
105
  capsule?: MemoryCapsule;
@@ -105,6 +119,8 @@ export declare class MemoryController {
105
119
  private readonly failureDecayDays;
106
120
  constructor(audrey: Audrey, options?: MemoryControllerOptions);
107
121
  beforeAction(action: AgentAction): Promise<ControllerGuardResult>;
122
+ beforeActionDecision(action: string, options?: GuardBeforeOptions): Promise<GuardDecision>;
123
+ private evaluate;
108
124
  afterAction(outcome: ToolOutcome): Promise<void>;
109
125
  }
110
126
  export declare function beforeAction(audrey: Audrey, action: string, options?: GuardBeforeOptions): Promise<GuardDecision>;
@@ -1 +1 @@
1
- {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/controller.ts"],"names":[],"mappings":"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"}