@remnic/core 9.3.638 → 9.3.640

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 (293) hide show
  1. package/dist/access-cli.js +31 -31
  2. package/dist/access-http.d.ts +56 -5
  3. package/dist/access-http.js +17 -17
  4. package/dist/access-mcp.d.ts +4 -4
  5. package/dist/access-mcp.js +16 -16
  6. package/dist/access-schema.d.ts +3 -0
  7. package/dist/access-schema.js +1 -1
  8. package/dist/{access-service-DvEvBv9_.d.ts → access-service-jyYute38.d.ts} +3 -2
  9. package/dist/access-service.d.ts +4 -4
  10. package/dist/access-service.js +14 -14
  11. package/dist/action-confidence.d.ts +1 -1
  12. package/dist/active-memory-bridge.d.ts +1 -1
  13. package/dist/active-recall.d.ts +1 -1
  14. package/dist/active-recall.js +1 -1
  15. package/dist/{auto-sync-RFADEHIQ.js → auto-sync-54QQHOG5.js} +4 -4
  16. package/dist/behavior-learner.d.ts +1 -1
  17. package/dist/behavior-signals.d.ts +1 -1
  18. package/dist/bootstrap.d.ts +3 -3
  19. package/dist/briefing.d.ts +1 -1
  20. package/dist/briefing.js +3 -3
  21. package/dist/buffer-surprise-report.d.ts +1 -1
  22. package/dist/buffer.d.ts +1 -1
  23. package/dist/calibration.d.ts +1 -1
  24. package/dist/calibration.js +1 -1
  25. package/dist/causal-behavior.d.ts +1 -1
  26. package/dist/causal-consolidation.d.ts +1 -1
  27. package/dist/causal-consolidation.js +5 -5
  28. package/dist/{chunk-3RDYU3JS.js → chunk-3AZDLWDW.js} +3 -3
  29. package/dist/{chunk-FPNQF475.js → chunk-3F7RMHC4.js} +1 -1
  30. package/dist/chunk-3F7RMHC4.js.map +1 -0
  31. package/dist/{chunk-KXTLEB4L.js → chunk-3SF7QNKF.js} +2 -2
  32. package/dist/{chunk-U2YPUWRB.js → chunk-4GYGEKUB.js} +53 -7
  33. package/dist/chunk-4GYGEKUB.js.map +1 -0
  34. package/dist/{chunk-6BDVBBBY.js → chunk-666A3MOW.js} +88 -30
  35. package/dist/chunk-666A3MOW.js.map +1 -0
  36. package/dist/{chunk-EDQVAMQI.js → chunk-6GIKAUTN.js} +2 -2
  37. package/dist/{chunk-4HFJQCJZ.js → chunk-7HYPN2GC.js} +2 -2
  38. package/dist/{chunk-Q6YIJGXJ.js → chunk-7OGJQP7T.js} +2 -2
  39. package/dist/{chunk-242XFZ36.js → chunk-7OH7KPF5.js} +2 -2
  40. package/dist/{chunk-RW5DGAGO.js → chunk-7V36WCUW.js} +2 -2
  41. package/dist/{chunk-7A2QKUUA.js → chunk-7XRSLMUD.js} +2 -2
  42. package/dist/{chunk-723OMPUI.js → chunk-A3BS64GV.js} +7 -1
  43. package/dist/chunk-A3BS64GV.js.map +1 -0
  44. package/dist/{chunk-JCLECECB.js → chunk-A3UPMOJZ.js} +2 -2
  45. package/dist/{chunk-QHXW3LZV.js → chunk-C3EJ3UIS.js} +3 -3
  46. package/dist/{chunk-YCX45GOQ.js → chunk-C4YAIWDG.js} +3 -3
  47. package/dist/{chunk-A3HKTPPV.js → chunk-C63WC454.js} +12 -1
  48. package/dist/chunk-C63WC454.js.map +1 -0
  49. package/dist/{chunk-4S3N6HFG.js → chunk-C6XO6ONP.js} +2 -2
  50. package/dist/{chunk-WD2W4234.js → chunk-CDHRUNBX.js} +11 -2
  51. package/dist/chunk-CDHRUNBX.js.map +1 -0
  52. package/dist/{chunk-YQNADJCT.js → chunk-CMZLMIZI.js} +2 -2
  53. package/dist/{chunk-KVDUDYEN.js → chunk-DDRNDPX4.js} +2 -2
  54. package/dist/{chunk-ORFGK3XI.js → chunk-E6ZDCOHM.js} +2 -2
  55. package/dist/{chunk-TKWGAOLV.js → chunk-EEC4PCG5.js} +2 -2
  56. package/dist/{chunk-PW6GURU3.js → chunk-EKIQBGAY.js} +2 -2
  57. package/dist/{chunk-YR6GIWWY.js → chunk-GQL52GQ5.js} +2 -2
  58. package/dist/{chunk-77NAFXUD.js → chunk-H3HDXD3U.js} +2 -2
  59. package/dist/{chunk-X7EJF46S.js → chunk-H4RWKZE2.js} +2 -2
  60. package/dist/{chunk-LASA46TQ.js → chunk-HRXCPKN4.js} +2 -2
  61. package/dist/{chunk-PUEAEQSN.js → chunk-ISMZIMD3.js} +2 -2
  62. package/dist/{chunk-LEG7XWS2.js → chunk-IXSTQGYV.js} +2 -2
  63. package/dist/{chunk-CMN5AWAZ.js → chunk-J2KFC47S.js} +2 -2
  64. package/dist/{chunk-OSPVAP56.js → chunk-JFHEEDRY.js} +20 -12
  65. package/dist/chunk-JFHEEDRY.js.map +1 -0
  66. package/dist/{chunk-RAGXUVQW.js → chunk-KVUG7FF7.js} +4 -4
  67. package/dist/{chunk-K47C6M2C.js → chunk-M75TBFKQ.js} +2 -2
  68. package/dist/{chunk-DEDTFRH2.js → chunk-MUKXANAM.js} +14 -3
  69. package/dist/chunk-MUKXANAM.js.map +1 -0
  70. package/dist/chunk-O75CRYGF.js +15 -0
  71. package/dist/chunk-O75CRYGF.js.map +1 -0
  72. package/dist/{chunk-YROCXMCK.js → chunk-RJGPH2Q3.js} +2 -2
  73. package/dist/{chunk-QDAWVW75.js → chunk-SBHQBC37.js} +2 -2
  74. package/dist/{chunk-NRST7W5Q.js → chunk-SEOTBRO4.js} +3 -3
  75. package/dist/{chunk-QYGIQ5NM.js → chunk-SHHT4JTC.js} +2 -2
  76. package/dist/{chunk-MNDFVT4F.js → chunk-UDZYZ5Q5.js} +12 -10
  77. package/dist/chunk-UDZYZ5Q5.js.map +1 -0
  78. package/dist/{chunk-C4KKM62E.js → chunk-UU5LHD6J.js} +2 -2
  79. package/dist/{chunk-I3YAA4BI.js → chunk-UZBK2JR6.js} +19 -19
  80. package/dist/{chunk-TJRV4MWX.js → chunk-WAKPKNEX.js} +172 -51
  81. package/dist/chunk-WAKPKNEX.js.map +1 -0
  82. package/dist/{chunk-7KRYJUTB.js → chunk-Y2XKJJEI.js} +3 -3
  83. package/dist/{chunk-2JIYTTQJ.js → chunk-YMI4NRV7.js} +5 -5
  84. package/dist/{cli-BJBKNWIS.d.ts → cli-A4AIhv9e.d.ts} +3 -3
  85. package/dist/cli.d.ts +5 -5
  86. package/dist/cli.js +31 -31
  87. package/dist/compat/checks.js +2 -2
  88. package/dist/compounding/engine.d.ts +1 -1
  89. package/dist/compounding/engine.js +3 -3
  90. package/dist/compounding/preference-consolidator.d.ts +1 -1
  91. package/dist/compression-optimizer.d.ts +1 -1
  92. package/dist/config.d.ts +1 -1
  93. package/dist/config.js +1 -1
  94. package/dist/connectors/codex-materialize-runner.d.ts +1 -1
  95. package/dist/connectors/codex-materialize-runner.js +3 -3
  96. package/dist/connectors/codex-materialize.d.ts +1 -1
  97. package/dist/connectors/index.d.ts +1 -1
  98. package/dist/connectors/index.js +5 -5
  99. package/dist/consolidation-provenance-check.d.ts +1 -1
  100. package/dist/consolidation-undo.d.ts +1 -1
  101. package/dist/contradiction/index.d.ts +1 -1
  102. package/dist/conversation-index/backend.d.ts +1 -1
  103. package/dist/conversation-index/backend.js +3 -3
  104. package/dist/conversation-index/chunker.d.ts +1 -1
  105. package/dist/conversation-index/faiss-adapter.d.ts +1 -1
  106. package/dist/conversation-index/faiss-adapter.js +2 -2
  107. package/dist/conversation-index/indexer.d.ts +1 -1
  108. package/dist/conversation-index/search.d.ts +1 -1
  109. package/dist/day-summary.d.ts +1 -1
  110. package/dist/delinearize.d.ts +1 -1
  111. package/dist/direct-answer-wiring.d.ts +1 -1
  112. package/dist/direct-answer.d.ts +1 -1
  113. package/dist/embedding-fallback.d.ts +1 -1
  114. package/dist/enrichment/index.d.ts +1 -1
  115. package/dist/entity-retrieval.d.ts +1 -1
  116. package/dist/entity-retrieval.js +3 -3
  117. package/dist/entity-schema.d.ts +1 -1
  118. package/dist/explicit-capture.d.ts +3 -3
  119. package/dist/extraction-judge-telemetry.d.ts +1 -1
  120. package/dist/extraction-judge-training.d.ts +1 -1
  121. package/dist/extraction-judge.d.ts +1 -1
  122. package/dist/extraction-judge.js +2 -2
  123. package/dist/extraction.d.ts +1 -1
  124. package/dist/extraction.js +4 -4
  125. package/dist/fallback-llm.d.ts +1 -1
  126. package/dist/fallback-llm.js +1 -1
  127. package/dist/identity-continuity.d.ts +1 -1
  128. package/dist/importance.d.ts +1 -1
  129. package/dist/index.d.ts +9 -9
  130. package/dist/index.js +45 -45
  131. package/dist/intent.d.ts +1 -1
  132. package/dist/lcm/engine.d.ts +1 -1
  133. package/dist/lcm/index.d.ts +1 -1
  134. package/dist/lcm/tools.d.ts +1 -1
  135. package/dist/lifecycle.d.ts +1 -1
  136. package/dist/live-connectors-runner.d.ts +1 -1
  137. package/dist/local-llm.d.ts +1 -1
  138. package/dist/local-llm.js +2 -2
  139. package/dist/maintenance/memory-governance-cron.d.ts +8 -0
  140. package/dist/maintenance/memory-governance-cron.js +1 -1
  141. package/dist/maintenance/memory-governance.d.ts +1 -1
  142. package/dist/maintenance/memory-governance.js +3 -3
  143. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +3 -3
  144. package/dist/maintenance/rebuild-memory-projection.js +4 -4
  145. package/dist/mcp-memory-inspector-app.d.ts +4 -4
  146. package/dist/memory-action-policy.d.ts +1 -1
  147. package/dist/memory-cache.d.ts +1 -1
  148. package/dist/memory-lifecycle-ledger-utils.d.ts +1 -1
  149. package/dist/memory-projection-store.d.ts +1 -1
  150. package/dist/memory-provenance.d.ts +1 -1
  151. package/dist/memory-worth-outcomes.d.ts +1 -1
  152. package/dist/migrate/from-engram.js +2 -2
  153. package/dist/models-json.d.ts +1 -1
  154. package/dist/namespaces/migrate.d.ts +1 -1
  155. package/dist/namespaces/migrate.js +10 -10
  156. package/dist/namespaces/principal.d.ts +1 -1
  157. package/dist/namespaces/search.d.ts +1 -1
  158. package/dist/namespaces/search.js +6 -6
  159. package/dist/namespaces/storage.d.ts +1 -1
  160. package/dist/namespaces/storage.js +3 -3
  161. package/dist/native-knowledge.d.ts +1 -1
  162. package/dist/network/tailscale.js +2 -2
  163. package/dist/operator-toolkit.d.ts +1 -1
  164. package/dist/operator-toolkit.js +13 -13
  165. package/dist/{orchestrator-ibTTeoUa.d.ts → orchestrator-BEDTiuEO.d.ts} +11 -5
  166. package/dist/orchestrator.d.ts +3 -3
  167. package/dist/orchestrator.js +27 -27
  168. package/dist/patterns-cli.d.ts +1 -1
  169. package/dist/policy-runtime.d.ts +1 -1
  170. package/dist/qmd-recall-cache.d.ts +1 -1
  171. package/dist/qmd.d.ts +4 -1
  172. package/dist/qmd.js +2 -2
  173. package/dist/recall-disclosure-escalation.d.ts +1 -1
  174. package/dist/recall-explain-renderer.d.ts +1 -1
  175. package/dist/recall-explain-renderer.js +3 -3
  176. package/dist/recall-planner-llm.d.ts +1 -1
  177. package/dist/recall-planner-llm.js +1 -1
  178. package/dist/recall-state.d.ts +1 -1
  179. package/dist/recall-tag-filter.d.ts +1 -1
  180. package/dist/recall-xray-cli.d.ts +1 -1
  181. package/dist/recall-xray-cli.js +4 -4
  182. package/dist/recall-xray-renderer.d.ts +1 -1
  183. package/dist/recall-xray-renderer.js +3 -3
  184. package/dist/recall-xray.d.ts +1 -1
  185. package/dist/recall-xray.js +2 -2
  186. package/dist/resolve-auth-token.d.ts +1 -1
  187. package/dist/resume-bundles.js +2 -2
  188. package/dist/retrieval-agents.d.ts +1 -1
  189. package/dist/retrieval-tiers.d.ts +1 -1
  190. package/dist/routing/engine.d.ts +1 -1
  191. package/dist/routing/store.d.ts +1 -1
  192. package/dist/runtime/child-process.js +1 -1
  193. package/dist/search/embed-helper.d.ts +1 -1
  194. package/dist/search/factory.d.ts +1 -1
  195. package/dist/search/factory.js +5 -5
  196. package/dist/search/index.d.ts +1 -1
  197. package/dist/search/index.js +5 -5
  198. package/dist/search/lancedb-backend.d.ts +1 -1
  199. package/dist/search/meilisearch-backend.d.ts +1 -1
  200. package/dist/search/noop-backend.d.ts +1 -1
  201. package/dist/search/orama-backend.d.ts +1 -1
  202. package/dist/search/port.d.ts +1 -1
  203. package/dist/search/remote-backend.d.ts +1 -1
  204. package/dist/{semantic-consolidation-BPs6BURk.d.ts → semantic-consolidation-Byut1ufK.d.ts} +1 -1
  205. package/dist/semantic-consolidation.d.ts +2 -2
  206. package/dist/semantic-consolidation.js +4 -4
  207. package/dist/semantic-rule-promotion.js +3 -3
  208. package/dist/semantic-rule-verifier.d.ts +1 -1
  209. package/dist/semantic-rule-verifier.js +3 -3
  210. package/dist/session-observer-bands.d.ts +1 -1
  211. package/dist/session-observer-state.d.ts +1 -1
  212. package/dist/shared-context/manager.d.ts +1 -1
  213. package/dist/signal.d.ts +1 -1
  214. package/dist/storage.d.ts +1 -1
  215. package/dist/storage.js +2 -2
  216. package/dist/summarizer.d.ts +1 -1
  217. package/dist/summarizer.js +4 -4
  218. package/dist/summary-snapshot.d.ts +1 -1
  219. package/dist/temporal-supersession.d.ts +1 -1
  220. package/dist/temporal-validity.d.ts +1 -1
  221. package/dist/threading.d.ts +1 -1
  222. package/dist/tier-migration.d.ts +1 -1
  223. package/dist/tier-routing.d.ts +1 -1
  224. package/dist/topics.d.ts +1 -1
  225. package/dist/transcript.d.ts +1 -1
  226. package/dist/{types-CpMPD8xl.d.ts → types-BzA1FKbg.d.ts} +4 -0
  227. package/dist/types.d.ts +1 -1
  228. package/dist/types.js +1 -1
  229. package/dist/utility-runtime.d.ts +1 -1
  230. package/dist/verified-recall.js +3 -3
  231. package/package.json +3 -1
  232. package/src/access-http.test.ts +110 -2
  233. package/src/access-http.ts +117 -1
  234. package/src/access-mcp.ts +15 -6
  235. package/src/access-schema.ts +14 -0
  236. package/src/access-service.ts +4 -1
  237. package/src/config.ts +14 -0
  238. package/src/fallback-llm.ts +16 -0
  239. package/src/index.ts +9 -1
  240. package/src/maintenance/memory-governance-cron.ts +113 -30
  241. package/src/orchestrator.ts +197 -32
  242. package/src/qmd.test.ts +35 -0
  243. package/src/qmd.ts +16 -1
  244. package/src/runtime/child-process.test.ts +15 -0
  245. package/src/runtime/child-process.ts +9 -22
  246. package/src/types.ts +4 -0
  247. package/dist/chunk-6BDVBBBY.js.map +0 -1
  248. package/dist/chunk-723OMPUI.js.map +0 -1
  249. package/dist/chunk-A3HKTPPV.js.map +0 -1
  250. package/dist/chunk-DEDTFRH2.js.map +0 -1
  251. package/dist/chunk-FPNQF475.js.map +0 -1
  252. package/dist/chunk-MNDFVT4F.js.map +0 -1
  253. package/dist/chunk-NNVTUXEB.js +0 -23
  254. package/dist/chunk-NNVTUXEB.js.map +0 -1
  255. package/dist/chunk-OSPVAP56.js.map +0 -1
  256. package/dist/chunk-TJRV4MWX.js.map +0 -1
  257. package/dist/chunk-U2YPUWRB.js.map +0 -1
  258. package/dist/chunk-WD2W4234.js.map +0 -1
  259. /package/dist/{auto-sync-RFADEHIQ.js.map → auto-sync-54QQHOG5.js.map} +0 -0
  260. /package/dist/{chunk-3RDYU3JS.js.map → chunk-3AZDLWDW.js.map} +0 -0
  261. /package/dist/{chunk-KXTLEB4L.js.map → chunk-3SF7QNKF.js.map} +0 -0
  262. /package/dist/{chunk-EDQVAMQI.js.map → chunk-6GIKAUTN.js.map} +0 -0
  263. /package/dist/{chunk-4HFJQCJZ.js.map → chunk-7HYPN2GC.js.map} +0 -0
  264. /package/dist/{chunk-Q6YIJGXJ.js.map → chunk-7OGJQP7T.js.map} +0 -0
  265. /package/dist/{chunk-242XFZ36.js.map → chunk-7OH7KPF5.js.map} +0 -0
  266. /package/dist/{chunk-RW5DGAGO.js.map → chunk-7V36WCUW.js.map} +0 -0
  267. /package/dist/{chunk-7A2QKUUA.js.map → chunk-7XRSLMUD.js.map} +0 -0
  268. /package/dist/{chunk-JCLECECB.js.map → chunk-A3UPMOJZ.js.map} +0 -0
  269. /package/dist/{chunk-QHXW3LZV.js.map → chunk-C3EJ3UIS.js.map} +0 -0
  270. /package/dist/{chunk-YCX45GOQ.js.map → chunk-C4YAIWDG.js.map} +0 -0
  271. /package/dist/{chunk-4S3N6HFG.js.map → chunk-C6XO6ONP.js.map} +0 -0
  272. /package/dist/{chunk-YQNADJCT.js.map → chunk-CMZLMIZI.js.map} +0 -0
  273. /package/dist/{chunk-KVDUDYEN.js.map → chunk-DDRNDPX4.js.map} +0 -0
  274. /package/dist/{chunk-ORFGK3XI.js.map → chunk-E6ZDCOHM.js.map} +0 -0
  275. /package/dist/{chunk-TKWGAOLV.js.map → chunk-EEC4PCG5.js.map} +0 -0
  276. /package/dist/{chunk-PW6GURU3.js.map → chunk-EKIQBGAY.js.map} +0 -0
  277. /package/dist/{chunk-YR6GIWWY.js.map → chunk-GQL52GQ5.js.map} +0 -0
  278. /package/dist/{chunk-77NAFXUD.js.map → chunk-H3HDXD3U.js.map} +0 -0
  279. /package/dist/{chunk-X7EJF46S.js.map → chunk-H4RWKZE2.js.map} +0 -0
  280. /package/dist/{chunk-LASA46TQ.js.map → chunk-HRXCPKN4.js.map} +0 -0
  281. /package/dist/{chunk-PUEAEQSN.js.map → chunk-ISMZIMD3.js.map} +0 -0
  282. /package/dist/{chunk-LEG7XWS2.js.map → chunk-IXSTQGYV.js.map} +0 -0
  283. /package/dist/{chunk-CMN5AWAZ.js.map → chunk-J2KFC47S.js.map} +0 -0
  284. /package/dist/{chunk-RAGXUVQW.js.map → chunk-KVUG7FF7.js.map} +0 -0
  285. /package/dist/{chunk-K47C6M2C.js.map → chunk-M75TBFKQ.js.map} +0 -0
  286. /package/dist/{chunk-YROCXMCK.js.map → chunk-RJGPH2Q3.js.map} +0 -0
  287. /package/dist/{chunk-QDAWVW75.js.map → chunk-SBHQBC37.js.map} +0 -0
  288. /package/dist/{chunk-NRST7W5Q.js.map → chunk-SEOTBRO4.js.map} +0 -0
  289. /package/dist/{chunk-QYGIQ5NM.js.map → chunk-SHHT4JTC.js.map} +0 -0
  290. /package/dist/{chunk-C4KKM62E.js.map → chunk-UU5LHD6J.js.map} +0 -0
  291. /package/dist/{chunk-I3YAA4BI.js.map → chunk-UZBK2JR6.js.map} +0 -0
  292. /package/dist/{chunk-7KRYJUTB.js.map → chunk-Y2XKJJEI.js.map} +0 -0
  293. /package/dist/{chunk-2JIYTTQJ.js.map → chunk-YMI4NRV7.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  StorageManager
3
- } from "./chunk-QYGIQ5NM.js";
3
+ } from "./chunk-SHHT4JTC.js";
4
4
  import {
5
5
  decideLifecycleTransition
6
6
  } from "./chunk-TBBDFYXW.js";
@@ -729,4 +729,4 @@ export {
729
729
  listMemoryGovernanceRuns,
730
730
  readMemoryGovernanceRunArtifact
731
731
  };
732
- //# sourceMappingURL=chunk-C4KKM62E.js.map
732
+ //# sourceMappingURL=chunk-UU5LHD6J.js.map
@@ -41,7 +41,7 @@ import {
41
41
  } from "./chunk-LZZNTPLR.js";
42
42
  import {
43
43
  TailscaleHelper
44
- } from "./chunk-TKWGAOLV.js";
44
+ } from "./chunk-EEC4PCG5.js";
45
45
  import {
46
46
  WebDavServer
47
47
  } from "./chunk-PYIFUBRK.js";
@@ -53,12 +53,12 @@ import {
53
53
  } from "./chunk-D6RIFG4O.js";
54
54
  import {
55
55
  rebuildMemoryLifecycleLedger
56
- } from "./chunk-242XFZ36.js";
56
+ } from "./chunk-7OH7KPF5.js";
57
57
  import {
58
58
  rebuildMemoryProjection,
59
59
  repairMemoryProjection,
60
60
  verifyMemoryProjection
61
- } from "./chunk-3RDYU3JS.js";
61
+ } from "./chunk-3AZDLWDW.js";
62
62
  import {
63
63
  getBulkImportSource,
64
64
  listBulkImportSources,
@@ -67,18 +67,18 @@ import {
67
67
  } from "./chunk-H2NCNXMS.js";
68
68
  import {
69
69
  runCompatChecks
70
- } from "./chunk-YR6GIWWY.js";
70
+ } from "./chunk-GQL52GQ5.js";
71
71
  import {
72
72
  promoteSemanticRuleFromMemory
73
- } from "./chunk-PUEAEQSN.js";
73
+ } from "./chunk-ISMZIMD3.js";
74
74
  import {
75
75
  buildResumeBundleFromState,
76
76
  getResumeBundleStatus,
77
77
  recordResumeBundle
78
- } from "./chunk-KXTLEB4L.js";
78
+ } from "./chunk-3SF7QNKF.js";
79
79
  import {
80
80
  parseXrayCliOptions
81
- } from "./chunk-QHXW3LZV.js";
81
+ } from "./chunk-C3EJ3UIS.js";
82
82
  import {
83
83
  resolveAgentAccessAuthToken
84
84
  } from "./chunk-TGQ2NTWH.js";
@@ -89,12 +89,12 @@ import {
89
89
  runOperatorInventory,
90
90
  runOperatorRepair,
91
91
  runOperatorSetup
92
- } from "./chunk-2JIYTTQJ.js";
92
+ } from "./chunk-YMI4NRV7.js";
93
93
  import {
94
94
  listNamespaces,
95
95
  runNamespaceMigration,
96
96
  verifyNamespaces
97
- } from "./chunk-YCX45GOQ.js";
97
+ } from "./chunk-C4YAIWDG.js";
98
98
  import {
99
99
  collectPatternMemories,
100
100
  explainPatternMemory,
@@ -124,13 +124,13 @@ import {
124
124
  } from "./chunk-TERNBNJB.js";
125
125
  import {
126
126
  searchVerifiedEpisodes
127
- } from "./chunk-YROCXMCK.js";
127
+ } from "./chunk-RJGPH2Q3.js";
128
128
  import {
129
129
  ThreadingManager
130
130
  } from "./chunk-W4RVMTHR.js";
131
131
  import {
132
132
  searchVerifiedSemanticRules
133
- } from "./chunk-4S3N6HFG.js";
133
+ } from "./chunk-C6XO6ONP.js";
134
134
  import {
135
135
  getWorkProductLedgerStatus,
136
136
  recordWorkProductLedgerEntry,
@@ -203,22 +203,22 @@ import {
203
203
  } from "./chunk-UQ7RN5HK.js";
204
204
  import {
205
205
  parseConfig
206
- } from "./chunk-A3HKTPPV.js";
206
+ } from "./chunk-C63WC454.js";
207
207
  import {
208
208
  getAbstractionNodeStoreStatus
209
209
  } from "./chunk-OADWQ5CR.js";
210
210
  import {
211
211
  EngramAccessHttpServer
212
- } from "./chunk-U2YPUWRB.js";
212
+ } from "./chunk-4GYGEKUB.js";
213
213
  import {
214
214
  WearablesInputError
215
215
  } from "./chunk-7WV3F5DQ.js";
216
216
  import {
217
217
  EngramMcpServer
218
- } from "./chunk-OSPVAP56.js";
218
+ } from "./chunk-JFHEEDRY.js";
219
219
  import {
220
220
  EngramAccessService
221
- } from "./chunk-MNDFVT4F.js";
221
+ } from "./chunk-UDZYZ5Q5.js";
222
222
  import {
223
223
  WorkStorage
224
224
  } from "./chunk-GDB4J2H3.js";
@@ -226,13 +226,13 @@ import {
226
226
  parseRecallExplainFormat,
227
227
  renderRecallExplain,
228
228
  renderXray
229
- } from "./chunk-PW6GURU3.js";
229
+ } from "./chunk-EKIQBGAY.js";
230
230
  import {
231
231
  listMemoryGovernanceRuns,
232
232
  readMemoryGovernanceRunArtifact,
233
233
  restoreMemoryGovernanceRun,
234
234
  runMemoryGovernance
235
- } from "./chunk-C4KKM62E.js";
235
+ } from "./chunk-UU5LHD6J.js";
236
236
  import {
237
237
  getTrustZoneStoreStatus,
238
238
  promoteTrustZoneRecord,
@@ -247,7 +247,7 @@ import {
247
247
  import {
248
248
  RECALL_DISCLOSURE_LEVELS,
249
249
  isRecallDisclosure
250
- } from "./chunk-FPNQF475.js";
250
+ } from "./chunk-3F7RMHC4.js";
251
251
  import {
252
252
  getCausalTrajectoryStoreStatus
253
253
  } from "./chunk-SSOMTUCA.js";
@@ -7152,4 +7152,4 @@ export {
7152
7152
  resolveMemoryDirForNamespace,
7153
7153
  registerCli
7154
7154
  };
7155
- //# sourceMappingURL=chunk-I3YAA4BI.js.map
7155
+ //# sourceMappingURL=chunk-UZBK2JR6.js.map
@@ -4,10 +4,10 @@ import {
4
4
  loadSyncState,
5
5
  syncWearableSource,
6
6
  wearableSourceLabel
7
- } from "./chunk-KVDUDYEN.js";
7
+ } from "./chunk-DDRNDPX4.js";
8
8
  import {
9
9
  migrateFromEngram
10
- } from "./chunk-4HFJQCJZ.js";
10
+ } from "./chunk-7HYPN2GC.js";
11
11
  import {
12
12
  ensureContradictionScanCron,
13
13
  ensureDaySummaryCron,
@@ -16,7 +16,7 @@ import {
16
16
  ensurePatternReinforcementCron,
17
17
  ensureProceduralMiningCron,
18
18
  graphEdgeDecayCadenceToCronExpr
19
- } from "./chunk-6BDVBBBY.js";
19
+ } from "./chunk-666A3MOW.js";
20
20
  import {
21
21
  LcmEngine
22
22
  } from "./chunk-D2B22JDF.js";
@@ -29,7 +29,7 @@ import {
29
29
  import {
30
30
  CompoundingEngine,
31
31
  defaultTierMigrationCycleBudget
32
- } from "./chunk-QDAWVW75.js";
32
+ } from "./chunk-SBHQBC37.js";
33
33
  import {
34
34
  SharedContextManager
35
35
  } from "./chunk-DRD2Q7HQ.js";
@@ -64,7 +64,7 @@ import {
64
64
  } from "./chunk-VOUOLGIP.js";
65
65
  import {
66
66
  HourlySummarizer
67
- } from "./chunk-7KRYJUTB.js";
67
+ } from "./chunk-Y2XKJJEI.js";
68
68
  import {
69
69
  SessionObserverState
70
70
  } from "./chunk-MHQC2WU2.js";
@@ -154,10 +154,10 @@ import {
154
154
  getVerdictKind,
155
155
  judgeFactDurability,
156
156
  validateProcedureExtraction
157
- } from "./chunk-K47C6M2C.js";
157
+ } from "./chunk-M75TBFKQ.js";
158
158
  import {
159
159
  ExtractionEngine
160
- } from "./chunk-NRST7W5Q.js";
160
+ } from "./chunk-SEOTBRO4.js";
161
161
  import {
162
162
  parseMemoryActionEligibilityContext
163
163
  } from "./chunk-ROZJACKP.js";
@@ -166,7 +166,7 @@ import {
166
166
  } from "./chunk-XZ4WBBB5.js";
167
167
  import {
168
168
  LocalLlmClient
169
- } from "./chunk-77NAFXUD.js";
169
+ } from "./chunk-H3HDXD3U.js";
170
170
  import {
171
171
  buildFocusedListRecallSection,
172
172
  shouldRecallFocusedListEvidence
@@ -175,7 +175,7 @@ import {
175
175
  buildEntityRecallSection,
176
176
  entityRecentTranscriptLookbackHours,
177
177
  readRecentEntityTranscriptEntries
178
- } from "./chunk-JCLECECB.js";
178
+ } from "./chunk-A3UPMOJZ.js";
179
179
  import {
180
180
  buildEventOrderRecallSection,
181
181
  shouldRecallEventOrderEvidence
@@ -210,7 +210,7 @@ import {
210
210
  materializeAfterSemanticConsolidation,
211
211
  parseConsolidationResponse,
212
212
  parseOperatorAwareConsolidationResponse
213
- } from "./chunk-X7EJF46S.js";
213
+ } from "./chunk-H4RWKZE2.js";
214
214
  import {
215
215
  normalizeReplaySessionKey
216
216
  } from "./chunk-2PRQG7PV.js";
@@ -219,13 +219,13 @@ import {
219
219
  } from "./chunk-X6IRLNOO.js";
220
220
  import {
221
221
  searchVerifiedEpisodes
222
- } from "./chunk-YROCXMCK.js";
222
+ } from "./chunk-RJGPH2Q3.js";
223
223
  import {
224
224
  ThreadingManager
225
225
  } from "./chunk-W4RVMTHR.js";
226
226
  import {
227
227
  searchVerifiedSemanticRules
228
- } from "./chunk-4S3N6HFG.js";
228
+ } from "./chunk-C6XO6ONP.js";
229
229
  import {
230
230
  searchWorkProductLedgerEntries
231
231
  } from "./chunk-ZRWB5D4H.js";
@@ -234,7 +234,7 @@ import {
234
234
  } from "./chunk-IHG27THY.js";
235
235
  import {
236
236
  NamespaceStorageRouter
237
- } from "./chunk-LEG7XWS2.js";
237
+ } from "./chunk-IXSTQGYV.js";
238
238
  import {
239
239
  PolicyRuntimeManager
240
240
  } from "./chunk-33JBK2XP.js";
@@ -271,8 +271,9 @@ import {
271
271
  } from "./chunk-IBTZEBUD.js";
272
272
  import {
273
273
  FallbackLlmClient,
274
- fallbackLlmRuntimeContextFromConfig
275
- } from "./chunk-723OMPUI.js";
274
+ fallbackLlmRuntimeContextFromConfig,
275
+ gatewayTaskChainOptions
276
+ } from "./chunk-A3BS64GV.js";
276
277
  import {
277
278
  compileCorrectionRule,
278
279
  correctionsFilePath,
@@ -303,7 +304,7 @@ import {
303
304
  clusterByKey,
304
305
  combineNamespaces,
305
306
  resolveCodingNamespaceOverlay
306
- } from "./chunk-EDQVAMQI.js";
307
+ } from "./chunk-6GIKAUTN.js";
307
308
  import {
308
309
  listTrustZoneRecords,
309
310
  searchTrustZoneRecords
@@ -313,14 +314,14 @@ import {
313
314
  } from "./chunk-FF4KLI5W.js";
314
315
  import {
315
316
  buildXraySnapshot
316
- } from "./chunk-YQNADJCT.js";
317
+ } from "./chunk-CMZLMIZI.js";
317
318
  import {
318
319
  NamespaceSearchRouter
319
- } from "./chunk-LASA46TQ.js";
320
+ } from "./chunk-HRXCPKN4.js";
320
321
  import {
321
322
  createConversationIndexRuntime,
322
323
  createSearchBackend
323
- } from "./chunk-RAGXUVQW.js";
324
+ } from "./chunk-KVUG7FF7.js";
324
325
  import {
325
326
  NoopSearchBackend
326
327
  } from "./chunk-CYEPCZN5.js";
@@ -332,7 +333,7 @@ import {
332
333
  } from "./chunk-OIF36KGD.js";
333
334
  import {
334
335
  parseQmdExplain
335
- } from "./chunk-DEDTFRH2.js";
336
+ } from "./chunk-MUKXANAM.js";
336
337
  import {
337
338
  objectiveStateStoreOverrideForNamespace,
338
339
  searchObjectiveStateSnapshots
@@ -351,7 +352,7 @@ import {
351
352
  } from "./chunk-Y56J7CXW.js";
352
353
  import {
353
354
  buildChainFollowupGenerator
354
- } from "./chunk-CMN5AWAZ.js";
355
+ } from "./chunk-J2KFC47S.js";
355
356
  import {
356
357
  ContentHashIndex,
357
358
  StorageManager,
@@ -361,7 +362,7 @@ import {
361
362
  normalizeEntityName,
362
363
  parseEntityFile,
363
364
  stripAttributesSuffix
364
- } from "./chunk-QYGIQ5NM.js";
365
+ } from "./chunk-SHHT4JTC.js";
365
366
  import {
366
367
  isValidTranscriptDate,
367
368
  loadSpeakerRegistry,
@@ -376,7 +377,7 @@ import {
376
377
  } from "./chunk-J6A3CX5N.js";
377
378
  import {
378
379
  confidenceTier
379
- } from "./chunk-FPNQF475.js";
380
+ } from "./chunk-3F7RMHC4.js";
380
381
  import {
381
382
  inferMemoryStatus,
382
383
  isActiveMemoryStatus
@@ -1677,6 +1678,81 @@ function qmdResultPathCandidates(storageDir, resultPath) {
1677
1678
  }
1678
1679
  var COMPACTION_SIGNAL_MAX_AGE_MS = 60 * 60 * 1e3;
1679
1680
  var DEFAULT_QMD_STARTUP_COLLECTION_CHECK_TIMEOUT_MS = 1e4;
1681
+ function normalizeIanaTimeZone(value) {
1682
+ if (typeof value !== "string") return void 0;
1683
+ const trimmed = value.trim();
1684
+ if (!trimmed) return void 0;
1685
+ try {
1686
+ Intl.DateTimeFormat(void 0, { timeZone: trimmed });
1687
+ return trimmed;
1688
+ } catch {
1689
+ return void 0;
1690
+ }
1691
+ }
1692
+ function formatDateInTimeZone(date, timeZone) {
1693
+ const parts = new Intl.DateTimeFormat("en-US", {
1694
+ timeZone,
1695
+ year: "numeric",
1696
+ month: "2-digit",
1697
+ day: "2-digit"
1698
+ }).formatToParts(date);
1699
+ const get = (type) => parts.find((part) => part.type === type)?.value ?? "";
1700
+ return `${get("year")}-${get("month")}-${get("day")}`;
1701
+ }
1702
+ function utcDateKey(date) {
1703
+ return date.toISOString().slice(0, 10);
1704
+ }
1705
+ function utcDateKeysAround(date) {
1706
+ const dayMs = 864e5;
1707
+ const keys = [
1708
+ utcDateKey(new Date(date.getTime() - dayMs)),
1709
+ utcDateKey(date),
1710
+ utcDateKey(new Date(date.getTime() + dayMs))
1711
+ ];
1712
+ return keys.filter((value, index, array) => array.indexOf(value) === index);
1713
+ }
1714
+ function utcDateKeysForLocalDay(date, timeZone) {
1715
+ const targetLocalDate = formatDateInTimeZone(date, timeZone);
1716
+ const keys = /* @__PURE__ */ new Set();
1717
+ const hourMs = 36e5;
1718
+ const scanStart = date.getTime() - 48 * hourMs;
1719
+ const scanEnd = date.getTime() + 48 * hourMs;
1720
+ for (let ms = scanStart; ms <= scanEnd; ms += hourMs) {
1721
+ const candidate = new Date(ms);
1722
+ if (formatDateInTimeZone(candidate, timeZone) === targetLocalDate) {
1723
+ keys.add(utcDateKey(candidate));
1724
+ }
1725
+ }
1726
+ return keys.size > 0 ? [...keys].sort() : utcDateKeysAround(date);
1727
+ }
1728
+ function parseFiniteDate(value) {
1729
+ if (typeof value !== "string" || value.trim().length === 0) return null;
1730
+ const parsed = new Date(value);
1731
+ return Number.isFinite(parsed.getTime()) ? parsed : null;
1732
+ }
1733
+ function filterHourlySummaryMarkdownForLocalDay(raw, utcDate, timeZone, targetLocalDate) {
1734
+ const hourHeaderPattern = /^## ([01]\d|2[0-3]):00[ \t]*$/gm;
1735
+ const matches = Array.from(raw.matchAll(hourHeaderPattern));
1736
+ if (matches.length === 0) return null;
1737
+ const firstSectionStart = matches[0]?.index ?? 0;
1738
+ const preamble = raw.slice(0, firstSectionStart).trim();
1739
+ const sections = [];
1740
+ for (let index = 0; index < matches.length; index += 1) {
1741
+ const match = matches[index];
1742
+ const hour = match[1];
1743
+ if (!hour) continue;
1744
+ const sectionTimestamp = parseFiniteDate(`${utcDate}T${hour}:00:00.000Z`);
1745
+ if (!sectionTimestamp || formatDateInTimeZone(sectionTimestamp, timeZone) !== targetLocalDate) {
1746
+ continue;
1747
+ }
1748
+ const sectionStart = match.index ?? 0;
1749
+ const sectionEnd = matches[index + 1]?.index ?? raw.length;
1750
+ const section = raw.slice(sectionStart, sectionEnd).trim();
1751
+ if (section.length > 0) sections.push(section);
1752
+ }
1753
+ if (sections.length === 0) return null;
1754
+ return [preamble, ...sections].filter((section) => section.length > 0).join("\n\n");
1755
+ }
1680
1756
  function qmdStartupCollectionCheckTimeoutMs() {
1681
1757
  const raw = process.env.REMNIC_QMD_STARTUP_COLLECTION_CHECK_TIMEOUT_MS ?? process.env.ENGRAM_QMD_STARTUP_COLLECTION_CHECK_TIMEOUT_MS;
1682
1758
  if (raw === void 0) return DEFAULT_QMD_STARTUP_COLLECTION_CHECK_TIMEOUT_MS;
@@ -2756,7 +2832,10 @@ var Orchestrator = class _Orchestrator {
2756
2832
  const result = this.config.modelSource === "gateway" && this._fastGatewayLlm ? await this._fastGatewayLlm.chatCompletion(messages, {
2757
2833
  maxTokens: targetTokens * 2,
2758
2834
  timeoutMs: this.config.localLlmFastTimeoutMs,
2759
- agentId: this.config.fastGatewayAgentId || this.config.gatewayAgentId || void 0
2835
+ // LCM is latency-sensitive. A configured fast persona is the
2836
+ // explicit fast-tier route; otherwise use taskModelChain so LCM
2837
+ // avoids falling to an expensive gateway default. Issue #1473.
2838
+ ...this.config.fastGatewayAgentId ? { agentId: this.config.fastGatewayAgentId } : gatewayTaskChainOptions(this.config)
2760
2839
  }) : await this.localLlm.chatCompletion(messages, {
2761
2840
  maxTokens: targetTokens * 2,
2762
2841
  operation: "lcm-summarize",
@@ -3293,7 +3372,7 @@ var Orchestrator = class _Orchestrator {
3293
3372
  if (signal.aborted) return;
3294
3373
  if (!this.wearablesAutoSyncHandle && this.config.wearables.enabled && this.config.wearables.autoSyncEnabled && Object.values(this.config.wearables.sources).some((source) => source.enabled)) {
3295
3374
  try {
3296
- const { startWearablesAutoSync } = await import("./auto-sync-RFADEHIQ.js");
3375
+ const { startWearablesAutoSync } = await import("./auto-sync-54QQHOG5.js");
3297
3376
  if (signal.aborted) return;
3298
3377
  this.wearablesAutoSyncHandle = startWearablesAutoSync(
3299
3378
  {
@@ -3422,8 +3501,10 @@ var Orchestrator = class _Orchestrator {
3422
3501
  return true;
3423
3502
  }
3424
3503
  /**
3425
- * Auto-register the engram-day-summary cron job in OpenClaw if it doesn't exist.
3504
+ * Auto-register the engram-day-summary cron job in OpenClaw.
3505
+ * Reconciles model and timezone on every startup so config changes propagate.
3426
3506
  * Fire-and-forget — never blocks init or crashes on failure.
3507
+ * Issues #1474, #1475.
3427
3508
  */
3428
3509
  async autoRegisterDaySummaryCron() {
3429
3510
  const home = resolveHomeDir();
@@ -3435,15 +3516,44 @@ var Orchestrator = class _Orchestrator {
3435
3516
  );
3436
3517
  return;
3437
3518
  }
3438
- const created = await ensureDaySummaryCron(jobsPath, {
3439
- timezone: Intl.DateTimeFormat().resolvedOptions().timeZone
3519
+ const rawSummaryModel = this.config.summaryModel;
3520
+ const taskPrimary = this.config.taskModelChain?.primary;
3521
+ const isGateway = this.config.modelSource === "gateway";
3522
+ const model = isGateway ? rawSummaryModel || taskPrimary || void 0 : void 0;
3523
+ const fallbacks = [];
3524
+ if (model && taskPrimary && model === taskPrimary) {
3525
+ const seen = new Set(model ? [model] : []);
3526
+ const addUnique = (value) => {
3527
+ if (typeof value !== "string") return;
3528
+ const trimmed = value.trim();
3529
+ if (trimmed.length > 0 && !seen.has(trimmed)) {
3530
+ seen.add(trimmed);
3531
+ fallbacks.push(trimmed);
3532
+ }
3533
+ };
3534
+ for (const fb of this.config.taskModelChain?.fallbacks ?? []) addUnique(fb);
3535
+ const gwDefaults = this.config.gatewayConfig?.agents?.defaults?.model;
3536
+ addUnique(gwDefaults?.primary);
3537
+ if (Array.isArray(gwDefaults?.fallbacks)) {
3538
+ for (const fb of gwDefaults.fallbacks) addUnique(fb);
3539
+ }
3540
+ }
3541
+ const timezone = this.config.daySummaryTimezone || Intl.DateTimeFormat().resolvedOptions().timeZone;
3542
+ const result = await ensureDaySummaryCron(jobsPath, {
3543
+ timezone,
3544
+ ...model ? { model } : {},
3545
+ ...fallbacks.length > 0 ? { fallbacks } : {}
3440
3546
  });
3441
- if (created.created) {
3547
+ if (result.created) {
3548
+ log.info(
3549
+ `day-summary cron auto-registered (${result.jobId}, 23:47 ${timezone}${model ? `, model: ${model}` : ""})`
3550
+ );
3551
+ } else if (result.updated) {
3442
3552
  log.info(
3443
- `day-summary cron auto-registered (${created.jobId}, 23:47 ${Intl.DateTimeFormat().resolvedOptions().timeZone})`
3553
+ `day-summary cron reconciled (${result.jobId}, timezone: ${timezone}${model ? `, model: ${model}` : ""})`
3444
3554
  );
3445
3555
  } else {
3446
- log.debug("day-summary cron already exists, skipping auto-register");
3556
+ log.debug("day-summary cron already up to date");
3447
3557
  }
3448
3558
  } catch (err) {
3449
3559
  log.debug(`day-summary cron auto-register error: ${err}`);
@@ -3762,13 +3872,13 @@ ${doc.content}` : doc.content,
3762
3872
  );
3763
3873
  return result;
3764
3874
  }
3765
- const { FallbackLlmClient: FallbackLlmClient2, gatewayTaskChainOptions } = await import("./fallback-llm.js");
3875
+ const { FallbackLlmClient: FallbackLlmClient2, gatewayTaskChainOptions: gatewayTaskChainOptions2 } = await import("./fallback-llm.js");
3766
3876
  const useGateway = this.config.modelSource === "gateway";
3767
3877
  const modelSetting = this.config.semanticConsolidationModel;
3768
3878
  if (modelSetting === "fast" && this.fastLlm && !useGateway) {
3769
3879
  log.info("[semantic-consolidation] using fast local LLM for synthesis");
3770
3880
  }
3771
- const gatewayChainOptions = !useGateway ? {} : modelSetting === "fast" ? this.config.fastGatewayAgentId ? { agentId: this.config.fastGatewayAgentId } : this.config.gatewayAgentId ? { agentId: this.config.gatewayAgentId } : {} : gatewayTaskChainOptions(this.config);
3881
+ const gatewayChainOptions = !useGateway ? {} : modelSetting === "fast" ? this.config.fastGatewayAgentId ? { agentId: this.config.fastGatewayAgentId } : this.config.gatewayAgentId ? { agentId: this.config.gatewayAgentId } : {} : gatewayTaskChainOptions2(this.config);
3772
3882
  const llm = new FallbackLlmClient2(
3773
3883
  this.config.gatewayConfig,
3774
3884
  fallbackLlmRuntimeContextFromConfig(this.config)
@@ -4114,8 +4224,8 @@ ${evidenceText}`
4114
4224
  * Auto-gather today's facts and hourly summaries from storage, then generate a day summary.
4115
4225
  * Returns null if no facts are found for today.
4116
4226
  */
4117
- async generateDaySummaryAuto(namespace) {
4118
- const gathered = await this.gatherTodayFacts(namespace);
4227
+ async generateDaySummaryAuto(namespace, options = {}) {
4228
+ const gathered = await this.gatherTodayFacts(namespace, options);
4119
4229
  if (!gathered || !gathered.trim()) {
4120
4230
  log.warn("generateDaySummaryAuto: no facts found for today, skipping");
4121
4231
  return null;
@@ -4126,15 +4236,14 @@ ${evidenceText}`
4126
4236
  * Read today's facts and hourly summaries from storage, returning them
4127
4237
  * as a formatted string suitable for generateDaySummary().
4128
4238
  */
4129
- async gatherTodayFacts(namespace) {
4239
+ async gatherTodayFacts(namespace, options = {}) {
4130
4240
  const ns = namespace && namespace.length > 0 ? namespace : this.config.defaultNamespace;
4131
4241
  const storage = await this.storageRouter.storageFor(ns);
4132
- const now = /* @__PURE__ */ new Date();
4133
- const utcToday = now.toISOString().slice(0, 10);
4134
- const yesterday = new Date(now.getTime() - 864e5).toISOString().slice(0, 10);
4135
- const datesToScan = [yesterday, utcToday].filter(
4136
- (v, i, a) => a.indexOf(v) === i
4137
- );
4242
+ const configuredTimeZone = normalizeIanaTimeZone(options.timeZone) ?? normalizeIanaTimeZone(this.config.daySummaryTimezone);
4243
+ const timeZone = configuredTimeZone ?? Intl.DateTimeFormat().resolvedOptions().timeZone;
4244
+ const now = options.now instanceof Date && Number.isFinite(options.now.getTime()) ? options.now : /* @__PURE__ */ new Date();
4245
+ const targetLocalDate = formatDateInTimeZone(now, timeZone);
4246
+ const datesToScan = utcDateKeysForLocalDay(now, timeZone);
4138
4247
  const factsBaseDir = path2.join(storage.dir, "facts");
4139
4248
  const MAX_CHARS = 1e5;
4140
4249
  const facts = [];
@@ -4157,13 +4266,18 @@ ${evidenceText}`
4157
4266
  if (colonIdx === -1) continue;
4158
4267
  fm[line.slice(0, colonIdx).trim()] = line.slice(colonIdx + 1).trim();
4159
4268
  }
4269
+ const created = fm.created || "unknown";
4270
+ const createdAt = parseFiniteDate(created);
4271
+ if (createdAt && formatDateInTimeZone(createdAt, timeZone) !== targetLocalDate) {
4272
+ continue;
4273
+ }
4160
4274
  facts.push({
4161
4275
  path: fullPath,
4162
4276
  frontmatter: {
4163
4277
  id: fm.id || path2.basename(entry.name, ".md"),
4164
4278
  category: fm.category || "fact",
4165
- created: fm.created || "unknown",
4166
- updated: fm.updated || fm.created || "unknown",
4279
+ created,
4280
+ updated: fm.updated || created,
4167
4281
  source: fm.source || "unknown",
4168
4282
  confidence: parseFloat(fm.confidence || "0.8"),
4169
4283
  confidenceTier: fm.confidenceTier || "implied",
@@ -4177,9 +4291,10 @@ ${evidenceText}`
4177
4291
  } catch {
4178
4292
  }
4179
4293
  }
4180
- facts.sort(
4181
- (a, b) => a.frontmatter.created < b.frontmatter.created ? -1 : 1
4182
- );
4294
+ facts.sort((a, b) => {
4295
+ if (a.frontmatter.created === b.frontmatter.created) return 0;
4296
+ return a.frontmatter.created < b.frontmatter.created ? -1 : 1;
4297
+ });
4183
4298
  const hourlySummaries = [];
4184
4299
  const hourlyBaseDir = path2.join(storage.dir, "summaries", "hourly");
4185
4300
  try {
@@ -4190,8 +4305,14 @@ ${evidenceText}`
4190
4305
  const summaryFile = path2.join(hourlyBaseDir, sk.name, `${date}.md`);
4191
4306
  try {
4192
4307
  const raw = await readFile2(summaryFile, "utf-8");
4193
- if (raw.trim().length > 0) {
4194
- hourlySummaries.push(raw.trim());
4308
+ const filtered = filterHourlySummaryMarkdownForLocalDay(
4309
+ raw,
4310
+ date,
4311
+ timeZone,
4312
+ targetLocalDate
4313
+ );
4314
+ if (filtered) {
4315
+ hourlySummaries.push(filtered);
4195
4316
  }
4196
4317
  } catch {
4197
4318
  }
@@ -4216,7 +4337,7 @@ ${evidenceText}`
4216
4337
  }
4217
4338
  }
4218
4339
  log.info(
4219
- `gatherTodayFacts: collected ${facts.length} facts, ${hourlySummaries.length} hourly summaries (${formatted.length} chars)`
4340
+ `gatherTodayFacts: collected ${facts.length} facts, ${hourlySummaries.length} hourly summaries for ${targetLocalDate} (${timeZone}, ${formatted.length} chars)`
4220
4341
  );
4221
4342
  return formatted;
4222
4343
  }
@@ -13944,4 +14065,4 @@ export {
13944
14065
  resolvePersistedMemoryRelativePath,
13945
14066
  Orchestrator
13946
14067
  };
13947
- //# sourceMappingURL=chunk-TJRV4MWX.js.map
14068
+ //# sourceMappingURL=chunk-WAKPKNEX.js.map