@isaacriehm/cairn-core 0.6.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/align-undo/undo.js +2 -2
  3. package/dist/align-undo/undo.js.map +1 -1
  4. package/dist/attention/bulk-accept.js +104 -55
  5. package/dist/attention/bulk-accept.js.map +1 -1
  6. package/dist/attention/dedup.js +23 -10
  7. package/dist/attention/dedup.js.map +1 -1
  8. package/dist/attention/restore.js +2 -2
  9. package/dist/attention/restore.js.map +1 -1
  10. package/dist/attention/scoring.js +1 -1
  11. package/dist/attention/scoring.js.map +1 -1
  12. package/dist/attention/serve/api.d.ts +1 -0
  13. package/dist/attention/serve/api.js +130 -77
  14. package/dist/attention/serve/api.js.map +1 -1
  15. package/dist/attention/serve/index.d.ts +1 -0
  16. package/dist/attention/serve/index.js +21 -7
  17. package/dist/attention/serve/index.js.map +1 -1
  18. package/dist/attention/source-strip.js +41 -46
  19. package/dist/attention/source-strip.js.map +1 -1
  20. package/dist/claude/cache.d.ts +10 -19
  21. package/dist/claude/cache.js +0 -0
  22. package/dist/claude/cache.js.map +1 -1
  23. package/dist/claude/runner.d.ts +4 -6
  24. package/dist/claude/runner.js +242 -203
  25. package/dist/claude/runner.js.map +1 -1
  26. package/dist/claude/types.d.ts +5 -5
  27. package/dist/context/handoff-builder.d.ts +28 -4
  28. package/dist/context/handoff-builder.js +75 -157
  29. package/dist/context/handoff-builder.js.map +1 -1
  30. package/dist/context/spec-delta.js +61 -9
  31. package/dist/context/spec-delta.js.map +1 -1
  32. package/dist/context/task-summary.js +5 -1
  33. package/dist/context/task-summary.js.map +1 -1
  34. package/dist/decision-capture/id.js +1 -1
  35. package/dist/decision-capture/id.js.map +1 -1
  36. package/dist/doctor/index.d.ts +9 -11
  37. package/dist/doctor/index.js +118 -175
  38. package/dist/doctor/index.js.map +1 -1
  39. package/dist/drain/drain.d.ts +1 -1
  40. package/dist/drain/drain.js +16 -16
  41. package/dist/drain/drain.js.map +1 -1
  42. package/dist/drain/index.d.ts +1 -1
  43. package/dist/drain/index.js +1 -1
  44. package/dist/events/reader.d.ts +9 -10
  45. package/dist/events/reader.js +46 -57
  46. package/dist/events/reader.js.map +1 -1
  47. package/dist/events/writer.js +1 -1
  48. package/dist/events/writer.js.map +1 -1
  49. package/dist/fix-align/index.d.ts +1 -1
  50. package/dist/fix-align/index.js +1 -1
  51. package/dist/fix-align/run.d.ts +1 -1
  52. package/dist/fix-align/run.js +4 -3
  53. package/dist/fix-align/run.js.map +1 -1
  54. package/dist/fix-align/sentinel.d.ts +1 -2
  55. package/dist/fix-align/sentinel.js +3 -4
  56. package/dist/fix-align/sentinel.js.map +1 -1
  57. package/dist/gc/apply.js +1 -1
  58. package/dist/gc/apply.js.map +1 -1
  59. package/dist/gc/attested-commits.d.ts +19 -0
  60. package/dist/gc/attested-commits.js +48 -0
  61. package/dist/gc/attested-commits.js.map +1 -0
  62. package/dist/gc/canary.d.ts +11 -21
  63. package/dist/gc/canary.js +18 -24
  64. package/dist/gc/canary.js.map +1 -1
  65. package/dist/gc/citation-integrity.d.ts +11 -14
  66. package/dist/gc/citation-integrity.js +124 -125
  67. package/dist/gc/citation-integrity.js.map +1 -1
  68. package/dist/gc/classify.d.ts +1 -1
  69. package/dist/gc/classify.js +2 -2
  70. package/dist/gc/classify.js.map +1 -1
  71. package/dist/gc/completion-integrity.d.ts +6 -7
  72. package/dist/gc/completion-integrity.js +45 -53
  73. package/dist/gc/completion-integrity.js.map +1 -1
  74. package/dist/gc/doc-gardening.js +1 -9
  75. package/dist/gc/doc-gardening.js.map +1 -1
  76. package/dist/gc/frontmatter.js +2 -2
  77. package/dist/gc/frontmatter.js.map +1 -1
  78. package/dist/gc/index.d.ts +7 -6
  79. package/dist/gc/index.js +3 -2
  80. package/dist/gc/index.js.map +1 -1
  81. package/dist/gc/quality-update.d.ts +6 -10
  82. package/dist/gc/quality-update.js +12 -15
  83. package/dist/gc/quality-update.js.map +1 -1
  84. package/dist/gc/scope-coverage.js +1 -1
  85. package/dist/gc/scope-coverage.js.map +1 -1
  86. package/dist/gc/stub-hits.d.ts +7 -25
  87. package/dist/gc/stub-hits.js +14 -40
  88. package/dist/gc/stub-hits.js.map +1 -1
  89. package/dist/gc/sweep.js +15 -6
  90. package/dist/gc/sweep.js.map +1 -1
  91. package/dist/gc/types.d.ts +5 -5
  92. package/dist/gc/types.js +2 -2
  93. package/dist/gc/walk-source.js +8 -28
  94. package/dist/gc/walk-source.js.map +1 -1
  95. package/dist/hooks/defer.d.ts +9 -20
  96. package/dist/hooks/defer.js +10 -27
  97. package/dist/hooks/defer.js.map +1 -1
  98. package/dist/hooks/post-tool-use/allowlist-reader.d.ts +2 -1
  99. package/dist/hooks/post-tool-use/allowlist-reader.js +49 -34
  100. package/dist/hooks/post-tool-use/allowlist-reader.js.map +1 -1
  101. package/dist/hooks/post-tool-use/index.d.ts +3 -4
  102. package/dist/hooks/post-tool-use/index.js +3 -3
  103. package/dist/hooks/post-tool-use/index.js.map +1 -1
  104. package/dist/hooks/post-tool-use/legend-builder.d.ts +11 -2
  105. package/dist/hooks/post-tool-use/legend-builder.js +27 -2
  106. package/dist/hooks/post-tool-use/legend-builder.js.map +1 -1
  107. package/dist/hooks/post-tool-use/post-write.d.ts +8 -0
  108. package/dist/hooks/post-tool-use/post-write.js +112 -0
  109. package/dist/hooks/post-tool-use/post-write.js.map +1 -0
  110. package/dist/hooks/post-tool-use/read-enricher.d.ts +10 -5
  111. package/dist/hooks/post-tool-use/read-enricher.js +114 -149
  112. package/dist/hooks/post-tool-use/read-enricher.js.map +1 -1
  113. package/dist/hooks/post-tool-use/sot-align.d.ts +12 -0
  114. package/dist/hooks/post-tool-use/sot-align.js +73 -49
  115. package/dist/hooks/post-tool-use/sot-align.js.map +1 -1
  116. package/dist/hooks/post-tool-use/write-guardian.d.ts +40 -8
  117. package/dist/hooks/post-tool-use/write-guardian.js +202 -254
  118. package/dist/hooks/post-tool-use/write-guardian.js.map +1 -1
  119. package/dist/hooks/pre-commit/sot-align-precommit.js +2 -2
  120. package/dist/hooks/pre-commit/sot-align-precommit.js.map +1 -1
  121. package/dist/hooks/runners/index.d.ts +2 -2
  122. package/dist/hooks/runners/index.js +1 -1
  123. package/dist/hooks/runners/index.js.map +1 -1
  124. package/dist/hooks/runners/payload.d.ts +34 -19
  125. package/dist/hooks/runners/payload.js +47 -44
  126. package/dist/hooks/runners/payload.js.map +1 -1
  127. package/dist/hooks/runners/session-end.js +12 -11
  128. package/dist/hooks/runners/session-end.js.map +1 -1
  129. package/dist/hooks/runners/session-start.d.ts +4 -2
  130. package/dist/hooks/runners/session-start.js +88 -261
  131. package/dist/hooks/runners/session-start.js.map +1 -1
  132. package/dist/hooks/runners/stop.js +27 -8
  133. package/dist/hooks/runners/stop.js.map +1 -1
  134. package/dist/hooks/runners/user-prompt-submit.js +7 -1
  135. package/dist/hooks/runners/user-prompt-submit.js.map +1 -1
  136. package/dist/hooks/sot-align-common.d.ts +1 -2
  137. package/dist/hooks/sot-align-common.js +2 -2
  138. package/dist/hooks/sot-align-common.js.map +1 -1
  139. package/dist/index.d.ts +1 -1
  140. package/dist/index.js +12 -3
  141. package/dist/index.js.map +1 -1
  142. package/dist/init/baseline-audit.d.ts +14 -58
  143. package/dist/init/baseline-audit.js +92 -320
  144. package/dist/init/baseline-audit.js.map +1 -1
  145. package/dist/init/brand-derive.d.ts +11 -15
  146. package/dist/init/brand-derive.js +21 -46
  147. package/dist/init/brand-derive.js.map +1 -1
  148. package/dist/init/brand-setup.d.ts +1 -1
  149. package/dist/init/brand-setup.js +1 -1
  150. package/dist/init/detect.d.ts +25 -6
  151. package/dist/init/detect.js +107 -136
  152. package/dist/init/detect.js.map +1 -1
  153. package/dist/init/index.d.ts +4 -4
  154. package/dist/init/index.js +2 -2
  155. package/dist/init/index.js.map +1 -1
  156. package/dist/init/ingest-docs.d.ts +83 -23
  157. package/dist/init/ingest-docs.js +648 -136
  158. package/dist/init/ingest-docs.js.map +1 -1
  159. package/dist/init/init.d.ts +29 -20
  160. package/dist/init/init.js +132 -290
  161. package/dist/init/init.js.map +1 -1
  162. package/dist/init/mapper-merge.js +1 -1
  163. package/dist/init/mapper-merge.js.map +1 -1
  164. package/dist/init/mapper-parallel.d.ts +1 -1
  165. package/dist/init/mapper-parallel.js +10 -1
  166. package/dist/init/mapper-parallel.js.map +1 -1
  167. package/dist/init/mapper.js +1 -1
  168. package/dist/init/mapper.js.map +1 -1
  169. package/dist/init/multi-dev/install.d.ts +5 -5
  170. package/dist/init/multi-dev/install.js +4 -4
  171. package/dist/init/overlay.js +1 -0
  172. package/dist/init/overlay.js.map +1 -1
  173. package/dist/init/phases/1-detect.js +1 -1
  174. package/dist/init/phases/1-detect.js.map +1 -1
  175. package/dist/init/phases/{7c-rules-merge.d.ts → 10-rules-merge.d.ts} +2 -2
  176. package/dist/init/phases/{7c-rules-merge.js → 10-rules-merge.js} +6 -12
  177. package/dist/init/phases/10-rules-merge.js.map +1 -0
  178. package/dist/init/phases/11-baseline.d.ts +7 -0
  179. package/dist/init/phases/{8-baseline.js → 11-baseline.js} +5 -9
  180. package/dist/init/phases/11-baseline.js.map +1 -0
  181. package/dist/init/phases/12-strip.d.ts +10 -0
  182. package/dist/init/phases/{10-strip.js → 12-strip.js} +10 -14
  183. package/dist/init/phases/12-strip.js.map +1 -0
  184. package/dist/init/phases/{12-multidev.d.ts → 13-multidev.d.ts} +2 -2
  185. package/dist/init/phases/{12-multidev.js → 13-multidev.js} +4 -4
  186. package/dist/init/phases/{12-multidev.js.map → 13-multidev.js.map} +1 -1
  187. package/dist/init/phases/3-mapper.d.ts +1 -1
  188. package/dist/init/phases/3-mapper.js +2 -2
  189. package/dist/init/phases/3-mapper.js.map +1 -1
  190. package/dist/init/phases/{3b-seed.d.ts → 4-seed.d.ts} +2 -2
  191. package/dist/init/phases/{3b-seed.js → 4-seed.js} +7 -7
  192. package/dist/init/phases/4-seed.js.map +1 -0
  193. package/dist/init/phases/{4-pilot.d.ts → 5-pilot.d.ts} +2 -2
  194. package/dist/init/phases/{4-pilot.js → 5-pilot.js} +9 -9
  195. package/dist/init/phases/{4-pilot.js.map → 5-pilot.js.map} +1 -1
  196. package/dist/init/phases/{5-brand.d.ts → 6-brand.d.ts} +2 -7
  197. package/dist/init/phases/{5-brand.js → 6-brand.js} +6 -14
  198. package/dist/init/phases/6-brand.js.map +1 -0
  199. package/dist/init/phases/{5b-topic-index.d.ts → 7-topic-index.d.ts} +2 -11
  200. package/dist/init/phases/{5b-topic-index.js → 7-topic-index.js} +9 -18
  201. package/dist/init/phases/7-topic-index.js.map +1 -0
  202. package/dist/init/phases/8-docs-ingest.d.ts +10 -0
  203. package/dist/init/phases/{6-docs-ingest.js → 8-docs-ingest.js} +12 -14
  204. package/dist/init/phases/8-docs-ingest.js.map +1 -0
  205. package/dist/init/phases/9-source-comments.d.ts +6 -0
  206. package/dist/init/phases/{7b-source-comments.js → 9-source-comments.js} +7 -26
  207. package/dist/init/phases/9-source-comments.js.map +1 -0
  208. package/dist/init/phases/index.d.ts +12 -12
  209. package/dist/init/phases/index.js +11 -11
  210. package/dist/init/phases/index.js.map +1 -1
  211. package/dist/init/phases/{parallel-678.d.ts → parallel-8910.d.ts} +7 -8
  212. package/dist/init/phases/{parallel-678.js → parallel-8910.js} +34 -46
  213. package/dist/init/phases/parallel-8910.js.map +1 -0
  214. package/dist/init/phases/source-comments-output-io.d.ts +3 -3
  215. package/dist/init/phases/source-comments-output-io.js +3 -3
  216. package/dist/init/phases/types.d.ts +1 -1
  217. package/dist/init/phases/types.js +10 -10
  218. package/dist/init/phases/types.js.map +1 -1
  219. package/dist/init/rules-merge/discover.d.ts +2 -2
  220. package/dist/init/rules-merge/discover.js +28 -43
  221. package/dist/init/rules-merge/discover.js.map +1 -1
  222. package/dist/init/rules-merge/ingest.d.ts +6 -6
  223. package/dist/init/rules-merge/ingest.js +9 -10
  224. package/dist/init/rules-merge/ingest.js.map +1 -1
  225. package/dist/init/rules-merge/keep-markers.d.ts +1 -1
  226. package/dist/init/rules-merge/keep-markers.js +1 -1
  227. package/dist/init/rules-merge/regenerate.d.ts +3 -3
  228. package/dist/init/rules-merge/regenerate.js +3 -3
  229. package/dist/init/seed.js +17 -24
  230. package/dist/init/seed.js.map +1 -1
  231. package/dist/init/sot-emit.d.ts +48 -8
  232. package/dist/init/sot-emit.js +88 -10
  233. package/dist/init/sot-emit.js.map +1 -1
  234. package/dist/init/source-comments/classify.d.ts +2 -2
  235. package/dist/init/source-comments/classify.js +9 -1
  236. package/dist/init/source-comments/classify.js.map +1 -1
  237. package/dist/init/source-comments/index.d.ts +1 -1
  238. package/dist/init/source-comments/index.js.map +1 -1
  239. package/dist/init/source-comments/ingest.d.ts +2 -2
  240. package/dist/init/source-comments/ingest.js +110 -12
  241. package/dist/init/source-comments/ingest.js.map +1 -1
  242. package/dist/init/source-comments/strip-replace.js +3 -2
  243. package/dist/init/source-comments/strip-replace.js.map +1 -1
  244. package/dist/init/source-comments/walker.d.ts +3 -26
  245. package/dist/init/source-comments/walker.js +18 -30
  246. package/dist/init/source-comments/walker.js.map +1 -1
  247. package/dist/init/topic-index/index.d.ts +15 -1
  248. package/dist/init/topic-index/index.js +84 -5
  249. package/dist/init/topic-index/index.js.map +1 -1
  250. package/dist/init/topic-index/judge.d.ts +5 -9
  251. package/dist/init/topic-index/judge.js +25 -17
  252. package/dist/init/topic-index/judge.js.map +1 -1
  253. package/dist/init/topic-index/resolve.d.ts +23 -3
  254. package/dist/init/topic-index/resolve.js +102 -16
  255. package/dist/init/topic-index/resolve.js.map +1 -1
  256. package/dist/init/topic-index/walk.d.ts +36 -4
  257. package/dist/init/topic-index/walk.js +78 -12
  258. package/dist/init/topic-index/walk.js.map +1 -1
  259. package/dist/lock.js +4 -1
  260. package/dist/lock.js.map +1 -1
  261. package/dist/logger.js +3 -0
  262. package/dist/logger.js.map +1 -1
  263. package/dist/mcp/history/summarizer.js +6 -1
  264. package/dist/mcp/history/summarizer.js.map +1 -1
  265. package/dist/mcp/history/walker.js +1 -1
  266. package/dist/mcp/history/walker.js.map +1 -1
  267. package/dist/mcp/path-allowlist.js +1 -1
  268. package/dist/mcp/path-allowlist.js.map +1 -1
  269. package/dist/mcp/schemas.d.ts +47 -21
  270. package/dist/mcp/schemas.js +38 -9
  271. package/dist/mcp/schemas.js.map +1 -1
  272. package/dist/mcp/server.js +10 -0
  273. package/dist/mcp/server.js.map +1 -1
  274. package/dist/mcp/tools/archive.js +1 -1
  275. package/dist/mcp/tools/archive.js.map +1 -1
  276. package/dist/mcp/tools/attention-wait.js +12 -2
  277. package/dist/mcp/tools/attention-wait.js.map +1 -1
  278. package/dist/mcp/tools/bulk-accept-attention.js +29 -30
  279. package/dist/mcp/tools/bulk-accept-attention.js.map +1 -1
  280. package/dist/mcp/tools/canonical-for-topic.js +37 -15
  281. package/dist/mcp/tools/canonical-for-topic.js.map +1 -1
  282. package/dist/mcp/tools/decision-get.js +2 -2
  283. package/dist/mcp/tools/decision-get.js.map +1 -1
  284. package/dist/mcp/tools/decisions-for-symbol.js +2 -2
  285. package/dist/mcp/tools/decisions-for-symbol.js.map +1 -1
  286. package/dist/mcp/tools/get-full.js +1 -1
  287. package/dist/mcp/tools/get-full.js.map +1 -1
  288. package/dist/mcp/tools/ground-get.js +1 -1
  289. package/dist/mcp/tools/ground-get.js.map +1 -1
  290. package/dist/mcp/tools/in-scope.d.ts +8 -0
  291. package/dist/mcp/tools/in-scope.js +125 -0
  292. package/dist/mcp/tools/in-scope.js.map +1 -0
  293. package/dist/mcp/tools/index.js +11 -6
  294. package/dist/mcp/tools/index.js.map +1 -1
  295. package/dist/mcp/tools/init-phases.d.ts +3 -2
  296. package/dist/mcp/tools/init-phases.js +125 -124
  297. package/dist/mcp/tools/init-phases.js.map +1 -1
  298. package/dist/mcp/tools/invariant-get.js +2 -2
  299. package/dist/mcp/tools/invariant-get.js.map +1 -1
  300. package/dist/mcp/tools/record-decision.d.ts +4 -3
  301. package/dist/mcp/tools/record-decision.js +111 -36
  302. package/dist/mcp/tools/record-decision.js.map +1 -1
  303. package/dist/mcp/tools/reject-candidate.d.ts +24 -0
  304. package/dist/mcp/tools/reject-candidate.js +71 -0
  305. package/dist/mcp/tools/reject-candidate.js.map +1 -0
  306. package/dist/mcp/tools/resolve-attention.d.ts +5 -18
  307. package/dist/mcp/tools/resolve-attention.js +58 -158
  308. package/dist/mcp/tools/resolve-attention.js.map +1 -1
  309. package/dist/mcp/tools/search-candidates.d.ts +20 -0
  310. package/dist/mcp/tools/search-candidates.js +93 -0
  311. package/dist/mcp/tools/search-candidates.js.map +1 -0
  312. package/dist/mcp/tools/search.js +5 -4
  313. package/dist/mcp/tools/search.js.map +1 -1
  314. package/dist/mcp/tools/supersedes-chain.js +2 -2
  315. package/dist/mcp/tools/supersedes-chain.js.map +1 -1
  316. package/dist/mcp/tools/task-create.d.ts +1 -0
  317. package/dist/mcp/tools/task-create.js +2 -0
  318. package/dist/mcp/tools/task-create.js.map +1 -1
  319. package/dist/mcp/tools/timeline.js +1 -1
  320. package/dist/mcp/tools/timeline.js.map +1 -1
  321. package/dist/mcp/tools/types.d.ts +1 -0
  322. package/dist/mcp/tools/types.js +9 -1
  323. package/dist/mcp/tools/types.js.map +1 -1
  324. package/dist/sensors/attestation.d.ts +1 -1
  325. package/dist/sensors/attestation.js +2 -2
  326. package/dist/sensors/attestation.js.map +1 -1
  327. package/dist/sensors/catalog.d.ts +26 -28
  328. package/dist/sensors/catalog.js +79 -81
  329. package/dist/sensors/catalog.js.map +1 -1
  330. package/dist/sensors/decisions.d.ts +1 -1
  331. package/dist/sensors/decisions.js +15 -14
  332. package/dist/sensors/decisions.js.map +1 -1
  333. package/dist/sensors/diff.js +46 -22
  334. package/dist/sensors/diff.js.map +1 -1
  335. package/dist/sensors/runner.d.ts +2 -2
  336. package/dist/sensors/runner.js +3 -3
  337. package/dist/sensors/shell.d.ts +4 -0
  338. package/dist/sensors/shell.js +16 -0
  339. package/dist/sensors/shell.js.map +1 -0
  340. package/dist/sensors/structural.d.ts +3 -2
  341. package/dist/sensors/structural.js +3 -11
  342. package/dist/sensors/structural.js.map +1 -1
  343. package/dist/sensors/stub-catalog.d.ts +2 -1
  344. package/dist/sensors/stub-catalog.js +2 -9
  345. package/dist/sensors/stub-catalog.js.map +1 -1
  346. package/dist/sensors/types.d.ts +3 -4
  347. package/dist/sensors/types.js +1 -2
  348. package/dist/sensors/types.js.map +1 -1
  349. package/dist/session-start/build.js +1 -1
  350. package/dist/session-start/build.js.map +1 -1
  351. package/dist/status-line/event-queue.js +1 -1
  352. package/dist/status-line/index.d.ts +1 -1
  353. package/package.json +3 -2
  354. package/templates/.cairn/config/sensors.yaml +8 -8
  355. package/templates/attention-ui/app.js +101 -39
  356. package/dist/fs.d.ts +0 -5
  357. package/dist/fs.js +0 -11
  358. package/dist/fs.js.map +0 -1
  359. package/dist/ground/alignment-pending.d.ts +0 -28
  360. package/dist/ground/alignment-pending.js +0 -83
  361. package/dist/ground/alignment-pending.js.map +0 -1
  362. package/dist/ground/anchor-map.d.ts +0 -14
  363. package/dist/ground/anchor-map.js +0 -56
  364. package/dist/ground/anchor-map.js.map +0 -1
  365. package/dist/ground/drift.d.ts +0 -8
  366. package/dist/ground/drift.js +0 -23
  367. package/dist/ground/drift.js.map +0 -1
  368. package/dist/ground/frontmatter.d.ts +0 -32
  369. package/dist/ground/frontmatter.js +0 -77
  370. package/dist/ground/frontmatter.js.map +0 -1
  371. package/dist/ground/glob.d.ts +0 -10
  372. package/dist/ground/glob.js +0 -46
  373. package/dist/ground/glob.js.map +0 -1
  374. package/dist/ground/index.d.ts +0 -23
  375. package/dist/ground/index.js +0 -17
  376. package/dist/ground/index.js.map +0 -1
  377. package/dist/ground/ledgers.d.ts +0 -14
  378. package/dist/ground/ledgers.js +0 -105
  379. package/dist/ground/ledgers.js.map +0 -1
  380. package/dist/ground/manifest.d.ts +0 -10
  381. package/dist/ground/manifest.js +0 -84
  382. package/dist/ground/manifest.js.map +0 -1
  383. package/dist/ground/paths.d.ts +0 -41
  384. package/dist/ground/paths.js +0 -103
  385. package/dist/ground/paths.js.map +0 -1
  386. package/dist/ground/quality-grades.d.ts +0 -11
  387. package/dist/ground/quality-grades.js +0 -100
  388. package/dist/ground/quality-grades.js.map +0 -1
  389. package/dist/ground/schemas.d.ts +0 -502
  390. package/dist/ground/schemas.js +0 -318
  391. package/dist/ground/schemas.js.map +0 -1
  392. package/dist/ground/scope-index.d.ts +0 -96
  393. package/dist/ground/scope-index.js +0 -290
  394. package/dist/ground/scope-index.js.map +0 -1
  395. package/dist/ground/slug.d.ts +0 -60
  396. package/dist/ground/slug.js +0 -103
  397. package/dist/ground/slug.js.map +0 -1
  398. package/dist/ground/sot-bindings.d.ts +0 -14
  399. package/dist/ground/sot-bindings.js +0 -79
  400. package/dist/ground/sot-bindings.js.map +0 -1
  401. package/dist/ground/sot-cache.d.ts +0 -18
  402. package/dist/ground/sot-cache.js +0 -62
  403. package/dist/ground/sot-cache.js.map +0 -1
  404. package/dist/ground/topic-index.d.ts +0 -27
  405. package/dist/ground/topic-index.js +0 -82
  406. package/dist/ground/topic-index.js.map +0 -1
  407. package/dist/ground/walk.d.ts +0 -7
  408. package/dist/ground/walk.js +0 -53
  409. package/dist/ground/walk.js.map +0 -1
  410. package/dist/hooks/post-tool-use/ledger-cache.d.ts +0 -40
  411. package/dist/hooks/post-tool-use/ledger-cache.js +0 -290
  412. package/dist/hooks/post-tool-use/ledger-cache.js.map +0 -1
  413. package/dist/init/phases/10-strip.d.ts +0 -11
  414. package/dist/init/phases/10-strip.js.map +0 -1
  415. package/dist/init/phases/3b-seed.js.map +0 -1
  416. package/dist/init/phases/5-brand.js.map +0 -1
  417. package/dist/init/phases/5b-topic-index.js.map +0 -1
  418. package/dist/init/phases/6-docs-ingest.d.ts +0 -10
  419. package/dist/init/phases/6-docs-ingest.js.map +0 -1
  420. package/dist/init/phases/7b-source-comments.d.ts +0 -15
  421. package/dist/init/phases/7b-source-comments.js.map +0 -1
  422. package/dist/init/phases/7c-rules-merge.js.map +0 -1
  423. package/dist/init/phases/8-baseline.d.ts +0 -10
  424. package/dist/init/phases/8-baseline.js.map +0 -1
  425. package/dist/init/phases/parallel-678.js.map +0 -1
  426. package/dist/mcp/tools/decisions-in-scope.d.ts +0 -7
  427. package/dist/mcp/tools/decisions-in-scope.js +0 -66
  428. package/dist/mcp/tools/decisions-in-scope.js.map +0 -1
  429. package/dist/mcp/tools/invariants-in-scope.d.ts +0 -7
  430. package/dist/mcp/tools/invariants-in-scope.js +0 -81
  431. package/dist/mcp/tools/invariants-in-scope.js.map +0 -1
@@ -3,14 +3,29 @@
3
3
  *
4
4
  * Each detection function returns plain data; the wizard composes them.
5
5
  * No prompts, no side effects, no stdout writes. Detection is mechanical:
6
- * read filesystem signatures, return arrays of findings.
6
+ * read filesystem signatures, parse package files, return proposals.
7
7
  */
8
- import type { DetectionResult, HookCapability, SensorProposal, StackSignature, StartCommand } from "./types.js";
8
+ import type { DetectionResult, SensorProposal, StackSignature, StartCommand } from "./types.js";
9
+ import { z } from "zod";
10
+ declare const PackageJsonSchema: z.ZodObject<{
11
+ name: z.ZodOptional<z.ZodString>;
12
+ scripts: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
13
+ dependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
14
+ devDependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
15
+ }, z.core.$loose>;
16
+ export type PackageJson = z.infer<typeof PackageJsonSchema>;
17
+ /**
18
+ * Top-level detection orchestration. Scans for stack signatures and
19
+ * builds the detection summary for the operator.
20
+ */
21
+ export declare function detectAll(args: {
22
+ repoRoot: string;
23
+ }): DetectionResult;
24
+ export declare function detectOriginUrl(repoRoot: string): string | null;
9
25
  export declare function detectProjectSlug(args: {
10
26
  repoRoot: string;
11
27
  originUrl: string | null;
12
28
  }): string;
13
- export declare function detectOriginUrl(repoRoot: string): Promise<string | null>;
14
29
  export declare function detectStackSignatures(repoRoot: string): StackSignature[];
15
30
  export declare function detectAvailableSensors(args: {
16
31
  repoRoot: string;
@@ -20,6 +35,10 @@ export declare function detectStartCommand(args: {
20
35
  repoRoot: string;
21
36
  signatures: StackSignature[];
22
37
  }): StartCommand | null;
23
- export declare function detectHookCapability(repoRoot: string): HookCapability;
24
- export declare function detectEnvironment(): Promise<DetectionResult["environment"]>;
25
- export declare function detectAll(repoRoot: string): Promise<DetectionResult>;
38
+ export interface HookCapabilityResult {
39
+ can_hook: boolean;
40
+ reason?: string;
41
+ }
42
+ export declare function detectHookCapability(repoRoot: string): HookCapabilityResult;
43
+ export declare function detectEnvironment(): string;
44
+ export {};
@@ -3,65 +3,93 @@
3
3
  *
4
4
  * Each detection function returns plain data; the wizard composes them.
5
5
  * No prompts, no side effects, no stdout writes. Detection is mechanical:
6
- * read filesystem signatures, return arrays of findings.
6
+ * read filesystem signatures, parse package files, return proposals.
7
7
  */
8
8
  import { existsSync, readFileSync, statSync } from "node:fs";
9
- import { basename, join } from "node:path";
10
- import { simpleGit } from "simple-git";
11
- import { claudeIsAvailable } from "../claude/index.js";
9
+ import { join } from "node:path";
12
10
  import { normalizeProjectName } from "../paths/index.js";
11
+ import { z } from "zod";
12
+ const PackageJsonSchema = z.object({
13
+ name: z.string().optional(),
14
+ scripts: z.record(z.string(), z.string()).optional(),
15
+ dependencies: z.record(z.string(), z.string()).optional(),
16
+ devDependencies: z.record(z.string(), z.string()).optional(),
17
+ }).passthrough();
18
+ /**
19
+ * Top-level detection orchestration. Scans for stack signatures and
20
+ * builds the detection summary for the operator.
21
+ */
22
+ export function detectAll(args) {
23
+ const originUrl = detectOriginUrl(args.repoRoot);
24
+ const signatures = detectStackSignatures(args.repoRoot);
25
+ const projectSlug = detectProjectSlug({ repoRoot: args.repoRoot, originUrl });
26
+ return {
27
+ repo_root: args.repoRoot,
28
+ project_slug: projectSlug,
29
+ origin_url: originUrl,
30
+ stack_signatures: signatures,
31
+ proposed_sensors: detectAvailableSensors({ repoRoot: args.repoRoot, signatures }),
32
+ start_command: detectStartCommand({ repoRoot: args.repoRoot, signatures }),
33
+ hook_capability: detectHookCapability(args.repoRoot).can_hook ? "claude-code" : "cli-only",
34
+ environment: {
35
+ claude_auth: true,
36
+ },
37
+ };
38
+ }
39
+ export function detectOriginUrl(repoRoot) {
40
+ const configPath = join(repoRoot, ".git", "config");
41
+ if (!existsSync(configPath))
42
+ return null;
43
+ try {
44
+ const config = readFileSync(configPath, "utf8");
45
+ const m = config.match(/\[remote "origin"\]\s+url\s*=\s*(.+)/);
46
+ return m && m[1] ? m[1].trim() : null;
47
+ }
48
+ catch {
49
+ return null;
50
+ }
51
+ }
13
52
  export function detectProjectSlug(args) {
14
53
  const pkgPath = join(args.repoRoot, "package.json");
15
54
  if (existsSync(pkgPath)) {
16
55
  try {
17
- const pkg = JSON.parse(readFileSync(pkgPath, "utf8"));
18
- if (typeof pkg.name === "string" && pkg.name.length > 0) {
19
- return normalizeProjectName(pkg.name);
56
+ const raw = readFileSync(pkgPath, "utf8");
57
+ const parsed = JSON.parse(raw);
58
+ const result = PackageJsonSchema.safeParse(parsed);
59
+ if (result.success && result.data.name !== undefined) {
60
+ return normalizeProjectName(result.data.name);
20
61
  }
21
62
  }
22
63
  catch {
23
64
  // fall through
24
65
  }
25
66
  }
26
- if (args.originUrl !== null) {
27
- const match = args.originUrl.match(/[/:]([^/]+?)(?:\.git)?$/);
28
- if (match?.[1])
29
- return normalizeProjectName(match[1]);
30
- }
31
- return normalizeProjectName(basename(args.repoRoot));
32
- }
33
- export async function detectOriginUrl(repoRoot) {
34
- if (!existsSync(join(repoRoot, ".git")))
35
- return null;
36
- try {
37
- const remotes = await simpleGit(repoRoot).getRemotes(true);
38
- const origin = remotes.find((r) => r.name === "origin");
39
- return origin?.refs?.fetch ?? null;
40
- }
41
- catch {
42
- return null;
67
+ if (args.originUrl) {
68
+ const slug = args.originUrl
69
+ .split("/")
70
+ .pop()
71
+ ?.replace(/\.git$/, "");
72
+ if (slug)
73
+ return normalizeProjectName(slug);
43
74
  }
75
+ const dirName = args.repoRoot.split(/[/\\]/).pop();
76
+ return normalizeProjectName(dirName || "this-project");
44
77
  }
45
78
  export function detectStackSignatures(repoRoot) {
46
- const signatures = [];
47
- const flag = (kind, marker) => {
48
- if (existsSync(join(repoRoot, marker))) {
49
- signatures.push({ kind, marker });
50
- }
79
+ const out = [];
80
+ const tryAdd = (file, kind) => {
81
+ if (existsSync(join(repoRoot, file)))
82
+ out.push({ kind, marker: file });
51
83
  };
52
- flag("typescript", "package.json");
53
- flag("python", "pyproject.toml");
54
- if (signatures.find((s) => s.kind === "python") === undefined) {
55
- flag("python", "requirements.txt");
56
- }
57
- flag("ruby", "Gemfile");
58
- flag("go", "go.mod");
59
- flag("rust", "Cargo.toml");
60
- flag("elixir", "mix.exs");
61
- if (signatures.length === 0) {
62
- signatures.push({ kind: "unknown", marker: repoRoot });
63
- }
64
- return signatures;
84
+ tryAdd("package.json", "typescript");
85
+ tryAdd("requirements.txt", "python");
86
+ tryAdd("Gemfile", "ruby");
87
+ tryAdd("go.mod", "go");
88
+ tryAdd("Cargo.toml", "rust");
89
+ tryAdd("mix.exs", "elixir");
90
+ if (out.length === 0)
91
+ out.push({ kind: "unknown", marker: "(none)" });
92
+ return out;
65
93
  }
66
94
  export function detectAvailableSensors(args) {
67
95
  const sensors = [];
@@ -97,7 +125,7 @@ export function detectAvailableSensors(args) {
97
125
  }
98
126
  // ── python ───────────────────────────────────────────────
99
127
  if (args.signatures.some((s) => s.kind === "python")) {
100
- const pyToml = readFileIfExists(join(args.repoRoot, "pyproject.toml"));
128
+ const pyToml = tryRead(join(args.repoRoot, "pyproject.toml"));
101
129
  if (has("ruff.toml") || (pyToml && /\[tool\.ruff\]/.test(pyToml))) {
102
130
  sensors.push({
103
131
  id: "ruff",
@@ -119,7 +147,7 @@ export function detectAvailableSensors(args) {
119
147
  }
120
148
  // ── ruby ─────────────────────────────────────────────────
121
149
  if (args.signatures.some((s) => s.kind === "ruby")) {
122
- const gemfile = readFileIfExists(join(args.repoRoot, "Gemfile"));
150
+ const gemfile = tryRead(join(args.repoRoot, "Gemfile"));
123
151
  if (has(".rubocop.yml") || (gemfile && /\brubocop\b/.test(gemfile))) {
124
152
  sensors.push({
125
153
  id: "rubocop",
@@ -192,15 +220,20 @@ export function detectStartCommand(args) {
192
220
  const pkgPath = join(args.repoRoot, "package.json");
193
221
  if (existsSync(pkgPath)) {
194
222
  try {
195
- const pkg = JSON.parse(readFileSync(pkgPath, "utf8"));
196
- const script = pkg.scripts?.["dev"] ?? pkg.scripts?.["start"];
197
- const scriptName = pkg.scripts?.["dev"] !== undefined ? "dev" : "start";
198
- if (script !== undefined) {
199
- return {
200
- command: "pnpm",
201
- args: ["run", scriptName],
202
- reason: `package.json scripts.${scriptName}: \`${script}\``,
203
- };
223
+ const raw = readFileSync(pkgPath, "utf8");
224
+ const parsed = JSON.parse(raw);
225
+ const result = PackageJsonSchema.safeParse(parsed);
226
+ if (result.success) {
227
+ const pkg = result.data;
228
+ const script = pkg.scripts?.["dev"] ?? pkg.scripts?.["start"];
229
+ const scriptName = pkg.scripts?.["dev"] !== undefined ? "dev" : "start";
230
+ if (script !== undefined) {
231
+ return {
232
+ command: "pnpm",
233
+ args: ["run", scriptName],
234
+ reason: `package.json scripts.${scriptName}: \`${script}\``,
235
+ };
236
+ }
204
237
  }
205
238
  }
206
239
  catch {
@@ -208,99 +241,37 @@ export function detectStartCommand(args) {
208
241
  }
209
242
  }
210
243
  }
211
- // python: manage.py runserver; FastAPI uvicorn from Procfile/dev.sh
212
- if (args.signatures.some((s) => s.kind === "python")) {
213
- if (existsSync(join(args.repoRoot, "manage.py"))) {
214
- return {
215
- command: "python",
216
- args: ["manage.py", "runserver"],
217
- reason: "Django manage.py detected",
218
- };
219
- }
220
- const procfile = readFileIfExists(join(args.repoRoot, "Procfile"));
221
- if (procfile) {
222
- const webLine = procfile.split(/\r?\n/).find((l) => /^web:/i.test(l));
223
- if (webLine) {
224
- const cmdRaw = webLine.replace(/^web:\s*/i, "").trim();
225
- const parts = cmdRaw.split(/\s+/);
226
- if (parts.length > 0 && parts[0] !== undefined) {
227
- return {
228
- command: parts[0],
229
- args: parts.slice(1),
230
- reason: `Procfile web: ${cmdRaw}`,
231
- };
232
- }
233
- }
234
- }
235
- }
236
- // ruby: bin/rails server
237
- if (args.signatures.some((s) => s.kind === "ruby")) {
238
- if (existsSync(join(args.repoRoot, "bin", "rails"))) {
239
- return {
240
- command: "bin/rails",
241
- args: ["server"],
242
- reason: "bin/rails detected",
243
- };
244
- }
245
- }
246
- // go: best-guess `go run ./...`
247
244
  if (args.signatures.some((s) => s.kind === "go")) {
248
245
  return {
249
246
  command: "go",
250
- args: ["run", "./..."],
251
- reason: "go.mod present",
252
- };
253
- }
254
- // rust: cargo run
255
- if (args.signatures.some((s) => s.kind === "rust")) {
256
- return {
257
- command: "cargo",
258
- args: ["run"],
259
- reason: "Cargo.toml present",
247
+ args: ["run", "."],
248
+ reason: "go.mod found; standard go run entrypoint",
260
249
  };
261
250
  }
262
251
  return null;
263
252
  }
264
253
  export function detectHookCapability(repoRoot) {
265
- const claudeDir = join(repoRoot, ".claude");
266
- if (existsSync(claudeDir) && isDirectory(claudeDir))
267
- return "claude-code";
268
- if (existsSync(join(repoRoot, ".git")))
269
- return "git-hooks";
270
- return "cli-only";
271
- }
272
- export async function detectEnvironment() {
273
- return {
274
- claude_auth: claudeIsAvailable(),
275
- };
254
+ const dotGit = join(repoRoot, ".git");
255
+ if (!existsSync(dotGit))
256
+ return { can_hook: false, reason: "not a git repo" };
257
+ try {
258
+ const s = statSync(dotGit);
259
+ if (!s.isDirectory())
260
+ return { can_hook: false, reason: ".git is a file (submodule?)" };
261
+ }
262
+ catch {
263
+ return { can_hook: false, reason: ".git unreadable" };
264
+ }
265
+ return { can_hook: true };
276
266
  }
277
- export async function detectAll(repoRoot) {
278
- const originUrl = await detectOriginUrl(repoRoot);
279
- const project_slug = detectProjectSlug({ repoRoot, originUrl });
280
- const stack_signatures = detectStackSignatures(repoRoot);
281
- const proposed_sensors = detectAvailableSensors({
282
- repoRoot,
283
- signatures: stack_signatures,
284
- });
285
- const start_command = detectStartCommand({
286
- repoRoot,
287
- signatures: stack_signatures,
288
- });
289
- const hook_capability = detectHookCapability(repoRoot);
290
- const environment = await detectEnvironment();
291
- return {
292
- repo_root: repoRoot,
293
- project_slug,
294
- origin_url: originUrl,
295
- stack_signatures,
296
- proposed_sensors,
297
- start_command,
298
- hook_capability,
299
- environment,
300
- };
267
+ export function detectEnvironment() {
268
+ if (process.env["GITHUB_ACTIONS"] === "true")
269
+ return "github-actions";
270
+ if (process.env["VERCEL"] === "true")
271
+ return "vercel";
272
+ return "local";
301
273
  }
302
- /* ───────────────────────── helpers ───────────────────────── */
303
- function readFileIfExists(path) {
274
+ function tryRead(path) {
304
275
  try {
305
276
  return readFileSync(path, "utf8");
306
277
  }
@@ -1 +1 @@
1
- {"version":3,"file":"detect.js","sourceRoot":"","sources":["../../src/init/detect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detect.js","sourceRoot":"","sources":["../../src/init/detect.ts"],"names":[],"mappings":"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"}
@@ -5,14 +5,14 @@ export type { BrandAnswers, RunBrandSetupOptions, } from "./brand-setup.js";
5
5
  export { deriveBrandFromProject, derivedToBrandAnswers, } from "./brand-derive.js";
6
6
  export { defaultBaselineLanguages, findLatestBaselineAudit, runBaselineAudit, } from "./baseline-audit.js";
7
7
  export type { BaselineAuditFinding, BaselineAuditResult, BaselineAuditSensorRow, RunBaselineAuditArgs, } from "./baseline-audit.js";
8
- export { discoverDocs, runDocsIngestion, } from "./ingest-docs.js";
8
+ export { discoverDocs, runDocsIngestion, runStage1FileFilter, } from "./ingest-docs.js";
9
9
  export { HEURISTIC as SOURCE_COMMENT_HEURISTIC, applyStripReplace, classifyBlocks, detectLang as detectSourceCommentLang, previewStripReplace, runSourceCommentsIngestion, walkSourceComments, } from "./source-comments/index.js";
10
10
  export { KEEP_END_MARKER, KEEP_START_MARKER, discoverRuleSources, extractKeepBlocks, parseRuleSections, reapplyKeepBlocks, regenerateRulesFiles, renderKeepBlock, runRulesMerge, } from "./rules-merge/index.js";
11
11
  export { installMultiDev, patchPackageJsonPrepare, } from "./multi-dev/index.js";
12
12
  export type { InstallMultiDevArgs, MultiDevHostKind, MultiDevInstallResult, MultiDevInstallStep, } from "./multi-dev/index.js";
13
13
  export type { KeepBlock, RegenerateRulesArgs, RegenerateRulesResult, RuleClassKind, RuleClassification, RuleSection, RuleSourceFile, RunRulesMergeArgs, RunRulesMergeResult, } from "./rules-merge/index.js";
14
- export type { ClassifyArgs as SourceCommentClassifyArgs, ClassifyResult as SourceCommentClassifyResult, CommentBlock, CommentClassKind, CommentClassification, CommentKind, CommentLang, DirtyDecision, FileOutcome as StripReplaceFileOutcome, IngestSourceCommentsArgs, IngestSourceCommentsResult, ReplaceItem, SkipReason as StripReplaceSkipReason, StripReplaceArgs, StripReplaceResult, WalkOptions as SourceCommentWalkOptions, WalkResult as SourceCommentWalkResult, } from "./source-comments/index.js";
15
- export type { ClassifiedDoc, DocCandidate, DocClassification, DocClassificationKind, IngestionResult, RunDocsIngestionArgs, } from "./ingest-docs.js";
14
+ export type { WalkOptions as SourceCommentWalkOptions, WalkResult as SourceCommentWalkResult, } from "./source-comments/index.js";
15
+ export type { ClassifiedDoc, DocCandidate, DocClassification, DocClassificationKind, FileFilterVerdict, IngestionResult, RunDocsIngestionArgs, } from "./ingest-docs.js";
16
16
  export { runInit } from "./init.js";
17
17
  export type { InitResult, RunInitArgs } from "./init.js";
18
18
  export { buildMapperUserPrompt, MAPPER_OUTPUT_SCHEMA, MAPPER_SYSTEM_PROMPT, runMapper, validateMapperOutput, } from "./mapper.js";
@@ -34,7 +34,7 @@ export { buildRepoSummary } from "./walker.js";
34
34
  export type { BuildRepoSummaryOptions, ManifestPreview, RepoSummary, } from "./walker.js";
35
35
  export { updateWorkflowSlugBlock } from "./workflow-block.js";
36
36
  export type { UpdateResult as WorkflowSlugUpdateResult, WorkflowSlugBlockUpdate, } from "./workflow-block.js";
37
- export { PHASE_IDS, INIT_STATE_PATH, phaseStateAbsPath, readPhaseState, writePhaseState, clearPhaseState, freshPhaseState, resumePhases, nextPhaseAfter, advancePhase, MAPPER_OUTPUT_PATH, mapperOutputAbsPath, readMapperOutputFile, writeMapperOutputFile, toMapperResultPersisted, runPhase1Detect, runPhase2Walker, runPhase3Mapper, runPhase3bSeed, runPhase4Pilot, runPhase5Brand, runPhase5bTopicIndex, runPhase6DocsIngest, runPhase7bSourceComments, runPhase7cRulesMerge, runPhase8Baseline, runPhase10Strip, runPhase12Multidev, runPhases678Parallel, SOURCE_COMMENTS_WALK_PATH, sourceCommentsWalkAbsPath, readSourceCommentsWalkFile, writeSourceCommentsWalkFile, to7bResultPersisted, } from "./phases/index.js";
37
+ export { PHASE_IDS, INIT_STATE_PATH, phaseStateAbsPath, readPhaseState, writePhaseState, clearPhaseState, freshPhaseState, resumePhases, nextPhaseAfter, advancePhase, MAPPER_OUTPUT_PATH, mapperOutputAbsPath, readMapperOutputFile, writeMapperOutputFile, toMapperResultPersisted, runPhase1Detect, runPhase2Walker, runPhase3Mapper, runPhase4Seed, runPhase5Pilot, runPhase6Brand, runPhase7TopicIndex, runPhase8DocsIngest, runPhase9SourceComments, runPhase10RulesMerge, runPhase11Baseline, runPhase12Strip, runPhase13Multidev, runPhases8910Parallel, SOURCE_COMMENTS_WALK_PATH, sourceCommentsWalkAbsPath, readSourceCommentsWalkFile, writeSourceCommentsWalkFile, to7bResultPersisted, } from "./phases/index.js";
38
38
  export type { PhaseId, PhaseState, PhaseOutputs, PhaseResult, PhaseQuestion, PhaseOption, PhaseError, ResumeReport, MapperResultPersisted, IngestSourceCommentsResultPersisted, TopicIndexPhaseOutput, } from "./phases/index.js";
39
39
  export { buildTopicIndex, walkProseBlocks, resolveTopics, makeHaikuJudge, } from "./topic-index/index.js";
40
40
  export type { BuildTopicIndexArgs, BuildTopicIndexResult, ProseBlock, ProseBlockKind, ResolveOptions, ResolveResult, SemanticJudge, SemanticVerdict, JudgeOptions, } from "./topic-index/index.js";
@@ -3,7 +3,7 @@ export { installInitCancelHandlers, startProgress, startSpinner, withSpinner, }
3
3
  export { applyBrandAnswers, runBrandSetup } from "./brand-setup.js";
4
4
  export { deriveBrandFromProject, derivedToBrandAnswers, } from "./brand-derive.js";
5
5
  export { defaultBaselineLanguages, findLatestBaselineAudit, runBaselineAudit, } from "./baseline-audit.js";
6
- export { discoverDocs, runDocsIngestion, } from "./ingest-docs.js";
6
+ export { discoverDocs, runDocsIngestion, runStage1FileFilter, } from "./ingest-docs.js";
7
7
  export { HEURISTIC as SOURCE_COMMENT_HEURISTIC, applyStripReplace, classifyBlocks, detectLang as detectSourceCommentLang, previewStripReplace, runSourceCommentsIngestion, walkSourceComments, } from "./source-comments/index.js";
8
8
  export { KEEP_END_MARKER, KEEP_START_MARKER, discoverRuleSources, extractKeepBlocks, parseRuleSections, reapplyKeepBlocks, regenerateRulesFiles, renderKeepBlock, runRulesMerge, } from "./rules-merge/index.js";
9
9
  export { installMultiDev, patchPackageJsonPrepare, } from "./multi-dev/index.js";
@@ -18,6 +18,6 @@ export { seedCairnLayout, templatesRoot } from "./seed.js";
18
18
  export { editYaml, freeTextWithDefault, squareIntoSquareHole, yesNo, } from "./prompts.js";
19
19
  export { buildRepoSummary } from "./walker.js";
20
20
  export { updateWorkflowSlugBlock } from "./workflow-block.js";
21
- export { PHASE_IDS, INIT_STATE_PATH, phaseStateAbsPath, readPhaseState, writePhaseState, clearPhaseState, freshPhaseState, resumePhases, nextPhaseAfter, advancePhase, MAPPER_OUTPUT_PATH, mapperOutputAbsPath, readMapperOutputFile, writeMapperOutputFile, toMapperResultPersisted, runPhase1Detect, runPhase2Walker, runPhase3Mapper, runPhase3bSeed, runPhase4Pilot, runPhase5Brand, runPhase5bTopicIndex, runPhase6DocsIngest, runPhase7bSourceComments, runPhase7cRulesMerge, runPhase8Baseline, runPhase10Strip, runPhase12Multidev, runPhases678Parallel, SOURCE_COMMENTS_WALK_PATH, sourceCommentsWalkAbsPath, readSourceCommentsWalkFile, writeSourceCommentsWalkFile, to7bResultPersisted, } from "./phases/index.js";
21
+ export { PHASE_IDS, INIT_STATE_PATH, phaseStateAbsPath, readPhaseState, writePhaseState, clearPhaseState, freshPhaseState, resumePhases, nextPhaseAfter, advancePhase, MAPPER_OUTPUT_PATH, mapperOutputAbsPath, readMapperOutputFile, writeMapperOutputFile, toMapperResultPersisted, runPhase1Detect, runPhase2Walker, runPhase3Mapper, runPhase4Seed, runPhase5Pilot, runPhase6Brand, runPhase7TopicIndex, runPhase8DocsIngest, runPhase9SourceComments, runPhase10RulesMerge, runPhase11Baseline, runPhase12Strip, runPhase13Multidev, runPhases8910Parallel, SOURCE_COMMENTS_WALK_PATH, sourceCommentsWalkAbsPath, readSourceCommentsWalkFile, writeSourceCommentsWalkFile, to7bResultPersisted, } from "./phases/index.js";
22
22
  export { buildTopicIndex, walkProseBlocks, resolveTopics, makeHaikuJudge, } from "./topic-index/index.js";
23
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/init/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EACzB,aAAa,EACb,YAAY,EACZ,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAKpE,OAAO,EACL,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EACL,YAAY,EACZ,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,SAAS,IAAI,wBAAwB,EACrC,iBAAiB,EACjB,cAAc,EACd,UAAU,IAAI,uBAAuB,EACrC,mBAAmB,EACnB,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,aAAa,GACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,eAAe,EACf,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AA6C9B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,SAAS,EACT,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAUrB,OAAO,EACL,aAAa,EACb,eAAe,EACf,aAAa,EACb,YAAY,EACZ,aAAa,GAEd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAK1D,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE3D,OAAO,EACL,QAAQ,EACR,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,GAKN,MAAM,cAAc,CAAC;AAStB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAM/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAK9D,OAAO,EACL,SAAS,EACT,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,eAAe,EACf,eAAe,EACf,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,eAAe,EACf,eAAe,EACf,cAAc,EACd,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAe3B,OAAO,EACL,eAAe,EACf,eAAe,EACf,aAAa,EACb,cAAc,GACf,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/init/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EACzB,aAAa,EACb,YAAY,EACZ,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAKpE,OAAO,EACL,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,SAAS,IAAI,wBAAwB,EACrC,iBAAiB,EACjB,cAAc,EACd,UAAU,IAAI,uBAAuB,EACrC,mBAAmB,EACnB,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,aAAa,GACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,eAAe,EACf,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AA+B9B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,SAAS,EACT,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAUrB,OAAO,EACL,aAAa,EACb,eAAe,EACf,aAAa,EACb,YAAY,EACZ,aAAa,GAEd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAK1D,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE3D,OAAO,EACL,QAAQ,EACR,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,GAKN,MAAM,cAAc,CAAC;AAStB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAM/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAK9D,OAAO,EACL,SAAS,EACT,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,eAAe,EACf,eAAe,EACf,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,eAAe,EACf,eAAe,EACf,aAAa,EACb,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAe3B,OAAO,EACL,eAAe,EACf,eAAe,EACf,aAAa,EACb,cAAc,GACf,MAAM,wBAAwB,CAAC"}
@@ -1,20 +1,46 @@
1
1
  /**
2
- * Phase 6 — docs ingestion (v0.5.0 SoT model).
2
+ * Phase 8staged docs ingestion.
3
3
  *
4
- * Reads the topic-index built by phase 5b, filters to entries whose SoT
5
- * source lives under `docs/*`, and emits verbatim DEC files under
6
- * `.cairn/ground/decisions/`. Auto-promoted to `status: accepted`. No
7
- * draft inbox, no LLM paraphrase — the doc paragraph itself IS the
8
- * canonical body, recorded with `sot_kind: path` so the lens renders
9
- * the live source on every read.
4
+ * Replaces the v0.6 bulk-classifier path. Cuts wall from ~15 min
5
+ * ~75 s on gcb-platform-scale repos AND collapses the noisy ledger
6
+ * (7000 DECs) to a curated draft inbox (30-80 drafts).
10
7
  *
11
- * Per-entry Haiku call decides `kind` only (decision / domain-rule /
12
- * voice-guidelines / api-docs / other). The first two emit a DEC; the
13
- * rest are skipped at this layer (voice + canonical-topic flows are
14
- * handled by other tooling now — they were file-level concerns under
15
- * the v0.4.x model and have no clean paragraph-level analogue).
8
+ * Pipeline:
9
+ *
10
+ * Stage 3 (deterministic, 0 Haiku) marker scan
11
+ * Topic-index entries with `marker_kind` in {"decision","rule"} go
12
+ * straight to emit. The walker stamped them at parse time when it
13
+ * saw frontmatter `cairn.kind` or `<!-- cairn:decision -->` /
14
+ * `<!-- cairn:rule -->` within 3 lines of the heading.
15
+ *
16
+ * Stage 1 — file-purpose binary filter (batch=30, concurrency=5)
17
+ * Per file: filepath + frontmatter + first 800 chars + every
18
+ * H1/H2/H3 line (capped at 100). Locked rigid prompt: a file is
19
+ * authoritative ONLY if it's a canonical rulebook, formal ADR,
20
+ * or list of binding domain invariants. Plans / scratchpads /
21
+ * UAT logs / API docs are NOT authoritative even if they
22
+ * contain proposed or historical decisions.
23
+ *
24
+ * Stage 2 — section-level batch classifier (batch=30, concurrency=5)
25
+ * Same shape as the v0.6 classifier, but scoped to sections
26
+ * belonging to Stage-1-authoritative files AND not already
27
+ * handled by a marker. This is where Haiku still adds signal —
28
+ * the file passed the rigid filter; now decide WHICH sections
29
+ * of it are decisions vs context.
30
+ *
31
+ * Stage 4 — emit
32
+ * Stage 2 + Stage 3 outputs → `.cairn/ground/decisions/_inbox/<id>.draft.md`.
33
+ * `status: draft`, `capture_source: init-docs-ingest`,
34
+ * `decided_by: cairn-init`. Body is verbatim via
35
+ * `readSotBody` — no Haiku paraphrasing. Operator triages via
36
+ * the existing `cairn-attention` skill.
37
+ *
38
+ * Skipped entries (everything else) stay in the topic-index as
39
+ * unpromoted candidates. The PR 2 `cairn_search_candidates` /
40
+ * `cairn_propose_decision` MCP tools surface them to AI agents as
41
+ * the project lives.
16
42
  */
17
- import { type TopicIndexEntry } from "../ground/index.js";
43
+ import { type TopicIndexEntry } from "@isaacriehm/cairn-state";
18
44
  export interface DocCandidate {
19
45
  path: string;
20
46
  size: number;
@@ -32,33 +58,67 @@ export interface ClassifiedDoc {
32
58
  errorMessage?: string;
33
59
  }
34
60
  export interface IngestionResult {
35
- /** Verbatim DEC files written under `.cairn/ground/decisions/`. */
61
+ /** Verbatim DEC drafts written under `_inbox/`. */
36
62
  decsWritten: {
37
63
  id: string;
38
64
  path: string;
39
65
  sourceFile: string;
40
66
  slug: string;
41
67
  }[];
42
- /** Topic-index entries that were not emitted, with reasons. */
68
+ /** Topic-index entries skipped at Stage 4 (with reason). */
43
69
  skipped: {
44
70
  slug: string;
45
71
  reason: string;
46
72
  }[];
47
- /** Number of topic-index entries considered (sot_source under docs/). */
73
+ /** Total topic-index entries considered (pre-rejection-filter). */
48
74
  scannedEntries: number;
75
+ /** Stage 3 — entries emitted from operator markers (0 Haiku). */
76
+ markerEmits: number;
77
+ /** Stage 2 — entries emitted from authoritative-file section classifications. */
78
+ sectionEmits: number;
79
+ /**
80
+ * Stage 1 — files the binary filter accepted as authoritative
81
+ * (i.e. eligible to feed Stage 2).
82
+ */
83
+ authoritativeFiles: number;
84
+ /** Total distinct files Stage 1 evaluated. */
85
+ filesEvaluated: number;
86
+ /**
87
+ * Topic-index entries that remain unpromoted (`dec_id IS NULL`)
88
+ * after this run. Surface this in the cold-start summary as
89
+ * "K unpromoted candidates indexed".
90
+ */
91
+ unpromotedCandidates: number;
92
+ }
93
+ export interface ChunkProgressRow {
94
+ chunksDone: number;
95
+ totalChunks: number;
96
+ entriesDone: number;
97
+ totalEntries: number;
98
+ /** Which staged phase the chunk belongs to ("file-filter" or "section-classify"). */
99
+ stage: "file-filter" | "section-classify";
49
100
  }
50
101
  export interface RunDocsIngestionArgs {
51
102
  repoRoot: string;
52
- /** Smoke override — feed canned classifications keyed by slug. */
103
+ /**
104
+ * Smoke override — feed canned classifications keyed by entry. When
105
+ * set, Stages 1+2 are bypassed entirely; every non-marker candidate
106
+ * runs through this synchronously. Stage 3 still fires.
107
+ */
53
108
  mockClassify?: (entry: TopicIndexEntry, body: string) => DocClassification;
54
109
  /** Caller-supplied id collision Set (parallel pipeline). */
55
110
  existingDecIds?: Set<string>;
56
- /** Progress callback fired once per emitted entry. */
57
- onEntryProgress?: (row: {
58
- slug: string;
59
- emitted: boolean;
60
- total: number;
61
- }) => void;
111
+ /** Progress callback fired once per completed batch. */
112
+ onChunkProgress?: (row: ChunkProgressRow) => void;
62
113
  }
63
114
  export declare function discoverDocs(repoRoot: string): DocCandidate[];
115
+ export interface FileFilterVerdict {
116
+ is_authoritative: boolean;
117
+ reason: string;
118
+ }
64
119
  export declare function runDocsIngestion(args: RunDocsIngestionArgs): Promise<IngestionResult>;
120
+ export declare function runStage1FileFilter(args: {
121
+ repoRoot: string;
122
+ files: string[];
123
+ onChunkProgress?: (row: ChunkProgressRow) => void;
124
+ }): Promise<Map<string, FileFilterVerdict>>;