causantic 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (465) hide show
  1. package/README.md +53 -66
  2. package/config.schema.json +12 -87
  3. package/dist/cli/commands/archive.d.ts.map +1 -1
  4. package/dist/cli/commands/archive.js.map +1 -1
  5. package/dist/cli/commands/benchmark-collection.d.ts.map +1 -1
  6. package/dist/cli/commands/benchmark-collection.js.map +1 -1
  7. package/dist/cli/commands/encryption.d.ts.map +1 -1
  8. package/dist/cli/commands/encryption.js.map +1 -1
  9. package/dist/cli/commands/hook.d.ts.map +1 -1
  10. package/dist/cli/commands/hook.js +8 -2
  11. package/dist/cli/commands/hook.js.map +1 -1
  12. package/dist/cli/commands/init.d.ts.map +1 -1
  13. package/dist/cli/commands/init.js +39 -32
  14. package/dist/cli/commands/init.js.map +1 -1
  15. package/dist/cli/commands/maintenance.d.ts.map +1 -1
  16. package/dist/cli/commands/maintenance.js +10 -3
  17. package/dist/cli/commands/maintenance.js.map +1 -1
  18. package/dist/cli/commands/serve.d.ts.map +1 -1
  19. package/dist/cli/commands/serve.js +3 -3
  20. package/dist/cli/commands/serve.js.map +1 -1
  21. package/dist/cli/index.js +1 -1
  22. package/dist/cli/skill-templates.d.ts.map +1 -1
  23. package/dist/cli/skill-templates.js +223 -153
  24. package/dist/cli/skill-templates.js.map +1 -1
  25. package/dist/cli/uninstall.d.ts.map +1 -1
  26. package/dist/cli/uninstall.js +4 -1
  27. package/dist/cli/uninstall.js.map +1 -1
  28. package/dist/clusters/cluster-manager.d.ts +23 -0
  29. package/dist/clusters/cluster-manager.d.ts.map +1 -1
  30. package/dist/clusters/cluster-manager.js +69 -2
  31. package/dist/clusters/cluster-manager.js.map +1 -1
  32. package/dist/clusters/cluster-refresh.d.ts.map +1 -1
  33. package/dist/clusters/cluster-refresh.js +5 -1
  34. package/dist/clusters/cluster-refresh.js.map +1 -1
  35. package/dist/clusters/hdbscan/cluster-extraction.d.ts.map +1 -1
  36. package/dist/clusters/hdbscan/cluster-extraction.js +1 -2
  37. package/dist/clusters/hdbscan/cluster-extraction.js.map +1 -1
  38. package/dist/clusters/hdbscan/hierarchy.d.ts.map +1 -1
  39. package/dist/clusters/hdbscan/hierarchy.js +1 -3
  40. package/dist/clusters/hdbscan/hierarchy.js.map +1 -1
  41. package/dist/clusters/hdbscan/incremental.d.ts.map +1 -1
  42. package/dist/clusters/hdbscan/incremental.js.map +1 -1
  43. package/dist/clusters/hdbscan/probabilities.d.ts +1 -1
  44. package/dist/clusters/hdbscan/probabilities.d.ts.map +1 -1
  45. package/dist/clusters/hdbscan/probabilities.js +1 -1
  46. package/dist/clusters/hdbscan/probabilities.js.map +1 -1
  47. package/dist/clusters/hdbscan.d.ts.map +1 -1
  48. package/dist/clusters/hdbscan.js +3 -5
  49. package/dist/clusters/hdbscan.js.map +1 -1
  50. package/dist/config/loader.d.ts +10 -15
  51. package/dist/config/loader.d.ts.map +1 -1
  52. package/dist/config/loader.js +40 -71
  53. package/dist/config/loader.js.map +1 -1
  54. package/dist/config/memory-config.d.ts +2 -45
  55. package/dist/config/memory-config.d.ts.map +1 -1
  56. package/dist/config/memory-config.js +6 -109
  57. package/dist/config/memory-config.js.map +1 -1
  58. package/dist/core/index.d.ts +1 -1
  59. package/dist/core/index.d.ts.map +1 -1
  60. package/dist/core/lexical-features.d.ts.map +1 -1
  61. package/dist/core/lexical-features.js +141 -20
  62. package/dist/core/lexical-features.js.map +1 -1
  63. package/dist/dashboard/client/assets/index-DdImwNQ0.css +1 -0
  64. package/dist/dashboard/client/assets/index-Ofx8zngH.js +166 -0
  65. package/dist/dashboard/client/index.html +2 -2
  66. package/dist/dashboard/routes/benchmark-collection.d.ts.map +1 -1
  67. package/dist/dashboard/routes/benchmark-collection.js +2 -6
  68. package/dist/dashboard/routes/benchmark-collection.js.map +1 -1
  69. package/dist/dashboard/routes/chain.d.ts +3 -0
  70. package/dist/dashboard/routes/chain.d.ts.map +1 -0
  71. package/dist/dashboard/routes/chain.js +74 -0
  72. package/dist/dashboard/routes/chain.js.map +1 -0
  73. package/dist/dashboard/routes/chunks.d.ts.map +1 -1
  74. package/dist/dashboard/routes/chunks.js +16 -1
  75. package/dist/dashboard/routes/chunks.js.map +1 -1
  76. package/dist/dashboard/routes/graph.d.ts.map +1 -1
  77. package/dist/dashboard/routes/graph.js.map +1 -1
  78. package/dist/dashboard/routes/search.d.ts.map +1 -1
  79. package/dist/dashboard/routes/search.js.map +1 -1
  80. package/dist/dashboard/routes/stats.d.ts.map +1 -1
  81. package/dist/dashboard/routes/stats.js +8 -6
  82. package/dist/dashboard/routes/stats.js.map +1 -1
  83. package/dist/dashboard/routes/timeline.d.ts +3 -0
  84. package/dist/dashboard/routes/timeline.d.ts.map +1 -0
  85. package/dist/dashboard/routes/timeline.js +90 -0
  86. package/dist/dashboard/routes/timeline.js.map +1 -0
  87. package/dist/dashboard/server.d.ts.map +1 -1
  88. package/dist/dashboard/server.js +4 -0
  89. package/dist/dashboard/server.js.map +1 -1
  90. package/dist/eval/annotation-schema.d.ts.map +1 -1
  91. package/dist/eval/annotation-schema.js +2 -5
  92. package/dist/eval/annotation-schema.js.map +1 -1
  93. package/dist/eval/benchmark-runner.d.ts.map +1 -1
  94. package/dist/eval/benchmark-runner.js +2 -2
  95. package/dist/eval/benchmark-runner.js.map +1 -1
  96. package/dist/eval/cluster-evaluator.d.ts.map +1 -1
  97. package/dist/eval/cluster-evaluator.js.map +1 -1
  98. package/dist/eval/collection-benchmark/chain-quality.d.ts +15 -0
  99. package/dist/eval/collection-benchmark/chain-quality.d.ts.map +1 -0
  100. package/dist/eval/collection-benchmark/chain-quality.js +60 -0
  101. package/dist/eval/collection-benchmark/chain-quality.js.map +1 -0
  102. package/dist/eval/collection-benchmark/health.d.ts.map +1 -1
  103. package/dist/eval/collection-benchmark/health.js +2 -2
  104. package/dist/eval/collection-benchmark/health.js.map +1 -1
  105. package/dist/eval/collection-benchmark/history.d.ts.map +1 -1
  106. package/dist/eval/collection-benchmark/history.js +14 -11
  107. package/dist/eval/collection-benchmark/history.js.map +1 -1
  108. package/dist/eval/collection-benchmark/latency.d.ts.map +1 -1
  109. package/dist/eval/collection-benchmark/latency.js +14 -11
  110. package/dist/eval/collection-benchmark/latency.js.map +1 -1
  111. package/dist/eval/collection-benchmark/reporter.d.ts.map +1 -1
  112. package/dist/eval/collection-benchmark/reporter.js +18 -28
  113. package/dist/eval/collection-benchmark/reporter.js.map +1 -1
  114. package/dist/eval/collection-benchmark/retrieval.d.ts.map +1 -1
  115. package/dist/eval/collection-benchmark/retrieval.js +14 -8
  116. package/dist/eval/collection-benchmark/retrieval.js.map +1 -1
  117. package/dist/eval/collection-benchmark/runner.d.ts +3 -3
  118. package/dist/eval/collection-benchmark/runner.d.ts.map +1 -1
  119. package/dist/eval/collection-benchmark/runner.js +46 -37
  120. package/dist/eval/collection-benchmark/runner.js.map +1 -1
  121. package/dist/eval/collection-benchmark/sampler.d.ts.map +1 -1
  122. package/dist/eval/collection-benchmark/sampler.js +14 -12
  123. package/dist/eval/collection-benchmark/sampler.js.map +1 -1
  124. package/dist/eval/collection-benchmark/tuning.d.ts.map +1 -1
  125. package/dist/eval/collection-benchmark/tuning.js +56 -71
  126. package/dist/eval/collection-benchmark/tuning.js.map +1 -1
  127. package/dist/eval/collection-benchmark/types.d.ts +12 -24
  128. package/dist/eval/collection-benchmark/types.d.ts.map +1 -1
  129. package/dist/eval/corpus-builder.d.ts.map +1 -1
  130. package/dist/eval/corpus-builder.js.map +1 -1
  131. package/dist/eval/experiments/boilerplate-filter.d.ts.map +1 -1
  132. package/dist/eval/experiments/boilerplate-filter.js.map +1 -1
  133. package/dist/eval/experiments/cluster-threshold/run-threshold-sweep.d.ts.map +1 -1
  134. package/dist/eval/experiments/cluster-threshold/run-threshold-sweep.js +3 -5
  135. package/dist/eval/experiments/cluster-threshold/run-threshold-sweep.js.map +1 -1
  136. package/dist/eval/experiments/code-focused-mode.d.ts.map +1 -1
  137. package/dist/eval/experiments/code-focused-mode.js +1 -1
  138. package/dist/eval/experiments/code-focused-mode.js.map +1 -1
  139. package/dist/eval/experiments/edge-decay/decay-curves.d.ts +25 -19
  140. package/dist/eval/experiments/edge-decay/decay-curves.d.ts.map +1 -1
  141. package/dist/eval/experiments/edge-decay/decay-curves.js +47 -40
  142. package/dist/eval/experiments/edge-decay/decay-curves.js.map +1 -1
  143. package/dist/eval/experiments/edge-decay/index.d.ts +6 -4
  144. package/dist/eval/experiments/edge-decay/index.d.ts.map +1 -1
  145. package/dist/eval/experiments/edge-decay/index.js +5 -3
  146. package/dist/eval/experiments/edge-decay/index.js.map +1 -1
  147. package/dist/eval/experiments/edge-decay/presets.d.ts +14 -4
  148. package/dist/eval/experiments/edge-decay/presets.d.ts.map +1 -1
  149. package/dist/eval/experiments/edge-decay/presets.js +73 -68
  150. package/dist/eval/experiments/edge-decay/presets.js.map +1 -1
  151. package/dist/eval/experiments/edge-decay/reference-extractor.d.ts +2 -1
  152. package/dist/eval/experiments/edge-decay/reference-extractor.d.ts.map +1 -1
  153. package/dist/eval/experiments/edge-decay/reference-extractor.js +26 -40
  154. package/dist/eval/experiments/edge-decay/reference-extractor.js.map +1 -1
  155. package/dist/eval/experiments/edge-decay/reference-types.d.ts +24 -17
  156. package/dist/eval/experiments/edge-decay/reference-types.d.ts.map +1 -1
  157. package/dist/eval/experiments/edge-decay/reference-types.js +3 -0
  158. package/dist/eval/experiments/edge-decay/reference-types.js.map +1 -1
  159. package/dist/eval/experiments/edge-decay/retrieval-ranking.d.ts +8 -8
  160. package/dist/eval/experiments/edge-decay/retrieval-ranking.d.ts.map +1 -1
  161. package/dist/eval/experiments/edge-decay/retrieval-ranking.js +77 -133
  162. package/dist/eval/experiments/edge-decay/retrieval-ranking.js.map +1 -1
  163. package/dist/eval/experiments/edge-decay/run-experiments.d.ts +7 -3
  164. package/dist/eval/experiments/edge-decay/run-experiments.d.ts.map +1 -1
  165. package/dist/eval/experiments/edge-decay/run-experiments.js +71 -52
  166. package/dist/eval/experiments/edge-decay/run-experiments.js.map +1 -1
  167. package/dist/eval/experiments/edge-decay/simulate.d.ts +1 -1
  168. package/dist/eval/experiments/edge-decay/simulate.d.ts.map +1 -1
  169. package/dist/eval/experiments/edge-decay/simulate.js +7 -19
  170. package/dist/eval/experiments/edge-decay/simulate.js.map +1 -1
  171. package/dist/eval/experiments/hdbscan-sweep.d.ts.map +1 -1
  172. package/dist/eval/experiments/hdbscan-sweep.js +2 -6
  173. package/dist/eval/experiments/hdbscan-sweep.js.map +1 -1
  174. package/dist/eval/experiments/single-model-run.d.ts.map +1 -1
  175. package/dist/eval/experiments/single-model-run.js +2 -2
  176. package/dist/eval/experiments/single-model-run.js.map +1 -1
  177. package/dist/eval/experiments/thinking-ablation.d.ts.map +1 -1
  178. package/dist/eval/experiments/thinking-ablation.js +1 -1
  179. package/dist/eval/experiments/thinking-ablation.js.map +1 -1
  180. package/dist/eval/experiments/topic-continuity/hybrid-classifier.d.ts.map +1 -1
  181. package/dist/eval/experiments/topic-continuity/hybrid-classifier.js +54 -6
  182. package/dist/eval/experiments/topic-continuity/hybrid-classifier.js.map +1 -1
  183. package/dist/eval/experiments/topic-continuity/labeler.d.ts.map +1 -1
  184. package/dist/eval/experiments/topic-continuity/labeler.js +1 -4
  185. package/dist/eval/experiments/topic-continuity/labeler.js.map +1 -1
  186. package/dist/eval/experiments/topic-continuity/run-experiment.d.ts.map +1 -1
  187. package/dist/eval/experiments/topic-continuity/run-experiment.js +5 -13
  188. package/dist/eval/experiments/topic-continuity/run-experiment.js.map +1 -1
  189. package/dist/eval/experiments/truncation.d.ts.map +1 -1
  190. package/dist/eval/experiments/truncation.js.map +1 -1
  191. package/dist/eval/experiments/types.d.ts.map +1 -1
  192. package/dist/eval/experiments/types.js.map +1 -1
  193. package/dist/eval/metrics.d.ts.map +1 -1
  194. package/dist/eval/metrics.js.map +1 -1
  195. package/dist/hooks/claudemd-generator.d.ts.map +1 -1
  196. package/dist/hooks/claudemd-generator.js +3 -4
  197. package/dist/hooks/claudemd-generator.js.map +1 -1
  198. package/dist/hooks/hook-utils.d.ts +16 -0
  199. package/dist/hooks/hook-utils.d.ts.map +1 -1
  200. package/dist/hooks/hook-utils.js +51 -2
  201. package/dist/hooks/hook-utils.js.map +1 -1
  202. package/dist/hooks/index.d.ts +4 -2
  203. package/dist/hooks/index.d.ts.map +1 -1
  204. package/dist/hooks/index.js +3 -1
  205. package/dist/hooks/index.js.map +1 -1
  206. package/dist/hooks/pre-compact.d.ts.map +1 -1
  207. package/dist/hooks/pre-compact.js +6 -51
  208. package/dist/hooks/pre-compact.js.map +1 -1
  209. package/dist/hooks/session-end.d.ts +58 -0
  210. package/dist/hooks/session-end.d.ts.map +1 -0
  211. package/dist/hooks/session-end.js +82 -0
  212. package/dist/hooks/session-end.js.map +1 -0
  213. package/dist/hooks/session-start.d.ts.map +1 -1
  214. package/dist/hooks/session-start.js +3 -5
  215. package/dist/hooks/session-start.js.map +1 -1
  216. package/dist/index.d.ts +1 -2
  217. package/dist/index.d.ts.map +1 -1
  218. package/dist/index.js +1 -3
  219. package/dist/index.js.map +1 -1
  220. package/dist/ingest/batch-ingest.d.ts.map +1 -1
  221. package/dist/ingest/batch-ingest.js.map +1 -1
  222. package/dist/ingest/brief-debrief-detector.d.ts +6 -13
  223. package/dist/ingest/brief-debrief-detector.d.ts.map +1 -1
  224. package/dist/ingest/brief-debrief-detector.js +9 -16
  225. package/dist/ingest/brief-debrief-detector.js.map +1 -1
  226. package/dist/ingest/cross-session-linker.d.ts +2 -1
  227. package/dist/ingest/cross-session-linker.d.ts.map +1 -1
  228. package/dist/ingest/cross-session-linker.js +17 -7
  229. package/dist/ingest/cross-session-linker.js.map +1 -1
  230. package/dist/ingest/edge-creator.d.ts +14 -40
  231. package/dist/ingest/edge-creator.d.ts.map +1 -1
  232. package/dist/ingest/edge-creator.js +34 -132
  233. package/dist/ingest/edge-creator.js.map +1 -1
  234. package/dist/ingest/edge-detector.d.ts +27 -12
  235. package/dist/ingest/edge-detector.d.ts.map +1 -1
  236. package/dist/ingest/edge-detector.js +68 -200
  237. package/dist/ingest/edge-detector.js.map +1 -1
  238. package/dist/ingest/index.d.ts +3 -3
  239. package/dist/ingest/index.d.ts.map +1 -1
  240. package/dist/ingest/index.js +3 -3
  241. package/dist/ingest/index.js.map +1 -1
  242. package/dist/ingest/ingest-session.d.ts +1 -8
  243. package/dist/ingest/ingest-session.d.ts.map +1 -1
  244. package/dist/ingest/ingest-session.js +54 -107
  245. package/dist/ingest/ingest-session.js.map +1 -1
  246. package/dist/ingest/rebuild-edges.d.ts +17 -0
  247. package/dist/ingest/rebuild-edges.d.ts.map +1 -0
  248. package/dist/ingest/rebuild-edges.js +97 -0
  249. package/dist/ingest/rebuild-edges.js.map +1 -0
  250. package/dist/maintenance/scheduler.d.ts +2 -3
  251. package/dist/maintenance/scheduler.d.ts.map +1 -1
  252. package/dist/maintenance/scheduler.js +14 -23
  253. package/dist/maintenance/scheduler.js.map +1 -1
  254. package/dist/maintenance/tasks/cleanup-vectors.d.ts +3 -1
  255. package/dist/maintenance/tasks/cleanup-vectors.d.ts.map +1 -1
  256. package/dist/maintenance/tasks/cleanup-vectors.js +6 -4
  257. package/dist/maintenance/tasks/cleanup-vectors.js.map +1 -1
  258. package/dist/maintenance/tasks/index.d.ts +0 -1
  259. package/dist/maintenance/tasks/index.d.ts.map +1 -1
  260. package/dist/maintenance/tasks/index.js +0 -1
  261. package/dist/maintenance/tasks/index.js.map +1 -1
  262. package/dist/mcp/index.d.ts +1 -1
  263. package/dist/mcp/index.d.ts.map +1 -1
  264. package/dist/mcp/index.js +1 -1
  265. package/dist/mcp/index.js.map +1 -1
  266. package/dist/mcp/server.d.ts.map +1 -1
  267. package/dist/mcp/server.js +9 -8
  268. package/dist/mcp/server.js.map +1 -1
  269. package/dist/mcp/tools.d.ts +5 -5
  270. package/dist/mcp/tools.d.ts.map +1 -1
  271. package/dist/mcp/tools.js +42 -36
  272. package/dist/mcp/tools.js.map +1 -1
  273. package/dist/models/device-detector.d.ts.map +1 -1
  274. package/dist/models/device-detector.js +20 -10
  275. package/dist/models/device-detector.js.map +1 -1
  276. package/dist/models/embedder.d.ts.map +1 -1
  277. package/dist/models/embedder.js +5 -2
  278. package/dist/models/embedder.js.map +1 -1
  279. package/dist/models/model-registry.d.ts.map +1 -1
  280. package/dist/models/model-registry.js.map +1 -1
  281. package/dist/parser/chunker.d.ts +5 -40
  282. package/dist/parser/chunker.d.ts.map +1 -1
  283. package/dist/parser/chunker.js +5 -111
  284. package/dist/parser/chunker.js.map +1 -1
  285. package/dist/parser/session-reader.d.ts.map +1 -1
  286. package/dist/parser/session-reader.js +3 -6
  287. package/dist/parser/session-reader.js.map +1 -1
  288. package/dist/parser/turn-assembler.d.ts.map +1 -1
  289. package/dist/parser/turn-assembler.js +0 -1
  290. package/dist/parser/turn-assembler.js.map +1 -1
  291. package/dist/parser/types.d.ts.map +1 -1
  292. package/dist/report/reporter.d.ts.map +1 -1
  293. package/dist/report/reporter.js +1 -3
  294. package/dist/report/reporter.js.map +1 -1
  295. package/dist/retrieval/chain-assembler.d.ts +58 -0
  296. package/dist/retrieval/chain-assembler.d.ts.map +1 -0
  297. package/dist/retrieval/chain-assembler.js +126 -0
  298. package/dist/retrieval/chain-assembler.js.map +1 -0
  299. package/dist/retrieval/chain-walker.d.ts +57 -0
  300. package/dist/retrieval/chain-walker.d.ts.map +1 -0
  301. package/dist/retrieval/chain-walker.js +121 -0
  302. package/dist/retrieval/chain-walker.js.map +1 -0
  303. package/dist/retrieval/cluster-expander.d.ts.map +1 -1
  304. package/dist/retrieval/cluster-expander.js +3 -3
  305. package/dist/retrieval/cluster-expander.js.map +1 -1
  306. package/dist/retrieval/context-assembler.d.ts +13 -36
  307. package/dist/retrieval/context-assembler.d.ts.map +1 -1
  308. package/dist/retrieval/context-assembler.js +50 -287
  309. package/dist/retrieval/context-assembler.js.map +1 -1
  310. package/dist/retrieval/index.d.ts +8 -4
  311. package/dist/retrieval/index.d.ts.map +1 -1
  312. package/dist/retrieval/index.js +7 -3
  313. package/dist/retrieval/index.js.map +1 -1
  314. package/dist/retrieval/rrf.d.ts.map +1 -1
  315. package/dist/retrieval/rrf.js +4 -2
  316. package/dist/retrieval/rrf.js.map +1 -1
  317. package/dist/retrieval/search-assembler.d.ts +59 -0
  318. package/dist/retrieval/search-assembler.d.ts.map +1 -0
  319. package/dist/retrieval/search-assembler.js +209 -0
  320. package/dist/retrieval/search-assembler.js.map +1 -0
  321. package/dist/retrieval/session-reconstructor.d.ts.map +1 -1
  322. package/dist/retrieval/session-reconstructor.js +9 -7
  323. package/dist/retrieval/session-reconstructor.js.map +1 -1
  324. package/dist/storage/archive.d.ts +0 -2
  325. package/dist/storage/archive.d.ts.map +1 -1
  326. package/dist/storage/archive.js +18 -12
  327. package/dist/storage/archive.js.map +1 -1
  328. package/dist/storage/checkpoint-store.d.ts +0 -1
  329. package/dist/storage/checkpoint-store.d.ts.map +1 -1
  330. package/dist/storage/checkpoint-store.js +5 -7
  331. package/dist/storage/checkpoint-store.js.map +1 -1
  332. package/dist/storage/chunk-store.d.ts.map +1 -1
  333. package/dist/storage/chunk-store.js +15 -17
  334. package/dist/storage/chunk-store.js.map +1 -1
  335. package/dist/storage/cluster-store.d.ts.map +1 -1
  336. package/dist/storage/cluster-store.js.map +1 -1
  337. package/dist/storage/db.d.ts.map +1 -1
  338. package/dist/storage/db.js.map +1 -1
  339. package/dist/storage/edge-store.d.ts +17 -30
  340. package/dist/storage/edge-store.d.ts.map +1 -1
  341. package/dist/storage/edge-store.js +43 -123
  342. package/dist/storage/edge-store.js.map +1 -1
  343. package/dist/storage/embedding-cache.d.ts.map +1 -1
  344. package/dist/storage/embedding-cache.js +1 -3
  345. package/dist/storage/embedding-cache.js.map +1 -1
  346. package/dist/storage/encryption.d.ts.map +1 -1
  347. package/dist/storage/encryption.js +4 -15
  348. package/dist/storage/encryption.js.map +1 -1
  349. package/dist/storage/index.d.ts +1 -4
  350. package/dist/storage/index.d.ts.map +1 -1
  351. package/dist/storage/index.js +1 -5
  352. package/dist/storage/index.js.map +1 -1
  353. package/dist/storage/keyword-store.d.ts.map +1 -1
  354. package/dist/storage/keyword-store.js +11 -7
  355. package/dist/storage/keyword-store.js.map +1 -1
  356. package/dist/storage/migrations.d.ts.map +1 -1
  357. package/dist/storage/migrations.js +56 -4
  358. package/dist/storage/migrations.js.map +1 -1
  359. package/dist/storage/schema.sql +8 -20
  360. package/dist/storage/types.d.ts +12 -26
  361. package/dist/storage/types.d.ts.map +1 -1
  362. package/dist/storage/types.js +1 -2
  363. package/dist/storage/types.js.map +1 -1
  364. package/dist/storage/vector-store.d.ts +9 -15
  365. package/dist/storage/vector-store.d.ts.map +1 -1
  366. package/dist/storage/vector-store.js +64 -43
  367. package/dist/storage/vector-store.js.map +1 -1
  368. package/dist/utils/angular-distance.d.ts.map +1 -1
  369. package/dist/utils/angular-distance.js.map +1 -1
  370. package/dist/utils/logger.d.ts.map +1 -1
  371. package/dist/utils/logger.js.map +1 -1
  372. package/dist/utils/secret-store.d.ts.map +1 -1
  373. package/dist/utils/secret-store.js +17 -13
  374. package/dist/utils/secret-store.js.map +1 -1
  375. package/dist/utils/secure-buffer.d.ts.map +1 -1
  376. package/dist/utils/secure-buffer.js.map +1 -1
  377. package/package.json +7 -6
  378. package/src/dashboard/client/package-lock.json +3 -3
  379. package/src/dashboard/client/package.json +3 -3
  380. package/dist/dashboard/client/assets/index-CMUKy4f9.css +0 -1
  381. package/dist/dashboard/client/assets/index-esv8TpCN.js +0 -168
  382. package/dist/eval/collection-benchmark/graph-value.d.ts +0 -16
  383. package/dist/eval/collection-benchmark/graph-value.d.ts.map +0 -1
  384. package/dist/eval/collection-benchmark/graph-value.js +0 -162
  385. package/dist/eval/collection-benchmark/graph-value.js.map +0 -1
  386. package/dist/eval/experiments/vector-decay-shapes/curve-shapes-experiment.d.ts +0 -10
  387. package/dist/eval/experiments/vector-decay-shapes/curve-shapes-experiment.d.ts.map +0 -1
  388. package/dist/eval/experiments/vector-decay-shapes/curve-shapes-experiment.js +0 -229
  389. package/dist/eval/experiments/vector-decay-shapes/curve-shapes-experiment.js.map +0 -1
  390. package/dist/eval/experiments/vector-decay-shapes/graph-range-experiment.d.ts +0 -12
  391. package/dist/eval/experiments/vector-decay-shapes/graph-range-experiment.d.ts.map +0 -1
  392. package/dist/eval/experiments/vector-decay-shapes/graph-range-experiment.js +0 -316
  393. package/dist/eval/experiments/vector-decay-shapes/graph-range-experiment.js.map +0 -1
  394. package/dist/eval/experiments/vector-decay-shapes/hop-decay.d.ts +0 -19
  395. package/dist/eval/experiments/vector-decay-shapes/hop-decay.d.ts.map +0 -1
  396. package/dist/eval/experiments/vector-decay-shapes/hop-decay.js +0 -127
  397. package/dist/eval/experiments/vector-decay-shapes/hop-decay.js.map +0 -1
  398. package/dist/eval/experiments/vector-decay-shapes/index.d.ts +0 -11
  399. package/dist/eval/experiments/vector-decay-shapes/index.d.ts.map +0 -1
  400. package/dist/eval/experiments/vector-decay-shapes/index.js +0 -11
  401. package/dist/eval/experiments/vector-decay-shapes/index.js.map +0 -1
  402. package/dist/eval/experiments/vector-decay-shapes/path-traversal-experiment.d.ts +0 -14
  403. package/dist/eval/experiments/vector-decay-shapes/path-traversal-experiment.d.ts.map +0 -1
  404. package/dist/eval/experiments/vector-decay-shapes/path-traversal-experiment.js +0 -274
  405. package/dist/eval/experiments/vector-decay-shapes/path-traversal-experiment.js.map +0 -1
  406. package/dist/eval/experiments/vector-decay-shapes/presets.d.ts +0 -36
  407. package/dist/eval/experiments/vector-decay-shapes/presets.d.ts.map +0 -1
  408. package/dist/eval/experiments/vector-decay-shapes/presets.js +0 -157
  409. package/dist/eval/experiments/vector-decay-shapes/presets.js.map +0 -1
  410. package/dist/eval/experiments/vector-decay-shapes/run-experiment.d.ts +0 -20
  411. package/dist/eval/experiments/vector-decay-shapes/run-experiment.d.ts.map +0 -1
  412. package/dist/eval/experiments/vector-decay-shapes/run-experiment.js +0 -504
  413. package/dist/eval/experiments/vector-decay-shapes/run-experiment.js.map +0 -1
  414. package/dist/eval/experiments/vector-decay-shapes/types.d.ts +0 -111
  415. package/dist/eval/experiments/vector-decay-shapes/types.d.ts.map +0 -1
  416. package/dist/eval/experiments/vector-decay-shapes/types.js +0 -15
  417. package/dist/eval/experiments/vector-decay-shapes/types.js.map +0 -1
  418. package/dist/eval/experiments/vector-decay-sweep/index.d.ts +0 -7
  419. package/dist/eval/experiments/vector-decay-sweep/index.d.ts.map +0 -1
  420. package/dist/eval/experiments/vector-decay-sweep/index.js +0 -7
  421. package/dist/eval/experiments/vector-decay-sweep/index.js.map +0 -1
  422. package/dist/eval/experiments/vector-decay-sweep/run-sweep.d.ts +0 -30
  423. package/dist/eval/experiments/vector-decay-sweep/run-sweep.d.ts.map +0 -1
  424. package/dist/eval/experiments/vector-decay-sweep/run-sweep.js +0 -378
  425. package/dist/eval/experiments/vector-decay-sweep/run-sweep.js.map +0 -1
  426. package/dist/eval/experiments/vector-decay-sweep/types.d.ts +0 -109
  427. package/dist/eval/experiments/vector-decay-sweep/types.d.ts.map +0 -1
  428. package/dist/eval/experiments/vector-decay-sweep/types.js +0 -16
  429. package/dist/eval/experiments/vector-decay-sweep/types.js.map +0 -1
  430. package/dist/maintenance/tasks/prune-graph.d.ts +0 -12
  431. package/dist/maintenance/tasks/prune-graph.d.ts.map +0 -1
  432. package/dist/maintenance/tasks/prune-graph.js +0 -23
  433. package/dist/maintenance/tasks/prune-graph.js.map +0 -1
  434. package/dist/retrieval/traverser.d.ts +0 -66
  435. package/dist/retrieval/traverser.d.ts.map +0 -1
  436. package/dist/retrieval/traverser.js +0 -160
  437. package/dist/retrieval/traverser.js.map +0 -1
  438. package/dist/storage/clock-store.d.ts +0 -80
  439. package/dist/storage/clock-store.d.ts.map +0 -1
  440. package/dist/storage/clock-store.js +0 -155
  441. package/dist/storage/clock-store.js.map +0 -1
  442. package/dist/storage/decay.d.ts +0 -125
  443. package/dist/storage/decay.d.ts.map +0 -1
  444. package/dist/storage/decay.js +0 -276
  445. package/dist/storage/decay.js.map +0 -1
  446. package/dist/storage/pruner.d.ts +0 -111
  447. package/dist/storage/pruner.d.ts.map +0 -1
  448. package/dist/storage/pruner.js +0 -280
  449. package/dist/storage/pruner.js.map +0 -1
  450. package/dist/temporal/clock-compactor.d.ts +0 -65
  451. package/dist/temporal/clock-compactor.d.ts.map +0 -1
  452. package/dist/temporal/clock-compactor.js +0 -157
  453. package/dist/temporal/clock-compactor.js.map +0 -1
  454. package/dist/temporal/index.d.ts +0 -6
  455. package/dist/temporal/index.d.ts.map +0 -1
  456. package/dist/temporal/index.js +0 -6
  457. package/dist/temporal/index.js.map +0 -1
  458. package/dist/temporal/vector-clock.d.ts +0 -143
  459. package/dist/temporal/vector-clock.d.ts.map +0 -1
  460. package/dist/temporal/vector-clock.js +0 -231
  461. package/dist/temporal/vector-clock.js.map +0 -1
  462. package/dist/utils/keychain.d.ts +0 -43
  463. package/dist/utils/keychain.d.ts.map +0 -1
  464. package/dist/utils/keychain.js +0 -82
  465. package/dist/utils/keychain.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/eval/experiments/edge-decay/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAYH,OAAO,EACL,aAAa,EACb,aAAa,EACb,WAAW,EACX,UAAU,EACV,WAAW,EACX,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB,2BAA2B;AAC3B,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,OAAO,EACP,UAAU,GACX,MAAM,mBAAmB,CAAC;AAE3B,UAAU;AACV,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,iBAAiB,GAClB,MAAM,cAAc,CAAC;AAEtB,aAAa;AACb,OAAO,EACL,yBAAyB,EACzB,aAAa,EACb,aAAa,EACb,uBAAuB,EACvB,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,UAAU,EACV,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAevB,OAAO,EACL,wBAAwB,EACxB,iBAAiB,EACjB,qBAAqB,GAEtB,MAAM,0BAA0B,CAAC;AAElC,+BAA+B;AAC/B,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,6BAA6B,EAC7B,2BAA2B,EAC3B,qBAAqB,EACrB,2BAA2B,EAC3B,yBAAyB,GAE1B,MAAM,wBAAwB,CAAC;AAEhC,oBAAoB;AACpB,OAAO,EACL,uBAAuB,GAExB,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/eval/experiments/edge-decay/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH,OAAO,EACL,aAAa,EACb,aAAa,EACb,WAAW,EACX,UAAU,EACV,WAAW,EACX,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB,2BAA2B;AAC3B,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,wBAAwB,EACxB,eAAe,EACf,sBAAsB,EACtB,OAAO,EACP,UAAU,GACX,MAAM,mBAAmB,CAAC;AAE3B,UAAU;AACV,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,iBAAiB,GAClB,MAAM,cAAc,CAAC;AAEtB,aAAa;AACb,OAAO,EACL,yBAAyB,EACzB,aAAa,EACb,aAAa,EACb,uBAAuB,EACvB,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,UAAU,EACV,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAevB,OAAO,EACL,wBAAwB,EACxB,iBAAiB,EACjB,qBAAqB,GAEtB,MAAM,0BAA0B,CAAC;AAElC,+BAA+B;AAC/B,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,8BAA8B,EAC9B,2BAA2B,EAC3B,sBAAsB,EACtB,2BAA2B,EAC3B,yBAAyB,GAE1B,MAAM,wBAAwB,CAAC;AAEhC,oBAAoB;AACpB,OAAO,EAAE,uBAAuB,EAA0B,MAAM,sBAAsB,CAAC"}
@@ -1,20 +1,30 @@
1
1
  /**
2
2
  * Preset decay model configurations for comparison.
3
+ *
4
+ * Distance metric: hop distance (turn count difference).
5
+ * All parameters are in hops (not milliseconds). The DecayModelConfig
6
+ * field names contain "Ms" for historical reasons, but in this experiment
7
+ * context they represent hop counts.
8
+ *
9
+ * DecayTier.holdPeriodMs → hold period in hops
10
+ * DecayTier.decayRatePerMs → decay rate per hop
11
+ * DecayModelConfig.holdPeriodMs → hold period in hops
12
+ * DecayModelConfig.decayRate → decay rate per hop
3
13
  */
4
14
  import type { DecayModelConfig, DecayTier } from './types.js';
5
15
  /**
6
16
  * Short-term tier: high weight, fast decay, short hold.
7
- * Models immediate conversational context.
17
+ * Models immediate conversational context (1-5 hops).
8
18
  */
9
19
  export declare const SHORT_TERM_TIER: DecayTier;
10
20
  /**
11
21
  * Medium-term tier: moderate weight, moderate decay.
12
- * Models session-level context.
22
+ * Models session-level context (5-20 hops).
13
23
  */
14
24
  export declare const MEDIUM_TERM_TIER: DecayTier;
15
25
  /**
16
26
  * Long-term tier: lower weight, slow decay.
17
- * Models project-level context.
27
+ * Models project-level context (10-50 hops).
18
28
  */
19
29
  export declare const LONG_TERM_TIER: DecayTier;
20
30
  /**
@@ -41,7 +51,7 @@ export declare function getPresetModelIds(): string[];
41
51
  /** Alias for PRESET_MODELS */
42
52
  export declare const DECAY_MODEL_PRESETS: DecayModelConfig[];
43
53
  /**
44
- * Hold period variants for finding optimal hold duration.
54
+ * Hold period variants for finding optimal hold duration (in hops).
45
55
  * All use same decay rate after hold period ends.
46
56
  */
47
57
  export declare const HOLD_PERIOD_VARIANTS: DecayModelConfig[];
@@ -1 +1 @@
1
- {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../../src/eval/experiments/edge-decay/presets.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG9D;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,SAK7B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAK9B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,SAK5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,EAIpC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAS,EAavC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAS,EAmBvC,CAAC;AAMF,eAAO,MAAM,aAAa,EAAE,gBAAgB,EA0F3C,CAAC;AAEF;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAEvE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C;AAED,8BAA8B;AAC9B,eAAO,MAAM,mBAAmB,oBAAgB,CAAC;AAMjD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,gBAAgB,EAqClD,CAAC;AAEF;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,gBAAgB,EAAE,CAE1D"}
1
+ {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../../src/eval/experiments/edge-decay/presets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE9D;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,SAK7B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAK9B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,SAK5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,EAAwD,CAAC;AAE9F;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAS,EAavC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAS,EAmBvC,CAAC;AAMF,eAAO,MAAM,aAAa,EAAE,gBAAgB,EA0F3C,CAAC;AAEF;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAEvE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C;AAED,8BAA8B;AAC9B,eAAO,MAAM,mBAAmB,oBAAgB,CAAC;AAMjD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,gBAAgB,EAqClD,CAAC;AAEF;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,gBAAgB,EAAE,CAE1D"}
@@ -1,45 +1,50 @@
1
1
  /**
2
2
  * Preset decay model configurations for comparison.
3
+ *
4
+ * Distance metric: hop distance (turn count difference).
5
+ * All parameters are in hops (not milliseconds). The DecayModelConfig
6
+ * field names contain "Ms" for historical reasons, but in this experiment
7
+ * context they represent hop counts.
8
+ *
9
+ * DecayTier.holdPeriodMs → hold period in hops
10
+ * DecayTier.decayRatePerMs → decay rate per hop
11
+ * DecayModelConfig.holdPeriodMs → hold period in hops
12
+ * DecayModelConfig.decayRate → decay rate per hop
3
13
  */
4
- import { MS_PER_MINUTE, MS_PER_HOUR, MS_PER_DAY } from './types.js';
5
14
  /**
6
15
  * Short-term tier: high weight, fast decay, short hold.
7
- * Models immediate conversational context.
16
+ * Models immediate conversational context (1-5 hops).
8
17
  */
9
18
  export const SHORT_TERM_TIER = {
10
19
  name: 'short-term',
11
20
  initialWeight: 1.0,
12
- holdPeriodMs: 5 * MS_PER_MINUTE,
13
- decayRatePerMs: 1.0 / (15 * MS_PER_MINUTE), // Dies ~20 min after hold
21
+ holdPeriodMs: 1, // Hold for 1 hop
22
+ decayRatePerMs: 1.0 / 4, // Dies 5 hops after creation
14
23
  };
15
24
  /**
16
25
  * Medium-term tier: moderate weight, moderate decay.
17
- * Models session-level context.
26
+ * Models session-level context (5-20 hops).
18
27
  */
19
28
  export const MEDIUM_TERM_TIER = {
20
29
  name: 'medium-term',
21
30
  initialWeight: 0.5,
22
- holdPeriodMs: 1 * MS_PER_HOUR,
23
- decayRatePerMs: 0.5 / (4 * MS_PER_HOUR), // Dies ~5 hours after hold
31
+ holdPeriodMs: 5, // Hold for 5 hops
32
+ decayRatePerMs: 0.5 / 15, // Dies ~20 hops after creation
24
33
  };
25
34
  /**
26
35
  * Long-term tier: lower weight, slow decay.
27
- * Models project-level context.
36
+ * Models project-level context (10-50 hops).
28
37
  */
29
38
  export const LONG_TERM_TIER = {
30
39
  name: 'long-term',
31
40
  initialWeight: 0.3,
32
- holdPeriodMs: 24 * MS_PER_HOUR,
33
- decayRatePerMs: 0.3 / (48 * MS_PER_HOUR), // Dies ~72 hours after hold
41
+ holdPeriodMs: 10, // Hold for 10 hops
42
+ decayRatePerMs: 0.3 / 40, // Dies ~50 hops after creation
34
43
  };
35
44
  /**
36
45
  * Default three-tier configuration.
37
46
  */
38
- export const DEFAULT_TIERS = [
39
- SHORT_TERM_TIER,
40
- MEDIUM_TERM_TIER,
41
- LONG_TERM_TIER,
42
- ];
47
+ export const DEFAULT_TIERS = [SHORT_TERM_TIER, MEDIUM_TERM_TIER, LONG_TERM_TIER];
43
48
  /**
44
49
  * Alternative: faster decay for ephemeral contexts.
45
50
  */
@@ -47,14 +52,14 @@ export const FAST_DECAY_TIERS = [
47
52
  {
48
53
  name: 'immediate',
49
54
  initialWeight: 1.0,
50
- holdPeriodMs: 2 * MS_PER_MINUTE,
51
- decayRatePerMs: 1.0 / (5 * MS_PER_MINUTE),
55
+ holdPeriodMs: 0, // No hold
56
+ decayRatePerMs: 1.0 / 3, // Dies at 3 hops
52
57
  },
53
58
  {
54
59
  name: 'session',
55
60
  initialWeight: 0.4,
56
- holdPeriodMs: 30 * MS_PER_MINUTE,
57
- decayRatePerMs: 0.4 / (2 * MS_PER_HOUR),
61
+ holdPeriodMs: 2, // Hold for 2 hops
62
+ decayRatePerMs: 0.4 / 8, // Dies at 10 hops
58
63
  },
59
64
  ];
60
65
  /**
@@ -64,46 +69,46 @@ export const SLOW_DECAY_TIERS = [
64
69
  {
65
70
  name: 'working',
66
71
  initialWeight: 0.8,
67
- holdPeriodMs: 30 * MS_PER_MINUTE,
68
- decayRatePerMs: 0.8 / (2 * MS_PER_HOUR),
72
+ holdPeriodMs: 3, // Hold for 3 hops
73
+ decayRatePerMs: 0.8 / 10, // Dies at 13 hops
69
74
  },
70
75
  {
71
76
  name: 'reference',
72
77
  initialWeight: 0.5,
73
- holdPeriodMs: 6 * MS_PER_HOUR,
74
- decayRatePerMs: 0.5 / (2 * MS_PER_DAY),
78
+ holdPeriodMs: 10, // Hold for 10 hops
79
+ decayRatePerMs: 0.5 / 30, // Dies at 40 hops
75
80
  },
76
81
  {
77
82
  name: 'archival',
78
83
  initialWeight: 0.2,
79
- holdPeriodMs: 3 * MS_PER_DAY,
80
- decayRatePerMs: 0.2 / (14 * MS_PER_DAY),
84
+ holdPeriodMs: 20, // Hold for 20 hops
85
+ decayRatePerMs: 0.2 / 80, // Dies at 100 hops
81
86
  },
82
87
  ];
83
88
  // ============================================================
84
89
  // Preset Models for Comparison
85
90
  // ============================================================
86
91
  export const PRESET_MODELS = [
87
- // Simple linear
92
+ // Simple linear: dies at 20 hops
88
93
  {
89
94
  id: 'linear-simple',
90
95
  name: 'Simple Linear',
91
- description: 'Single linear decay from 1.0, no hold period',
96
+ description: 'Single linear decay from 1.0, dies at 20 hops',
92
97
  type: 'linear',
93
98
  initialWeight: 1.0,
94
- decayRate: 1.0 / (2 * MS_PER_HOUR), // Dies at 2 hours
99
+ decayRate: 1.0 / 20, // Dies at 20 hops
95
100
  },
96
- // Delayed linear
101
+ // Delayed linear: hold 3 hops, then linear decay dies at 23 hops
97
102
  {
98
103
  id: 'delayed-linear',
99
104
  name: 'Delayed Linear',
100
- description: 'Linear decay with 30-minute hold period',
105
+ description: 'Linear decay with 3-hop hold period, dies at 23 hops',
101
106
  type: 'delayed-linear',
102
107
  initialWeight: 1.0,
103
- holdPeriodMs: 30 * MS_PER_MINUTE,
104
- decayRate: 1.0 / (2 * MS_PER_HOUR), // Dies at 2.5 hours
108
+ holdPeriodMs: 3, // Hold for 3 hops
109
+ decayRate: 1.0 / 20, // Dies 20 hops after hold
105
110
  },
106
- // Multi-linear default
111
+ // Multi-linear default: three-tier parallel decay
107
112
  {
108
113
  id: 'multi-linear-default',
109
114
  name: 'Multi-Linear (Default)',
@@ -111,7 +116,7 @@ export const PRESET_MODELS = [
111
116
  type: 'multi-linear',
112
117
  tiers: DEFAULT_TIERS,
113
118
  },
114
- // Multi-linear fast
119
+ // Multi-linear fast: two-tier fast decay
115
120
  {
116
121
  id: 'multi-linear-fast',
117
122
  name: 'Multi-Linear (Fast)',
@@ -119,7 +124,7 @@ export const PRESET_MODELS = [
119
124
  type: 'multi-linear',
120
125
  tiers: FAST_DECAY_TIERS,
121
126
  },
122
- // Multi-linear slow
127
+ // Multi-linear slow: three-tier slow decay
123
128
  {
124
129
  id: 'multi-linear-slow',
125
130
  name: 'Multi-Linear (Slow)',
@@ -127,42 +132,42 @@ export const PRESET_MODELS = [
127
132
  type: 'multi-linear',
128
133
  tiers: SLOW_DECAY_TIERS,
129
134
  },
130
- // Exponential - matched to multi-linear peak
135
+ // Exponential: half-life of 5 hops
131
136
  {
132
137
  id: 'exponential',
133
138
  name: 'Exponential',
134
- description: 'Exponential decay with similar half-life to multi-linear',
139
+ description: 'Exponential decay with 5-hop half-life',
135
140
  type: 'exponential',
136
- initialWeight: 1.8, // Match multi-linear peak
137
- decayRate: Math.log(2) / (1 * MS_PER_HOUR), // Half-life of 1 hour
141
+ initialWeight: 1.8,
142
+ decayRate: Math.log(2) / 5, // Half-life of 5 hops
138
143
  },
139
- // Exponential slow
144
+ // Exponential slow: half-life of 15 hops
140
145
  {
141
146
  id: 'exponential-slow',
142
147
  name: 'Exponential (Slow)',
143
- description: 'Exponential decay with 4-hour half-life',
148
+ description: 'Exponential decay with 15-hop half-life',
144
149
  type: 'exponential',
145
150
  initialWeight: 1.8,
146
- decayRate: Math.log(2) / (4 * MS_PER_HOUR),
151
+ decayRate: Math.log(2) / 15,
147
152
  },
148
- // Power law
153
+ // Power law α=1
149
154
  {
150
155
  id: 'power-law',
151
156
  name: 'Power Law (α=1)',
152
- description: 'Power law decay w(t) = w₀/(1+kt), α=1',
157
+ description: 'Power law decay w(d) = w₀/(1+kd), α=1',
153
158
  type: 'power-law',
154
159
  initialWeight: 1.8,
155
- decayRate: 1 / MS_PER_HOUR,
160
+ decayRate: 0.2, // At 5 hops: 1.8/2=0.9, at 20 hops: 1.8/5=0.36
156
161
  powerExponent: 1.0,
157
162
  },
158
- // Power law with higher exponent
163
+ // Power law α=2 (steeper)
159
164
  {
160
165
  id: 'power-law-steep',
161
166
  name: 'Power Law (α=2)',
162
167
  description: 'Steeper power law decay, α=2',
163
168
  type: 'power-law',
164
169
  initialWeight: 1.8,
165
- decayRate: 1 / MS_PER_HOUR,
170
+ decayRate: 0.2,
166
171
  powerExponent: 2.0,
167
172
  },
168
173
  ];
@@ -184,45 +189,45 @@ export const DECAY_MODEL_PRESETS = PRESET_MODELS;
184
189
  // Phase 0.2: Hold Period Variants for Parameter Sweep
185
190
  // ============================================================
186
191
  /**
187
- * Hold period variants for finding optimal hold duration.
192
+ * Hold period variants for finding optimal hold duration (in hops).
188
193
  * All use same decay rate after hold period ends.
189
194
  */
190
195
  export const HOLD_PERIOD_VARIANTS = [
191
196
  {
192
- id: 'delayed-linear-15min',
193
- name: 'Delayed Linear (15min)',
194
- description: 'Linear decay with 15-minute hold period',
197
+ id: 'delayed-linear-1hop',
198
+ name: 'Delayed Linear (1 hop)',
199
+ description: 'Linear decay with 1-hop hold period',
195
200
  type: 'delayed-linear',
196
201
  initialWeight: 1.0,
197
- holdPeriodMs: 15 * MS_PER_MINUTE,
198
- decayRate: 1.0 / (2 * MS_PER_HOUR),
202
+ holdPeriodMs: 1,
203
+ decayRate: 1.0 / 20,
199
204
  },
200
205
  {
201
- id: 'delayed-linear-30min',
202
- name: 'Delayed Linear (30min)',
203
- description: 'Linear decay with 30-minute hold period',
206
+ id: 'delayed-linear-3hops',
207
+ name: 'Delayed Linear (3 hops)',
208
+ description: 'Linear decay with 3-hop hold period',
204
209
  type: 'delayed-linear',
205
210
  initialWeight: 1.0,
206
- holdPeriodMs: 30 * MS_PER_MINUTE,
207
- decayRate: 1.0 / (2 * MS_PER_HOUR),
211
+ holdPeriodMs: 3,
212
+ decayRate: 1.0 / 20,
208
213
  },
209
214
  {
210
- id: 'delayed-linear-45min',
211
- name: 'Delayed Linear (45min)',
212
- description: 'Linear decay with 45-minute hold period',
215
+ id: 'delayed-linear-5hops',
216
+ name: 'Delayed Linear (5 hops)',
217
+ description: 'Linear decay with 5-hop hold period',
213
218
  type: 'delayed-linear',
214
219
  initialWeight: 1.0,
215
- holdPeriodMs: 45 * MS_PER_MINUTE,
216
- decayRate: 1.0 / (2 * MS_PER_HOUR),
220
+ holdPeriodMs: 5,
221
+ decayRate: 1.0 / 20,
217
222
  },
218
223
  {
219
- id: 'delayed-linear-60min',
220
- name: 'Delayed Linear (60min)',
221
- description: 'Linear decay with 60-minute hold period',
224
+ id: 'delayed-linear-8hops',
225
+ name: 'Delayed Linear (8 hops)',
226
+ description: 'Linear decay with 8-hop hold period',
222
227
  type: 'delayed-linear',
223
228
  initialWeight: 1.0,
224
- holdPeriodMs: 60 * MS_PER_MINUTE,
225
- decayRate: 1.0 / (2 * MS_PER_HOUR),
229
+ holdPeriodMs: 8,
230
+ decayRate: 1.0 / 20,
226
231
  },
227
232
  ];
228
233
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../../src/eval/experiments/edge-decay/presets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../../src/eval/experiments/edge-decay/presets.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,8 @@
2
2
  * Reference extractor for turn-to-turn reference detection.
3
3
  *
4
4
  * Parses session data to identify when a user turn references
5
- * specific earlier assistant turns.
5
+ * specific earlier assistant turns. Distance metric: hop distance
6
+ * (turn count difference).
6
7
  */
7
8
  import type { SessionReferences, ReferenceType } from './reference-types.js';
8
9
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"reference-extractor.d.ts","sourceRoot":"","sources":["../../../../src/eval/experiments/edge-decay/reference-extractor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAiB,iBAAiB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AA6S5F;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,iBAAiB,CAAC,CAkC5B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,aAAa,EAAE,EACzB,OAAO,GAAE,OAAc,GACtB,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAyB9B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG;IACpE,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACtC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,cAAc,EAAE,MAAM,CAAC;CACxB,CAuBA"}
1
+ {"version":3,"file":"reference-extractor.d.ts","sourceRoot":"","sources":["../../../../src/eval/experiments/edge-decay/reference-extractor.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAiB,iBAAiB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AA4R5F;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,iBAAiB,CAAC,CAkC5B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,aAAa,EAAE,EACzB,OAAO,GAAE,OAAc,GACtB,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAyB9B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG;IACpE,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACtC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,cAAc,EAAE,MAAM,CAAC;CACxB,CAuBA"}
@@ -2,7 +2,8 @@
2
2
  * Reference extractor for turn-to-turn reference detection.
3
3
  *
4
4
  * Parses session data to identify when a user turn references
5
- * specific earlier assistant turns.
5
+ * specific earlier assistant turns. Distance metric: hop distance
6
+ * (turn count difference).
6
7
  */
7
8
  import { readSessionMessages } from '../../../parser/session-reader.js';
8
9
  import { assembleTurns } from '../../../parser/turn-assembler.js';
@@ -67,7 +68,7 @@ function extractCodeEntities(text) {
67
68
  while ((match = exportPattern.exec(text)) !== null) {
68
69
  entities.push(match[1].toLowerCase());
69
70
  }
70
- return [...new Set(entities)].filter(e => e.length > 2); // Filter out short names
71
+ return [...new Set(entities)].filter((e) => e.length > 2); // Filter out short names
71
72
  }
72
73
  /**
73
74
  * Explicit backreference patterns and their target descriptions.
@@ -116,38 +117,30 @@ function findBackreferences(text) {
116
117
  function getAssistantText(blocks) {
117
118
  return blocks
118
119
  .filter((b) => b.type === 'text')
119
- .map(b => b.text)
120
+ .map((b) => b.text)
120
121
  .join('\n');
121
122
  }
122
123
  /**
123
124
  * Extract tool results from blocks.
124
125
  */
125
126
  function getToolResults(blocks) {
126
- return blocks
127
- .filter((b) => b.type === 'tool_result')
128
- .map(b => b.content);
127
+ return blocks.filter((b) => b.type === 'tool_result').map((b) => b.content);
129
128
  }
130
129
  /**
131
130
  * Get all text content from an assistant turn (text + tool results).
132
131
  */
133
132
  function getAllTurnContent(turn) {
134
133
  const text = getAssistantText(turn.assistantBlocks);
135
- const toolResults = turn.toolExchanges.map(t => t.result).join('\n');
134
+ const toolResults = turn.toolExchanges.map((t) => t.result).join('\n');
136
135
  return `${text}\n${toolResults}`;
137
136
  }
138
- /**
139
- * Parse timestamp to ms.
140
- */
141
- function parseTime(iso) {
142
- return new Date(iso).getTime();
143
- }
144
137
  /**
145
138
  * Find which earlier turns a user turn references.
139
+ * Distance metric: hop distance (queryIndex - prevTurnIndex).
146
140
  */
147
141
  function findReferences(queryTurn, queryIndex, previousTurns) {
148
142
  const references = [];
149
143
  const userText = queryTurn.userText;
150
- const queryTime = parseTime(queryTurn.startTime);
151
144
  // Extract features from user text
152
145
  const userFilePaths = extractFilePaths(userText);
153
146
  const userBackrefs = findBackreferences(userText);
@@ -157,8 +150,7 @@ function findReferences(queryTurn, queryIndex, previousTurns) {
157
150
  for (let i = 0; i < previousTurns.length; i++) {
158
151
  const prevTurn = previousTurns[i];
159
152
  const prevContent = getAllTurnContent(prevTurn);
160
- const prevTime = parseTime(prevTurn.startTime);
161
- const timeGapMs = queryTime - prevTime;
153
+ const hopDistance = queryIndex - i;
162
154
  // Extract features from previous turn
163
155
  const prevFilePaths = extractFilePaths(prevContent);
164
156
  const prevErrorFrags = extractErrorFragments(prevContent);
@@ -173,7 +165,7 @@ function findReferences(queryTurn, queryIndex, previousTurns) {
173
165
  referenceType: 'file-path',
174
166
  confidence: 'high',
175
167
  evidence: userPath,
176
- timeGapMs,
168
+ hopDistance,
177
169
  });
178
170
  break; // One reference per type per turn
179
171
  }
@@ -189,7 +181,7 @@ function findReferences(queryTurn, queryIndex, previousTurns) {
189
181
  referenceType: 'error-fragment',
190
182
  confidence: 'high',
191
183
  evidence: userFrag,
192
- timeGapMs,
184
+ hopDistance,
193
185
  });
194
186
  break;
195
187
  }
@@ -204,7 +196,7 @@ function findReferences(queryTurn, queryIndex, previousTurns) {
204
196
  referenceType: 'code-entity',
205
197
  confidence: 'medium',
206
198
  evidence: userEntity,
207
- timeGapMs,
199
+ hopDistance,
208
200
  });
209
201
  break;
210
202
  }
@@ -213,8 +205,9 @@ function findReferences(queryTurn, queryIndex, previousTurns) {
213
205
  const toolResults = getToolResults(prevTurn.assistantBlocks);
214
206
  for (const result of toolResults) {
215
207
  // Check if user text contains a significant fragment from the tool result
216
- const resultLines = result.split('\n').filter(l => l.trim().length > 20);
217
- for (const line of resultLines.slice(0, 5)) { // Check first 5 significant lines
208
+ const resultLines = result.split('\n').filter((l) => l.trim().length > 20);
209
+ for (const line of resultLines.slice(0, 5)) {
210
+ // Check first 5 significant lines
218
211
  const fragment = line.trim().slice(0, 40).toLowerCase();
219
212
  if (fragment.length > 20 && userText.toLowerCase().includes(fragment)) {
220
213
  references.push({
@@ -223,7 +216,7 @@ function findReferences(queryTurn, queryIndex, previousTurns) {
223
216
  referenceType: 'tool-output',
224
217
  confidence: 'high',
225
218
  evidence: fragment,
226
- timeGapMs,
219
+ hopDistance,
227
220
  });
228
221
  break;
229
222
  }
@@ -234,37 +227,30 @@ function findReferences(queryTurn, queryIndex, previousTurns) {
234
227
  if (userBackrefs.length > 0 && previousTurns.length > 0) {
235
228
  // Backreferences typically refer to the most recent relevant turn
236
229
  // For now, assume they refer to the immediately previous turn
237
- const prevTurn = previousTurns[previousTurns.length - 1];
238
- const timeGapMs = queryTime - parseTime(prevTurn.startTime);
239
230
  references.push({
240
231
  userTurnIndex: queryIndex,
241
232
  referencedTurnIndex: previousTurns.length - 1,
242
233
  referenceType: 'explicit-backref',
243
234
  confidence: 'medium',
244
235
  evidence: userBackrefs[0],
245
- timeGapMs,
236
+ hopDistance: queryIndex - (previousTurns.length - 1),
246
237
  });
247
238
  }
248
239
  // If no references found and there's an immediately previous turn,
249
- // add a weak "adjacent" reference
240
+ // add a weak "adjacent" reference (hop distance = 1)
250
241
  if (references.length === 0 && previousTurns.length > 0) {
251
- const prevTurn = previousTurns[previousTurns.length - 1];
252
- const timeGapMs = queryTime - parseTime(prevTurn.startTime);
253
- // Only add adjacent reference if time gap is small (< 30 min)
254
- if (timeGapMs < 30 * 60 * 1000) {
255
- references.push({
256
- userTurnIndex: queryIndex,
257
- referencedTurnIndex: previousTurns.length - 1,
258
- referenceType: 'adjacent',
259
- confidence: 'low',
260
- evidence: 'time-adjacent',
261
- timeGapMs,
262
- });
263
- }
242
+ references.push({
243
+ userTurnIndex: queryIndex,
244
+ referencedTurnIndex: previousTurns.length - 1,
245
+ referenceType: 'adjacent',
246
+ confidence: 'low',
247
+ evidence: 'adjacent',
248
+ hopDistance: 1,
249
+ });
264
250
  }
265
251
  // Deduplicate references (same turn, same type)
266
252
  const seen = new Set();
267
- return references.filter(ref => {
253
+ return references.filter((ref) => {
268
254
  const key = `${ref.referencedTurnIndex}-${ref.referenceType}`;
269
255
  if (seen.has(key))
270
256
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"reference-extractor.js","sourceRoot":"","sources":["../../../../src/eval/experiments/edge-decay/reference-extractor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reference-extractor.js","sourceRoot":"","sources":["../../../../src/eval/experiments/edge-decay/reference-extractor.ts"],"names":[],"mappings":"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"}