nodedex 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 (469) hide show
  1. package/adapters/claude-code-watcher.mjs +336 -0
  2. package/adapters/hermes-statedb-watcher.mjs +234 -0
  3. package/adapters/nodedex-capture-core.mjs +129 -0
  4. package/adapters/nodedex-capture.mjs +169 -0
  5. package/dist/agent-protocol.d.ts +7 -0
  6. package/dist/agent-protocol.d.ts.map +1 -0
  7. package/dist/agent-protocol.js +38 -0
  8. package/dist/agent-protocol.js.map +1 -0
  9. package/dist/api-server.d.ts +5 -0
  10. package/dist/api-server.d.ts.map +1 -0
  11. package/dist/api-server.js +351 -0
  12. package/dist/api-server.js.map +1 -0
  13. package/dist/boot-env.d.ts +2 -0
  14. package/dist/boot-env.d.ts.map +1 -0
  15. package/dist/boot-env.js +12 -0
  16. package/dist/boot-env.js.map +1 -0
  17. package/dist/engine/__tests__/search-core.test.d.ts +2 -0
  18. package/dist/engine/__tests__/search-core.test.d.ts.map +1 -0
  19. package/dist/engine/__tests__/search-core.test.js +139 -0
  20. package/dist/engine/__tests__/search-core.test.js.map +1 -0
  21. package/dist/engine/ai-provider.d.ts +45 -0
  22. package/dist/engine/ai-provider.d.ts.map +1 -0
  23. package/dist/engine/ai-provider.js +5 -0
  24. package/dist/engine/ai-provider.js.map +1 -0
  25. package/dist/engine/embeddings.d.ts +51 -0
  26. package/dist/engine/embeddings.d.ts.map +1 -0
  27. package/dist/engine/embeddings.js +89 -0
  28. package/dist/engine/embeddings.js.map +1 -0
  29. package/dist/engine/providers/__tests__/failure-policy.test.d.ts +2 -0
  30. package/dist/engine/providers/__tests__/failure-policy.test.d.ts.map +1 -0
  31. package/dist/engine/providers/__tests__/failure-policy.test.js +134 -0
  32. package/dist/engine/providers/__tests__/failure-policy.test.js.map +1 -0
  33. package/dist/engine/providers/__tests__/model-caps.test.d.ts +2 -0
  34. package/dist/engine/providers/__tests__/model-caps.test.d.ts.map +1 -0
  35. package/dist/engine/providers/__tests__/model-caps.test.js +38 -0
  36. package/dist/engine/providers/__tests__/model-caps.test.js.map +1 -0
  37. package/dist/engine/providers/__tests__/openai-structured.test.d.ts +2 -0
  38. package/dist/engine/providers/__tests__/openai-structured.test.d.ts.map +1 -0
  39. package/dist/engine/providers/__tests__/openai-structured.test.js +73 -0
  40. package/dist/engine/providers/__tests__/openai-structured.test.js.map +1 -0
  41. package/dist/engine/providers/__tests__/usage-ledger.test.d.ts +2 -0
  42. package/dist/engine/providers/__tests__/usage-ledger.test.d.ts.map +1 -0
  43. package/dist/engine/providers/__tests__/usage-ledger.test.js +108 -0
  44. package/dist/engine/providers/__tests__/usage-ledger.test.js.map +1 -0
  45. package/dist/engine/providers/anthropic.d.ts +17 -0
  46. package/dist/engine/providers/anthropic.d.ts.map +1 -0
  47. package/dist/engine/providers/anthropic.js +125 -0
  48. package/dist/engine/providers/anthropic.js.map +1 -0
  49. package/dist/engine/providers/failure-policy.d.ts +56 -0
  50. package/dist/engine/providers/failure-policy.d.ts.map +1 -0
  51. package/dist/engine/providers/failure-policy.js +120 -0
  52. package/dist/engine/providers/failure-policy.js.map +1 -0
  53. package/dist/engine/providers/gemini.d.ts +22 -0
  54. package/dist/engine/providers/gemini.d.ts.map +1 -0
  55. package/dist/engine/providers/gemini.js +180 -0
  56. package/dist/engine/providers/gemini.js.map +1 -0
  57. package/dist/engine/providers/index.d.ts +8 -0
  58. package/dist/engine/providers/index.d.ts.map +1 -0
  59. package/dist/engine/providers/index.js +67 -0
  60. package/dist/engine/providers/index.js.map +1 -0
  61. package/dist/engine/providers/local.d.ts +12 -0
  62. package/dist/engine/providers/local.d.ts.map +1 -0
  63. package/dist/engine/providers/local.js +46 -0
  64. package/dist/engine/providers/local.js.map +1 -0
  65. package/dist/engine/providers/model-caps.d.ts +6 -0
  66. package/dist/engine/providers/model-caps.d.ts.map +1 -0
  67. package/dist/engine/providers/model-caps.js +49 -0
  68. package/dist/engine/providers/model-caps.js.map +1 -0
  69. package/dist/engine/providers/openai.d.ts +30 -0
  70. package/dist/engine/providers/openai.d.ts.map +1 -0
  71. package/dist/engine/providers/openai.js +309 -0
  72. package/dist/engine/providers/openai.js.map +1 -0
  73. package/dist/engine/providers/usage-ledger.d.ts +69 -0
  74. package/dist/engine/providers/usage-ledger.d.ts.map +1 -0
  75. package/dist/engine/providers/usage-ledger.js +209 -0
  76. package/dist/engine/providers/usage-ledger.js.map +1 -0
  77. package/dist/engine/search-core.d.ts +40 -0
  78. package/dist/engine/search-core.d.ts.map +1 -0
  79. package/dist/engine/search-core.js +109 -0
  80. package/dist/engine/search-core.js.map +1 -0
  81. package/dist/engine/vector-math.d.ts +5 -0
  82. package/dist/engine/vector-math.d.ts.map +1 -0
  83. package/dist/engine/vector-math.js +25 -0
  84. package/dist/engine/vector-math.js.map +1 -0
  85. package/dist/home-env.d.ts +26 -0
  86. package/dist/home-env.d.ts.map +1 -0
  87. package/dist/home-env.js +87 -0
  88. package/dist/home-env.js.map +1 -0
  89. package/dist/mcp-server.d.ts +13 -0
  90. package/dist/mcp-server.d.ts.map +1 -0
  91. package/dist/mcp-server.js +79 -0
  92. package/dist/mcp-server.js.map +1 -0
  93. package/dist/middleware/auth.d.ts +23 -0
  94. package/dist/middleware/auth.d.ts.map +1 -0
  95. package/dist/middleware/auth.js +104 -0
  96. package/dist/middleware/auth.js.map +1 -0
  97. package/dist/middleware/auto-recall.d.ts +7 -0
  98. package/dist/middleware/auto-recall.d.ts.map +1 -0
  99. package/dist/middleware/auto-recall.js +257 -0
  100. package/dist/middleware/auto-recall.js.map +1 -0
  101. package/dist/middleware/auto-reflect.d.ts +4 -0
  102. package/dist/middleware/auto-reflect.d.ts.map +1 -0
  103. package/dist/middleware/auto-reflect.js +5 -0
  104. package/dist/middleware/auto-reflect.js.map +1 -0
  105. package/dist/middleware/reflect/apply-flag-verdict.d.ts +27 -0
  106. package/dist/middleware/reflect/apply-flag-verdict.d.ts.map +1 -0
  107. package/dist/middleware/reflect/apply-flag-verdict.js +57 -0
  108. package/dist/middleware/reflect/apply-flag-verdict.js.map +1 -0
  109. package/dist/middleware/reflect/arc-entity-resolve.d.ts +29 -0
  110. package/dist/middleware/reflect/arc-entity-resolve.d.ts.map +1 -0
  111. package/dist/middleware/reflect/arc-entity-resolve.js +356 -0
  112. package/dist/middleware/reflect/arc-entity-resolve.js.map +1 -0
  113. package/dist/middleware/reflect/arc-inactivity-timer.d.ts +47 -0
  114. package/dist/middleware/reflect/arc-inactivity-timer.d.ts.map +1 -0
  115. package/dist/middleware/reflect/arc-inactivity-timer.js +175 -0
  116. package/dist/middleware/reflect/arc-inactivity-timer.js.map +1 -0
  117. package/dist/middleware/reflect/arc-pipeline.d.ts +33 -0
  118. package/dist/middleware/reflect/arc-pipeline.d.ts.map +1 -0
  119. package/dist/middleware/reflect/arc-pipeline.js +498 -0
  120. package/dist/middleware/reflect/arc-pipeline.js.map +1 -0
  121. package/dist/middleware/reflect/comprehend-pergroup.d.ts +100 -0
  122. package/dist/middleware/reflect/comprehend-pergroup.d.ts.map +1 -0
  123. package/dist/middleware/reflect/comprehend-pergroup.js +610 -0
  124. package/dist/middleware/reflect/comprehend-pergroup.js.map +1 -0
  125. package/dist/middleware/reflect/comprehend.d.ts +237 -0
  126. package/dist/middleware/reflect/comprehend.d.ts.map +1 -0
  127. package/dist/middleware/reflect/comprehend.js +706 -0
  128. package/dist/middleware/reflect/comprehend.js.map +1 -0
  129. package/dist/middleware/reflect/config.d.ts +34 -0
  130. package/dist/middleware/reflect/config.d.ts.map +1 -0
  131. package/dist/middleware/reflect/config.js +131 -0
  132. package/dist/middleware/reflect/config.js.map +1 -0
  133. package/dist/middleware/reflect/context.d.ts +138 -0
  134. package/dist/middleware/reflect/context.d.ts.map +1 -0
  135. package/dist/middleware/reflect/context.js +619 -0
  136. package/dist/middleware/reflect/context.js.map +1 -0
  137. package/dist/middleware/reflect/cost-breakdown.d.ts +69 -0
  138. package/dist/middleware/reflect/cost-breakdown.d.ts.map +1 -0
  139. package/dist/middleware/reflect/cost-breakdown.js +63 -0
  140. package/dist/middleware/reflect/cost-breakdown.js.map +1 -0
  141. package/dist/middleware/reflect/cost-guard.d.ts +102 -0
  142. package/dist/middleware/reflect/cost-guard.d.ts.map +1 -0
  143. package/dist/middleware/reflect/cost-guard.js +243 -0
  144. package/dist/middleware/reflect/cost-guard.js.map +1 -0
  145. package/dist/middleware/reflect/cost-pricing.d.ts +54 -0
  146. package/dist/middleware/reflect/cost-pricing.d.ts.map +1 -0
  147. package/dist/middleware/reflect/cost-pricing.js +148 -0
  148. package/dist/middleware/reflect/cost-pricing.js.map +1 -0
  149. package/dist/middleware/reflect/cross-group-link.d.ts +61 -0
  150. package/dist/middleware/reflect/cross-group-link.d.ts.map +1 -0
  151. package/dist/middleware/reflect/cross-group-link.js +212 -0
  152. package/dist/middleware/reflect/cross-group-link.js.map +1 -0
  153. package/dist/middleware/reflect/dedup-by-source-and-value.d.ts +70 -0
  154. package/dist/middleware/reflect/dedup-by-source-and-value.d.ts.map +1 -0
  155. package/dist/middleware/reflect/dedup-by-source-and-value.js +0 -0
  156. package/dist/middleware/reflect/dedup-by-source-and-value.js.map +1 -0
  157. package/dist/middleware/reflect/describe-roots.d.ts +58 -0
  158. package/dist/middleware/reflect/describe-roots.d.ts.map +1 -0
  159. package/dist/middleware/reflect/describe-roots.js +266 -0
  160. package/dist/middleware/reflect/describe-roots.js.map +1 -0
  161. package/dist/middleware/reflect/flag-reviewer-startup.d.ts +16 -0
  162. package/dist/middleware/reflect/flag-reviewer-startup.d.ts.map +1 -0
  163. package/dist/middleware/reflect/flag-reviewer-startup.js +107 -0
  164. package/dist/middleware/reflect/flag-reviewer-startup.js.map +1 -0
  165. package/dist/middleware/reflect/flag-reviewer.d.ts +69 -0
  166. package/dist/middleware/reflect/flag-reviewer.d.ts.map +1 -0
  167. package/dist/middleware/reflect/flag-reviewer.js +520 -0
  168. package/dist/middleware/reflect/flag-reviewer.js.map +1 -0
  169. package/dist/middleware/reflect/inline-dedup.d.ts +26 -0
  170. package/dist/middleware/reflect/inline-dedup.d.ts.map +1 -0
  171. package/dist/middleware/reflect/inline-dedup.js +131 -0
  172. package/dist/middleware/reflect/inline-dedup.js.map +1 -0
  173. package/dist/middleware/reflect/justify-decisions.d.ts +37 -0
  174. package/dist/middleware/reflect/justify-decisions.d.ts.map +1 -0
  175. package/dist/middleware/reflect/justify-decisions.js +159 -0
  176. package/dist/middleware/reflect/justify-decisions.js.map +1 -0
  177. package/dist/middleware/reflect/nl-accept.d.ts +35 -0
  178. package/dist/middleware/reflect/nl-accept.d.ts.map +1 -0
  179. package/dist/middleware/reflect/nl-accept.js +167 -0
  180. package/dist/middleware/reflect/nl-accept.js.map +1 -0
  181. package/dist/middleware/reflect/pass0.d.ts +20 -0
  182. package/dist/middleware/reflect/pass0.d.ts.map +1 -0
  183. package/dist/middleware/reflect/pass0.js +423 -0
  184. package/dist/middleware/reflect/pass0.js.map +1 -0
  185. package/dist/middleware/reflect/pass1.d.ts +17 -0
  186. package/dist/middleware/reflect/pass1.d.ts.map +1 -0
  187. package/dist/middleware/reflect/pass1.js +241 -0
  188. package/dist/middleware/reflect/pass1.js.map +1 -0
  189. package/dist/middleware/reflect/pass2-quarantine.d.ts +129 -0
  190. package/dist/middleware/reflect/pass2-quarantine.d.ts.map +1 -0
  191. package/dist/middleware/reflect/pass2-quarantine.js +272 -0
  192. package/dist/middleware/reflect/pass2-quarantine.js.map +1 -0
  193. package/dist/middleware/reflect/pass2-seams.d.ts +205 -0
  194. package/dist/middleware/reflect/pass2-seams.d.ts.map +1 -0
  195. package/dist/middleware/reflect/pass2-seams.js +279 -0
  196. package/dist/middleware/reflect/pass2-seams.js.map +1 -0
  197. package/dist/middleware/reflect/pass2-split-orchestrator.d.ts +37 -0
  198. package/dist/middleware/reflect/pass2-split-orchestrator.d.ts.map +1 -0
  199. package/dist/middleware/reflect/pass2-split-orchestrator.js +531 -0
  200. package/dist/middleware/reflect/pass2-split-orchestrator.js.map +1 -0
  201. package/dist/middleware/reflect/pass2.d.ts +17 -0
  202. package/dist/middleware/reflect/pass2.d.ts.map +1 -0
  203. package/dist/middleware/reflect/pass2.js +324 -0
  204. package/dist/middleware/reflect/pass2.js.map +1 -0
  205. package/dist/middleware/reflect/pass2a.d.ts +141 -0
  206. package/dist/middleware/reflect/pass2a.d.ts.map +1 -0
  207. package/dist/middleware/reflect/pass2a.js +404 -0
  208. package/dist/middleware/reflect/pass2a.js.map +1 -0
  209. package/dist/middleware/reflect/pass2b.d.ts +108 -0
  210. package/dist/middleware/reflect/pass2b.d.ts.map +1 -0
  211. package/dist/middleware/reflect/pass2b.js +480 -0
  212. package/dist/middleware/reflect/pass2b.js.map +1 -0
  213. package/dist/middleware/reflect/pass2c.d.ts +113 -0
  214. package/dist/middleware/reflect/pass2c.d.ts.map +1 -0
  215. package/dist/middleware/reflect/pass2c.js +360 -0
  216. package/dist/middleware/reflect/pass2c.js.map +1 -0
  217. package/dist/middleware/reflect/pass3-batch.d.ts +62 -0
  218. package/dist/middleware/reflect/pass3-batch.d.ts.map +1 -0
  219. package/dist/middleware/reflect/pass3-batch.js +139 -0
  220. package/dist/middleware/reflect/pass3-batch.js.map +1 -0
  221. package/dist/middleware/reflect/pass3.d.ts +23 -0
  222. package/dist/middleware/reflect/pass3.d.ts.map +1 -0
  223. package/dist/middleware/reflect/pass3.js +371 -0
  224. package/dist/middleware/reflect/pass3.js.map +1 -0
  225. package/dist/middleware/reflect/pass4-slice.d.ts +25 -0
  226. package/dist/middleware/reflect/pass4-slice.d.ts.map +1 -0
  227. package/dist/middleware/reflect/pass4-slice.js +315 -0
  228. package/dist/middleware/reflect/pass4-slice.js.map +1 -0
  229. package/dist/middleware/reflect/pass4.d.ts +30 -0
  230. package/dist/middleware/reflect/pass4.d.ts.map +1 -0
  231. package/dist/middleware/reflect/pass4.js +193 -0
  232. package/dist/middleware/reflect/pass4.js.map +1 -0
  233. package/dist/middleware/reflect/pass5.d.ts +22 -0
  234. package/dist/middleware/reflect/pass5.d.ts.map +1 -0
  235. package/dist/middleware/reflect/pass5.js +178 -0
  236. package/dist/middleware/reflect/pass5.js.map +1 -0
  237. package/dist/middleware/reflect/pass_judge.d.ts +44 -0
  238. package/dist/middleware/reflect/pass_judge.d.ts.map +1 -0
  239. package/dist/middleware/reflect/pass_judge.js +263 -0
  240. package/dist/middleware/reflect/pass_judge.js.map +1 -0
  241. package/dist/middleware/reflect/pipeline-flags.d.ts +140 -0
  242. package/dist/middleware/reflect/pipeline-flags.d.ts.map +1 -0
  243. package/dist/middleware/reflect/pipeline-flags.js +314 -0
  244. package/dist/middleware/reflect/pipeline-flags.js.map +1 -0
  245. package/dist/middleware/reflect/pipeline.d.ts +237 -0
  246. package/dist/middleware/reflect/pipeline.d.ts.map +1 -0
  247. package/dist/middleware/reflect/pipeline.js +3114 -0
  248. package/dist/middleware/reflect/pipeline.js.map +1 -0
  249. package/dist/middleware/reflect/promptOverride.d.ts +14 -0
  250. package/dist/middleware/reflect/promptOverride.d.ts.map +1 -0
  251. package/dist/middleware/reflect/promptOverride.js +28 -0
  252. package/dist/middleware/reflect/promptOverride.js.map +1 -0
  253. package/dist/middleware/reflect/provenance-check.d.ts +48 -0
  254. package/dist/middleware/reflect/provenance-check.d.ts.map +1 -0
  255. package/dist/middleware/reflect/provenance-check.js +180 -0
  256. package/dist/middleware/reflect/provenance-check.js.map +1 -0
  257. package/dist/middleware/reflect/provenance-reviewer.d.ts +52 -0
  258. package/dist/middleware/reflect/provenance-reviewer.d.ts.map +1 -0
  259. package/dist/middleware/reflect/provenance-reviewer.js +253 -0
  260. package/dist/middleware/reflect/provenance-reviewer.js.map +1 -0
  261. package/dist/middleware/reflect/prune-collapsed-types.d.ts +11 -0
  262. package/dist/middleware/reflect/prune-collapsed-types.d.ts.map +1 -0
  263. package/dist/middleware/reflect/prune-collapsed-types.js +32 -0
  264. package/dist/middleware/reflect/prune-collapsed-types.js.map +1 -0
  265. package/dist/middleware/reflect/recognize-root.d.ts +75 -0
  266. package/dist/middleware/reflect/recognize-root.d.ts.map +1 -0
  267. package/dist/middleware/reflect/recognize-root.js +204 -0
  268. package/dist/middleware/reflect/recognize-root.js.map +1 -0
  269. package/dist/middleware/reflect/render-agent-flag.d.ts +25 -0
  270. package/dist/middleware/reflect/render-agent-flag.d.ts.map +1 -0
  271. package/dist/middleware/reflect/render-agent-flag.js +39 -0
  272. package/dist/middleware/reflect/render-agent-flag.js.map +1 -0
  273. package/dist/middleware/reflect/retrieve-graph-slice.d.ts +54 -0
  274. package/dist/middleware/reflect/retrieve-graph-slice.d.ts.map +1 -0
  275. package/dist/middleware/reflect/retrieve-graph-slice.js +173 -0
  276. package/dist/middleware/reflect/retrieve-graph-slice.js.map +1 -0
  277. package/dist/middleware/reflect/root-relatedness.d.ts +31 -0
  278. package/dist/middleware/reflect/root-relatedness.d.ts.map +1 -0
  279. package/dist/middleware/reflect/root-relatedness.js +92 -0
  280. package/dist/middleware/reflect/root-relatedness.js.map +1 -0
  281. package/dist/middleware/reflect/schema-heal.d.ts +22 -0
  282. package/dist/middleware/reflect/schema-heal.d.ts.map +1 -0
  283. package/dist/middleware/reflect/schema-heal.js +119 -0
  284. package/dist/middleware/reflect/schema-heal.js.map +1 -0
  285. package/dist/middleware/reflect/schema-validator.d.ts +85 -0
  286. package/dist/middleware/reflect/schema-validator.d.ts.map +1 -0
  287. package/dist/middleware/reflect/schema-validator.js +196 -0
  288. package/dist/middleware/reflect/schema-validator.js.map +1 -0
  289. package/dist/middleware/reflect/stage-audit-graph.d.ts +115 -0
  290. package/dist/middleware/reflect/stage-audit-graph.d.ts.map +1 -0
  291. package/dist/middleware/reflect/stage-audit-graph.js +563 -0
  292. package/dist/middleware/reflect/stage-audit-graph.js.map +1 -0
  293. package/dist/middleware/reflect/stage-d-resolve-graph.d.ts +87 -0
  294. package/dist/middleware/reflect/stage-d-resolve-graph.d.ts.map +1 -0
  295. package/dist/middleware/reflect/stage-d-resolve-graph.js +256 -0
  296. package/dist/middleware/reflect/stage-d-resolve-graph.js.map +1 -0
  297. package/dist/middleware/reflect/synthesizeFromSceneCard.d.ts +15 -0
  298. package/dist/middleware/reflect/synthesizeFromSceneCard.d.ts.map +1 -0
  299. package/dist/middleware/reflect/synthesizeFromSceneCard.js +91 -0
  300. package/dist/middleware/reflect/synthesizeFromSceneCard.js.map +1 -0
  301. package/dist/middleware/reflect/types.d.ts +261 -0
  302. package/dist/middleware/reflect/types.d.ts.map +1 -0
  303. package/dist/middleware/reflect/types.js +3 -0
  304. package/dist/middleware/reflect/types.js.map +1 -0
  305. package/dist/middleware/reflect/v2-integrate.d.ts +120 -0
  306. package/dist/middleware/reflect/v2-integrate.d.ts.map +1 -0
  307. package/dist/middleware/reflect/v2-integrate.js +388 -0
  308. package/dist/middleware/reflect/v2-integrate.js.map +1 -0
  309. package/dist/middleware/reflect/v2-judge.d.ts +44 -0
  310. package/dist/middleware/reflect/v2-judge.d.ts.map +1 -0
  311. package/dist/middleware/reflect/v2-judge.js +191 -0
  312. package/dist/middleware/reflect/v2-judge.js.map +1 -0
  313. package/dist/relation-sets.d.ts +2 -0
  314. package/dist/relation-sets.d.ts.map +1 -0
  315. package/dist/relation-sets.js +35 -0
  316. package/dist/relation-sets.js.map +1 -0
  317. package/dist/routes/__tests__/flags.test.d.ts +2 -0
  318. package/dist/routes/__tests__/flags.test.d.ts.map +1 -0
  319. package/dist/routes/__tests__/flags.test.js +257 -0
  320. package/dist/routes/__tests__/flags.test.js.map +1 -0
  321. package/dist/routes/__tests__/models-catalog.test.d.ts +2 -0
  322. package/dist/routes/__tests__/models-catalog.test.d.ts.map +1 -0
  323. package/dist/routes/__tests__/models-catalog.test.js +130 -0
  324. package/dist/routes/__tests__/models-catalog.test.js.map +1 -0
  325. package/dist/routes/__tests__/reflect-pause-drain.test.d.ts +2 -0
  326. package/dist/routes/__tests__/reflect-pause-drain.test.d.ts.map +1 -0
  327. package/dist/routes/__tests__/reflect-pause-drain.test.js +38 -0
  328. package/dist/routes/__tests__/reflect-pause-drain.test.js.map +1 -0
  329. package/dist/routes/__tests__/spend-pause-drain.test.d.ts +2 -0
  330. package/dist/routes/__tests__/spend-pause-drain.test.d.ts.map +1 -0
  331. package/dist/routes/__tests__/spend-pause-drain.test.js +38 -0
  332. package/dist/routes/__tests__/spend-pause-drain.test.js.map +1 -0
  333. package/dist/routes/admin.d.ts +49 -0
  334. package/dist/routes/admin.d.ts.map +1 -0
  335. package/dist/routes/admin.js +471 -0
  336. package/dist/routes/admin.js.map +1 -0
  337. package/dist/routes/blocks.d.ts +4 -0
  338. package/dist/routes/blocks.d.ts.map +1 -0
  339. package/dist/routes/blocks.js +893 -0
  340. package/dist/routes/blocks.js.map +1 -0
  341. package/dist/routes/chat-proxy.d.ts +5 -0
  342. package/dist/routes/chat-proxy.d.ts.map +1 -0
  343. package/dist/routes/chat-proxy.js +225 -0
  344. package/dist/routes/chat-proxy.js.map +1 -0
  345. package/dist/routes/conversations.d.ts +4 -0
  346. package/dist/routes/conversations.d.ts.map +1 -0
  347. package/dist/routes/conversations.js +139 -0
  348. package/dist/routes/conversations.js.map +1 -0
  349. package/dist/routes/flags.d.ts +4 -0
  350. package/dist/routes/flags.d.ts.map +1 -0
  351. package/dist/routes/flags.js +151 -0
  352. package/dist/routes/flags.js.map +1 -0
  353. package/dist/routes/inject.d.ts +4 -0
  354. package/dist/routes/inject.d.ts.map +1 -0
  355. package/dist/routes/inject.js +183 -0
  356. package/dist/routes/inject.js.map +1 -0
  357. package/dist/routes/mcp-http.d.ts +5 -0
  358. package/dist/routes/mcp-http.d.ts.map +1 -0
  359. package/dist/routes/mcp-http.js +94 -0
  360. package/dist/routes/mcp-http.js.map +1 -0
  361. package/dist/routes/quarantine.d.ts +4 -0
  362. package/dist/routes/quarantine.d.ts.map +1 -0
  363. package/dist/routes/quarantine.js +66 -0
  364. package/dist/routes/quarantine.js.map +1 -0
  365. package/dist/routes/recall.d.ts +5 -0
  366. package/dist/routes/recall.d.ts.map +1 -0
  367. package/dist/routes/recall.js +573 -0
  368. package/dist/routes/recall.js.map +1 -0
  369. package/dist/routes/reflect.d.ts +5 -0
  370. package/dist/routes/reflect.d.ts.map +1 -0
  371. package/dist/routes/reflect.js +231 -0
  372. package/dist/routes/reflect.js.map +1 -0
  373. package/dist/routes/session.d.ts +4 -0
  374. package/dist/routes/session.d.ts.map +1 -0
  375. package/dist/routes/session.js +418 -0
  376. package/dist/routes/session.js.map +1 -0
  377. package/dist/routes/state.d.ts +116 -0
  378. package/dist/routes/state.d.ts.map +1 -0
  379. package/dist/routes/state.js +621 -0
  380. package/dist/routes/state.js.map +1 -0
  381. package/dist/routes/usage.d.ts +3 -0
  382. package/dist/routes/usage.d.ts.map +1 -0
  383. package/dist/routes/usage.js +141 -0
  384. package/dist/routes/usage.js.map +1 -0
  385. package/dist/routes/workspace.d.ts +5 -0
  386. package/dist/routes/workspace.d.ts.map +1 -0
  387. package/dist/routes/workspace.js +435 -0
  388. package/dist/routes/workspace.js.map +1 -0
  389. package/dist/server.d.ts +13 -0
  390. package/dist/server.d.ts.map +1 -0
  391. package/dist/server.js +298 -0
  392. package/dist/server.js.map +1 -0
  393. package/dist/store/__tests__/backup.test.d.ts +2 -0
  394. package/dist/store/__tests__/backup.test.d.ts.map +1 -0
  395. package/dist/store/__tests__/backup.test.js +53 -0
  396. package/dist/store/__tests__/backup.test.js.map +1 -0
  397. package/dist/store/__tests__/quality.test.d.ts +2 -0
  398. package/dist/store/__tests__/quality.test.d.ts.map +1 -0
  399. package/dist/store/__tests__/quality.test.js +75 -0
  400. package/dist/store/__tests__/quality.test.js.map +1 -0
  401. package/dist/store/backup.d.ts +14 -0
  402. package/dist/store/backup.d.ts.map +1 -0
  403. package/dist/store/backup.js +95 -0
  404. package/dist/store/backup.js.map +1 -0
  405. package/dist/store/database.d.ts +407 -0
  406. package/dist/store/database.d.ts.map +1 -0
  407. package/dist/store/database.js +2004 -0
  408. package/dist/store/database.js.map +1 -0
  409. package/dist/store/quality.d.ts +25 -0
  410. package/dist/store/quality.d.ts.map +1 -0
  411. package/dist/store/quality.js +48 -0
  412. package/dist/store/quality.js.map +1 -0
  413. package/dist/tools/__tests__/assemble-block-chains.test.d.ts +2 -0
  414. package/dist/tools/__tests__/assemble-block-chains.test.d.ts.map +1 -0
  415. package/dist/tools/__tests__/assemble-block-chains.test.js +118 -0
  416. package/dist/tools/__tests__/assemble-block-chains.test.js.map +1 -0
  417. package/dist/tools/__tests__/filter-roots-by-concepts.test.d.ts +2 -0
  418. package/dist/tools/__tests__/filter-roots-by-concepts.test.d.ts.map +1 -0
  419. package/dist/tools/__tests__/filter-roots-by-concepts.test.js +68 -0
  420. package/dist/tools/__tests__/filter-roots-by-concepts.test.js.map +1 -0
  421. package/dist/tools/__tests__/flag-surface.test.d.ts +2 -0
  422. package/dist/tools/__tests__/flag-surface.test.d.ts.map +1 -0
  423. package/dist/tools/__tests__/flag-surface.test.js +130 -0
  424. package/dist/tools/__tests__/flag-surface.test.js.map +1 -0
  425. package/dist/tools/core.d.ts +5 -0
  426. package/dist/tools/core.d.ts.map +1 -0
  427. package/dist/tools/core.js +962 -0
  428. package/dist/tools/core.js.map +1 -0
  429. package/dist/tools/derive.d.ts +5 -0
  430. package/dist/tools/derive.d.ts.map +1 -0
  431. package/dist/tools/derive.js +182 -0
  432. package/dist/tools/derive.js.map +1 -0
  433. package/dist/tools/flag-surface.d.ts +26 -0
  434. package/dist/tools/flag-surface.d.ts.map +1 -0
  435. package/dist/tools/flag-surface.js +59 -0
  436. package/dist/tools/flag-surface.js.map +1 -0
  437. package/dist/tools/helpers.d.ts +99 -0
  438. package/dist/tools/helpers.d.ts.map +1 -0
  439. package/dist/tools/helpers.js +243 -0
  440. package/dist/tools/helpers.js.map +1 -0
  441. package/dist/tools/projects.d.ts +5 -0
  442. package/dist/tools/projects.d.ts.map +1 -0
  443. package/dist/tools/projects.js +175 -0
  444. package/dist/tools/projects.js.map +1 -0
  445. package/dist/tools/system.d.ts +5 -0
  446. package/dist/tools/system.d.ts.map +1 -0
  447. package/dist/tools/system.js +1361 -0
  448. package/dist/tools/system.js.map +1 -0
  449. package/dist/tools/tasks.d.ts +5 -0
  450. package/dist/tools/tasks.d.ts.map +1 -0
  451. package/dist/tools/tasks.js +289 -0
  452. package/dist/tools/tasks.js.map +1 -0
  453. package/package.json +69 -0
  454. package/scripts/nodedex-entry.mjs +396 -0
  455. package/tui-dist/App.js +185 -0
  456. package/tui-dist/api.js +197 -0
  457. package/tui-dist/cli.js +53 -0
  458. package/tui-dist/components.js +63 -0
  459. package/tui-dist/config.js +242 -0
  460. package/tui-dist/connect-snippets.js +98 -0
  461. package/tui-dist/feed.js +51 -0
  462. package/tui-dist/health.js +465 -0
  463. package/tui-dist/hooks.js +23 -0
  464. package/tui-dist/memory.js +220 -0
  465. package/tui-dist/onboarding.js +498 -0
  466. package/tui-dist/review.js +193 -0
  467. package/tui-dist/servers.js +556 -0
  468. package/tui-dist/smoke.js +15 -0
  469. package/tui-dist/theme.js +106 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pass2-quarantine.js","sourceRoot":"","sources":["../../../src/middleware/reflect/pass2-quarantine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,205 @@
1
+ import { DEMOTE_TARGETS, type SchemaCheckResult } from "./schema-validator.js";
2
+ import type { Pass2aResult } from "./pass2a.js";
3
+ import type { Pass2bResult } from "./pass2b.js";
4
+ import type { Pass2cResult } from "./pass2c.js";
5
+ import type { Pass2Result } from "./types.js";
6
+ /**
7
+ * Input to Seam α validation: a Pass 2 item AFTER 2a classified it AND 2b
8
+ * filled the unique{} fields. This is the data shape that exits 2b.
9
+ *
10
+ * Mirrors the relevant subset of `Pass2Item` but typed independently so the
11
+ * seam doesn't entangle with Pass 2 monolith types during migration.
12
+ */
13
+ export interface SeamAlphaItem {
14
+ id: string;
15
+ type: string;
16
+ unique: Record<string, unknown>;
17
+ /** Set when 2a flagged a novel type with its own schema — validator passes those through. */
18
+ schema?: Record<string, unknown>;
19
+ /** Retry counter — caller increments and reads. Validator uses it for verdict only. */
20
+ _seam_alpha_retries?: number;
21
+ }
22
+ /**
23
+ * Verdict returned by `validateSeamAlpha`. Three terminal outcomes:
24
+ *
25
+ * - `proceed` — schema valid; item moves to 2c
26
+ * - `route_back` — schema invalid AND retry budget remains; caller should
27
+ * re-run 2a with the failure detail and try again
28
+ * - `quarantine` — schema invalid AND retry exhausted; caller should write to
29
+ * quarantine and drop from the live pipeline
30
+ *
31
+ * The verdict carries the schema check result so the caller can build a
32
+ * `pass2b_failure_reason` string for quarantine without re-running validation.
33
+ */
34
+ export type SeamAlphaVerdict = {
35
+ kind: "proceed";
36
+ item: SeamAlphaItem;
37
+ } | {
38
+ kind: "route_back";
39
+ item: SeamAlphaItem;
40
+ failure: SchemaCheckResult;
41
+ failure_detail: string;
42
+ } | {
43
+ kind: "quarantine";
44
+ item: SeamAlphaItem;
45
+ failure: SchemaCheckResult;
46
+ failure_detail: string;
47
+ } | {
48
+ kind: "demote";
49
+ item: SeamAlphaItem;
50
+ new_type: string;
51
+ remapped_unique: Record<string, string>;
52
+ reason: string;
53
+ };
54
+ /**
55
+ * Maximum route-back retries before quarantine. ONE retry — per §3:
56
+ * "One retry max. Stop infinite loops with a retry counter."
57
+ *
58
+ * This is deliberately not configurable. Increasing it past 1 is a structural
59
+ * decision that requires a design revision, not a flag flip.
60
+ */
61
+ export declare const SEAM_ALPHA_MAX_RETRIES = 1;
62
+ /**
63
+ * DEMOTE_TARGETS — type re-targeting map for the demote-edge (2026-05-27, debt-3
64
+ * structural-small; see memory: project-insight-fact-typing-gap).
65
+ *
66
+ * Each row encodes a UNIVERSAL meaning-equivalence (per docs/reference/block-types.md
67
+ * definitions), NEVER a domain-specific heuristic. The gate for adding a row:
68
+ *
69
+ * "If type X's required field is genuinely unfillable AND the equivalent content
70
+ * is fillable as type Y, then 'X without that field' IS Y, by Y's definition."
71
+ *
72
+ * If you can't state that equivalence cleanly from the type definitions in
73
+ * block-types.md, the row doesn't belong here — that's a heuristic, not a
74
+ * universal, and §5 universal framing forbids it.
75
+ *
76
+ * Current rows:
77
+ * - insight → fact: An insight is `observation + implication` (block-types.md:205-213).
78
+ * A fact is `value + why_matters?` (line 187-200). An insight whose implication
79
+ * is unfillable while observation is present IS, BY DEFINITION, a fact whose
80
+ * `value` is that observation. The demote encodes this; it does not invent it.
81
+ */
82
+ export { DEMOTE_TARGETS };
83
+ /**
84
+ * Validate a single item at Seam α.
85
+ *
86
+ * - If `item.schema` is present (novel_type from 2a): pass through with `proceed`.
87
+ * Novel-type schemas are 2a's responsibility; Tier 1B doesn't validate them
88
+ * (no canonical schema to validate against).
89
+ * - Otherwise: run `validateUniqueSchema(item.type, item.unique)`. On OK →
90
+ * `proceed`. On failure → consult `_seam_alpha_retries`:
91
+ * 0 (or undefined) → `route_back` (one retry available)
92
+ * ≥ SEAM_ALPHA_MAX_RETRIES → `quarantine`
93
+ */
94
+ /**
95
+ * Validator options.
96
+ *
97
+ * `enable_demote` (2026-05-27, debt-3 structural-small): opt-in for the demote
98
+ * behavior. Default FALSE so existing callers (orchestrator, tests) keep their
99
+ * current contract — items that would previously quarantine still quarantine.
100
+ * Set to TRUE only by callers that handle the `demote` verdict (re-type item +
101
+ * route to proceed). Orchestrator gates this via env (`NODEDEX_SEAM_ALPHA_DEMOTE`).
102
+ *
103
+ * Pure-function discipline (charter rule 7): the option is a DETERMINISTIC
104
+ * INPUT, not env-reading inside the validator. Same inputs → same verdict.
105
+ */
106
+ export interface ValidateSeamAlphaOptions {
107
+ enable_demote?: boolean;
108
+ }
109
+ export declare function validateSeamAlpha(item: SeamAlphaItem, options?: ValidateSeamAlphaOptions): SeamAlphaVerdict;
110
+ /**
111
+ * Batch helper — runs `validateSeamAlpha` over an array, returning the items
112
+ * partitioned by verdict. Caller drives downstream handling.
113
+ *
114
+ * Pure function: does not write to any database or call any LLM.
115
+ */
116
+ export declare function validateSeamAlphaBatch(items: SeamAlphaItem[], options?: ValidateSeamAlphaOptions): {
117
+ proceed: Array<{
118
+ item: SeamAlphaItem;
119
+ }>;
120
+ route_back: Array<{
121
+ item: SeamAlphaItem;
122
+ failure: SchemaCheckResult;
123
+ failure_detail: string;
124
+ }>;
125
+ quarantine: Array<{
126
+ item: SeamAlphaItem;
127
+ failure: SchemaCheckResult;
128
+ failure_detail: string;
129
+ }>;
130
+ demote: Array<{
131
+ item: SeamAlphaItem;
132
+ new_type: string;
133
+ remapped_unique: Record<string, string>;
134
+ reason: string;
135
+ }>;
136
+ };
137
+ /**
138
+ * Snapshot of the fields 2c is FORBIDDEN to mutate (§1 contract):
139
+ * - type, unique, text, id
140
+ *
141
+ * Snapshot is taken before 2c runs; assertion is checked after 2c returns.
142
+ * Catches accidental mutation in 2c (a future contract violation will fail
143
+ * the assertion BEFORE the bad data ships downstream).
144
+ */
145
+ export interface SeamBetaSnapshot {
146
+ id: string;
147
+ type: string;
148
+ unique_json: string;
149
+ text: string;
150
+ }
151
+ export type SeamBetaInvariantResult = {
152
+ ok: true;
153
+ } | {
154
+ ok: false;
155
+ id: string;
156
+ violations: Array<{
157
+ field: string;
158
+ before: string;
159
+ after: string;
160
+ }>;
161
+ };
162
+ /**
163
+ * Take a snapshot of the read-only fields BEFORE handing to 2c.
164
+ */
165
+ export declare function snapshotForSeamBeta(item: {
166
+ id: string;
167
+ type: string;
168
+ unique: Record<string, unknown>;
169
+ text: string;
170
+ }): SeamBetaSnapshot;
171
+ /**
172
+ * Check that 2c did not mutate any read-only field. Returns ok or a list of
173
+ * violations naming each changed field.
174
+ */
175
+ export declare function checkSeamBetaInvariant(snapshot: SeamBetaSnapshot, after: {
176
+ id: string;
177
+ type: string;
178
+ unique: Record<string, unknown>;
179
+ text: string;
180
+ }): SeamBetaInvariantResult;
181
+ export interface ComposeInput {
182
+ /** Pass 2a output — items that survived Q0 dedup + Seam α validation */
183
+ pass2a: Pass2aResult;
184
+ /** Pass 2b per-item successes (failures handled upstream by quarantine path) */
185
+ pass2b_results: Pass2bResult[];
186
+ /** Pass 2c batch wiring output */
187
+ pass2c: Pass2cResult;
188
+ }
189
+ export type ComposeInconsistencyKind = "missing_pass2b_fill" | "missing_pass2c_wiring" | "orphan_pass2b" | "orphan_pass2c";
190
+ export interface ComposeInconsistency {
191
+ id: string;
192
+ kind: ComposeInconsistencyKind;
193
+ detail: string;
194
+ }
195
+ export interface ComposeOutput {
196
+ result: Pass2Result;
197
+ inconsistencies: ComposeInconsistency[];
198
+ }
199
+ /**
200
+ * Pure assembly function. Takes the three sub-pass outputs and produces the
201
+ * Pass2Result shape Pass 3 consumes. Surfaces structural inconsistencies as
202
+ * a separate array — never throws, never silently drops a classified item.
203
+ */
204
+ export declare function composeForDownstream(input: ComposeInput): ComposeOutput;
205
+ //# sourceMappingURL=pass2-seams.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pass2-seams.d.ts","sourceRoot":"","sources":["../../../src/middleware/reflect/pass2-seams.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,279 @@
1
+ // ═══════════════════════════════════════════════════════════════════════════════
2
+ // PASS 2 SEAMS — Week 1, debt #1 (2026-05-25)
3
+ //
4
+ // Role: Pure-function validators between the Pass 2 sub-passes.
5
+ // Per PASS2-SPLIT-DESIGN.md §3, this is where Tier 1B moves from
6
+ // save-time soft-flag to seam-time HARD CONTRACT.
7
+ //
8
+ // Seam α (2a → 2b → validate → 2c-or-quarantine):
9
+ // - 2a emits classified items (type, project, reasoning); 2b fills unique{}
10
+ // - This validator checks the type↔unique{} contract
11
+ // - On failure: caller may route back to 2a (one retry) or quarantine
12
+ //
13
+ // Seam β (2b → 2c):
14
+ // - 2c is forbidden to mutate type/unique/text/id (§1 contract)
15
+ // - This validator asserts the invariant before 2c runs
16
+ //
17
+ // What this module does NOT do:
18
+ // - It does NOT call any LLM (no `pass2a.ts` import; that's a separate file)
19
+ // - It does NOT write to the database directly (callers do, after deciding
20
+ // route-back vs quarantine vs proceed)
21
+ // - It does NOT contain prompt text
22
+ // - It does NOT decide retry policy beyond exposing the verdict — the
23
+ // orchestrator in pipeline.ts owns the retry counter
24
+ //
25
+ // Charter alignment:
26
+ // - Rule 6 (guards catch failure, never override success): a guard that
27
+ // REJECTS bad input is doing its job; a guard that silently passes bad
28
+ // input through is the failure mode this design exists to prevent
29
+ // - Rule 7 (determinism is local): seam validation is pure — same input,
30
+ // same verdict; LLM calls live elsewhere
31
+ // ═══════════════════════════════════════════════════════════════════════════════
32
+ import { validateUniqueSchema, DEMOTE_TARGETS } from "./schema-validator.js";
33
+ /**
34
+ * Maximum route-back retries before quarantine. ONE retry — per §3:
35
+ * "One retry max. Stop infinite loops with a retry counter."
36
+ *
37
+ * This is deliberately not configurable. Increasing it past 1 is a structural
38
+ * decision that requires a design revision, not a flag flip.
39
+ */
40
+ export const SEAM_ALPHA_MAX_RETRIES = 1;
41
+ /**
42
+ * DEMOTE_TARGETS — type re-targeting map for the demote-edge (2026-05-27, debt-3
43
+ * structural-small; see memory: project-insight-fact-typing-gap).
44
+ *
45
+ * Each row encodes a UNIVERSAL meaning-equivalence (per docs/reference/block-types.md
46
+ * definitions), NEVER a domain-specific heuristic. The gate for adding a row:
47
+ *
48
+ * "If type X's required field is genuinely unfillable AND the equivalent content
49
+ * is fillable as type Y, then 'X without that field' IS Y, by Y's definition."
50
+ *
51
+ * If you can't state that equivalence cleanly from the type definitions in
52
+ * block-types.md, the row doesn't belong here — that's a heuristic, not a
53
+ * universal, and §5 universal framing forbids it.
54
+ *
55
+ * Current rows:
56
+ * - insight → fact: An insight is `observation + implication` (block-types.md:205-213).
57
+ * A fact is `value + why_matters?` (line 187-200). An insight whose implication
58
+ * is unfillable while observation is present IS, BY DEFINITION, a fact whose
59
+ * `value` is that observation. The demote encodes this; it does not invent it.
60
+ */
61
+ // Relocated to schema-validator.ts (2026-06-12) so seam-α and the Tier-1B
62
+ // save-time demote share ONE source of truth. Re-exported here to preserve
63
+ // this module's public surface for existing importers.
64
+ export { DEMOTE_TARGETS };
65
+ export function validateSeamAlpha(item, options) {
66
+ // Novel-type bypass: 2a declared its own schema; this layer can't validate.
67
+ // The novel schema's fitness is a debt-3 concern (schema evolution), not a
68
+ // seam concern.
69
+ if (item.schema && Object.keys(item.schema).length > 0) {
70
+ return { kind: "proceed", item };
71
+ }
72
+ const check = validateUniqueSchema(item.type, item.unique);
73
+ if (check.ok) {
74
+ return { kind: "proceed", item };
75
+ }
76
+ const retries = item._seam_alpha_retries ?? 0;
77
+ // `detail` is always present on `ok: false` results per schema-validator.ts contract.
78
+ const failure_detail = check.detail;
79
+ if (retries >= SEAM_ALPHA_MAX_RETRIES) {
80
+ // Demote-edge (2026-05-27): conservative — only fires AFTER 2b's retry
81
+ // exhausted (let the retry try first), AND only when caller opted in via
82
+ // `enable_demote` (rule 2: callers that don't handle demote must not see
83
+ // it, else items disappear silently). If the type has a DEMOTE_TARGETS
84
+ // row AND all source fields in field_map are present in unique{}, the
85
+ // re-typing is structurally valid (per the universal meaning-equivalence
86
+ // each row encodes — see DEMOTE_TARGETS doc). "Present" mirrors
87
+ // schema-validator's definition: non-null, non-undefined, non-empty-string.
88
+ if (options?.enable_demote) {
89
+ const target = DEMOTE_TARGETS[item.type];
90
+ if (target) {
91
+ const unique = item.unique ?? {};
92
+ // Record<string, string> to match Pass2bResult.unique shape downstream.
93
+ // Non-string source values cause demote to abort (defensive: 2b only
94
+ // emits strings, but the seam item type is wider via SeamAlphaItem).
95
+ const remapped_unique = {};
96
+ let allSourcesPresent = true;
97
+ for (const [src, dst] of Object.entries(target.field_map)) {
98
+ const v = unique[src];
99
+ if (v === null || v === undefined) {
100
+ allSourcesPresent = false;
101
+ break;
102
+ }
103
+ if (typeof v !== "string") {
104
+ allSourcesPresent = false;
105
+ break;
106
+ }
107
+ if (v.trim() === "") {
108
+ allSourcesPresent = false;
109
+ break;
110
+ }
111
+ remapped_unique[dst] = v;
112
+ }
113
+ if (allSourcesPresent) {
114
+ const mapStr = Object.entries(target.field_map).map(([s, d]) => `${s}→${d}`).join(",");
115
+ const reason = `demote ${item.type}→${target.to}: ${failure_detail}; remapped {${mapStr}}`;
116
+ return { kind: "demote", item, new_type: target.to, remapped_unique, reason };
117
+ }
118
+ }
119
+ }
120
+ return { kind: "quarantine", item, failure: check, failure_detail };
121
+ }
122
+ return { kind: "route_back", item, failure: check, failure_detail };
123
+ }
124
+ /**
125
+ * Batch helper — runs `validateSeamAlpha` over an array, returning the items
126
+ * partitioned by verdict. Caller drives downstream handling.
127
+ *
128
+ * Pure function: does not write to any database or call any LLM.
129
+ */
130
+ export function validateSeamAlphaBatch(items, options) {
131
+ const result = { proceed: [], route_back: [], quarantine: [], demote: [] };
132
+ for (const item of items) {
133
+ const verdict = validateSeamAlpha(item, options);
134
+ if (verdict.kind === "proceed") {
135
+ result.proceed.push({ item: verdict.item });
136
+ }
137
+ else if (verdict.kind === "route_back") {
138
+ result.route_back.push({ item: verdict.item, failure: verdict.failure, failure_detail: verdict.failure_detail });
139
+ }
140
+ else if (verdict.kind === "demote") {
141
+ result.demote.push({ item: verdict.item, new_type: verdict.new_type, remapped_unique: verdict.remapped_unique, reason: verdict.reason });
142
+ }
143
+ else {
144
+ result.quarantine.push({ item: verdict.item, failure: verdict.failure, failure_detail: verdict.failure_detail });
145
+ }
146
+ }
147
+ return result;
148
+ }
149
+ /**
150
+ * Take a snapshot of the read-only fields BEFORE handing to 2c.
151
+ */
152
+ export function snapshotForSeamBeta(item) {
153
+ return {
154
+ id: item.id,
155
+ type: item.type,
156
+ unique_json: JSON.stringify(item.unique ?? {}),
157
+ text: item.text,
158
+ };
159
+ }
160
+ /**
161
+ * Check that 2c did not mutate any read-only field. Returns ok or a list of
162
+ * violations naming each changed field.
163
+ */
164
+ export function checkSeamBetaInvariant(snapshot, after) {
165
+ const violations = [];
166
+ if (snapshot.id !== after.id) {
167
+ violations.push({ field: "id", before: snapshot.id, after: after.id });
168
+ }
169
+ if (snapshot.type !== after.type) {
170
+ violations.push({ field: "type", before: snapshot.type, after: after.type });
171
+ }
172
+ const afterUniqueJson = JSON.stringify(after.unique ?? {});
173
+ if (snapshot.unique_json !== afterUniqueJson) {
174
+ violations.push({ field: "unique", before: snapshot.unique_json, after: afterUniqueJson });
175
+ }
176
+ if (snapshot.text !== after.text) {
177
+ violations.push({ field: "text", before: snapshot.text, after: after.text });
178
+ }
179
+ if (violations.length === 0)
180
+ return { ok: true };
181
+ return { ok: false, id: snapshot.id, violations };
182
+ }
183
+ /**
184
+ * Pure assembly function. Takes the three sub-pass outputs and produces the
185
+ * Pass2Result shape Pass 3 consumes. Surfaces structural inconsistencies as
186
+ * a separate array — never throws, never silently drops a classified item.
187
+ */
188
+ export function composeForDownstream(input) {
189
+ const { pass2a, pass2b_results, pass2c } = input;
190
+ const inconsistencies = [];
191
+ // Index 2b + 2c outputs by id for O(1) lookup per classified item.
192
+ const fillById = new Map();
193
+ for (const r of pass2b_results)
194
+ fillById.set(r.id, r);
195
+ const wiringById = new Map();
196
+ for (const w of pass2c.wiring)
197
+ wiringById.set(w.id, w);
198
+ // Track which 2b/2c entries get consumed so we can detect orphans.
199
+ const classifiedIds = new Set(pass2a.classified.map((c) => c.id));
200
+ const classified = pass2a.classified.map((c) => {
201
+ const fill = fillById.get(c.id);
202
+ const wiring = wiringById.get(c.id);
203
+ if (!fill) {
204
+ inconsistencies.push({
205
+ id: c.id,
206
+ kind: "missing_pass2b_fill",
207
+ detail: `classified item ${c.id} (type=${c.type}) has no Pass 2b result; composing with empty unique{}`,
208
+ });
209
+ }
210
+ if (!wiring) {
211
+ inconsistencies.push({
212
+ id: c.id,
213
+ kind: "missing_pass2c_wiring",
214
+ detail: `classified item ${c.id} (type=${c.type}) has no Pass 2c wiring; defaulting to empty triggered_by/based_on/relations`,
215
+ });
216
+ }
217
+ // Build the composed item. 2a fields pass through unchanged (read-only
218
+ // per Seam α contract). 2b fills unique. 2c fills the three wiring fields.
219
+ // Pass2Item requires triggered_by_items + based_on_items — default to []
220
+ // when wiring missing (matches pipeline.ts:773-774 monolith behavior).
221
+ const composed = {
222
+ id: c.id,
223
+ text: c.text,
224
+ type: c.type,
225
+ project: c.project,
226
+ unique: fill?.unique ?? {},
227
+ schema: c.schema,
228
+ triggered_by_items: wiring?.triggered_by ?? [],
229
+ based_on_items: wiring?.based_on ?? [],
230
+ extends_item: c.extends_item,
231
+ supersedes_ref: c.supersedes_ref,
232
+ resolved_ref: c.resolved_ref,
233
+ relations: wiring?.relations, // undefined if missing; consumers handle ?? []
234
+ review_reason: c.review_reason,
235
+ classification_reasoning: c.classification_reasoning,
236
+ source_type: c.source_type, // demote-edge provenance (e.g. "seam_demoted") → blocks.source_type at save
237
+ excerpt: c.excerpt, // DEBT 5 D3 (§2.3.2): line-level provenance pinned from Pass 1 → carried through 2a re-join → Pass 3 persists to blocks.source_excerpt
238
+ };
239
+ return composed;
240
+ });
241
+ // Orphan detection — 2b/2c emitted ids not in classified[].
242
+ for (const r of pass2b_results) {
243
+ if (!classifiedIds.has(r.id)) {
244
+ inconsistencies.push({
245
+ id: r.id,
246
+ kind: "orphan_pass2b",
247
+ detail: `Pass 2b emitted fill for unknown item ${r.id}; not in classified[]`,
248
+ });
249
+ }
250
+ }
251
+ for (const w of pass2c.wiring) {
252
+ if (!classifiedIds.has(w.id)) {
253
+ inconsistencies.push({
254
+ id: w.id,
255
+ kind: "orphan_pass2c",
256
+ detail: `Pass 2c emitted wiring for unknown item ${w.id}; not in classified[]`,
257
+ });
258
+ }
259
+ }
260
+ // Legacy top-level causal_wiring[] — duplicates triggered_by_items/based_on_items
261
+ // for consumers that read the monolith schema's separate array (defense in
262
+ // depth; the existing graft at pipeline.ts:761-777 reads it).
263
+ const causal_wiring = classified
264
+ .filter((c) => (c.triggered_by_items?.length ?? 0) > 0 || (c.based_on_items?.length ?? 0) > 0)
265
+ .map((c) => ({
266
+ item_id: c.id,
267
+ triggered_by: c.triggered_by_items ?? [],
268
+ based_on: c.based_on_items ?? [],
269
+ }));
270
+ return {
271
+ result: {
272
+ skipped: pass2a.skipped,
273
+ classified,
274
+ causal_wiring,
275
+ },
276
+ inconsistencies,
277
+ };
278
+ }
279
+ //# sourceMappingURL=pass2-seams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pass2-seams.js","sourceRoot":"","sources":["../../../src/middleware/reflect/pass2-seams.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import type { WorkspaceDB } from "../../store/database.js";
2
+ import type { LLMProvider } from "../../engine/ai-provider.js";
3
+ import type { Pass1Item, Pass2Result } from "./types.js";
4
+ export interface Pass2SplitResult {
5
+ result: Pass2Result | null;
6
+ thinking: string;
7
+ rateLimited: boolean;
8
+ model?: string;
9
+ attempts?: Array<{
10
+ model: string;
11
+ outcome: string;
12
+ }>;
13
+ splitAudit?: {
14
+ pass2a_items_in: number;
15
+ pass2a_classified: number;
16
+ pass2a_skipped: number;
17
+ pass2b_filled: number;
18
+ pass2b_failed: number;
19
+ seam_alpha_proceed: number;
20
+ seam_alpha_route_back: number;
21
+ refill_attempted: number;
22
+ refill_salvaged: number;
23
+ seam_alpha_quarantine: number;
24
+ demote_enabled: boolean;
25
+ seam_alpha_demoted: number;
26
+ demoted_breakdown: Record<string, number>;
27
+ seam_beta_violations: number;
28
+ pass2c_wired: number;
29
+ quarantine_writes: number;
30
+ compose_inconsistencies: number;
31
+ };
32
+ }
33
+ export declare function runPass2Split(provider: LLMProvider, db: WorkspaceDB, pass1Items: Pass1Item[], projectContext: string, prevEntityMap: Array<{
34
+ reference: string;
35
+ resolved_to: string;
36
+ }>, thinkingBudget: number, sceneCard: string | undefined, sourceSessionId: string): Promise<Pass2SplitResult>;
37
+ //# sourceMappingURL=pass2-split-orchestrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pass2-split-orchestrator.d.ts","sourceRoot":"","sources":["../../../src/middleware/reflect/pass2-split-orchestrator.ts"],"names":[],"mappings":"AAiEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA2BzD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAErD,UAAU,CAAC,EAAE;QACX,eAAe,EAAW,MAAM,CAAC;QACjC,iBAAiB,EAAS,MAAM,CAAC;QACjC,cAAc,EAAY,MAAM,CAAC;QACjC,aAAa,EAAa,MAAM,CAAC;QACjC,aAAa,EAAa,MAAM,CAAC;QACjC,kBAAkB,EAAQ,MAAM,CAAC;QACjC,qBAAqB,EAAK,MAAM,CAAC;QACjC,gBAAgB,EAAU,MAAM,CAAC;QACjC,eAAe,EAAW,MAAM,CAAC;QACjC,qBAAqB,EAAK,MAAM,CAAC;QAOjC,cAAc,EAAY,OAAO,CAAC;QAClC,kBAAkB,EAAQ,MAAM,CAAC;QACjC,iBAAiB,EAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjD,oBAAoB,EAAM,MAAM,CAAC;QACjC,YAAY,EAAc,MAAM,CAAC;QACjC,iBAAiB,EAAS,MAAM,CAAC;QACjC,uBAAuB,EAAG,MAAM,CAAC;KAClC,CAAC;CACH;AAQD,wBAAsB,aAAa,CACjC,QAAQ,EAAE,WAAW,EACrB,EAAE,EAAE,WAAW,EACf,UAAU,EAAE,SAAS,EAAE,EACvB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,KAAK,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC,EAChE,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAqe3B"}