@co-engram/core 0.1.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 (531) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +167 -0
  3. package/dist/config/defaults.d.ts +45 -0
  4. package/dist/config/defaults.d.ts.map +1 -0
  5. package/dist/config/defaults.js +70 -0
  6. package/dist/config/defaults.js.map +1 -0
  7. package/dist/config/index.d.ts +84 -0
  8. package/dist/config/index.d.ts.map +1 -0
  9. package/dist/config/index.js +230 -0
  10. package/dist/config/index.js.map +1 -0
  11. package/dist/config/types.d.ts +145 -0
  12. package/dist/config/types.d.ts.map +1 -0
  13. package/dist/config/types.js +14 -0
  14. package/dist/config/types.js.map +1 -0
  15. package/dist/contradiction/arbiter.d.ts +51 -0
  16. package/dist/contradiction/arbiter.d.ts.map +1 -0
  17. package/dist/contradiction/arbiter.js +112 -0
  18. package/dist/contradiction/arbiter.js.map +1 -0
  19. package/dist/contradiction/auto-degrade.d.ts +53 -0
  20. package/dist/contradiction/auto-degrade.d.ts.map +1 -0
  21. package/dist/contradiction/auto-degrade.js +79 -0
  22. package/dist/contradiction/auto-degrade.js.map +1 -0
  23. package/dist/contradiction/detector.d.ts +33 -0
  24. package/dist/contradiction/detector.d.ts.map +1 -0
  25. package/dist/contradiction/detector.js +76 -0
  26. package/dist/contradiction/detector.js.map +1 -0
  27. package/dist/contradiction/index.d.ts +11 -0
  28. package/dist/contradiction/index.d.ts.map +1 -0
  29. package/dist/contradiction/index.js +11 -0
  30. package/dist/contradiction/index.js.map +1 -0
  31. package/dist/contradiction/resolver.d.ts +45 -0
  32. package/dist/contradiction/resolver.d.ts.map +1 -0
  33. package/dist/contradiction/resolver.js +196 -0
  34. package/dist/contradiction/resolver.js.map +1 -0
  35. package/dist/contradiction/types.d.ts +73 -0
  36. package/dist/contradiction/types.d.ts.map +1 -0
  37. package/dist/contradiction/types.js +7 -0
  38. package/dist/contradiction/types.js.map +1 -0
  39. package/dist/dedup/dedupe.d.ts +49 -0
  40. package/dist/dedup/dedupe.d.ts.map +1 -0
  41. package/dist/dedup/dedupe.js +111 -0
  42. package/dist/dedup/dedupe.js.map +1 -0
  43. package/dist/dedup/hash.d.ts +27 -0
  44. package/dist/dedup/hash.d.ts.map +1 -0
  45. package/dist/dedup/hash.js +43 -0
  46. package/dist/dedup/hash.js.map +1 -0
  47. package/dist/dedup/index.d.ts +12 -0
  48. package/dist/dedup/index.d.ts.map +1 -0
  49. package/dist/dedup/index.js +12 -0
  50. package/dist/dedup/index.js.map +1 -0
  51. package/dist/dedup/llm-triage.d.ts +48 -0
  52. package/dist/dedup/llm-triage.d.ts.map +1 -0
  53. package/dist/dedup/llm-triage.js +100 -0
  54. package/dist/dedup/llm-triage.js.map +1 -0
  55. package/dist/dedup/merge.d.ts +41 -0
  56. package/dist/dedup/merge.d.ts.map +1 -0
  57. package/dist/dedup/merge.js +55 -0
  58. package/dist/dedup/merge.js.map +1 -0
  59. package/dist/dedup/similar.d.ts +45 -0
  60. package/dist/dedup/similar.d.ts.map +1 -0
  61. package/dist/dedup/similar.js +103 -0
  62. package/dist/dedup/similar.js.map +1 -0
  63. package/dist/dedup/types.d.ts +72 -0
  64. package/dist/dedup/types.d.ts.map +1 -0
  65. package/dist/dedup/types.js +18 -0
  66. package/dist/dedup/types.js.map +1 -0
  67. package/dist/disclosure/adaptive.d.ts +86 -0
  68. package/dist/disclosure/adaptive.d.ts.map +1 -0
  69. package/dist/disclosure/adaptive.js +196 -0
  70. package/dist/disclosure/adaptive.js.map +1 -0
  71. package/dist/disclosure/budget.d.ts +51 -0
  72. package/dist/disclosure/budget.d.ts.map +1 -0
  73. package/dist/disclosure/budget.js +91 -0
  74. package/dist/disclosure/budget.js.map +1 -0
  75. package/dist/disclosure/index.d.ts +11 -0
  76. package/dist/disclosure/index.d.ts.map +1 -0
  77. package/dist/disclosure/index.js +11 -0
  78. package/dist/disclosure/index.js.map +1 -0
  79. package/dist/disclosure/tier-loader.d.ts +58 -0
  80. package/dist/disclosure/tier-loader.d.ts.map +1 -0
  81. package/dist/disclosure/tier-loader.js +205 -0
  82. package/dist/disclosure/tier-loader.js.map +1 -0
  83. package/dist/dreaming/decay.d.ts +46 -0
  84. package/dist/dreaming/decay.d.ts.map +1 -0
  85. package/dist/dreaming/decay.js +69 -0
  86. package/dist/dreaming/decay.js.map +1 -0
  87. package/dist/dreaming/deep.d.ts +48 -0
  88. package/dist/dreaming/deep.d.ts.map +1 -0
  89. package/dist/dreaming/deep.js +41 -0
  90. package/dist/dreaming/deep.js.map +1 -0
  91. package/dist/dreaming/index.d.ts +12 -0
  92. package/dist/dreaming/index.d.ts.map +1 -0
  93. package/dist/dreaming/index.js +12 -0
  94. package/dist/dreaming/index.js.map +1 -0
  95. package/dist/dreaming/light.d.ts +54 -0
  96. package/dist/dreaming/light.d.ts.map +1 -0
  97. package/dist/dreaming/light.js +114 -0
  98. package/dist/dreaming/light.js.map +1 -0
  99. package/dist/dreaming/rem.d.ts +128 -0
  100. package/dist/dreaming/rem.d.ts.map +1 -0
  101. package/dist/dreaming/rem.js +228 -0
  102. package/dist/dreaming/rem.js.map +1 -0
  103. package/dist/dreaming/scheduler.d.ts +75 -0
  104. package/dist/dreaming/scheduler.d.ts.map +1 -0
  105. package/dist/dreaming/scheduler.js +138 -0
  106. package/dist/dreaming/scheduler.js.map +1 -0
  107. package/dist/dreaming/trash.d.ts +174 -0
  108. package/dist/dreaming/trash.d.ts.map +1 -0
  109. package/dist/dreaming/trash.js +466 -0
  110. package/dist/dreaming/trash.js.map +1 -0
  111. package/dist/evolution/category.d.ts +127 -0
  112. package/dist/evolution/category.d.ts.map +1 -0
  113. package/dist/evolution/category.js +271 -0
  114. package/dist/evolution/category.js.map +1 -0
  115. package/dist/evolution/index.d.ts +8 -0
  116. package/dist/evolution/index.d.ts.map +1 -0
  117. package/dist/evolution/index.js +8 -0
  118. package/dist/evolution/index.js.map +1 -0
  119. package/dist/evolution/triggered.d.ts +107 -0
  120. package/dist/evolution/triggered.d.ts.map +1 -0
  121. package/dist/evolution/triggered.js +278 -0
  122. package/dist/evolution/triggered.js.map +1 -0
  123. package/dist/generative/cross-pollinate.d.ts +144 -0
  124. package/dist/generative/cross-pollinate.d.ts.map +1 -0
  125. package/dist/generative/cross-pollinate.js +390 -0
  126. package/dist/generative/cross-pollinate.js.map +1 -0
  127. package/dist/generative/gap-detector.d.ts +80 -0
  128. package/dist/generative/gap-detector.d.ts.map +1 -0
  129. package/dist/generative/gap-detector.js +250 -0
  130. package/dist/generative/gap-detector.js.map +1 -0
  131. package/dist/generative/hypothesis.d.ts +161 -0
  132. package/dist/generative/hypothesis.d.ts.map +1 -0
  133. package/dist/generative/hypothesis.js +356 -0
  134. package/dist/generative/hypothesis.js.map +1 -0
  135. package/dist/generative/index.d.ts +9 -0
  136. package/dist/generative/index.d.ts.map +1 -0
  137. package/dist/generative/index.js +9 -0
  138. package/dist/generative/index.js.map +1 -0
  139. package/dist/graph/clustering.d.ts +117 -0
  140. package/dist/graph/clustering.d.ts.map +1 -0
  141. package/dist/graph/clustering.js +196 -0
  142. package/dist/graph/clustering.js.map +1 -0
  143. package/dist/graph/index.d.ts +13 -0
  144. package/dist/graph/index.d.ts.map +1 -0
  145. package/dist/graph/index.js +13 -0
  146. package/dist/graph/index.js.map +1 -0
  147. package/dist/graph/layout.d.ts +46 -0
  148. package/dist/graph/layout.d.ts.map +1 -0
  149. package/dist/graph/layout.js +269 -0
  150. package/dist/graph/layout.js.map +1 -0
  151. package/dist/graph/presets.d.ts +134 -0
  152. package/dist/graph/presets.d.ts.map +1 -0
  153. package/dist/graph/presets.js +190 -0
  154. package/dist/graph/presets.js.map +1 -0
  155. package/dist/graph/registry.d.ts +42 -0
  156. package/dist/graph/registry.d.ts.map +1 -0
  157. package/dist/graph/registry.js +158 -0
  158. package/dist/graph/registry.js.map +1 -0
  159. package/dist/graph/snapshot.d.ts +113 -0
  160. package/dist/graph/snapshot.d.ts.map +1 -0
  161. package/dist/graph/snapshot.js +194 -0
  162. package/dist/graph/snapshot.js.map +1 -0
  163. package/dist/graph/traverse.d.ts +84 -0
  164. package/dist/graph/traverse.d.ts.map +1 -0
  165. package/dist/graph/traverse.js +190 -0
  166. package/dist/graph/traverse.js.map +1 -0
  167. package/dist/graph/view-config.d.ts +99 -0
  168. package/dist/graph/view-config.d.ts.map +1 -0
  169. package/dist/graph/view-config.js +208 -0
  170. package/dist/graph/view-config.js.map +1 -0
  171. package/dist/host/detect-git-author.d.ts +26 -0
  172. package/dist/host/detect-git-author.d.ts.map +1 -0
  173. package/dist/host/detect-git-author.js +53 -0
  174. package/dist/host/detect-git-author.js.map +1 -0
  175. package/dist/host/index.d.ts +7 -0
  176. package/dist/host/index.d.ts.map +1 -0
  177. package/dist/host/index.js +7 -0
  178. package/dist/host/index.js.map +1 -0
  179. package/dist/i18n/en.d.ts +8 -0
  180. package/dist/i18n/en.d.ts.map +1 -0
  181. package/dist/i18n/en.js +211 -0
  182. package/dist/i18n/en.js.map +1 -0
  183. package/dist/i18n/field-names.d.ts +95 -0
  184. package/dist/i18n/field-names.d.ts.map +1 -0
  185. package/dist/i18n/field-names.js +329 -0
  186. package/dist/i18n/field-names.js.map +1 -0
  187. package/dist/i18n/index.d.ts +92 -0
  188. package/dist/i18n/index.d.ts.map +1 -0
  189. package/dist/i18n/index.js +135 -0
  190. package/dist/i18n/index.js.map +1 -0
  191. package/dist/i18n/types.d.ts +92 -0
  192. package/dist/i18n/types.d.ts.map +1 -0
  193. package/dist/i18n/types.js +7 -0
  194. package/dist/i18n/types.js.map +1 -0
  195. package/dist/i18n/zh.d.ts +197 -0
  196. package/dist/i18n/zh.d.ts.map +1 -0
  197. package/dist/i18n/zh.js +216 -0
  198. package/dist/i18n/zh.js.map +1 -0
  199. package/dist/importance/index.d.ts +7 -0
  200. package/dist/importance/index.d.ts.map +1 -0
  201. package/dist/importance/index.js +7 -0
  202. package/dist/importance/index.js.map +1 -0
  203. package/dist/importance/vector.d.ts +113 -0
  204. package/dist/importance/vector.d.ts.map +1 -0
  205. package/dist/importance/vector.js +202 -0
  206. package/dist/importance/vector.js.map +1 -0
  207. package/dist/index/digest-builder.d.ts +59 -0
  208. package/dist/index/digest-builder.d.ts.map +1 -0
  209. package/dist/index/digest-builder.js +195 -0
  210. package/dist/index/digest-builder.js.map +1 -0
  211. package/dist/index/graph-builder.d.ts +32 -0
  212. package/dist/index/graph-builder.d.ts.map +1 -0
  213. package/dist/index/graph-builder.js +104 -0
  214. package/dist/index/graph-builder.js.map +1 -0
  215. package/dist/index/incremental.d.ts +31 -0
  216. package/dist/index/incremental.d.ts.map +1 -0
  217. package/dist/index/incremental.js +47 -0
  218. package/dist/index/incremental.js.map +1 -0
  219. package/dist/index/index.d.ts +11 -0
  220. package/dist/index/index.d.ts.map +1 -0
  221. package/dist/index/index.js +11 -0
  222. package/dist/index/index.js.map +1 -0
  223. package/dist/index/orchestrator.d.ts +60 -0
  224. package/dist/index/orchestrator.d.ts.map +1 -0
  225. package/dist/index/orchestrator.js +99 -0
  226. package/dist/index/orchestrator.js.map +1 -0
  227. package/dist/index/types.d.ts +116 -0
  228. package/dist/index/types.d.ts.map +1 -0
  229. package/dist/index/types.js +10 -0
  230. package/dist/index/types.js.map +1 -0
  231. package/dist/index.d.ts +37 -0
  232. package/dist/index.d.ts.map +1 -0
  233. package/dist/index.js +37 -0
  234. package/dist/index.js.map +1 -0
  235. package/dist/learning/index.d.ts +7 -0
  236. package/dist/learning/index.d.ts.map +1 -0
  237. package/dist/learning/index.js +7 -0
  238. package/dist/learning/index.js.map +1 -0
  239. package/dist/learning/loop.d.ts +79 -0
  240. package/dist/learning/loop.d.ts.map +1 -0
  241. package/dist/learning/loop.js +116 -0
  242. package/dist/learning/loop.js.map +1 -0
  243. package/dist/lifecycle/freshness.d.ts +35 -0
  244. package/dist/lifecycle/freshness.d.ts.map +1 -0
  245. package/dist/lifecycle/freshness.js +60 -0
  246. package/dist/lifecycle/freshness.js.map +1 -0
  247. package/dist/lifecycle/index.d.ts +7 -0
  248. package/dist/lifecycle/index.d.ts.map +1 -0
  249. package/dist/lifecycle/index.js +7 -0
  250. package/dist/lifecycle/index.js.map +1 -0
  251. package/dist/lineage/index.d.ts +10 -0
  252. package/dist/lineage/index.d.ts.map +1 -0
  253. package/dist/lineage/index.js +10 -0
  254. package/dist/lineage/index.js.map +1 -0
  255. package/dist/lineage/trace.d.ts +142 -0
  256. package/dist/lineage/trace.d.ts.map +1 -0
  257. package/dist/lineage/trace.js +316 -0
  258. package/dist/lineage/trace.js.map +1 -0
  259. package/dist/maintenance/engine.d.ts +78 -0
  260. package/dist/maintenance/engine.d.ts.map +1 -0
  261. package/dist/maintenance/engine.js +291 -0
  262. package/dist/maintenance/engine.js.map +1 -0
  263. package/dist/maintenance/index.d.ts +8 -0
  264. package/dist/maintenance/index.d.ts.map +1 -0
  265. package/dist/maintenance/index.js +8 -0
  266. package/dist/maintenance/index.js.map +1 -0
  267. package/dist/maintenance/types.d.ts +111 -0
  268. package/dist/maintenance/types.d.ts.map +1 -0
  269. package/dist/maintenance/types.js +24 -0
  270. package/dist/maintenance/types.js.map +1 -0
  271. package/dist/observability/audit-log.d.ts +77 -0
  272. package/dist/observability/audit-log.d.ts.map +1 -0
  273. package/dist/observability/audit-log.js +101 -0
  274. package/dist/observability/audit-log.js.map +1 -0
  275. package/dist/observability/effectiveness-tracker.d.ts +162 -0
  276. package/dist/observability/effectiveness-tracker.d.ts.map +1 -0
  277. package/dist/observability/effectiveness-tracker.js +251 -0
  278. package/dist/observability/effectiveness-tracker.js.map +1 -0
  279. package/dist/observability/index.d.ts +16 -0
  280. package/dist/observability/index.d.ts.map +1 -0
  281. package/dist/observability/index.js +16 -0
  282. package/dist/observability/index.js.map +1 -0
  283. package/dist/observability/necessity-evaluator.d.ts +116 -0
  284. package/dist/observability/necessity-evaluator.d.ts.map +1 -0
  285. package/dist/observability/necessity-evaluator.js +487 -0
  286. package/dist/observability/necessity-evaluator.js.map +1 -0
  287. package/dist/observability/proposal-engine.d.ts +224 -0
  288. package/dist/observability/proposal-engine.d.ts.map +1 -0
  289. package/dist/observability/proposal-engine.js +651 -0
  290. package/dist/observability/proposal-engine.js.map +1 -0
  291. package/dist/perspectives/index.d.ts +7 -0
  292. package/dist/perspectives/index.d.ts.map +1 -0
  293. package/dist/perspectives/index.js +7 -0
  294. package/dist/perspectives/index.js.map +1 -0
  295. package/dist/perspectives/multi-view.d.ts +81 -0
  296. package/dist/perspectives/multi-view.d.ts.map +1 -0
  297. package/dist/perspectives/multi-view.js +221 -0
  298. package/dist/perspectives/multi-view.js.map +1 -0
  299. package/dist/prompt-builder/builder.d.ts +47 -0
  300. package/dist/prompt-builder/builder.d.ts.map +1 -0
  301. package/dist/prompt-builder/builder.js +136 -0
  302. package/dist/prompt-builder/builder.js.map +1 -0
  303. package/dist/prompt-builder/index.d.ts +8 -0
  304. package/dist/prompt-builder/index.d.ts.map +1 -0
  305. package/dist/prompt-builder/index.js +8 -0
  306. package/dist/prompt-builder/index.js.map +1 -0
  307. package/dist/prompt-builder/types.d.ts +42 -0
  308. package/dist/prompt-builder/types.d.ts.map +1 -0
  309. package/dist/prompt-builder/types.js +10 -0
  310. package/dist/prompt-builder/types.js.map +1 -0
  311. package/dist/prompt-signals/cache.d.ts +36 -0
  312. package/dist/prompt-signals/cache.d.ts.map +1 -0
  313. package/dist/prompt-signals/cache.js +70 -0
  314. package/dist/prompt-signals/cache.js.map +1 -0
  315. package/dist/prompt-signals/index.d.ts +12 -0
  316. package/dist/prompt-signals/index.d.ts.map +1 -0
  317. package/dist/prompt-signals/index.js +11 -0
  318. package/dist/prompt-signals/index.js.map +1 -0
  319. package/dist/prompt-signals/stats.d.ts +45 -0
  320. package/dist/prompt-signals/stats.d.ts.map +1 -0
  321. package/dist/prompt-signals/stats.js +119 -0
  322. package/dist/prompt-signals/stats.js.map +1 -0
  323. package/dist/prompt-signals/types.d.ts +53 -0
  324. package/dist/prompt-signals/types.d.ts.map +1 -0
  325. package/dist/prompt-signals/types.js +34 -0
  326. package/dist/prompt-signals/types.js.map +1 -0
  327. package/dist/provenance/index.d.ts +7 -0
  328. package/dist/provenance/index.d.ts.map +1 -0
  329. package/dist/provenance/index.js +7 -0
  330. package/dist/provenance/index.js.map +1 -0
  331. package/dist/provenance/reliability.d.ts +133 -0
  332. package/dist/provenance/reliability.d.ts.map +1 -0
  333. package/dist/provenance/reliability.js +213 -0
  334. package/dist/provenance/reliability.js.map +1 -0
  335. package/dist/reinforcement/config.d.ts +34 -0
  336. package/dist/reinforcement/config.d.ts.map +1 -0
  337. package/dist/reinforcement/config.js +43 -0
  338. package/dist/reinforcement/config.js.map +1 -0
  339. package/dist/reinforcement/index.d.ts +12 -0
  340. package/dist/reinforcement/index.d.ts.map +1 -0
  341. package/dist/reinforcement/index.js +12 -0
  342. package/dist/reinforcement/index.js.map +1 -0
  343. package/dist/reinforcement/ltd.d.ts +59 -0
  344. package/dist/reinforcement/ltd.d.ts.map +1 -0
  345. package/dist/reinforcement/ltd.js +90 -0
  346. package/dist/reinforcement/ltd.js.map +1 -0
  347. package/dist/reinforcement/ltp.d.ts +63 -0
  348. package/dist/reinforcement/ltp.d.ts.map +1 -0
  349. package/dist/reinforcement/ltp.js +99 -0
  350. package/dist/reinforcement/ltp.js.map +1 -0
  351. package/dist/reinforcement/related.d.ts +39 -0
  352. package/dist/reinforcement/related.d.ts.map +1 -0
  353. package/dist/reinforcement/related.js +92 -0
  354. package/dist/reinforcement/related.js.map +1 -0
  355. package/dist/retrieval/filter.d.ts +18 -0
  356. package/dist/retrieval/filter.d.ts.map +1 -0
  357. package/dist/retrieval/filter.js +68 -0
  358. package/dist/retrieval/filter.js.map +1 -0
  359. package/dist/retrieval/fts.d.ts +44 -0
  360. package/dist/retrieval/fts.d.ts.map +1 -0
  361. package/dist/retrieval/fts.js +120 -0
  362. package/dist/retrieval/fts.js.map +1 -0
  363. package/dist/retrieval/index.d.ts +10 -0
  364. package/dist/retrieval/index.d.ts.map +1 -0
  365. package/dist/retrieval/index.js +10 -0
  366. package/dist/retrieval/index.js.map +1 -0
  367. package/dist/retrieval/orchestrator.d.ts +78 -0
  368. package/dist/retrieval/orchestrator.d.ts.map +1 -0
  369. package/dist/retrieval/orchestrator.js +156 -0
  370. package/dist/retrieval/orchestrator.js.map +1 -0
  371. package/dist/retrieval/scoring.d.ts +105 -0
  372. package/dist/retrieval/scoring.d.ts.map +1 -0
  373. package/dist/retrieval/scoring.js +165 -0
  374. package/dist/retrieval/scoring.js.map +1 -0
  375. package/dist/signals/extract.d.ts +98 -0
  376. package/dist/signals/extract.d.ts.map +1 -0
  377. package/dist/signals/extract.js +388 -0
  378. package/dist/signals/extract.js.map +1 -0
  379. package/dist/signals/file-sink.d.ts +81 -0
  380. package/dist/signals/file-sink.d.ts.map +1 -0
  381. package/dist/signals/file-sink.js +227 -0
  382. package/dist/signals/file-sink.js.map +1 -0
  383. package/dist/signals/index.d.ts +12 -0
  384. package/dist/signals/index.d.ts.map +1 -0
  385. package/dist/signals/index.js +12 -0
  386. package/dist/signals/index.js.map +1 -0
  387. package/dist/signals/rpe.d.ts +60 -0
  388. package/dist/signals/rpe.d.ts.map +1 -0
  389. package/dist/signals/rpe.js +68 -0
  390. package/dist/signals/rpe.js.map +1 -0
  391. package/dist/signals/types.d.ts +80 -0
  392. package/dist/signals/types.d.ts.map +1 -0
  393. package/dist/signals/types.js +14 -0
  394. package/dist/signals/types.js.map +1 -0
  395. package/dist/storage/engram-index.d.ts +73 -0
  396. package/dist/storage/engram-index.d.ts.map +1 -0
  397. package/dist/storage/engram-index.js +215 -0
  398. package/dist/storage/engram-index.js.map +1 -0
  399. package/dist/storage/engram-store.d.ts +147 -0
  400. package/dist/storage/engram-store.d.ts.map +1 -0
  401. package/dist/storage/engram-store.js +221 -0
  402. package/dist/storage/engram-store.js.map +1 -0
  403. package/dist/storage/git-stage.d.ts +56 -0
  404. package/dist/storage/git-stage.d.ts.map +1 -0
  405. package/dist/storage/git-stage.js +147 -0
  406. package/dist/storage/git-stage.js.map +1 -0
  407. package/dist/storage/git.d.ts +57 -0
  408. package/dist/storage/git.d.ts.map +1 -0
  409. package/dist/storage/git.js +156 -0
  410. package/dist/storage/git.js.map +1 -0
  411. package/dist/storage/hash.d.ts +23 -0
  412. package/dist/storage/hash.d.ts.map +1 -0
  413. package/dist/storage/hash.js +31 -0
  414. package/dist/storage/hash.js.map +1 -0
  415. package/dist/storage/index.d.ts +14 -0
  416. package/dist/storage/index.d.ts.map +1 -0
  417. package/dist/storage/index.js +14 -0
  418. package/dist/storage/index.js.map +1 -0
  419. package/dist/storage/path.d.ts +51 -0
  420. package/dist/storage/path.d.ts.map +1 -0
  421. package/dist/storage/path.js +72 -0
  422. package/dist/storage/path.js.map +1 -0
  423. package/dist/storage/repository.d.ts +342 -0
  424. package/dist/storage/repository.d.ts.map +1 -0
  425. package/dist/storage/repository.js +1221 -0
  426. package/dist/storage/repository.js.map +1 -0
  427. package/dist/storage/synapse-store.d.ts +113 -0
  428. package/dist/storage/synapse-store.d.ts.map +1 -0
  429. package/dist/storage/synapse-store.js +279 -0
  430. package/dist/storage/synapse-store.js.map +1 -0
  431. package/dist/tools/doctor-tools.d.ts +53 -0
  432. package/dist/tools/doctor-tools.d.ts.map +1 -0
  433. package/dist/tools/doctor-tools.js +97 -0
  434. package/dist/tools/doctor-tools.js.map +1 -0
  435. package/dist/tools/engram-tools.d.ts +166 -0
  436. package/dist/tools/engram-tools.d.ts.map +1 -0
  437. package/dist/tools/engram-tools.js +834 -0
  438. package/dist/tools/engram-tools.js.map +1 -0
  439. package/dist/tools/index.d.ts +16 -0
  440. package/dist/tools/index.d.ts.map +1 -0
  441. package/dist/tools/index.js +16 -0
  442. package/dist/tools/index.js.map +1 -0
  443. package/dist/tools/llm-descriptions.d.ts +61 -0
  444. package/dist/tools/llm-descriptions.d.ts.map +1 -0
  445. package/dist/tools/llm-descriptions.js +556 -0
  446. package/dist/tools/llm-descriptions.js.map +1 -0
  447. package/dist/tools/proposal-tools.d.ts +40 -0
  448. package/dist/tools/proposal-tools.d.ts.map +1 -0
  449. package/dist/tools/proposal-tools.js +99 -0
  450. package/dist/tools/proposal-tools.js.map +1 -0
  451. package/dist/tools/registry.d.ts +30 -0
  452. package/dist/tools/registry.d.ts.map +1 -0
  453. package/dist/tools/registry.js +43 -0
  454. package/dist/tools/registry.js.map +1 -0
  455. package/dist/tools/schemas.d.ts +715 -0
  456. package/dist/tools/schemas.d.ts.map +1 -0
  457. package/dist/tools/schemas.js +383 -0
  458. package/dist/tools/schemas.js.map +1 -0
  459. package/dist/tools/skill-tools.d.ts +26 -0
  460. package/dist/tools/skill-tools.d.ts.map +1 -0
  461. package/dist/tools/skill-tools.js +84 -0
  462. package/dist/tools/skill-tools.js.map +1 -0
  463. package/dist/tools/synapse-tools.d.ts +28 -0
  464. package/dist/tools/synapse-tools.d.ts.map +1 -0
  465. package/dist/tools/synapse-tools.js +177 -0
  466. package/dist/tools/synapse-tools.js.map +1 -0
  467. package/dist/tools/tool.d.ts +84 -0
  468. package/dist/tools/tool.d.ts.map +1 -0
  469. package/dist/tools/tool.js +22 -0
  470. package/dist/tools/tool.js.map +1 -0
  471. package/dist/tools/wrapped.d.ts +28 -0
  472. package/dist/tools/wrapped.d.ts.map +1 -0
  473. package/dist/tools/wrapped.js +172 -0
  474. package/dist/tools/wrapped.js.map +1 -0
  475. package/dist/types/disclosure.d.ts +70 -0
  476. package/dist/types/disclosure.d.ts.map +1 -0
  477. package/dist/types/disclosure.js +9 -0
  478. package/dist/types/disclosure.js.map +1 -0
  479. package/dist/types/engram.d.ts +203 -0
  480. package/dist/types/engram.d.ts.map +1 -0
  481. package/dist/types/engram.js +7 -0
  482. package/dist/types/engram.js.map +1 -0
  483. package/dist/types/index.d.ts +15 -0
  484. package/dist/types/index.d.ts.map +1 -0
  485. package/dist/types/index.js +15 -0
  486. package/dist/types/index.js.map +1 -0
  487. package/dist/types/intention.d.ts +91 -0
  488. package/dist/types/intention.d.ts.map +1 -0
  489. package/dist/types/intention.js +9 -0
  490. package/dist/types/intention.js.map +1 -0
  491. package/dist/types/repository-types.d.ts +113 -0
  492. package/dist/types/repository-types.d.ts.map +1 -0
  493. package/dist/types/repository-types.js +18 -0
  494. package/dist/types/repository-types.js.map +1 -0
  495. package/dist/types/scene.d.ts +52 -0
  496. package/dist/types/scene.d.ts.map +1 -0
  497. package/dist/types/scene.js +12 -0
  498. package/dist/types/scene.js.map +1 -0
  499. package/dist/types/skill.d.ts +107 -0
  500. package/dist/types/skill.d.ts.map +1 -0
  501. package/dist/types/skill.js +10 -0
  502. package/dist/types/skill.js.map +1 -0
  503. package/dist/types/slugify.d.ts +34 -0
  504. package/dist/types/slugify.d.ts.map +1 -0
  505. package/dist/types/slugify.js +55 -0
  506. package/dist/types/slugify.js.map +1 -0
  507. package/dist/types/synapse-id.d.ts +22 -0
  508. package/dist/types/synapse-id.d.ts.map +1 -0
  509. package/dist/types/synapse-id.js +34 -0
  510. package/dist/types/synapse-id.js.map +1 -0
  511. package/dist/types/synapse.d.ts +99 -0
  512. package/dist/types/synapse.d.ts.map +1 -0
  513. package/dist/types/synapse.js +9 -0
  514. package/dist/types/synapse.js.map +1 -0
  515. package/dist/verification/index.d.ts +11 -0
  516. package/dist/verification/index.d.ts.map +1 -0
  517. package/dist/verification/index.js +11 -0
  518. package/dist/verification/index.js.map +1 -0
  519. package/dist/verification/metacognition.d.ts +102 -0
  520. package/dist/verification/metacognition.d.ts.map +1 -0
  521. package/dist/verification/metacognition.js +284 -0
  522. package/dist/verification/metacognition.js.map +1 -0
  523. package/dist/verification/state-machine.d.ts +77 -0
  524. package/dist/verification/state-machine.d.ts.map +1 -0
  525. package/dist/verification/state-machine.js +126 -0
  526. package/dist/verification/state-machine.js.map +1 -0
  527. package/dist/verification/upgrade.d.ts +133 -0
  528. package/dist/verification/upgrade.d.ts.map +1 -0
  529. package/dist/verification/upgrade.js +364 -0
  530. package/dist/verification/upgrade.js.map +1 -0
  531. package/package.json +70 -0
@@ -0,0 +1,134 @@
1
+ /**
2
+ * Graph View 八大场景预设(spec §12.7,P3 4.7.1)
3
+ *
4
+ * 把 spec 中描述的 8 个典型场景封装为 GraphFilter 工厂函数 + 预设表。
5
+ * 宿主层可以直接查表应用,无需重复构造 filter。
6
+ *
7
+ * 8 个场景:
8
+ * 1. knowledge_exploration:选定 engram + 1-2 阶邻居
9
+ * 2. domain_overview:按 domain 过滤全部
10
+ * 3. hub_identification:Top-N 高入度节点
11
+ * 4. contradictions:只显示 contradicts
12
+ * 5. orphans:孤立知识
13
+ * 6. lineage:沿 derives_from/consolidates/supersedes 追溯
14
+ * 7. contributor:按 createdBy 着色(filter 限制)
15
+ * 8. temporal:时间轴 + freshness
16
+ *
17
+ * @module @co-engram/core/graph
18
+ */
19
+ import type { EngramKind, EngramFreshness } from "../types/engram.js";
20
+ import type { SynapseKind } from "../types/synapse.js";
21
+ import type { GraphFilter } from "./snapshot.js";
22
+ /** 场景预设 ID(spec §12.7) */
23
+ export type ScenePresetId = "knowledge_exploration" | "domain_overview" | "hub_identification" | "contradictions" | "orphans" | "lineage" | "contributor" | "temporal";
24
+ export interface KnowledgeExplorationOptions {
25
+ /** 起始 engramId(可选;若提供则只看这个 engram + 邻居) */
26
+ readonly seedEngramId?: string;
27
+ /** 邻居深度(默认 2) */
28
+ readonly depth?: number;
29
+ /** 最小 importance(默认 0.0 = 全部) */
30
+ readonly minImportance?: number;
31
+ }
32
+ /**
33
+ * 场景 1:知识探索
34
+ *
35
+ * 默认:显示所有 importance ≥ 0 的节点(即全部)。
36
+ * seedEngramId 提供时由宿主层负责 BFS 邻居查询(spec §12.7 场景 1)。
37
+ */
38
+ export declare function knowledgeExploration(options?: KnowledgeExplorationOptions): GraphFilter;
39
+ export interface DomainOverviewOptions {
40
+ /** domain tag(至少匹配一个) */
41
+ readonly domainTags: readonly string[];
42
+ /** 限制 kind(可选) */
43
+ readonly kinds?: readonly EngramKind[];
44
+ }
45
+ /**
46
+ * 场景 2:领域全景
47
+ *
48
+ * 过滤 domain → 显示领域所有 engram,用于领域审计、识别 hub 节点。
49
+ */
50
+ export declare function domainOverview(options: DomainOverviewOptions): GraphFilter;
51
+ export declare const DEFAULT_HUB_MIN_INCOMING = 10;
52
+ export interface HubIdentificationOptions {
53
+ /** 最小入度(默认 10) */
54
+ readonly minIncoming?: number;
55
+ }
56
+ /**
57
+ * 场景 3:Hub 识别
58
+ *
59
+ * 注意:minIncoming 是动态派生字段,GraphFilter 没有直接对应字段。
60
+ * 宿主层应在 buildGraphSnapshot 后用 nodes.filter(n => n.incomingCount >= N)
61
+ * 做二次过滤。
62
+ *
63
+ * 这里返回的 filter 不做硬性节点过滤,只通过 stats 标识 isHub。
64
+ */
65
+ export declare function hubIdentification(options?: HubIdentificationOptions): GraphFilter & {
66
+ readonly minIncoming: number;
67
+ };
68
+ /**
69
+ * 场景 4:矛盾检测
70
+ *
71
+ * 只显示 contradicts 边 + 相关节点(preset 4.4 多视角保留)
72
+ */
73
+ export declare function contradictions(): GraphFilter;
74
+ /**
75
+ * 场景 5:孤立知识发现
76
+ *
77
+ * 只显示无任何 synapse 连接的节点。
78
+ */
79
+ export declare function orphans(): GraphFilter;
80
+ export interface LineageSceneOptions {
81
+ /** 限制血统 synapse kind(默认全部三种) */
82
+ readonly kinds?: readonly SynapseKind[];
83
+ /** 隐藏 contradicts(默认 true) */
84
+ readonly hideContradicts?: boolean;
85
+ }
86
+ /**
87
+ * 场景 6:进化血统可视化
88
+ *
89
+ * 只保留血统边(derives_from/consolidates/supersedes)+ 相关节点。
90
+ *
91
+ * 注意:具体从哪个 engram 开始追溯由宿主层调用 lineage.getEvolutionLineage 决定。
92
+ * 本 filter 应用于整个仓库时,展示所有血统关系。
93
+ */
94
+ export declare function lineage(options?: LineageSceneOptions): GraphFilter;
95
+ export interface ContributorOptions {
96
+ /** 限定创建者(至少匹配一个) */
97
+ readonly createdBy: readonly string[];
98
+ }
99
+ /**
100
+ * 场景 7:贡献者视图
101
+ *
102
+ * 按 createdBy 过滤(UI 层负责按 createdBy 着色)
103
+ */
104
+ export declare function contributor(options: ContributorOptions): GraphFilter;
105
+ export interface TemporalOptions {
106
+ /** createdAt 起始(ISO) */
107
+ readonly createdAfter?: string;
108
+ /** createdAt 结束(ISO) */
109
+ readonly createdBefore?: string;
110
+ /** 限定 freshness(如 ['stale', 'aging']) */
111
+ readonly freshness?: readonly EngramFreshness[];
112
+ }
113
+ /**
114
+ * 场景 8:时效分析
115
+ *
116
+ * 时间范围 + freshness 过滤(UI 层负责时间轴布局)
117
+ */
118
+ export declare function temporal(options?: TemporalOptions): GraphFilter;
119
+ export interface ScenePresetMeta {
120
+ readonly id: ScenePresetId;
121
+ readonly label: string;
122
+ readonly description: string;
123
+ readonly requiresInput: readonly string[];
124
+ }
125
+ export declare const SCENE_PRESETS: ReadonlyArray<ScenePresetMeta>;
126
+ /**
127
+ * 按 ID 查找预设
128
+ */
129
+ export declare function findScenePreset(id: ScenePresetId): ScenePresetMeta | undefined;
130
+ /**
131
+ * 列出所有预设 ID(稳定排序)
132
+ */
133
+ export declare function listScenePresetIds(): readonly ScenePresetId[];
134
+ //# sourceMappingURL=presets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../src/graph/presets.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,190 @@
1
+ /**
2
+ * Graph View 八大场景预设(spec §12.7,P3 4.7.1)
3
+ *
4
+ * 把 spec 中描述的 8 个典型场景封装为 GraphFilter 工厂函数 + 预设表。
5
+ * 宿主层可以直接查表应用,无需重复构造 filter。
6
+ *
7
+ * 8 个场景:
8
+ * 1. knowledge_exploration:选定 engram + 1-2 阶邻居
9
+ * 2. domain_overview:按 domain 过滤全部
10
+ * 3. hub_identification:Top-N 高入度节点
11
+ * 4. contradictions:只显示 contradicts
12
+ * 5. orphans:孤立知识
13
+ * 6. lineage:沿 derives_from/consolidates/supersedes 追溯
14
+ * 7. contributor:按 createdBy 着色(filter 限制)
15
+ * 8. temporal:时间轴 + freshness
16
+ *
17
+ * @module @co-engram/core/graph
18
+ */
19
+ /** 血统 synapse kinds(与 lineage 模块一致) */
20
+ const LINEAGE_SYNAPSE_KINDS = [
21
+ "derives_from",
22
+ "consolidates",
23
+ "supersedes",
24
+ ];
25
+ /**
26
+ * 场景 1:知识探索
27
+ *
28
+ * 默认:显示所有 importance ≥ 0 的节点(即全部)。
29
+ * seedEngramId 提供时由宿主层负责 BFS 邻居查询(spec §12.7 场景 1)。
30
+ */
31
+ export function knowledgeExploration(options = {}) {
32
+ return {
33
+ minImportance: options.minImportance ?? 0,
34
+ };
35
+ }
36
+ /**
37
+ * 场景 2:领域全景
38
+ *
39
+ * 过滤 domain → 显示领域所有 engram,用于领域审计、识别 hub 节点。
40
+ */
41
+ export function domainOverview(options) {
42
+ return {
43
+ domainTags: options.domainTags,
44
+ kinds: options.kinds,
45
+ };
46
+ }
47
+ // ============================================================
48
+ // 场景 3:hub_identification
49
+ // ============================================================
50
+ export const DEFAULT_HUB_MIN_INCOMING = 10;
51
+ /**
52
+ * 场景 3:Hub 识别
53
+ *
54
+ * 注意:minIncoming 是动态派生字段,GraphFilter 没有直接对应字段。
55
+ * 宿主层应在 buildGraphSnapshot 后用 nodes.filter(n => n.incomingCount >= N)
56
+ * 做二次过滤。
57
+ *
58
+ * 这里返回的 filter 不做硬性节点过滤,只通过 stats 标识 isHub。
59
+ */
60
+ export function hubIdentification(options = {}) {
61
+ const minIncoming = options.minIncoming ?? DEFAULT_HUB_MIN_INCOMING;
62
+ return {
63
+ minIncoming,
64
+ };
65
+ }
66
+ // ============================================================
67
+ // 场景 4:contradictions(已有预设)
68
+ // ============================================================
69
+ /**
70
+ * 场景 4:矛盾检测
71
+ *
72
+ * 只显示 contradicts 边 + 相关节点(preset 4.4 多视角保留)
73
+ */
74
+ export function contradictions() {
75
+ return {
76
+ contradictionsOnly: true,
77
+ };
78
+ }
79
+ // ============================================================
80
+ // 场景 5:orphans(已有预设)
81
+ // ============================================================
82
+ /**
83
+ * 场景 5:孤立知识发现
84
+ *
85
+ * 只显示无任何 synapse 连接的节点。
86
+ */
87
+ export function orphans() {
88
+ return {
89
+ orphansOnly: true,
90
+ };
91
+ }
92
+ /**
93
+ * 场景 6:进化血统可视化
94
+ *
95
+ * 只保留血统边(derives_from/consolidates/supersedes)+ 相关节点。
96
+ *
97
+ * 注意:具体从哪个 engram 开始追溯由宿主层调用 lineage.getEvolutionLineage 决定。
98
+ * 本 filter 应用于整个仓库时,展示所有血统关系。
99
+ */
100
+ export function lineage(options = {}) {
101
+ return {
102
+ synapseKinds: options.kinds ?? LINEAGE_SYNAPSE_KINDS,
103
+ hideContradicts: options.hideContradicts ?? true,
104
+ };
105
+ }
106
+ /**
107
+ * 场景 7:贡献者视图
108
+ *
109
+ * 按 createdBy 过滤(UI 层负责按 createdBy 着色)
110
+ */
111
+ export function contributor(options) {
112
+ return {
113
+ createdBy: options.createdBy,
114
+ };
115
+ }
116
+ /**
117
+ * 场景 8:时效分析
118
+ *
119
+ * 时间范围 + freshness 过滤(UI 层负责时间轴布局)
120
+ */
121
+ export function temporal(options = {}) {
122
+ return {
123
+ createdAfter: options.createdAfter,
124
+ createdBefore: options.createdBefore,
125
+ freshness: options.freshness,
126
+ };
127
+ }
128
+ export const SCENE_PRESETS = [
129
+ {
130
+ id: "knowledge_exploration",
131
+ label: "知识探索",
132
+ description: "选定 engram → 展开 1-2 阶邻居,发现关联知识",
133
+ requiresInput: ["seedEngramId?"],
134
+ },
135
+ {
136
+ id: "domain_overview",
137
+ label: "领域全景",
138
+ description: "过滤 domain → 显示领域所有 engram,用于领域审计、识别 hub",
139
+ requiresInput: ["domainTags"],
140
+ },
141
+ {
142
+ id: "hub_identification",
143
+ label: "Hub 识别",
144
+ description: "按 incomingSynapseCount 排序 Top-N,发现团队核心引用条目",
145
+ requiresInput: [],
146
+ },
147
+ {
148
+ id: "contradictions",
149
+ label: "矛盾检测",
150
+ description: "只显示 contradicts 边,触发 Contradiction Resolution",
151
+ requiresInput: [],
152
+ },
153
+ {
154
+ id: "orphans",
155
+ label: "孤立知识发现",
156
+ description: '过滤 orphans,发现"沉淀但未利用"的知识',
157
+ requiresInput: [],
158
+ },
159
+ {
160
+ id: "lineage",
161
+ label: "进化血统",
162
+ description: "沿 derives_from/consolidates/supersedes 追溯知识演化路径",
163
+ requiresInput: ["seedEngramId?"],
164
+ },
165
+ {
166
+ id: "contributor",
167
+ label: "贡献者视图",
168
+ description: "按 createdBy 过滤,分析团队知识贡献分布、识别 silo",
169
+ requiresInput: ["createdBy"],
170
+ },
171
+ {
172
+ id: "temporal",
173
+ label: "时效分析",
174
+ description: "时间轴 + freshness 颜色,发现过时知识集群、规划归档",
175
+ requiresInput: ["createdAfter?", "createdBefore?"],
176
+ },
177
+ ];
178
+ /**
179
+ * 按 ID 查找预设
180
+ */
181
+ export function findScenePreset(id) {
182
+ return SCENE_PRESETS.find((p) => p.id === id);
183
+ }
184
+ /**
185
+ * 列出所有预设 ID(稳定排序)
186
+ */
187
+ export function listScenePresetIds() {
188
+ return SCENE_PRESETS.map((p) => p.id);
189
+ }
190
+ //# sourceMappingURL=presets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presets.js","sourceRoot":"","sources":["../../src/graph/presets.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Synapse 类型注册表(12 种,5 族)
3
+ *
4
+ * 定义所有 Synapse kind 的元数据:族、方向、label 等。
5
+ *
6
+ * @module @co-engram/core/graph
7
+ */
8
+ import type { SynapseDirection, SynapseFamily, SynapseKind } from "../types/synapse.js";
9
+ /** Synapse kind 元数据 */
10
+ export interface SynapseKindMeta {
11
+ readonly kind: SynapseKind;
12
+ readonly family: SynapseFamily;
13
+ readonly label: string;
14
+ readonly description: string;
15
+ readonly defaultDirection: SynapseDirection;
16
+ readonly defaultWeight: number;
17
+ }
18
+ /** 全部 12 种 Synapse kind 元数据 */
19
+ export declare const SYNAPSE_KIND_REGISTRY: Record<SynapseKind, SynapseKindMeta>;
20
+ /** 所有 Synapse kind 列表 */
21
+ export declare const ALL_SYNAPSE_KINDS: readonly SynapseKind[];
22
+ /** 所有 Synapse 族列表 */
23
+ export declare const ALL_SYNAPSE_FAMILIES: readonly SynapseFamily[];
24
+ /** 族对应的中文 label */
25
+ export declare const SYNAPSE_FAMILY_LABEL: Record<SynapseFamily, string>;
26
+ /**
27
+ * 校验 kind 字符串是否合法
28
+ */
29
+ export declare function isValidSynapseKind(kind: string): kind is SynapseKind;
30
+ /**
31
+ * 获取 kind 元数据
32
+ */
33
+ export declare function getSynapseKindMeta(kind: SynapseKind): SynapseKindMeta;
34
+ /**
35
+ * 列出某族下所有 kind
36
+ */
37
+ export declare function listKindsByFamily(family: SynapseFamily): readonly SynapseKind[];
38
+ /**
39
+ * 判断两个 kind 是否同族
40
+ */
41
+ export declare function areSameFamily(a: SynapseKind, b: SynapseKind): boolean;
42
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/graph/registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EACb,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAE7B,uBAAuB;AACvB,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,+BAA+B;AAC/B,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,WAAW,EAAE,eAAe,CAsGtE,CAAC;AAEF,yBAAyB;AACzB,eAAO,MAAM,iBAAiB,EAEzB,SAAS,WAAW,EAAE,CAAC;AAE5B,qBAAqB;AACrB,eAAO,MAAM,oBAAoB,EAAE,SAAS,aAAa,EAMxD,CAAC;AAEF,mBAAmB;AACnB,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAM9D,CAAC;AAEF;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,WAAW,CAEpE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,WAAW,GAAG,eAAe,CAMrE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,aAAa,GACpB,SAAS,WAAW,EAAE,CAIxB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,WAAW,GAAG,OAAO,CAErE"}
@@ -0,0 +1,158 @@
1
+ /**
2
+ * Synapse 类型注册表(12 种,5 族)
3
+ *
4
+ * 定义所有 Synapse kind 的元数据:族、方向、label 等。
5
+ *
6
+ * @module @co-engram/core/graph
7
+ */
8
+ /** 全部 12 种 Synapse kind 元数据 */
9
+ export const SYNAPSE_KIND_REGISTRY = {
10
+ // 结构族
11
+ extends: {
12
+ kind: "extends",
13
+ family: "structural",
14
+ label: "扩展",
15
+ description: "A 是 B 的扩展(B 是更一般的概念)",
16
+ defaultDirection: "directional",
17
+ defaultWeight: 0.7,
18
+ },
19
+ part_of: {
20
+ kind: "part_of",
21
+ family: "structural",
22
+ label: "组成",
23
+ description: "A 是 B 的一部分",
24
+ defaultDirection: "directional",
25
+ defaultWeight: 0.7,
26
+ },
27
+ similar_to: {
28
+ kind: "similar_to",
29
+ family: "structural",
30
+ label: "相似",
31
+ description: "A 与 B 相似(语义或结构)",
32
+ defaultDirection: "bidirectional",
33
+ defaultWeight: 0.6,
34
+ },
35
+ // 因果族
36
+ depends_on: {
37
+ kind: "depends_on",
38
+ family: "causal",
39
+ label: "依赖",
40
+ description: "A 依赖 B(B 是 A 的前提)",
41
+ defaultDirection: "directional",
42
+ defaultWeight: 0.8,
43
+ },
44
+ causes: {
45
+ kind: "causes",
46
+ family: "causal",
47
+ label: "导致",
48
+ description: "A 导致 B",
49
+ defaultDirection: "directional",
50
+ defaultWeight: 0.8,
51
+ },
52
+ follows: {
53
+ kind: "follows",
54
+ family: "causal",
55
+ label: "顺承",
56
+ description: "A 之后发生 B(序列记忆)",
57
+ defaultDirection: "directional",
58
+ defaultWeight: 0.6,
59
+ },
60
+ // 证据族
61
+ derives_from: {
62
+ kind: "derives_from",
63
+ family: "evidential",
64
+ label: "溯源",
65
+ description: "A 源自 B",
66
+ defaultDirection: "directional",
67
+ defaultWeight: 0.7,
68
+ },
69
+ contradicts: {
70
+ kind: "contradicts",
71
+ family: "evidential",
72
+ label: "矛盾",
73
+ description: "A 与 B 矛盾",
74
+ defaultDirection: "bidirectional",
75
+ defaultWeight: 0.9, // 矛盾默认高权重以突出
76
+ },
77
+ exemplifies: {
78
+ kind: "exemplifies",
79
+ family: "evidential",
80
+ label: "例证",
81
+ description: "A 是 B 的例证",
82
+ defaultDirection: "directional",
83
+ defaultWeight: 0.5,
84
+ },
85
+ // 时间族
86
+ supersedes: {
87
+ kind: "supersedes",
88
+ family: "temporal",
89
+ label: "替代",
90
+ description: "A 替代 B(B 已过时)",
91
+ defaultDirection: "directional",
92
+ defaultWeight: 0.8,
93
+ },
94
+ consolidates: {
95
+ kind: "consolidates",
96
+ family: "temporal",
97
+ label: "巩固",
98
+ description: "A 是 B 的巩固结果",
99
+ defaultDirection: "directional",
100
+ defaultWeight: 0.7,
101
+ },
102
+ // 调节族
103
+ contextualizes: {
104
+ kind: "contextualizes",
105
+ family: "modulatory",
106
+ label: "情境",
107
+ description: "A 情境化 B(A 提供 B 的上下文)",
108
+ defaultDirection: "directional",
109
+ defaultWeight: 0.5,
110
+ },
111
+ };
112
+ /** 所有 Synapse kind 列表 */
113
+ export const ALL_SYNAPSE_KINDS = Object.keys(SYNAPSE_KIND_REGISTRY);
114
+ /** 所有 Synapse 族列表 */
115
+ export const ALL_SYNAPSE_FAMILIES = [
116
+ "structural",
117
+ "causal",
118
+ "evidential",
119
+ "temporal",
120
+ "modulatory",
121
+ ];
122
+ /** 族对应的中文 label */
123
+ export const SYNAPSE_FAMILY_LABEL = {
124
+ structural: "结构",
125
+ causal: "因果",
126
+ evidential: "证据",
127
+ temporal: "时间",
128
+ modulatory: "调节",
129
+ };
130
+ /**
131
+ * 校验 kind 字符串是否合法
132
+ */
133
+ export function isValidSynapseKind(kind) {
134
+ return kind in SYNAPSE_KIND_REGISTRY;
135
+ }
136
+ /**
137
+ * 获取 kind 元数据
138
+ */
139
+ export function getSynapseKindMeta(kind) {
140
+ const meta = SYNAPSE_KIND_REGISTRY[kind];
141
+ if (!meta) {
142
+ throw new Error(`Unknown SynapseKind: ${kind}`);
143
+ }
144
+ return meta;
145
+ }
146
+ /**
147
+ * 列出某族下所有 kind
148
+ */
149
+ export function listKindsByFamily(family) {
150
+ return ALL_SYNAPSE_KINDS.filter((k) => SYNAPSE_KIND_REGISTRY[k].family === family);
151
+ }
152
+ /**
153
+ * 判断两个 kind 是否同族
154
+ */
155
+ export function areSameFamily(a, b) {
156
+ return SYNAPSE_KIND_REGISTRY[a].family === SYNAPSE_KIND_REGISTRY[b].family;
157
+ }
158
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/graph/registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,113 @@
1
+ /**
2
+ * Graph Snapshot 构建(spec §12.2)
3
+ *
4
+ * 从派生索引(digest.jsonl + graph.json)构建 Graph View 用的快照。
5
+ * 零额外存储:完全基于派生缓存,图视图本身不触发对权威源的读取。
6
+ *
7
+ * 过滤器(spec §12.6):
8
+ * - 节点:kind / domainTags / freshness / status / emotionalValence / createdBy / createdAt 范围 / importance 阈值 / orphansOnly
9
+ * - 边:kinds / minWeight / hideContradicts
10
+ * - 预设:orphans / strong / contradictions / lineage
11
+ *
12
+ * @module @co-engram/core/graph
13
+ */
14
+ import type { EngramKind, EngramFreshness, EngramStatus, EmotionalValence } from "../types/engram.js";
15
+ import type { SynapseKind, SynapseFamily } from "../types/synapse.js";
16
+ import type { DigestLine, GraphIndex } from "../index/types.js";
17
+ export interface GraphFilter {
18
+ readonly kinds?: readonly EngramKind[];
19
+ readonly domainTags?: readonly string[];
20
+ readonly freshness?: readonly EngramFreshness[];
21
+ readonly status?: readonly EngramStatus[];
22
+ readonly emotionalValence?: readonly EmotionalValence[];
23
+ readonly createdBy?: readonly string[];
24
+ /** createdAt 起始(ISO) */
25
+ readonly createdAfter?: string;
26
+ /** createdAt 结束(ISO) */
27
+ readonly createdBefore?: string;
28
+ /** 最小 importance(含) */
29
+ readonly minImportance?: number;
30
+ /** 最大 importance(含) */
31
+ readonly maxImportance?: number;
32
+ /** 只保留这些 kind 的边(不传=全部) */
33
+ readonly synapseKinds?: readonly SynapseKind[];
34
+ /** 只保留这些 family 的边 */
35
+ readonly synapseFamilies?: readonly SynapseFamily[];
36
+ /** 最小 weight(含) */
37
+ readonly minWeight?: number;
38
+ /** 隐藏 contradicts 边(专注结构关系) */
39
+ readonly hideContradicts?: boolean;
40
+ /** 只显示孤立节点(incoming=0 且 outgoing=0) */
41
+ readonly orphansOnly?: boolean;
42
+ /** 只显示矛盾图(contradicts + 相关节点) */
43
+ readonly contradictionsOnly?: boolean;
44
+ }
45
+ /** Graph View 渲染节点(digest line 子集 + 派生属性) */
46
+ export interface SnapshotNode {
47
+ readonly id: string;
48
+ readonly title: string;
49
+ readonly kind: string;
50
+ readonly kinds: readonly string[];
51
+ readonly domainTags: readonly string[];
52
+ readonly importance: number;
53
+ readonly freshness: string;
54
+ readonly status: string;
55
+ readonly emotionalValence: string;
56
+ readonly createdBy: string;
57
+ readonly createdAt: string;
58
+ readonly updatedAt: string;
59
+ readonly retrievalCount: number;
60
+ readonly effectiveRetrievals: number;
61
+ readonly reinforcementScore: number;
62
+ /** 派生:出边数(过滤后) */
63
+ readonly outgoingCount: number;
64
+ /** 派生:入边数(过滤后) */
65
+ readonly incomingCount: number;
66
+ /** 派生:是否 hub(incomingSynapseCount ≥ 10) */
67
+ readonly isHub: boolean;
68
+ }
69
+ /** Graph View 渲染边(graph edge + family 元数据) */
70
+ export interface SnapshotEdge {
71
+ readonly id: string;
72
+ readonly from: string;
73
+ readonly to: string;
74
+ readonly kind: SynapseKind;
75
+ readonly family: SynapseFamily;
76
+ readonly weight: number;
77
+ readonly direction: "directional" | "bidirectional";
78
+ /** 派生:是否 contradicts(前端加粗红色虚线) */
79
+ readonly isContradiction: boolean;
80
+ }
81
+ /** Graph 快照 */
82
+ export interface GraphSnapshot {
83
+ readonly nodes: readonly SnapshotNode[];
84
+ readonly edges: readonly SnapshotEdge[];
85
+ readonly stats: GraphSnapshotStats;
86
+ }
87
+ export interface GraphSnapshotStats {
88
+ readonly totalNodes: number;
89
+ readonly totalEdges: number;
90
+ readonly orphanCount: number;
91
+ readonly hubCount: number;
92
+ readonly contradictionCount: number;
93
+ readonly byKind: Record<string, number>;
94
+ readonly byDomain: Record<string, number>;
95
+ readonly byFreshness: Record<string, number>;
96
+ }
97
+ /** Hub 阈值(spec §12.3:incomingSynapseCount ≥ 10) */
98
+ export declare const HUB_INCOMING_THRESHOLD = 10;
99
+ export interface BuildSnapshotInput {
100
+ readonly digest: ReadonlyMap<string, DigestLine> | readonly DigestLine[];
101
+ readonly graph: GraphIndex;
102
+ readonly filter?: GraphFilter;
103
+ }
104
+ /**
105
+ * 构建 Graph View 快照
106
+ *
107
+ * 1. 节点过滤:对 digest 应用节点过滤器
108
+ * 2. 边过滤:剔除两端任一节点被过滤掉的边;应用边过滤器
109
+ * 3. 派生:节点 outgoingCount/incomingCount/isHub 基于过滤后的边
110
+ * 4. 统计:orphan / hub / contradiction / byKind / byDomain / byFreshness
111
+ */
112
+ export declare function buildGraphSnapshot(input: BuildSnapshotInput): GraphSnapshot;
113
+ //# sourceMappingURL=snapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../src/graph/snapshot.ts"],"names":[],"mappings":"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"}