@snoai/memory 1.6.0 → 1.7.1

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 (355) hide show
  1. package/README.md +1 -1
  2. package/dist/{_types-CUKHSRkS.d.ts → _types-CZDWRxyi.d.ts} +0 -2
  3. package/dist/{access-tracker-CFxRg7Bt.d.ts → access-tracker-CtqCTq9b.d.ts} +4 -6
  4. package/dist/{adapter-BFtbOOw3.d.ts → adapter-6irg6Ykg.d.ts} +3 -7
  5. package/dist/{adapter-CG-UbOjU.js → adapter-BVBeFvUc.js} +2 -4
  6. package/dist/{agent-llm-port-BlFrD2ro.d.ts → agent-llm-port-i_L33_v_.d.ts} +0 -2
  7. package/dist/{all-resources-Dij6l5h0.d.ts → all-resources-3zj0PED4.d.ts} +2 -4
  8. package/dist/{all-resources-BQK2ugjB.js → all-resources-BZc9QIAW.js} +41 -81
  9. package/dist/{ambient-learning-text-normalizer-_fH3LeuK.d.ts → ambient-learning-text-normalizer-H_idEjJi.d.ts} +0 -2
  10. package/dist/{ambient-learning-text-normalizer-CxjATmMp.js → ambient-learning-text-normalizer-dxAxf9oi.js} +3 -5
  11. package/dist/{atomic-extraction-reply-BJ9XV_9s.js → atomic-extraction-reply-CoxIGLmU.js} +12 -12
  12. package/dist/{atomic-extraction-skill-CcXmuCqL.js → atomic-extraction-skill-5lAqr8BM.js} +1 -2
  13. package/dist/{atomic-memory-extraction-l65aofbl.js → atomic-memory-extraction-CWMMWF2C.js} +67 -41
  14. package/dist/{atomic-memory-extraction-Bp7AWZqi.d.ts → atomic-memory-extraction-DcoaYWiS.d.ts} +6 -20
  15. package/dist/{b-profile-section-dictionary-provider-Buj_M-QA.d.ts → b-profile-section-dictionary-provider-BuzxMJtG.d.ts} +2 -6
  16. package/dist/{b-profile-section-dictionary-provider-BHkoNqgk.js → b-profile-section-dictionary-provider-DMGsJlYh.js} +3 -6
  17. package/dist/{best-effort-BPZSzKk0.d.ts → best-effort-DvyP9avp.d.ts} +0 -2
  18. package/dist/{calendar-instruction-CzqZbAPG.js → calendar-instruction-uK6xsrCt.js} +1 -2
  19. package/dist/{capture-policy-detector-3tDQkBi9.d.ts → capture-policy-detector-CEgDjHPq.d.ts} +1 -3
  20. package/dist/{capture-policy-detector-DaMfy9CZ.js → capture-policy-detector-DhNGhDw3.js} +5 -7
  21. package/dist/{classifier-CXQxJJPP.d.ts → classifier-DeFV9Zro.d.ts} +1 -5
  22. package/dist/client.d.ts +1 -3
  23. package/dist/client.js +4 -6
  24. package/dist/{coding-skin-azRXA51Z.js → coding-skin-BnFryVac.js} +11 -5
  25. package/dist/coding-skin.d.ts +8 -4
  26. package/dist/coding-skin.js +2 -2
  27. package/dist/{config-CByvnX3d.js → config-D6GJyMKz.js} +29 -41
  28. package/dist/{connection-D989FqGS.d.ts → connection-22Uywd-U.d.ts} +1 -6
  29. package/dist/{connection-BtK-3r-f.js → connection-H-_OZ-pP.js} +3 -5
  30. package/dist/{daily-log-generator-DEsiCs7o.js → daily-log-generator-DdzlaQYy.js} +8 -12
  31. package/dist/{daily-log-generator-CsQPHl4A.d.ts → daily-log-generator-IbaCpCH8.d.ts} +1 -5
  32. package/dist/{daily-spend-estimator-DiwzBlo1.d.ts → daily-spend-estimator-CKaQYiHB.d.ts} +0 -2
  33. package/dist/{data-bootstrap-Bl3lthzE.d.ts → data-bootstrap-Bf_VMTSc.d.ts} +0 -4
  34. package/dist/{data-bootstrap-P8sie9WA.js → data-bootstrap-Db6a7ASj.js} +1 -3
  35. package/dist/{data-paths-C7sNdqvP.d.ts → data-paths-CFwVskNd.d.ts} +0 -2
  36. package/dist/{derived-suppression-cache-CcANI-p7.d.ts → derived-suppression-cache-ByclOuKE.d.ts} +1 -7
  37. package/dist/diagnostic-encoder.d.ts +0 -2
  38. package/dist/diagnostic-encoder.js +2 -3
  39. package/dist/{embedding-provider-client-CELWtPgt.d.ts → embedding-provider-client-Bli3uXan.d.ts} +0 -4
  40. package/dist/{embedding-provider-client-CgpUK_1G.js → embedding-provider-client-ClgiYSD4.js} +4 -8
  41. package/dist/{entry-metadata-parser-BIVSMCIk.js → entry-metadata-parser-W53-Odqm.js} +1 -2
  42. package/dist/{error-D-wb-rZw.js → error-Dga5Ot1M.js} +1 -2
  43. package/dist/{error-signals-lMH2uAdV.js → error-signals-CqvwBBWn.js} +1 -2
  44. package/dist/{error-signals-D8_3vYu4.d.ts → error-signals-f0JhwtHI.d.ts} +0 -2
  45. package/dist/{errors-CeVRxf9V.d.ts → errors-Cqej5eCm.d.ts} +0 -2
  46. package/dist/{extraction-text-sanitizer-B_AhIecT.d.ts → extraction-text-sanitizer-D_7Ogceg.d.ts} +0 -2
  47. package/dist/{i18n-text-DbD6Qify.d.ts → i18n-text-CqS4mUit.d.ts} +0 -2
  48. package/dist/{index-Df9420Pl.d.ts → index-B0iQL0Kp.d.ts} +3 -15
  49. package/dist/{index-DPfJrOFD.d.ts → index-B3H1zNbk.d.ts} +2 -38
  50. package/dist/{index-CJrMFlAU.d.ts → index-oFJyQfvq.d.ts} +0 -2
  51. package/dist/index.d.ts +12 -14
  52. package/dist/index.js +18 -22
  53. package/dist/{intent-analyzer-B5XVrWwe.d.ts → intent-analyzer-DmeMSTrr.d.ts} +0 -2
  54. package/dist/internal/config/index.d.ts +1 -1
  55. package/dist/internal/config/index.js +1 -2
  56. package/dist/internal/config/plugin-config-schema.d.ts +1 -1
  57. package/dist/internal/config/plugin-config-schema.js +1 -2
  58. package/dist/internal/config/product-mode.d.ts +1 -1
  59. package/dist/internal/config/product-mode.js +1 -2
  60. package/dist/internal/config/settings.d.ts +1 -1
  61. package/dist/internal/config/settings.js +3 -4
  62. package/dist/internal/config/skill-categories.d.ts +1 -3
  63. package/dist/internal/config/skill-categories.js +1 -2
  64. package/dist/internal/config/skin-defaults.d.ts +1 -3
  65. package/dist/internal/config/skin-defaults.js +1 -2
  66. package/dist/internal/contract/discovery.d.ts +1 -3
  67. package/dist/internal/contract/discovery.js +2 -3
  68. package/dist/internal/contract/profile.d.ts +1 -1
  69. package/dist/internal/contract/profile.js +1 -2
  70. package/dist/internal/contract/routes.d.ts +1 -1
  71. package/dist/internal/contract/routes.js +1 -2
  72. package/dist/internal/engine/bindings/memory-cli-shared.d.ts +7 -9
  73. package/dist/internal/engine/bindings/memory-cli-shared.js +1 -2
  74. package/dist/internal/engine/bindings/memory-forget-tool.d.ts +1 -3
  75. package/dist/internal/engine/bindings/memory-forget-tool.js +2 -3
  76. package/dist/internal/engine/bindings/memory-list-tool.d.ts +1 -3
  77. package/dist/internal/engine/bindings/memory-list-tool.js +2 -3
  78. package/dist/internal/engine/bindings/memory-recall-tool.d.ts +1 -3
  79. package/dist/internal/engine/bindings/memory-recall-tool.js +3 -4
  80. package/dist/internal/engine/bindings/memory-reflection-resolve-tool.d.ts +1 -3
  81. package/dist/internal/engine/bindings/memory-reflection-resolve-tool.js +3 -4
  82. package/dist/internal/engine/bindings/memory-stats-tool.d.ts +1 -3
  83. package/dist/internal/engine/bindings/memory-stats-tool.js +3 -4
  84. package/dist/internal/engine/bindings/memory-store-tool.d.ts +1 -3
  85. package/dist/internal/engine/bindings/memory-store-tool.js +6 -7
  86. package/dist/internal/engine/bindings/memory-tool-access.d.ts +3 -5
  87. package/dist/internal/engine/bindings/memory-tool-access.js +2 -3
  88. package/dist/internal/engine/bindings/memory-tool-formatting.d.ts +1 -3
  89. package/dist/internal/engine/bindings/memory-tool-formatting.js +2 -3
  90. package/dist/internal/engine/bindings/memory-tool-results.d.ts +3 -5
  91. package/dist/internal/engine/bindings/memory-tool-results.js +2 -3
  92. package/dist/internal/engine/bindings/memory-tool-schemas.d.ts +9 -11
  93. package/dist/internal/engine/bindings/memory-tool-schemas.js +2 -3
  94. package/dist/internal/engine/bindings/memory-update-tool.d.ts +1 -3
  95. package/dist/internal/engine/bindings/memory-update-tool.js +5 -6
  96. package/dist/internal/engine/bindings/sno-station-mem-ambient-learning-hook.d.ts +7 -9
  97. package/dist/internal/engine/bindings/sno-station-mem-ambient-learning-hook.js +8 -9
  98. package/dist/internal/engine/bindings/sno-station-mem-auto-recall-hook.d.ts +7 -9
  99. package/dist/internal/engine/bindings/sno-station-mem-auto-recall-hook.js +6 -7
  100. package/dist/internal/engine/bindings/sno-station-mem-hook-types.d.ts +1 -3
  101. package/dist/internal/engine/bindings/sno-station-mem-insight-distill-factory.d.ts +8 -10
  102. package/dist/internal/engine/bindings/sno-station-mem-insight-distill-factory.js +4 -5
  103. package/dist/internal/engine/bindings/sno-station-mem-message-transcript.d.ts +2 -4
  104. package/dist/internal/engine/bindings/sno-station-mem-message-transcript.js +5 -6
  105. package/dist/internal/engine/bindings/sno-station-mem-reset-hook.d.ts +6 -8
  106. package/dist/internal/engine/bindings/sno-station-mem-reset-hook.js +1 -2
  107. package/dist/internal/engine/bindings/sno-station-mem-runtime-mode.d.ts +2 -4
  108. package/dist/internal/engine/bindings/sno-station-mem-runtime-mode.js +4 -5
  109. package/dist/internal/engine/bindings/sno-station-mem-session-state.d.ts +1 -3
  110. package/dist/internal/engine/bindings/sno-station-mem-session-state.js +1 -2
  111. package/dist/internal/engine/eval/trace.d.ts +1 -1
  112. package/dist/internal/engine/eval/trace.js +1 -2
  113. package/dist/internal/engine/extraction/ambient-learning-text-normalizer.d.ts +1 -1
  114. package/dist/internal/engine/extraction/ambient-learning-text-normalizer.js +1 -2
  115. package/dist/internal/engine/extraction/atomic-memory-extraction.d.ts +1 -1
  116. package/dist/internal/engine/extraction/atomic-memory-extraction.js +1 -2
  117. package/dist/internal/engine/extraction/b-profile-section-dictionary-provider.d.ts +1 -1
  118. package/dist/internal/engine/extraction/b-profile-section-dictionary-provider.js +1 -2
  119. package/dist/internal/engine/extraction/b-profile-section-rekey.d.ts +6 -8
  120. package/dist/internal/engine/extraction/b-profile-section-rekey.js +4 -5
  121. package/dist/internal/engine/extraction/capture-policy-detector.d.ts +1 -1
  122. package/dist/internal/engine/extraction/capture-policy-detector.js +1 -2
  123. package/dist/internal/engine/extraction/embedding-provider-client.d.ts +1 -1
  124. package/dist/internal/engine/extraction/embedding-provider-client.js +1 -2
  125. package/dist/internal/engine/extraction/extraction-text-sanitizer.d.ts +1 -1
  126. package/dist/internal/engine/extraction/extraction-text-sanitizer.js +3 -4
  127. package/dist/internal/engine/extraction/memory-metadata-codec.d.ts +2 -2
  128. package/dist/internal/engine/extraction/memory-metadata-codec.js +1 -2
  129. package/dist/internal/engine/extraction/memory-temporality-classifier.d.ts +1 -1
  130. package/dist/internal/engine/extraction/memory-temporality-classifier.js +1 -2
  131. package/dist/internal/engine/i18n/all-resources.d.ts +1 -1
  132. package/dist/internal/engine/i18n/all-resources.js +1 -2
  133. package/dist/internal/engine/i18n/locales.d.ts +1 -1
  134. package/dist/internal/engine/i18n/locales.js +1 -2
  135. package/dist/internal/engine/i18n/res/_types.d.ts +1 -1
  136. package/dist/internal/engine/i18n/res/_types.js +1 -2
  137. package/dist/internal/engine/observability/adapter.d.ts +1 -1
  138. package/dist/internal/engine/observability/adapter.js +1 -2
  139. package/dist/internal/engine/observability/best-effort.d.ts +1 -1
  140. package/dist/internal/engine/observability/best-effort.js +1 -2
  141. package/dist/internal/engine/observability/early-diagnostics.js +1 -2
  142. package/dist/internal/engine/observability/memory-snapshot.d.ts +1 -1
  143. package/dist/internal/engine/observability/memory-snapshot.js +1 -2
  144. package/dist/internal/engine/observability/observable-embedder.d.ts +1 -1
  145. package/dist/internal/engine/observability/observable-embedder.js +2 -3
  146. package/dist/internal/engine/observability/observable-llm-client.d.ts +1 -1
  147. package/dist/internal/engine/observability/observable-llm-client.js +2 -3
  148. package/dist/internal/engine/observability/observable-memory-store.d.ts +1 -1
  149. package/dist/internal/engine/observability/observable-memory-store.js +4 -5
  150. package/dist/internal/engine/observability/observable-retriever.d.ts +1 -1
  151. package/dist/internal/engine/observability/observable-retriever.js +4 -5
  152. package/dist/internal/engine/observability/runtime-diagnostics.d.ts +2 -4
  153. package/dist/internal/engine/observability/runtime-diagnostics.js +6 -7
  154. package/dist/internal/engine/observability/session-registry.d.ts +1 -1
  155. package/dist/internal/engine/observability/session-registry.js +1 -2
  156. package/dist/internal/engine/observability/version-metadata.d.ts +1 -3
  157. package/dist/internal/engine/observability/version-metadata.js +1 -2
  158. package/dist/internal/engine/operations/daily-spend-estimator.d.ts +1 -1
  159. package/dist/internal/engine/operations/daily-spend-estimator.js +2 -3
  160. package/dist/internal/engine/operations/learning-file-maintenance.d.ts +1 -1
  161. package/dist/internal/engine/operations/learning-file-maintenance.js +3 -4
  162. package/dist/internal/engine/operations/memory-tier-promoter.d.ts +1 -1
  163. package/dist/internal/engine/operations/memory-tier-promoter.js +1 -2
  164. package/dist/internal/engine/operations/runtime-audit-log.d.ts +2 -2
  165. package/dist/internal/engine/operations/runtime-audit-log.js +1 -1
  166. package/dist/internal/engine/provider/canonical-memory-corpus.d.ts +2 -4
  167. package/dist/internal/engine/provider/canonical-memory-corpus.js +2 -3
  168. package/dist/internal/engine/provider/provider-registration.d.ts +7 -9
  169. package/dist/internal/engine/provider/provider-registration.js +1 -2
  170. package/dist/internal/engine/provider/provider-row-renderer.d.ts +2 -4
  171. package/dist/internal/engine/provider/provider-row-renderer.js +2 -3
  172. package/dist/internal/engine/provider/provider-types.d.ts +1 -1
  173. package/dist/internal/engine/reflection/daily-log-generator.d.ts +1 -1
  174. package/dist/internal/engine/reflection/daily-log-generator.js +1 -2
  175. package/dist/internal/engine/reflection/reflection-command-hooks.d.ts +1 -1
  176. package/dist/internal/engine/reflection/reflection-command-hooks.js +1 -2
  177. package/dist/internal/engine/reflection/reflection-deps.d.ts +1 -1
  178. package/dist/internal/engine/reflection/reflection-embedded-generator.d.ts +1 -1
  179. package/dist/internal/engine/reflection/reflection-embedded-generator.js +1 -2
  180. package/dist/internal/engine/reflection/reflection-injection-hooks.d.ts +1 -1
  181. package/dist/internal/engine/reflection/reflection-injection-hooks.js +3 -4
  182. package/dist/internal/engine/reflection/reflection-lifecycle-hooks.d.ts +1 -1
  183. package/dist/internal/engine/reflection/reflection-lifecycle-hooks.js +3 -4
  184. package/dist/internal/engine/reflection/strategy-hook-runner.d.ts +3 -3
  185. package/dist/internal/engine/reflection/strategy-hook-runner.js +2 -2
  186. package/dist/internal/engine/rem/classifier.d.ts +1 -1
  187. package/dist/internal/engine/rem/classifier.js +1 -2
  188. package/dist/internal/engine/rem/index.d.ts +3 -3
  189. package/dist/internal/engine/rem/index.js +18 -36
  190. package/dist/internal/engine/rem/types.d.ts +1 -1
  191. package/dist/internal/engine/rem/types.js +1 -2
  192. package/dist/internal/engine/retrieval/access-tracker.d.ts +1 -1
  193. package/dist/internal/engine/retrieval/access-tracker.js +1 -2
  194. package/dist/internal/engine/retrieval/intent-analyzer.d.ts +1 -1
  195. package/dist/internal/engine/retrieval/intent-analyzer.js +1 -2
  196. package/dist/internal/engine/retrieval/retrieval-gate.d.ts +1 -1
  197. package/dist/internal/engine/retrieval/retrieval-gate.js +1 -2
  198. package/dist/internal/engine/retrieval/retriever.d.ts +1 -1
  199. package/dist/internal/engine/retrieval/retriever.js +1 -2
  200. package/dist/internal/engine/security/memory-scope-policy.d.ts +1 -1
  201. package/dist/internal/engine/security/memory-scope-policy.js +1 -2
  202. package/dist/internal/engine/security/redact.d.ts +1 -1
  203. package/dist/internal/engine/security/redact.js +1 -2
  204. package/dist/internal/engine/security/scopes.d.ts +2 -2
  205. package/dist/internal/engine/security/scopes.js +2 -2
  206. package/dist/internal/engine/shared/errors.d.ts +1 -1
  207. package/dist/internal/engine/shared/errors.js +1 -2
  208. package/dist/internal/engine/shared/i18n-text.d.ts +1 -1
  209. package/dist/internal/engine/shared/i18n-text.js +1 -2
  210. package/dist/internal/engine/shared/iso-date-time.d.ts +1 -3
  211. package/dist/internal/engine/shared/iso-date-time.js +1 -2
  212. package/dist/internal/engine/shared/lru.d.ts +1 -1
  213. package/dist/internal/engine/shared/lru.js +1 -2
  214. package/dist/internal/engine/shared/memory-kind-policy.d.ts +1 -1
  215. package/dist/internal/engine/shared/memory-kind-policy.js +1 -2
  216. package/dist/internal/engine/shared/paths.d.ts +2 -2
  217. package/dist/internal/engine/shared/paths.js +1 -2
  218. package/dist/internal/engine/shared/types.d.ts +2 -2
  219. package/dist/internal/engine/shared/types.js +2 -3
  220. package/dist/internal/engine/shared/utils.d.ts +1 -1
  221. package/dist/internal/engine/shared/utils.js +1 -2
  222. package/dist/internal/engine/telemetry/memory-telemetry-api.d.ts +5 -9
  223. package/dist/internal/engine/telemetry/memory-telemetry-api.js +6 -8
  224. package/dist/internal/engine/telemetry/memory-telemetry-observability.d.ts +2 -4
  225. package/dist/internal/engine/telemetry/memory-telemetry-observability.js +1 -2
  226. package/dist/internal/engine/telemetry/memory-telemetry-outbox.d.ts +1 -1
  227. package/dist/internal/engine/telemetry/memory-telemetry-outbox.js +4 -5
  228. package/dist/internal/engine/telemetry/memory-telemetry-types.d.ts +1 -1
  229. package/dist/internal/engine/telemetry/memory-telemetry-types.js +1 -2
  230. package/dist/internal/engine/telemetry/observe-ledger.d.ts +3 -5
  231. package/dist/internal/engine/telemetry/observe-ledger.js +2 -3
  232. package/dist/internal/model/agent-llm-port.d.ts +1 -1
  233. package/dist/internal/model/llm-client.d.ts +2 -2
  234. package/dist/internal/model/llm-client.js +2 -2
  235. package/dist/internal/model/llm-failure.d.ts +1 -3
  236. package/dist/internal/model/llm-failure.js +1 -2
  237. package/dist/internal/model/llm-mode-routing.d.ts +1 -3
  238. package/dist/internal/model/llm-mode-routing.js +2 -3
  239. package/dist/internal/store/atomic-memory-cutover-sql.d.ts +2 -4
  240. package/dist/internal/store/atomic-memory-cutover-sql.js +2 -3
  241. package/dist/internal/store/connection.d.ts +1 -1
  242. package/dist/internal/store/connection.js +1 -2
  243. package/dist/internal/store/data-bootstrap.d.ts +1 -1
  244. package/dist/internal/store/data-bootstrap.js +1 -2
  245. package/dist/internal/store/data-paths.d.ts +1 -1
  246. package/dist/internal/store/data-paths.js +1 -2
  247. package/dist/internal/store/maintenance.d.ts +4 -6
  248. package/dist/internal/store/maintenance.js +18 -25
  249. package/dist/internal/store/memory-kinds-cutover-migrator.d.ts +1 -3
  250. package/dist/internal/store/memory-kinds-cutover-migrator.js +4 -5
  251. package/dist/internal/store/migrations.d.ts +2 -4
  252. package/dist/internal/store/migrations.js +2 -3
  253. package/dist/internal/store/sqlite-runtime.d.ts +1 -1
  254. package/dist/internal/store/sqlite-runtime.js +2 -3
  255. package/dist/internal/store/store.d.ts +2 -2
  256. package/dist/internal/store/store.js +1 -2
  257. package/dist/{learning-file-maintenance-9b-Ut6Kv.d.ts → learning-file-maintenance-ZT6kHwb1.d.ts} +0 -2
  258. package/dist/{llm-client-nWW1o1F6.d.ts → llm-client-Bar23wPq.d.ts} +1 -5
  259. package/dist/{llm-client-ByzZRemn.js → llm-client-BtbX4af4.js} +43 -17
  260. package/dist/{locales-JxGmkG6t.d.ts → locales-CCZtQJq7.d.ts} +0 -2
  261. package/dist/{log-site-catalog.generated-DsvDgHJa.js → log-site-catalog.generated-Dtiih6m2.js} +92 -94
  262. package/dist/log-site-catalog.json +1 -1
  263. package/dist/{lru-DyoaTyIs.d.ts → lru-DYiuPJFA.d.ts} +0 -2
  264. package/dist/memdump.d.ts +1 -3
  265. package/dist/memdump.js +1 -2
  266. package/dist/{memory-entry-projector-B36Nwsi_.js → memory-entry-projector-CkoEuLv6.js} +17 -30
  267. package/dist/{memory-kind-policy-BMebgugU.d.ts → memory-kind-policy-BRjhwhSl.d.ts} +1 -3
  268. package/dist/{memory-metadata-codec-H8BniJM3.d.ts → memory-metadata-codec-CcYw0t6c.d.ts} +1 -7
  269. package/dist/{memory-metadata-codec-DL1sbJiN.js → memory-metadata-codec-Cglikqj8.js} +4 -8
  270. package/dist/{memory-runtime-DXr1VO1p.js → memory-runtime-B9fG-sNo.js} +240 -298
  271. package/dist/{memory-scope-policy-1gg5QlWZ.d.ts → memory-scope-policy-4WfFFs_H.d.ts} +0 -4
  272. package/dist/{memory-scope-policy--TiLZnrE.js → memory-scope-policy-Dg2LHZ25.js} +3 -6
  273. package/dist/{memory-snapshot-CKnQovB5.d.ts → memory-snapshot-8RxJpqig.d.ts} +3 -5
  274. package/dist/{memory-source-order-YMRoeDLd.js → memory-source-order-BTo_ix2y.js} +1 -2
  275. package/dist/{memory-store-base-BHYXgsCq.d.ts → memory-store-base-CHBfMmZb.d.ts} +11 -21
  276. package/dist/{memory-store-shared-pOb59ScU.js → memory-store-shared-B-zOxk_Q.js} +4 -6
  277. package/dist/{memory-store-write-validation-B_hDG2zf.js → memory-store-write-validation-BbvoN3Li.js} +4 -7
  278. package/dist/{memory-telemetry-incidents-BWA9kcZx.js → memory-telemetry-incidents-Dp8GVD2Q.js} +1 -2
  279. package/dist/{memory-telemetry-metadata-CA7W8tK6.js → memory-telemetry-metadata-PMKWCAbj.js} +1 -2
  280. package/dist/{memory-telemetry-outbox-ddTdImt7.d.ts → memory-telemetry-outbox-D-L9c3Nw.d.ts} +2 -4
  281. package/dist/{memory-telemetry-receipts-MAJecvXQ.d.ts → memory-telemetry-receipts-Boj2CE16.d.ts} +1 -5
  282. package/dist/{memory-telemetry-receipts-cjIQGwdp.js → memory-telemetry-receipts-ComlCOro.js} +2 -4
  283. package/dist/{memory-telemetry-types-CufVmrCs.d.ts → memory-telemetry-types-Bg8U0Drl.d.ts} +0 -2
  284. package/dist/{memory-temporality-classifier-Bauwnls7.js → memory-temporality-classifier-Bm0EiCN8.js} +7 -9
  285. package/dist/{memory-temporality-classifier-Wi6WWeAj.d.ts → memory-temporality-classifier-HI9KeEsM.d.ts} +1 -3
  286. package/dist/{memory-tier-promoter-m60-RlAj.d.ts → memory-tier-promoter-CqNT2qFj.d.ts} +1 -3
  287. package/dist/{memory-tool-dependencies-Cc4SJMtd.js → memory-tool-dependencies-BxVJ-bHs.js} +6 -6
  288. package/dist/memory-tool-dependencies-KsEWfLkV.d.ts +14 -0
  289. package/dist/{model-call-table-CPyQfBJ6.js → model-call-table-BxGwmwv0.js} +14 -10
  290. package/dist/{model-reply-text-CKopStP2.js → model-reply-text-C7jEWDXG.js} +2 -4
  291. package/dist/{observable-embedder-0FwxJMhJ.d.ts → observable-embedder-DunGMyQg.d.ts} +2 -4
  292. package/dist/{observable-llm-client-DY7w1Fj1.d.ts → observable-llm-client-D_mOM5Pn.d.ts} +3 -5
  293. package/dist/{observable-memory-store-C25Q_hoW.d.ts → observable-memory-store-DUhat-p3.d.ts} +5 -7
  294. package/dist/{observable-retriever-Cs9Bwzq6.d.ts → observable-retriever-7TmJk1HE.d.ts} +6 -8
  295. package/dist/{operation-cancellation-QcwC4mDX.js → operation-cancellation-mqfQz0ka.js} +1 -2
  296. package/dist/paths-BySyy_eq.d.ts +1 -0
  297. package/dist/{plugin-config-observe-schema-ue9XxUj_.js → plugin-config-observe-schema-CwHVuVhu.js} +2 -3
  298. package/dist/{plugin-config-schema-DQh5njrS.d.ts → plugin-config-schema-DO4FhsYc.d.ts} +4 -24
  299. package/dist/{plugin-config-schema-D-IoHmis.js → plugin-config-schema-sJbkVY0-.js} +8 -14
  300. package/dist/{profile-CcvVR6K8.d.ts → profile-nVQCcv-0.d.ts} +1 -3
  301. package/dist/{profile-section-writer-CR-WWIoB.js → profile-section-writer-DSX6R3GF.js} +10 -15
  302. package/dist/{provider-registration-qLSA9CQl.js → provider-registration-lujpiuef.js} +5 -8
  303. package/dist/{provider-runtime-types-DFhtdA6d.d.ts → provider-runtime-types-peajl6V-.d.ts} +0 -2
  304. package/dist/{provider-types-CZGm6v88.d.ts → provider-types-DIU9efEA.d.ts} +1 -3
  305. package/dist/{redact-BTIZcHQL.d.ts → redact-BnUxXQUE.d.ts} +0 -2
  306. package/dist/{reflection-command-hooks-BRLqVNCi.d.ts → reflection-command-hooks-CvkTlbOa.d.ts} +5 -7
  307. package/dist/{reflection-command-hooks-Der9aX0e.js → reflection-command-hooks-Dyckr_Ma.js} +11 -14
  308. package/dist/{reflection-deps-C0TJ-gpU.d.ts → reflection-deps-AqE-y4Ba.d.ts} +6 -8
  309. package/dist/{reflection-embedded-generator-Cs59hWYr.d.ts → reflection-embedded-generator-BJol6by2.d.ts} +6 -8
  310. package/dist/{reflection-embedded-generator-BEdDusPV.js → reflection-embedded-generator-i8KHqMpr.js} +5 -8
  311. package/dist/{reflection-injection-hooks-Cy4bRemm.d.ts → reflection-injection-hooks-C3PeK3QM.d.ts} +7 -11
  312. package/dist/{reflection-lifecycle-hooks-C-lf00DB.d.ts → reflection-lifecycle-hooks-Cjvwic3J.d.ts} +4 -6
  313. package/dist/{relation-dictionary-Cev1kyLe.js → relation-dictionary-QVBewRQ1.js} +3 -6
  314. package/dist/release-download.d.ts +1 -3
  315. package/dist/release-download.js +1 -2
  316. package/dist/{relevant-memories-context-m8nuFZcM.js → relevant-memories-context-CvMB_zj8.js} +1 -2
  317. package/dist/rem-batch-executor-BSWXFOLH.js +1 -0
  318. package/dist/{rem-consumer-retrieval-BhS1ivcd.js → rem-consumer-retrieval-DXeqknml.js} +3 -5
  319. package/dist/{rem-trigger-CBfyJVfh.js → rem-trigger-BaJa5FS0.js} +206 -345
  320. package/dist/{resolver-Dy-hnjCR.js → resolver-DQ47zbPS.js} +2 -4
  321. package/dist/{results-BkMsHy7M.js → results-DERE8r4S.js} +2 -3
  322. package/dist/{retrieval-gate-Bx2Zg7jD.d.ts → retrieval-gate-XvDp3HuK.d.ts} +0 -2
  323. package/dist/{retriever-2RJYAvlD.d.ts → retriever-Cv-hwHpH.d.ts} +10 -22
  324. package/dist/{retriever-C54bXeDh.js → retriever-DRtPp86k.js} +12 -22
  325. package/dist/{rolldown-runtime-D7D4PA-g.js → rolldown-runtime-D8jQpDG7.js} +1 -2
  326. package/dist/{runtime-audit-log-DK6xAYxh.js → runtime-audit-log-4NJsojEj.js} +2 -4
  327. package/dist/{runtime-audit-log-D2Hqk_kl.d.ts → runtime-audit-log-CJK9iVX9.d.ts} +1 -3
  328. package/dist/{scopes-CtrY-YQ3.d.ts → scopes-BcdyFdfw.d.ts} +1 -5
  329. package/dist/{scopes-a4Kly9n7.js → scopes-DQjbRC2q.js} +2 -3
  330. package/dist/{server-BlbG5uOM.js → server-DPd3Xef2.js} +10 -15
  331. package/dist/{session-registry-DBoE7AvZ.d.ts → session-registry-Dft8oCDg.d.ts} +0 -2
  332. package/dist/sidecar/main.js +3 -4
  333. package/dist/{signed-registry-constants-Bv0fgZ8Q.d.ts → signed-registry-constants-BfycrCI1.d.ts} +0 -2
  334. package/dist/{signed-registry-constants-yq3DlG3B.js → signed-registry-constants-CO2vv_QJ.js} +1 -2
  335. package/dist/{sno-station-mem-runtime-dependencies-DsidkZi2.js → sno-station-mem-runtime-dependencies-DITNvfkR.js} +14 -14
  336. package/dist/sno-station-mem-runtime-dependencies-DorPRtTM.d.ts +29 -0
  337. package/dist/{sqlite-runtime-L_ywirTm.d.ts → sqlite-runtime-Cea2knhj.d.ts} +0 -2
  338. package/dist/{store-Bz0y76cJ.d.ts → store-AGtE-n72.d.ts} +4 -14
  339. package/dist/{store-Bja1tVFw.js → store-YX1_c1NH.js} +44 -76
  340. package/dist/{strategy-hook-runner-F-ruiw48.js → strategy-hook-runner-CwqZ1orf.js} +5 -7
  341. package/dist/{strategy-hook-runner-vbrWiDbK.d.ts → strategy-hook-runner-DqJpzS9C.d.ts} +7 -9
  342. package/dist/{token-counter-BD1f48Km.js → token-counter-N9I9iWq1.js} +1 -2
  343. package/dist/{trace-C1JxMfs-.d.ts → trace-CX26YO5M.d.ts} +0 -2
  344. package/dist/{types-El7jViCz.d.ts → types-CMbBmMJB.d.ts} +1 -5
  345. package/dist/{types-pVomjzqR.d.ts → types-qOSF58Ck.d.ts} +0 -2
  346. package/dist/{unplaced-candidate-migration-BCcdQkcx.js → unplaced-candidate-migration-BFQqjIDP.js} +8 -14
  347. package/dist/{utils-CDw2ttQf.d.ts → utils-CdhxW1G9.d.ts} +0 -2
  348. package/package.json +1 -1
  349. package/settings.default.json +7 -7
  350. package/skills/extract-atomic-memory/SKILL.md +4 -3
  351. package/skills/extract-atomic-memory/references/capture.md +3 -2
  352. package/dist/memory-tool-dependencies-D2fOC-KL.d.ts +0 -14
  353. package/dist/paths-obFSsJv3.d.ts +0 -1
  354. package/dist/rem-batch-executor-DiU8hSGc.js +0 -2
  355. package/dist/sno-station-mem-runtime-dependencies-ByI3b-wB.d.ts +0 -31
package/README.md CHANGED
@@ -28,7 +28,7 @@ Who it is for: you do not use this package directly. Follow the
28
28
  plugins use to reach the service.
29
29
 
30
30
  ```bash
31
- npm install @snoai/memory@1.6.0
31
+ npm install @snoai/memory@1.7.1
32
32
  ```
33
33
 
34
34
  Needs Node.js 22.22.3+, 24.15.0+ or 25.9.0+. Licensed under Apache-2.0.
@@ -1,4 +1,3 @@
1
- //#region src/engine/i18n/res/_types.d.ts
2
1
  type TemporalIntervalAnchor = "today" | "yesterday" | "tomorrow" | "day_after_tomorrow" | "this_week" | "next_week" | "last_week" | "this_month" | "next_month" | "tonight" | "this_morning" | "recent";
3
2
  interface TemporalPhraseRule {
4
3
  patterns: ReadonlyArray<RegExp>;
@@ -99,5 +98,4 @@ interface LocaleResources {
99
98
  }
100
99
  type Namespace = keyof LocaleResources;
101
100
  declare const ALL_NAMESPACES: ReadonlyArray<Namespace>;
102
- //#endregion
103
101
  export { LocaleResources as a, ReflectionErrorSignalLike as c, TemporalIntervalAnchor as d, TemporalPhraseRule as f, ExtractionPromptsNs as i, ReflectionPromptsNs as l, CaptureTriggersNs as n, Namespace as o, ToolDescriptionsNs as p, CategoryRoutingNs as r, NoiseNs as s, ALL_NAMESPACES as t, ReflectionSliceClassifiersNs as u };
@@ -1,8 +1,7 @@
1
- import { v as MemoryMetadata } from "./types-El7jViCz.js";
2
- import { tn as RecallLifecycleConfig } from "./index-CJrMFlAU.js";
3
- import { C as MemoryStore } from "./memory-store-base-BHYXgsCq.js";
4
- import "./store-Bz0y76cJ.js";
5
- //#region src/engine/retrieval/access-tracker.d.ts
1
+ import { v as MemoryMetadata } from "./types-CMbBmMJB.js";
2
+ import { tn as RecallLifecycleConfig } from "./index-oFJyQfvq.js";
3
+ import { C as MemoryStore } from "./memory-store-base-CHBfMmZb.js";
4
+ import "./store-AGtE-n72.js";
6
5
  interface AccessMetadata {
7
6
  readonly accessCount: number;
8
7
  readonly lastAccessedAt: number;
@@ -106,5 +105,4 @@ declare class AccessTracker {
106
105
  /** Removes timer while preserving access reinforcement metadata invariants. */
107
106
  private clearTimer;
108
107
  }
109
- //#endregion
110
108
  export { computeEffectiveHalfLife as a, buildUpdatedMetadata as i, AccessTracker as n, parseAccessMetadata as o, AccessTrackerOptions as r, AccessMetadata as t };
@@ -1,8 +1,7 @@
1
- import { t as PluginConfig } from "./plugin-config-schema-DQh5njrS.js";
2
- import "./types-El7jViCz.js";
3
- import { t as ObserveLogger } from "./best-effort-BPZSzKk0.js";
1
+ import { t as PluginConfig } from "./plugin-config-schema-DO4FhsYc.js";
2
+ import "./types-CMbBmMJB.js";
3
+ import { t as ObserveLogger } from "./best-effort-DvyP9avp.js";
4
4
  import { AgentId, EventType, JsonObject } from "@snoai/observability";
5
- //#region src/engine/observability/cost-aggregator.d.ts
6
5
  type CostSummaryPayload = JsonObject & {
7
6
  session_uuid: string;
8
7
  tokens_in: number;
@@ -29,8 +28,6 @@ declare class CostAggregator {
29
28
  summaryAndDelete(sessionUuid: string): CostSummaryPayload;
30
29
  clear(): void;
31
30
  }
32
- //#endregion
33
- //#region src/engine/observability/adapter.d.ts
34
31
  type EmitInput = {
35
32
  eventType: EventType;
36
33
  agentId?: AgentId;
@@ -66,5 +63,4 @@ declare class PluginObservability {
66
63
  flush(options?: FlushOptions): Promise<void>;
67
64
  shutdown(): Promise<void>;
68
65
  }
69
- //#endregion
70
66
  export { PluginObservability as n, EmitInput as t };
@@ -2,7 +2,7 @@ import { bestEffort, bestEffortSync } from "./internal/engine/observability/best
2
2
  import { readInstalledPackageVersion, readSnoStationCoreWorkspaceVersion } from "./internal/engine/observability/version-metadata.js";
3
3
  import { createLogger } from "@snoai/utils/logger";
4
4
  import { createSnoObserve, laneForEventType } from "@snoai/observability";
5
- //#region src/engine/observability/cost-aggregator.ts
5
+ // src/engine/observability/cost-aggregator.ts
6
6
  function emptyCounters() {
7
7
  return {
8
8
  hostAgentPromptTokens: 0,
@@ -84,8 +84,7 @@ var CostAggregator = class {
84
84
  this.sessions.clear();
85
85
  }
86
86
  };
87
- //#endregion
88
- //#region src/engine/observability/adapter.ts
87
+ // src/engine/observability/adapter.ts
89
88
  /** @file adapter.ts
90
89
  * @purpose Adapts plugin events to the public @snoai/observability SDK.
91
90
  * @boundary Plugin emits only public SDK events; the SDK owns buffering and HTTP delivery.
@@ -330,5 +329,4 @@ var PluginObservability = class {
330
329
  }, this.logger);
331
330
  }
332
331
  };
333
- //#endregion
334
332
  export { PluginObservability as t };
@@ -1,4 +1,3 @@
1
- //#region src/model/agent-llm-port.d.ts
2
1
  /** @file agent-llm-port.ts
3
2
  * @purpose Universal call surface for borrowing the host agent's LLM (the agent-host-seam transport).
4
3
  * @boundary Types and result contracts only; host bindings live in plugin/, dispatch in llm-client.ts.
@@ -56,5 +55,4 @@ interface AgentLlmPort {
56
55
  /** Whether a host is listening to answer the next call; absent means the port cannot tell. */
57
56
  reachable?(): Promise<boolean>;
58
57
  }
59
- //#endregion
60
58
  export { AgentLlmPort as n, AgentLlmRequest as r, AgentLlmCompletion as t };
@@ -1,6 +1,5 @@
1
- import { n as Locale } from "./locales-JxGmkG6t.js";
2
- import { a as LocaleResources } from "./_types-CUKHSRkS.js";
3
- //#region src/engine/i18n/all-resources.d.ts
1
+ import { n as Locale } from "./locales-CCZtQJq7.js";
2
+ import { a as LocaleResources } from "./_types-CZDWRxyi.js";
4
3
  /**
5
4
  * Static union of every supported-locale's resource bundle.
6
5
  *
@@ -14,5 +13,4 @@ import { a as LocaleResources } from "./_types-CUKHSRkS.js";
14
13
  */
15
14
  declare const ALL_RESOURCES: ReadonlyArray<LocaleResources>;
16
15
  declare const RESOURCES_BY_LOCALE: Record<Locale, LocaleResources>;
17
- //#endregion
18
16
  export { RESOURCES_BY_LOCALE as n, ALL_RESOURCES as t };
@@ -1,9 +1,9 @@
1
- import { r as atomicExtractionSkillReference } from "./atomic-extraction-skill-CcXmuCqL.js";
1
+ import { r as atomicExtractionSkillReference } from "./atomic-extraction-skill-5lAqr8BM.js";
2
2
  import path from "node:path";
3
3
  import { randomUUID } from "node:crypto";
4
4
  import { existsSync, readFileSync } from "node:fs";
5
5
  import { fileURLToPath } from "node:url";
6
- //#region src/engine/i18n/res/locale-resource-helpers.ts
6
+ // src/engine/i18n/res/locale-resource-helpers.ts
7
7
  function defineLocaleResources(base, extras) {
8
8
  const categoryRouting = base.captureTriggers.categoryRouting ?? {
9
9
  identity: [base.captureTriggers.identityPattern],
@@ -27,13 +27,11 @@ function defineLocaleResources(base, extras) {
27
27
  reflectionSliceClassifiers: extras.reflectionSliceClassifiers
28
28
  };
29
29
  }
30
- //#endregion
31
- //#region src/engine/i18n/res/date-resolution-prompt.ts
30
+ // src/engine/i18n/res/date-resolution-prompt.ts
32
31
  function buildDateResolutionPrompt() {
33
32
  return `${atomicExtractionSkillReference("calendar-meaning")}\nJudge only the time of the supplied claim. Return reason and time in the supplied JSON schema.`;
34
33
  }
35
- //#endregion
36
- //#region src/engine/extraction/temporal-resolution-skill.ts
34
+ // src/engine/extraction/temporal-resolution-skill.ts
37
35
  /** @file temporal-resolution-skill.ts
38
36
  * @purpose Loads the model-readable relative-time method shipped with the plugin.
39
37
  * @boundary Package-relative read and deterministic section selection only.
@@ -65,8 +63,7 @@ const WITHOUT_SESSION_ANCHOR = readSection("Without Session Anchor");
65
63
  function buildTemporalResolutionRule(sessionDateTime, _sessionTimezone) {
66
64
  return sessionDateTime ? WITH_SESSION_ANCHOR : WITHOUT_SESSION_ANCHOR;
67
65
  }
68
- //#endregion
69
- //#region src/engine/i18n/res/de/extraction-prompt-boundary.ts
66
+ // src/engine/i18n/res/de/extraction-prompt-boundary.ts
70
67
  /** @file extraction-prompt-boundary.ts
71
68
  * @purpose Provides locale-specific prompt fence and temporal boundary helpers.
72
69
  * @boundary LLM prompt assembly internals for this locale.
@@ -312,8 +309,7 @@ legacy category event <- reject
312
309
  "abstract": "User's son attends preschool: [Preschool Name]" <- placeholder, destroys recall
313
310
  "abstract": "User's team members and their locations" <- collapsed concrete names
314
311
  \`\`\``;
315
- //#endregion
316
- //#region src/engine/i18n/res/de/extraction-prompt-rules.ts
312
+ // src/engine/i18n/res/de/extraction-prompt-rules.ts
317
313
  /** @file extraction-prompt-rules.ts
318
314
  * @purpose Holds locale-specific extraction rule text blocks.
319
315
  * @boundary LLM prompt assembly internals for this locale.
@@ -405,8 +401,7 @@ Wenn der Benutzer sagt "migrated from X to Y" / "switched from X to Y" /
405
401
  Änderung ALS AUCH eine \`profile\`-Memory für den aktualisierten Zustand aus.
406
402
  Siehe das Migrations-Few-Shot im Abschnitt extraction-prompt-examples.ts für
407
403
  die erforderliche Zwei-Memory-Ausgabeform.`;
408
- //#endregion
409
- //#region src/engine/i18n/res/de/extraction-prompts.ts
404
+ // src/engine/i18n/res/de/extraction-prompts.ts
410
405
  /** @file extraction-prompts.ts
411
406
  * @purpose Builds prompt text for structured memory extraction from conversation context.
412
407
  * @boundary Capture policy, JSON contracts, and LLM model behavior.
@@ -607,8 +602,7 @@ Return JSON format:
607
602
  "reason": "Decision reason"
608
603
  }`;
609
604
  }
610
- //#endregion
611
- //#region src/engine/i18n/res/de/reflection-prompts.ts
605
+ // src/engine/i18n/res/de/reflection-prompts.ts
612
606
  const REFLECTION_FALLBACK_MARKER$8 = "(fallback) Reflection-Generierung fehlgeschlagen; nur Minimalverweis gespeichert.";
613
607
  function buildReflectionPrompt$8(conversation, maxInputChars, toolErrorSignals = []) {
614
608
  const promptInput = conversation;
@@ -768,8 +762,7 @@ const resources$8 = defineLocaleResources({
768
762
  derivedLegacySignals: [/\b(gelernt|beobachtet|reflexion|änderung|verifizieren|nächster lauf)\b/i]
769
763
  }
770
764
  });
771
- //#endregion
772
- //#region src/engine/i18n/res/en/extraction-prompt-boundary.ts
765
+ // src/engine/i18n/res/en/extraction-prompt-boundary.ts
773
766
  /** @file extraction-prompt-boundary.ts
774
767
  * @purpose Provides locale-specific prompt fence and temporal boundary helpers.
775
768
  * @boundary LLM prompt assembly internals for this locale.
@@ -1015,8 +1008,7 @@ legacy category event <- reject
1015
1008
  "abstract": "User's son attends preschool: [Preschool Name]" <- placeholder, destroys recall
1016
1009
  "abstract": "User's team members and their locations" <- collapsed concrete names
1017
1010
  \`\`\``;
1018
- //#endregion
1019
- //#region src/engine/i18n/res/en/extraction-prompt-rules.ts
1011
+ // src/engine/i18n/res/en/extraction-prompt-rules.ts
1020
1012
  /** @file extraction-prompt-rules.ts
1021
1013
  * @purpose Holds locale-specific extraction rule text blocks.
1022
1014
  * @boundary LLM prompt assembly internals for this locale.
@@ -1106,8 +1098,7 @@ When the user says "migrated from X to Y" / "switched from X to Y" / "sold X,
1106
1098
  got Y": emit BOTH a dated \`episodic\` record for the change AND a \`profile\`
1107
1099
  record for the updated current state. See the migration few-shot in the examples
1108
1100
  section for the required two-memory output shape.`;
1109
- //#endregion
1110
- //#region src/engine/i18n/res/en/extraction-prompts.ts
1101
+ // src/engine/i18n/res/en/extraction-prompts.ts
1111
1102
  /** @file extraction-prompts.ts
1112
1103
  * @purpose Builds prompt text for structured memory extraction from conversation context.
1113
1104
  * @boundary Capture policy, JSON contracts, and LLM model behavior.
@@ -1308,8 +1299,7 @@ Return JSON format:
1308
1299
  "reason": "Decision reason"
1309
1300
  }`;
1310
1301
  }
1311
- //#endregion
1312
- //#region src/engine/i18n/res/en/reflection-prompts.ts
1302
+ // src/engine/i18n/res/en/reflection-prompts.ts
1313
1303
  const REFLECTION_FALLBACK_MARKER$7 = "(fallback) Reflection generation failed; storing minimal pointer only.";
1314
1304
  function buildReflectionPrompt$7(conversation, maxInputChars, toolErrorSignals = []) {
1315
1305
  const promptInput = conversation;
@@ -1474,8 +1464,7 @@ const resources$7 = defineLocaleResources({
1474
1464
  derivedLegacySignals: [/\b(this run|next run|learned|observed|reflection|derived|delta|verify|change)\b/i]
1475
1465
  }
1476
1466
  });
1477
- //#endregion
1478
- //#region src/engine/i18n/res/es/extraction-prompt-boundary.ts
1467
+ // src/engine/i18n/res/es/extraction-prompt-boundary.ts
1479
1468
  /** @file extraction-prompt-boundary.ts
1480
1469
  * @purpose Provides locale-specific prompt fence and temporal boundary helpers.
1481
1470
  * @boundary LLM prompt assembly internals for this locale.
@@ -1720,8 +1709,7 @@ legacy category event <- reject
1720
1709
  "abstract": "User's son attends preschool: [Preschool Name]" <- placeholder, destroys recall
1721
1710
  "abstract": "User's team members and their locations" <- collapsed concrete names
1722
1711
  \`\`\``;
1723
- //#endregion
1724
- //#region src/engine/i18n/res/es/extraction-prompt-rules.ts
1712
+ // src/engine/i18n/res/es/extraction-prompt-rules.ts
1725
1713
  /** @file extraction-prompt-rules.ts
1726
1714
  * @purpose Holds locale-specific extraction rule text blocks.
1727
1715
  * @boundary LLM prompt assembly internals for this locale.
@@ -1811,8 +1799,7 @@ Cuando el usuario diga "migrated from X to Y" / "switched from X to Y" /
1811
1799
  "sold X, got Y": emita TANTO un registro \`episodic\` fechado para el cambio
1812
1800
  COMO un registro \`profile\` para el estado actual actualizado. Vea el few-shot de migración
1813
1801
  en la sección de ejemplos para la forma de salida de dos memorias requerida.`;
1814
- //#endregion
1815
- //#region src/engine/i18n/res/es/extraction-prompts.ts
1802
+ // src/engine/i18n/res/es/extraction-prompts.ts
1816
1803
  /** @file extraction-prompts.ts
1817
1804
  * @purpose Builds prompt text for structured memory extraction from conversation context.
1818
1805
  * @boundary Capture policy, JSON contracts, and LLM model behavior.
@@ -2013,8 +2000,7 @@ Return JSON format:
2013
2000
  "reason": "Decision reason"
2014
2001
  }`;
2015
2002
  }
2016
- //#endregion
2017
- //#region src/engine/i18n/res/es/reflection-prompts.ts
2003
+ // src/engine/i18n/res/es/reflection-prompts.ts
2018
2004
  const REFLECTION_FALLBACK_MARKER$6 = "(fallback) Falló la generación de la reflexión; solo se almacena un puntero mínimo.";
2019
2005
  function buildReflectionPrompt$6(conversation, maxInputChars, toolErrorSignals = []) {
2020
2006
  const promptInput = conversation;
@@ -2173,8 +2159,7 @@ const resources$6 = defineLocaleResources({
2173
2159
  derivedLegacySignals: [/\b(aprendimos|observado|reflexión|reflexion|derivado|delta|verificar|cambio)\b/i]
2174
2160
  }
2175
2161
  });
2176
- //#endregion
2177
- //#region src/engine/i18n/res/fr/extraction-prompt-boundary.ts
2162
+ // src/engine/i18n/res/fr/extraction-prompt-boundary.ts
2178
2163
  /** @file extraction-prompt-boundary.ts
2179
2164
  * @purpose Provides locale-specific prompt fence and temporal boundary helpers.
2180
2165
  * @boundary LLM prompt assembly internals for this locale.
@@ -2419,8 +2404,7 @@ legacy category event <- reject
2419
2404
  "abstract": "User's son attends preschool: [Preschool Name]" <- placeholder, destroys recall
2420
2405
  "abstract": "User's team members and their locations" <- collapsed concrete names
2421
2406
  \`\`\``;
2422
- //#endregion
2423
- //#region src/engine/i18n/res/fr/extraction-prompt-rules.ts
2407
+ // src/engine/i18n/res/fr/extraction-prompt-rules.ts
2424
2408
  /** @file extraction-prompt-rules.ts
2425
2409
  * @purpose Holds locale-specific extraction rule text blocks.
2426
2410
  * @boundary LLM prompt assembly internals for this locale.
@@ -2506,8 +2490,7 @@ Quand l'utilisateur dit "migrated from X to Y" / "switched from X to Y" / "sold
2506
2490
  got Y" : émettez À LA FOIS un enregistrement \`episodic\` daté pour le changement ET un
2507
2491
  enregistrement \`profile\` pour l'état courant mis à jour. Voir le few-shot de migration
2508
2492
  pour la forme de sortie à deux memories requise.`;
2509
- //#endregion
2510
- //#region src/engine/i18n/res/fr/extraction-prompts.ts
2493
+ // src/engine/i18n/res/fr/extraction-prompts.ts
2511
2494
  /** @file extraction-prompts.ts
2512
2495
  * @purpose Builds prompt text for structured memory extraction from conversation context.
2513
2496
  * @boundary Capture policy, JSON contracts, and LLM model behavior.
@@ -2708,8 +2691,7 @@ Return JSON format:
2708
2691
  "reason": "Decision reason"
2709
2692
  }`;
2710
2693
  }
2711
- //#endregion
2712
- //#region src/engine/i18n/res/fr/reflection-prompts.ts
2694
+ // src/engine/i18n/res/fr/reflection-prompts.ts
2713
2695
  const REFLECTION_FALLBACK_MARKER$5 = "(fallback) Échec de la génération de la réflexion ; seul un pointeur minimal est stocké.";
2714
2696
  function buildReflectionPrompt$5(conversation, maxInputChars, toolErrorSignals = []) {
2715
2697
  const promptInput = conversation;
@@ -2865,8 +2847,7 @@ const resources$5 = defineLocaleResources({
2865
2847
  derivedLegacySignals: [/\b(appris|observé|observe|réflexion|reflexion|dérivé|delta|vérifier|changement)\b/i]
2866
2848
  }
2867
2849
  });
2868
- //#endregion
2869
- //#region src/engine/i18n/res/ja/extraction-prompt-boundary.ts
2850
+ // src/engine/i18n/res/ja/extraction-prompt-boundary.ts
2870
2851
  /** @file extraction-prompt-boundary.ts
2871
2852
  * @purpose Provides locale-specific prompt fence and temporal boundary helpers.
2872
2853
  * @boundary LLM prompt assembly internals for this locale.
@@ -3109,8 +3090,7 @@ legacy category event <- reject
3109
3090
  "abstract": "User's son attends preschool: [Preschool Name]" <- placeholder, destroys recall
3110
3091
  "abstract": "User's team members and their locations" <- collapsed concrete names
3111
3092
  \`\`\``;
3112
- //#endregion
3113
- //#region src/engine/i18n/res/ja/extraction-prompt-rules.ts
3093
+ // src/engine/i18n/res/ja/extraction-prompt-rules.ts
3114
3094
  /** @file extraction-prompt-rules.ts
3115
3095
  * @purpose Holds locale-specific extraction rule text blocks.
3116
3096
  * @boundary LLM prompt assembly internals for this locale.
@@ -3196,8 +3176,7 @@ SAME per-role entity の中に保持してください("Employment dates" を
3196
3176
  と述べる場合:変更を記録する日付付きの \`episodic\` memory と、更新後の現在状態を
3197
3177
  記録する \`profile\` memory の両方を生成してください。必要な 2 memory の
3198
3178
  出力形式は examples ファイルの migration few-shot を参照。`;
3199
- //#endregion
3200
- //#region src/engine/i18n/res/ja/extraction-prompts.ts
3179
+ // src/engine/i18n/res/ja/extraction-prompts.ts
3201
3180
  /** @file extraction-prompts.ts
3202
3181
  * @purpose Builds prompt text for structured memory extraction from conversation context.
3203
3182
  * @boundary Capture policy, JSON contracts, and LLM model behavior.
@@ -3398,8 +3377,7 @@ Return JSON format:
3398
3377
  "reason": "Decision reason"
3399
3378
  }`;
3400
3379
  }
3401
- //#endregion
3402
- //#region src/engine/i18n/res/ja/reflection-prompts.ts
3380
+ // src/engine/i18n/res/ja/reflection-prompts.ts
3403
3381
  const REFLECTION_FALLBACK_MARKER$4 = "(fallback) リフレクション生成に失敗。最小ポインタのみを保存。";
3404
3382
  function buildReflectionPrompt$4(conversation, maxInputChars, toolErrorSignals = []) {
3405
3383
  const promptInput = conversation;
@@ -3550,8 +3528,7 @@ const resources$4 = defineLocaleResources({
3550
3528
  derivedLegacySignals: [/学び|観察|振り返り|反省|派生|差分|確認|変更/]
3551
3529
  }
3552
3530
  });
3553
- //#endregion
3554
- //#region src/engine/i18n/res/ko/extraction-prompt-boundary.ts
3531
+ // src/engine/i18n/res/ko/extraction-prompt-boundary.ts
3555
3532
  /** @file extraction-prompt-boundary.ts
3556
3533
  * @purpose Provides locale-specific prompt fence and temporal boundary helpers.
3557
3534
  * @boundary LLM prompt assembly internals for this locale.
@@ -3792,8 +3769,7 @@ legacy category event <- reject
3792
3769
  "abstract": "User's son attends preschool: [Preschool Name]" <- placeholder, destroys recall
3793
3770
  "abstract": "User's team members and their locations" <- collapsed concrete names
3794
3771
  \`\`\``;
3795
- //#endregion
3796
- //#region src/engine/i18n/res/ko/extraction-prompt-rules.ts
3772
+ // src/engine/i18n/res/ko/extraction-prompt-rules.ts
3797
3773
  /** @file extraction-prompt-rules.ts
3798
3774
  * @purpose Holds locale-specific extraction rule text blocks.
3799
3775
  * @boundary LLM prompt assembly internals for this locale.
@@ -3876,8 +3852,7 @@ memory 로 만드십시오 ("Employment dates" 를 별도 memory 로 분기시
3876
3852
  라고 말할 때: 변경을 기록하는 날짜가 있는 \`episodic\` memory AND 업데이트된 현재
3877
3853
  상태를 기록하는 \`profile\` memory 를 모두 출력하십시오. 필수 두-memory 출력 형태는
3878
3854
  예제 섹션의 migration few-shot 을 참조하십시오.`;
3879
- //#endregion
3880
- //#region src/engine/i18n/res/ko/extraction-prompts.ts
3855
+ // src/engine/i18n/res/ko/extraction-prompts.ts
3881
3856
  /** @file extraction-prompts.ts
3882
3857
  * @purpose Builds prompt text for structured memory extraction from conversation context.
3883
3858
  * @boundary Capture policy, JSON contracts, and LLM model behavior.
@@ -4078,8 +4053,7 @@ Return JSON format:
4078
4053
  "reason": "Decision reason"
4079
4054
  }`;
4080
4055
  }
4081
- //#endregion
4082
- //#region src/engine/i18n/res/ko/reflection-prompts.ts
4056
+ // src/engine/i18n/res/ko/reflection-prompts.ts
4083
4057
  const REFLECTION_FALLBACK_MARKER$3 = "(fallback) 리플렉션 생성 실패; 최소 포인터만 저장.";
4084
4058
  function buildReflectionPrompt$3(conversation, maxInputChars, toolErrorSignals = []) {
4085
4059
  const promptInput = conversation;
@@ -4285,8 +4259,7 @@ const resources$3 = defineLocaleResources({
4285
4259
  derivedLegacySignals: [/배움|관찰|회고|반성|파생|변경|확인/]
4286
4260
  }
4287
4261
  });
4288
- //#endregion
4289
- //#region src/engine/i18n/res/ru/extraction-prompt-boundary.ts
4262
+ // src/engine/i18n/res/ru/extraction-prompt-boundary.ts
4290
4263
  /** @file extraction-prompt-boundary.ts
4291
4264
  * @purpose Provides locale-specific prompt fence and temporal boundary helpers.
4292
4265
  * @boundary LLM prompt assembly internals for this locale.
@@ -4531,8 +4504,7 @@ legacy category event <- reject
4531
4504
  "abstract": "User's son attends preschool: [Preschool Name]" <- placeholder, destroys recall
4532
4505
  "abstract": "User's team members and their locations" <- collapsed concrete names
4533
4506
  \`\`\``;
4534
- //#endregion
4535
- //#region src/engine/i18n/res/ru/extraction-prompt-rules.ts
4507
+ // src/engine/i18n/res/ru/extraction-prompt-rules.ts
4536
4508
  /** @file extraction-prompt-rules.ts
4537
4509
  * @purpose Holds locale-specific extraction rule text blocks.
4538
4510
  * @boundary LLM prompt assembly internals for this locale.
@@ -4619,8 +4591,7 @@ duration И любыми датами начала, удержанными вн
4619
4591
  "sold X, got Y": выпускайте ОБА — датированную запись \`episodic\` об изменении
4620
4592
  И запись \`profile\` для обновлённого текущего состояния. См. migration few-shot
4621
4593
  в секции примеров для требуемой формы вывода из двух memory.`;
4622
- //#endregion
4623
- //#region src/engine/i18n/res/ru/extraction-prompts.ts
4594
+ // src/engine/i18n/res/ru/extraction-prompts.ts
4624
4595
  /** @file extraction-prompts.ts
4625
4596
  * @purpose Builds prompt text for structured memory extraction from conversation context.
4626
4597
  * @boundary Capture policy, JSON contracts, and LLM model behavior.
@@ -4821,8 +4792,7 @@ Return JSON format:
4821
4792
  "reason": "Decision reason"
4822
4793
  }`;
4823
4794
  }
4824
- //#endregion
4825
- //#region src/engine/i18n/res/ru/reflection-prompts.ts
4795
+ // src/engine/i18n/res/ru/reflection-prompts.ts
4826
4796
  const REFLECTION_FALLBACK_MARKER$2 = "(fallback) Сбой генерации рефлексии; сохранён только минимальный указатель.";
4827
4797
  function buildReflectionPrompt$2(conversation, maxInputChars, toolErrorSignals = []) {
4828
4798
  const promptInput = conversation;
@@ -4977,8 +4947,7 @@ const resources$2 = defineLocaleResources({
4977
4947
  derivedLegacySignals: [/(?:^|[^\p{L}\p{N}_])(узнали|наблюдали|рефлексия|вывод|дельта|проверить|изменение)(?=$|[^\p{L}\p{N}_])/iu]
4978
4948
  }
4979
4949
  });
4980
- //#endregion
4981
- //#region src/engine/i18n/res/zh/extraction-prompt-boundary.ts
4950
+ // src/engine/i18n/res/zh/extraction-prompt-boundary.ts
4982
4951
  /** @file extraction-prompt-boundary.ts
4983
4952
  * @purpose Provides locale-specific prompt fence and temporal boundary helpers.
4984
4953
  * @boundary LLM prompt assembly internals for this locale.
@@ -5219,8 +5188,7 @@ legacy category event <- reject
5219
5188
  "abstract": "User's son attends preschool: [Preschool Name]" <- placeholder, destroys recall
5220
5189
  "abstract": "User's team members and their locations" <- collapsed concrete names
5221
5190
  \`\`\``;
5222
- //#endregion
5223
- //#region src/engine/i18n/res/zh/extraction-prompt-rules.ts
5191
+ // src/engine/i18n/res/zh/extraction-prompt-rules.ts
5224
5192
  /** @file extraction-prompt-rules.ts
5225
5193
  * @purpose Holds locale-specific extraction rule text blocks.
5226
5194
  * @boundary LLM prompt assembly internals for this locale.
@@ -5290,8 +5258,7 @@ const GRANULARITY_RULE$1 = `# GRANULARITY — 一条 memory 一个话题槽位
5290
5258
  事实同理:工作经历按 role 是一个话题。"3 years at DeepMind" 与 "4 years at Google" 是不同话题,尽管都描述既往就业。把它们建为各自的 entity memory,并把任何开始日期保留在同一条 per-role entity 里(不要把 "Employment dates" 分叉成独立 memory —— 应答模型可能会加总日期而非使用陈述的年限)。
5291
5259
 
5292
5260
  当用户说 "migrated from X to Y" / "switched from X to Y" / "sold X, got Y":同时输出一条记录变更且带日期的 \`episodic\` memory,和一条记录更新后当前状态的 \`profile\` memory。要求的两条 memory 输出形态见示例文件中的 migration few-shot。`;
5293
- //#endregion
5294
- //#region src/engine/i18n/res/zh/extraction-prompts.ts
5261
+ // src/engine/i18n/res/zh/extraction-prompts.ts
5295
5262
  /** @file extraction-prompts.ts
5296
5263
  * @purpose Builds prompt text for structured memory extraction from conversation context.
5297
5264
  * @boundary Capture policy, JSON contracts, and LLM model behavior.
@@ -5492,8 +5459,7 @@ Return JSON format:
5492
5459
  "reason": "Decision reason"
5493
5460
  }`;
5494
5461
  }
5495
- //#endregion
5496
- //#region src/engine/i18n/res/zh/reflection-prompts.ts
5462
+ // src/engine/i18n/res/zh/reflection-prompts.ts
5497
5463
  const REFLECTION_FALLBACK_MARKER$1 = "(fallback) 反思生成失败,仅存储最小占位记录。";
5498
5464
  function buildReflectionPrompt$1(conversation, maxInputChars, toolErrorSignals = []) {
5499
5465
  const promptInput = conversation;
@@ -5655,8 +5621,7 @@ const resources$1 = defineLocaleResources({
5655
5621
  derivedLegacySignals: [/学到|观察|反思|派生|变化|验证|复查/]
5656
5622
  }
5657
5623
  });
5658
- //#endregion
5659
- //#region src/engine/i18n/res/zh-Hant/extraction-prompt-boundary.ts
5624
+ // src/engine/i18n/res/zh-Hant/extraction-prompt-boundary.ts
5660
5625
  /** @file extraction-prompt-boundary.ts
5661
5626
  * @purpose Provides locale-specific prompt fence and temporal boundary helpers.
5662
5627
  * @boundary LLM prompt assembly internals for this locale.
@@ -5897,8 +5862,7 @@ legacy category event <- reject
5897
5862
  "abstract": "User's son attends preschool: [Preschool Name]" <- placeholder, destroys recall
5898
5863
  "abstract": "User's team members and their locations" <- collapsed concrete names
5899
5864
  \`\`\``;
5900
- //#endregion
5901
- //#region src/engine/i18n/res/zh-Hant/extraction-prompt-rules.ts
5865
+ // src/engine/i18n/res/zh-Hant/extraction-prompt-rules.ts
5902
5866
  /** @file extraction-prompt-rules.ts
5903
5867
  * @purpose Holds locale-specific extraction rule text blocks.
5904
5868
  * @boundary LLM prompt assembly internals for this locale.
@@ -5975,8 +5939,7 @@ entity memory,並把陳述的年限與任何開始日期保留在同一條 per
5975
5939
  got Y":同時輸出一條記錄變更且帶日期的 \`episodic\` memory,和一條記錄更新後
5976
5940
  當前狀態的 \`profile\` memory。要求的兩條 memory 輸出形態請見 examples
5977
5941
  檔中的 migration few-shot。`;
5978
- //#endregion
5979
- //#region src/engine/i18n/res/zh-Hant/extraction-prompts.ts
5942
+ // src/engine/i18n/res/zh-Hant/extraction-prompts.ts
5980
5943
  /** @file extraction-prompts.ts
5981
5944
  * @purpose Builds prompt text for structured memory extraction from conversation context.
5982
5945
  * @boundary Capture policy, JSON contracts, and LLM model behavior.
@@ -6177,8 +6140,7 @@ Return JSON format:
6177
6140
  "reason": "Decision reason"
6178
6141
  }`;
6179
6142
  }
6180
- //#endregion
6181
- //#region src/engine/i18n/res/zh-Hant/reflection-prompts.ts
6143
+ // src/engine/i18n/res/zh-Hant/reflection-prompts.ts
6182
6144
  const REFLECTION_FALLBACK_MARKER = "(fallback) 反思生成失敗,僅儲存最小佔位記錄。";
6183
6145
  function buildReflectionPrompt(conversation, maxInputChars, toolErrorSignals = []) {
6184
6146
  const promptInput = conversation;
@@ -6340,8 +6302,7 @@ const resources = defineLocaleResources({
6340
6302
  derivedLegacySignals: [/學到|觀察|反思|派生|變化|驗證|複查/]
6341
6303
  }
6342
6304
  });
6343
- //#endregion
6344
- //#region src/engine/i18n/all-resources.ts
6305
+ // src/engine/i18n/all-resources.ts
6345
6306
  /**
6346
6307
  * Static union of every supported-locale's resource bundle.
6347
6308
  *
@@ -6375,5 +6336,4 @@ const RESOURCES_BY_LOCALE = {
6375
6336
  ko: resources$3,
6376
6337
  ru: resources$2
6377
6338
  };
6378
- //#endregion
6379
6339
  export { RESOURCES_BY_LOCALE as n, ALL_RESOURCES as t };
@@ -1,4 +1,3 @@
1
- //#region src/engine/extraction/ambient-learning-text-normalizer.d.ts
2
1
  /**
3
2
  * Removes retrieval context and runtime wrapper text before Ambient Learning evaluates
4
3
  * what the user actually said.
@@ -6,5 +5,4 @@
6
5
  declare function stripAmbientLearningInjectedPrefix(role: string, text: string): string;
7
6
  /** Normalizes conversation text at the boundary before Ambient Learning uses it. */
8
7
  declare function normalizeAmbientLearningText(role: unknown, text: unknown, shouldSkipMessage?: (role: string, text: string) => boolean): string | null;
9
- //#endregion
10
8
  export { stripAmbientLearningInjectedPrefix as n, normalizeAmbientLearningText as t };
@@ -1,5 +1,5 @@
1
- import { i as RELEVANT_MEMORIES_PREAMBLE_LINES, r as RELEVANT_MEMORIES_OPEN_TAG, t as RELEVANT_MEMORIES_CLOSE_TAG } from "./relevant-memories-context-m8nuFZcM.js";
2
- //#region src/engine/extraction/runtime-wrapper-sanitizer.ts
1
+ import { i as RELEVANT_MEMORIES_PREAMBLE_LINES, r as RELEVANT_MEMORIES_OPEN_TAG, t as RELEVANT_MEMORIES_CLOSE_TAG } from "./relevant-memories-context-CvMB_zj8.js";
2
+ // src/engine/extraction/runtime-wrapper-sanitizer.ts
3
3
  /** @file runtime-wrapper-sanitizer.ts
4
4
  * @purpose Single source of truth for stripping `[Subagent Context|Task]` wrappers
5
5
  * and the boilerplate that follows them from the lead-in of captured text.
@@ -71,8 +71,7 @@ function stripLeadingRuntimeWrappers(text) {
71
71
  }
72
72
  return cleanedLines.join("\n").trim();
73
73
  }
74
- //#endregion
75
- //#region src/engine/extraction/ambient-learning-text-normalizer.ts
74
+ // src/engine/extraction/ambient-learning-text-normalizer.ts
76
75
  /** @file ambient-learning-text-normalizer.ts
77
76
  * @purpose Normalizes Ambient Learning conversation text before extraction and storage.
78
77
  * @boundary Capture filters, prompt-injection boundaries, and Insight Distill input quality.
@@ -166,5 +165,4 @@ function normalizeAmbientLearningText(role, text, shouldSkipMessage) {
166
165
  if (shouldSkipMessage?.(role, normalized)) return null;
167
166
  return normalized;
168
167
  }
169
- //#endregion
170
168
  export { stripAmbientLearningInjectedPrefix as n, stripLeadingRuntimeWrappers as r, normalizeAmbientLearningText as t };
@@ -1,9 +1,9 @@
1
- import { n as readModelReplyJson, t as modelReplyJsonCandidates } from "./model-reply-text-CKopStP2.js";
2
- import { n as calendarInstructionSchema, t as calculateCalendarTime } from "./calendar-instruction-CzqZbAPG.js";
3
- import { n as state_vocabulary_default, r as attribute_dictionary_default, t as relations } from "./relation-dictionary-Cev1kyLe.js";
1
+ import { n as readModelReplyJson, t as modelReplyJsonCandidates } from "./model-reply-text-C7jEWDXG.js";
2
+ import { n as calendarInstructionSchema, t as calculateCalendarTime } from "./calendar-instruction-uK6xsrCt.js";
3
+ import { n as state_vocabulary_default, r as attribute_dictionary_default, t as relations } from "./relation-dictionary-QVBewRQ1.js";
4
4
  import { z } from "zod";
5
5
  import { createLogger } from "@snoai/utils/logger";
6
- //#region src/engine/extraction/atomic-progress-boundary.ts
6
+ // src/engine/extraction/atomic-progress-boundary.ts
7
7
  const log$1 = createLogger("sno-station-mem:atomic-progress-boundary");
8
8
  const classificationSchema = z.object({ decisions: z.array(z.object({
9
9
  turn_index: z.number().int().nonnegative(),
@@ -36,8 +36,7 @@ function excludeProgressRecords(records, excluded) {
36
36
  return index === void 0 || !excluded.has(index);
37
37
  });
38
38
  }
39
- //#endregion
40
- //#region config/atomic-extraction-response.schema.json
39
+ // config/atomic-extraction-response.schema.json
41
40
  var atomic_extraction_response_schema_default = {
42
41
  $schema: "https://json-schema.org/draft/2020-12/schema",
43
42
  $id: "https://www.sno.ai/schemas/mem-claw/atomic-extraction-response-v1.json",
@@ -48,8 +47,11 @@ var atomic_extraction_response_schema_default = {
48
47
  properties: {
49
48
  "claims_found": {
50
49
  "type": "array",
51
- "items": { "type": "string" },
52
- "description": "One short string for each claim the turns this call owns state, in the order they appear; empty when they state none. Written before records so the list is read before the array is opened."
50
+ "items": {
51
+ "type": "integer",
52
+ "minimum": 0
53
+ },
54
+ "description": "For each claim the turns this call owns state, in the order they appear, the turn_index it came from: a number, never the claim's words; empty when they state none. Written before records so the list is read before the array is opened."
53
55
  },
54
56
  "records": {
55
57
  "type": "array",
@@ -532,8 +534,7 @@ var atomic_extraction_response_schema_default = {
532
534
  }
533
535
  ] } }
534
536
  };
535
- //#endregion
536
- //#region src/engine/extraction/atomic-extraction-reply.ts
537
+ // src/engine/extraction/atomic-extraction-reply.ts
537
538
  /** @file atomic-extraction-reply.ts
538
539
  * @purpose Defines and recovers the one atomic extraction reply shape.
539
540
  * @boundary Reply validation only; no model calls, persistence, or post-processing judgment.
@@ -720,7 +721,7 @@ const captureFactSchema = wireRecordSchema.pick({
720
721
  ended_at_phrase: wireRecordSchema.shape.ended_at_phrase.unwrap()
721
722
  });
722
723
  const captureReplySchema = z.object({
723
- claims_found: z.array(z.string().min(1)),
724
+ claims_found: z.array(z.number().int().nonnegative()),
724
725
  decisions: z.array(z.object({
725
726
  turn_index: z.number().int().nonnegative(),
726
727
  progress_only: z.boolean()
@@ -859,5 +860,4 @@ function fallbackAtomicCapturedFact(fact) {
859
860
  ended_time: { kind: "none" }
860
861
  });
861
862
  }
862
- //#endregion
863
863
  export { parseAtomicCaptureReply as a, atomic_extraction_response_schema_default as c, fallbackAtomicCapturedFact as i, excludeProgressRecords as l, ATOMIC_ENRICHMENT_RESPONSE_JSON_SCHEMA as n, parseAtomicEnrichmentReply as o, ATOMIC_EXTRACTION_RESPONSE_JSON_SCHEMA as r, parseAtomicExtractionReply as s, ATOMIC_CAPTURE_RESPONSE_JSON_SCHEMA as t };
@@ -2,7 +2,7 @@ import path from "node:path";
2
2
  import { createHash } from "node:crypto";
3
3
  import { existsSync, readFileSync } from "node:fs";
4
4
  import { fileURLToPath } from "node:url";
5
- //#region src/engine/extraction/atomic-extraction-skill.ts
5
+ // src/engine/extraction/atomic-extraction-skill.ts
6
6
  /** @file atomic-extraction-skill.ts
7
7
  * @purpose Loads the model-readable atomic memory extraction method shipped with the plugin.
8
8
  * @boundary Package-relative read of one trusted bundled skill.
@@ -52,5 +52,4 @@ function atomicExtractionSkillReference(name) {
52
52
  if (text === void 0) throw new Error(`sno-station-mem atomic extraction skill reference missing: ${name}`);
53
53
  return text;
54
54
  }
55
- //#endregion
56
55
  export { ATOMIC_EXTRACTION_SKILL_HASH as n, atomicExtractionSkillReference as r, ATOMIC_EXTRACTION_SKILL as t };