@isaacriehm/cairn-core 0.7.3 → 0.9.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 (229) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/attention/bulk-accept.d.ts +0 -2
  3. package/dist/attention/bulk-accept.js +0 -3
  4. package/dist/attention/bulk-accept.js.map +1 -1
  5. package/dist/attention/scoring.d.ts +1 -3
  6. package/dist/attention/scoring.js +1 -12
  7. package/dist/attention/scoring.js.map +1 -1
  8. package/dist/claude/cache.js +1 -0
  9. package/dist/claude/cache.js.map +1 -1
  10. package/dist/claude/runner.js +25 -1
  11. package/dist/claude/runner.js.map +1 -1
  12. package/dist/claude/types.d.ts +8 -0
  13. package/dist/doctor/index.js +57 -0
  14. package/dist/doctor/index.js.map +1 -1
  15. package/dist/gc/citation-integrity.js +3 -1
  16. package/dist/gc/citation-integrity.js.map +1 -1
  17. package/dist/gc/doc-claims.d.ts +31 -0
  18. package/dist/gc/doc-claims.js +213 -0
  19. package/dist/gc/doc-claims.js.map +1 -0
  20. package/dist/gc/doc-source-drift.d.ts +31 -0
  21. package/dist/gc/doc-source-drift.js +190 -0
  22. package/dist/gc/doc-source-drift.js.map +1 -0
  23. package/dist/gc/index.d.ts +4 -0
  24. package/dist/gc/index.js +2 -0
  25. package/dist/gc/index.js.map +1 -1
  26. package/dist/gc/sweep.js +18 -0
  27. package/dist/gc/sweep.js.map +1 -1
  28. package/dist/gc/types.d.ts +2 -2
  29. package/dist/hooks/runners/context-threshold.d.ts +63 -0
  30. package/dist/hooks/runners/context-threshold.js +179 -0
  31. package/dist/hooks/runners/context-threshold.js.map +1 -0
  32. package/dist/hooks/runners/gc-autotrigger.d.ts +49 -0
  33. package/dist/hooks/runners/gc-autotrigger.js +87 -0
  34. package/dist/hooks/runners/gc-autotrigger.js.map +1 -0
  35. package/dist/hooks/runners/index.d.ts +2 -0
  36. package/dist/hooks/runners/index.js +1 -0
  37. package/dist/hooks/runners/index.js.map +1 -1
  38. package/dist/hooks/runners/payload.d.ts +10 -0
  39. package/dist/hooks/runners/payload.js +13 -0
  40. package/dist/hooks/runners/payload.js.map +1 -1
  41. package/dist/hooks/runners/session-end.js +2 -4
  42. package/dist/hooks/runners/session-end.js.map +1 -1
  43. package/dist/hooks/runners/session-start.js +157 -9
  44. package/dist/hooks/runners/session-start.js.map +1 -1
  45. package/dist/hooks/runners/stop.js +119 -0
  46. package/dist/hooks/runners/stop.js.map +1 -1
  47. package/dist/init/brand-derive.js +6 -1
  48. package/dist/init/brand-derive.js.map +1 -1
  49. package/dist/init/brand-setup.d.ts +12 -1
  50. package/dist/init/brand-setup.js +36 -1
  51. package/dist/init/brand-setup.js.map +1 -1
  52. package/dist/init/curator/corpus.d.ts +92 -0
  53. package/dist/init/curator/corpus.js +171 -0
  54. package/dist/init/curator/corpus.js.map +1 -0
  55. package/dist/init/curator/emit.d.ts +42 -0
  56. package/dist/init/curator/emit.js +230 -0
  57. package/dist/init/curator/emit.js.map +1 -0
  58. package/dist/init/curator/index.d.ts +1 -0
  59. package/dist/init/curator/index.js +2 -0
  60. package/dist/init/curator/index.js.map +1 -0
  61. package/dist/init/curator/regex-prefilter.d.ts +54 -0
  62. package/dist/init/curator/regex-prefilter.js +185 -0
  63. package/dist/init/curator/regex-prefilter.js.map +1 -0
  64. package/dist/init/curator/validate.d.ts +46 -0
  65. package/dist/init/curator/validate.js +100 -0
  66. package/dist/init/curator/validate.js.map +1 -0
  67. package/dist/init/curator/walker.d.ts +36 -0
  68. package/dist/init/curator/walker.js +380 -0
  69. package/dist/init/curator/walker.js.map +1 -0
  70. package/dist/init/eta-calibration.d.ts +39 -0
  71. package/dist/init/eta-calibration.js +143 -0
  72. package/dist/init/eta-calibration.js.map +1 -0
  73. package/dist/init/index.d.ts +8 -3
  74. package/dist/init/index.js +4 -1
  75. package/dist/init/index.js.map +1 -1
  76. package/dist/init/ingest-docs.d.ts +6 -1
  77. package/dist/init/ingest-docs.js.map +1 -1
  78. package/dist/init/init.js +15 -26
  79. package/dist/init/init.js.map +1 -1
  80. package/dist/init/mapper-merge.d.ts +4 -6
  81. package/dist/init/mapper-merge.js +11 -34
  82. package/dist/init/mapper-merge.js.map +1 -1
  83. package/dist/init/mapper-parallel.d.ts +0 -1
  84. package/dist/init/mapper-parallel.js +20 -12
  85. package/dist/init/mapper-parallel.js.map +1 -1
  86. package/dist/init/mapper-prompts.d.ts +1 -4
  87. package/dist/init/mapper-prompts.js +2 -6
  88. package/dist/init/mapper-prompts.js.map +1 -1
  89. package/dist/init/mapper.d.ts +8 -7
  90. package/dist/init/mapper.js +23 -15
  91. package/dist/init/mapper.js.map +1 -1
  92. package/dist/init/overlay.js +0 -1
  93. package/dist/init/overlay.js.map +1 -1
  94. package/dist/init/phases/1-detect.d.ts +17 -4
  95. package/dist/init/phases/1-detect.js +48 -4
  96. package/dist/init/phases/1-detect.js.map +1 -1
  97. package/dist/init/phases/10-rules-merge.d.ts +7 -2
  98. package/dist/init/phases/10-rules-merge.js +17 -32
  99. package/dist/init/phases/10-rules-merge.js.map +1 -1
  100. package/dist/init/phases/11-baseline.js.map +1 -1
  101. package/dist/init/phases/12-strip.js +14 -1
  102. package/dist/init/phases/12-strip.js.map +1 -1
  103. package/dist/init/phases/13-multidev.d.ts +5 -1
  104. package/dist/init/phases/13-multidev.js +23 -2
  105. package/dist/init/phases/13-multidev.js.map +1 -1
  106. package/dist/init/phases/3-mapper.js.map +1 -1
  107. package/dist/init/phases/4-seed.js +2 -3
  108. package/dist/init/phases/4-seed.js.map +1 -1
  109. package/dist/init/phases/5-preflight.d.ts +42 -0
  110. package/dist/init/phases/5-preflight.js +244 -0
  111. package/dist/init/phases/5-preflight.js.map +1 -0
  112. package/dist/init/phases/6-brand.js +2 -4
  113. package/dist/init/phases/6-brand.js.map +1 -1
  114. package/dist/init/phases/7-topic-index.d.ts +6 -0
  115. package/dist/init/phases/7-topic-index.js +13 -0
  116. package/dist/init/phases/7-topic-index.js.map +1 -1
  117. package/dist/init/phases/8-docs-ingest.d.ts +6 -5
  118. package/dist/init/phases/8-docs-ingest.js +16 -43
  119. package/dist/init/phases/8-docs-ingest.js.map +1 -1
  120. package/dist/init/phases/9a-walker.d.ts +15 -0
  121. package/dist/init/phases/9a-walker.js +63 -0
  122. package/dist/init/phases/9a-walker.js.map +1 -0
  123. package/dist/init/phases/9b-curate.d.ts +19 -0
  124. package/dist/init/phases/9b-curate.js +79 -0
  125. package/dist/init/phases/9b-curate.js.map +1 -0
  126. package/dist/init/phases/9c-emit.d.ts +13 -0
  127. package/dist/init/phases/9c-emit.js +57 -0
  128. package/dist/init/phases/9c-emit.js.map +1 -0
  129. package/dist/init/phases/index.d.ts +6 -5
  130. package/dist/init/phases/index.js +4 -4
  131. package/dist/init/phases/index.js.map +1 -1
  132. package/dist/init/phases/mapper-output-io.d.ts +5 -5
  133. package/dist/init/phases/mapper-output-io.js +5 -5
  134. package/dist/init/phases/orchestrator.d.ts +10 -0
  135. package/dist/init/phases/orchestrator.js +13 -1
  136. package/dist/init/phases/orchestrator.js.map +1 -1
  137. package/dist/init/phases/state-io.js +1 -1
  138. package/dist/init/phases/types.d.ts +115 -9
  139. package/dist/init/phases/types.js +4 -2
  140. package/dist/init/phases/types.js.map +1 -1
  141. package/dist/init/post-git-init.d.ts +53 -0
  142. package/dist/init/post-git-init.js +74 -0
  143. package/dist/init/post-git-init.js.map +1 -0
  144. package/dist/init/preflight-guards.d.ts +11 -2
  145. package/dist/init/preflight-guards.js +27 -5
  146. package/dist/init/preflight-guards.js.map +1 -1
  147. package/dist/init/rules-merge/index.d.ts +1 -1
  148. package/dist/init/rules-merge/ingest.d.ts +6 -1
  149. package/dist/init/rules-merge/ingest.js.map +1 -1
  150. package/dist/init/skill-budget.d.ts +39 -0
  151. package/dist/init/skill-budget.js +99 -0
  152. package/dist/init/skill-budget.js.map +1 -0
  153. package/dist/init/source-comments/ingest.d.ts +0 -2
  154. package/dist/init/source-comments/ingest.js.map +1 -1
  155. package/dist/init/source-comments/walker.js +2 -2
  156. package/dist/init/topic-index/index.d.ts +8 -0
  157. package/dist/init/topic-index/index.js +10 -2
  158. package/dist/init/topic-index/index.js.map +1 -1
  159. package/dist/init/topic-index/judge.d.ts +15 -0
  160. package/dist/init/topic-index/judge.js +15 -1
  161. package/dist/init/topic-index/judge.js.map +1 -1
  162. package/dist/init/topic-index/resolve.js +41 -14
  163. package/dist/init/topic-index/resolve.js.map +1 -1
  164. package/dist/init/types.d.ts +9 -0
  165. package/dist/init/walker.d.ts +1 -1
  166. package/dist/init/walker.js +1 -1
  167. package/dist/init/workflow-block.d.ts +5 -6
  168. package/dist/init/workflow-block.js +5 -9
  169. package/dist/init/workflow-block.js.map +1 -1
  170. package/dist/mcp/bootstrap-guard.js +2 -2
  171. package/dist/mcp/bootstrap-guard.js.map +1 -1
  172. package/dist/mcp/schemas.d.ts +34 -0
  173. package/dist/mcp/schemas.js +50 -0
  174. package/dist/mcp/schemas.js.map +1 -1
  175. package/dist/mcp/telemetry.d.ts +1 -1
  176. package/dist/mcp/tools/bootstrap-retry.d.ts +23 -0
  177. package/dist/mcp/tools/bootstrap-retry.js +53 -0
  178. package/dist/mcp/tools/bootstrap-retry.js.map +1 -0
  179. package/dist/mcp/tools/bulk-accept-attention.d.ts +1 -1
  180. package/dist/mcp/tools/bulk-accept-attention.js +4 -6
  181. package/dist/mcp/tools/bulk-accept-attention.js.map +1 -1
  182. package/dist/mcp/tools/index.js +10 -0
  183. package/dist/mcp/tools/index.js.map +1 -1
  184. package/dist/mcp/tools/init-phases.d.ts +7 -6
  185. package/dist/mcp/tools/init-phases.js +36 -65
  186. package/dist/mcp/tools/init-phases.js.map +1 -1
  187. package/dist/mcp/tools/resume.d.ts +21 -0
  188. package/dist/mcp/tools/resume.js +88 -0
  189. package/dist/mcp/tools/resume.js.map +1 -0
  190. package/dist/mcp/tools/task-complete.d.ts +23 -0
  191. package/dist/mcp/tools/task-complete.js +51 -0
  192. package/dist/mcp/tools/task-complete.js.map +1 -0
  193. package/dist/mcp/tools/task-create.js +17 -11
  194. package/dist/mcp/tools/task-create.js.map +1 -1
  195. package/dist/mcp/tools/task-journal-append.d.ts +22 -0
  196. package/dist/mcp/tools/task-journal-append.js +44 -0
  197. package/dist/mcp/tools/task-journal-append.js.map +1 -0
  198. package/dist/paths/index.js +1 -1
  199. package/dist/paths/index.js.map +1 -1
  200. package/dist/status-line/format.js +20 -0
  201. package/dist/status-line/format.js.map +1 -1
  202. package/dist/tasks/index.d.ts +2 -0
  203. package/dist/tasks/index.js +2 -0
  204. package/dist/tasks/index.js.map +1 -0
  205. package/dist/tasks/lifecycle.d.ts +107 -0
  206. package/dist/tasks/lifecycle.js +302 -0
  207. package/dist/tasks/lifecycle.js.map +1 -0
  208. package/dist/trace/index.d.ts +1 -1
  209. package/dist/trace/index.js +2 -2
  210. package/dist/trace/index.js.map +1 -1
  211. package/package.json +2 -2
  212. package/templates/.cairn/config/trust-policy.yaml +0 -3
  213. package/templates/.cairn/config/workflow.md +0 -1
  214. package/templates/.cairn/ground/canonical-map/topics.yaml +0 -12
  215. package/dist/init/phases/5-pilot.d.ts +0 -10
  216. package/dist/init/phases/5-pilot.js +0 -108
  217. package/dist/init/phases/5-pilot.js.map +0 -1
  218. package/dist/init/phases/9-source-comments.d.ts +0 -6
  219. package/dist/init/phases/9-source-comments.js +0 -55
  220. package/dist/init/phases/9-source-comments.js.map +0 -1
  221. package/dist/init/phases/parallel-8910.d.ts +0 -27
  222. package/dist/init/phases/parallel-8910.js +0 -172
  223. package/dist/init/phases/parallel-8910.js.map +0 -1
  224. package/dist/init/phases/source-comments-output-io.d.ts +0 -84
  225. package/dist/init/phases/source-comments-output-io.js +0 -81
  226. package/dist/init/phases/source-comments-output-io.js.map +0 -1
  227. package/templates/.cairn/ground/capabilities/mcp-tools.yaml +0 -29
  228. package/templates/.cairn/ground/capabilities/skills.yaml +0 -25
  229. package/templates/.cairn/ground/capabilities/snippets.yaml +0 -29
@@ -1 +1 @@
1
- {"version":3,"file":"brand-setup.js","sourceRoot":"","sources":["../../src/init/brand-setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,eAAe,EAAkB,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAa7C,MAAM,KAAK,GAAiB;IAC1B,UAAU,EAAE,EAAE;IACd,SAAS,EAAE,EAAE;IACb,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;CACV,CAAC;AAUF;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAA0B;IAE1B,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACvB,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;IACD,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACvC,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IACzC,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACpE,MAAM,CAAC,KAAK,CAAC,0EAA0E,CAAC,CAAC;IAEzF,MAAM,EAAE,GAAG,eAAe,CAAC;QACzB,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,KAAK,CAAC,KAAK,KAAK,IAAI;KAC/B,CAAC,CAAC;IAEH,0EAA0E;IAC1E,uEAAuE;IACvE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;QACnB,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAiB,EAAE,GAAG,KAAK,EAAE,CAAC;IAC3C,IAAI,CAAC;QACH,OAAO,CAAC,UAAU,GAAG,MAAM,GAAG,CAC5B,EAAE,EACF,eAAe,IAAI,CAAC,WAAW,2BAA2B,CAC3D,CAAC;QACF,OAAO,CAAC,SAAS,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,mCAAmC,CAAC,CAAC;QACvE,OAAO,CAAC,KAAK,GAAG,MAAM,GAAG,CACvB,EAAE,EACF,wEAAwE,CACzE,CAAC;QACF,OAAO,CAAC,KAAK,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,iDAAiD,CAAC,CAAC;IACnF,CAAC;IAAC,MAAM,CAAC;QACP,iEAAiE;IACnE,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,GAAG,CAAC,EAAa,EAAE,MAAc;IAC9C,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;AACtB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAgB,EAChB,OAAqB;IAErB,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,sCAAsC,CAAC;QACnD,MAAM,EAAE,GAAG,eAAe,CACxB,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,EACnB,OAAO,CAAC,UAAU,EAClB,QAAQ,EACR,GAAG,CACJ,CAAC;QACF,IAAI,EAAE;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,iEAAiE;QACjE,8DAA8D;QAC9D,6DAA6D;QAC7D,6DAA6D;QAC7D,2BAA2B;QAC3B,MAAM,WAAW,GAAG,iCAAiC,CAAC;QACtD,MAAM,UAAU,GAAG,eAAe,CAChC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,EAC3B,OAAO,CAAC,UAAU,EAClB,QAAQ,EACR,WAAW,CACZ,CAAC;QACF,IAAI,UAAU;YAAE,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,qCAAqC,CAAC;QAClD,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;QAClF,IAAI,EAAE;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,MAAM,GAAG,GAAG,8BAA8B,CAAC;QAC3C,MAAM,EAAE,GAAG,YAAY,CACrB,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,EACnB,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,KAAK,EACb,QAAQ,EACR,GAAG,CACJ,CAAC;QACF,IAAI,EAAE;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,eAAe,CACtB,GAAW,EACX,IAAY,EACZ,QAAkB,EAClB,GAAW;IAEX,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,GAAG,qBAAqB,CAAC,CAAC;QACxD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,QAAQ,CAAC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,GAAG,GAAG,2BAA2B,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACvD,IAAI,CAAC;QACH,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,QAAQ,CAAC,IAAI,CAAC,gBAAgB,GAAG,kBAAkB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,eAAe,CACtB,GAAW,EACX,WAAmB,EACnB,QAAkB,EAClB,GAAW;IAEX,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,GAAG,qBAAqB,CAAC,CAAC;QACxD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,GACR,qEAAqE;QACrE,sCAAsC;QACtC,mBAAmB;QACnB,aAAa;QACb,qBAAqB;QACrB,oBAAoB,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC;IACtD,IAAI,CAAC;QACH,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,QAAQ,CAAC,IAAI,CAAC,gBAAgB,GAAG,kBAAkB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,YAAY,CACnB,GAAW,EACX,IAAY,EACZ,KAAa,EACb,QAAkB,EAClB,GAAW;IAEX,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,GAAG,qBAAqB,CAAC,CAAC;QACxD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,QAAQ,CAAC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,oDAAoD,CAAC;IAC3F,MAAM,UAAU,GACd,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAmB,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACvD,MAAM,GAAG,GAAG,2BAA2B,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,UAAU,EAAE,CAAC,CAAC;IACzE,IAAI,CAAC;QACH,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,QAAQ,CAAC,IAAI,CAAC,gBAAgB,GAAG,kBAAkB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,cAAc,GAAG,0BAA0B,CAAC;AAElD,SAAS,UAAU,CAAC,IAAY;IAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IACrC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtB,MAAM,OAAO,GAAG,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9C,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,uBAAuB,EAAE,iBAAiB,CAAC;QACxD,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,GAAG,EAAE,mBAAmB,CAAC;IAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,QAAQ,OAAO,OAAO,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,2BAA2B,CAAC,IAAY,EAAE,IAAY;IAC7D,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IACrC,IAAI,CAAC,CAAC;QAAE,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC;IAChD,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACxC,qEAAqE;IACrE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC;IACpD,OAAO,GAAG,OAAO,KAAK,UAAU,KAAK,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC;AAC1D,CAAC;AAED,SAAS,cAAc,CAAC,CAAS;IAC/B,mEAAmE;IACnE,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;IACvC,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,YAAY,CAAC,GAAY;IAChC,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"brand-setup.js","sourceRoot":"","sources":["../../src/init/brand-setup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * Curator pipeline — corpus.jsonl + shards.json IO (Phase 9a-walker).
3
+ *
4
+ * After the regex pre-filter (`regex-prefilter.ts`) drops ~60-80% of
5
+ * raw blocks, this module:
6
+ * 1. Writes one `CorpusRecord` per surviving block to
7
+ * `.cairn/init/curator/corpus.jsonl`
8
+ * 2. Packs records into shards capped at MAX_INPUT_TOKENS_PER_SHARD
9
+ * input tokens, grouped by `module` (or by file group for
10
+ * docs/rules), and writes the plan to `shards.json`
11
+ *
12
+ * Modules exceeding the cap split by submodule/directory hierarchy.
13
+ * Never random shard — the curator-map subagent benefits from
14
+ * intra-module locality (one Sonnet call sees all the auth-module
15
+ * essay comments at once).
16
+ *
17
+ * Token estimate: ~4 chars/token for English prose. The walker hands
18
+ * us already-cleaned prose, so this matches the input the subagent
19
+ * actually receives within ~10%.
20
+ */
21
+ export declare const CORPUS_DIR: string;
22
+ export declare const CORPUS_JSONL_PATH: string;
23
+ export declare const SHARDS_JSON_PATH: string;
24
+ /** Cap per shard. 80k headroom in 200k Sonnet for system prompt + tools. */
25
+ export declare const MAX_INPUT_TOKENS_PER_SHARD = 120000;
26
+ export type SourceKind = "comment" | "doc" | "rule";
27
+ export interface CorpusRecord {
28
+ comment_id: string;
29
+ source_kind: SourceKind;
30
+ /** Repo-relative POSIX path. */
31
+ file: string;
32
+ /** Logical module (top-level dir / package / 'docs' / 'rules'). */
33
+ module: string;
34
+ /** Detected language for `comment` records; "md" for doc / rule. */
35
+ lang: string;
36
+ /** Already prefilter-cleaned + JSDoc-tag-stripped prose. */
37
+ prose_clean: string;
38
+ /** Best-effort enclosing symbol when known (line-cluster comments above a fn). */
39
+ enclosing_symbol?: string;
40
+ /** Top imports near the block — heuristic narrative context for the LLM. */
41
+ nearby_imports?: string[];
42
+ /** Module flags carried over from mapper key_modules ("high_stakes", "route_handler", …). */
43
+ module_flags?: string[];
44
+ /** 1-based line range when meaningful (source comments + rule sections). */
45
+ line_range?: [number, number];
46
+ }
47
+ export interface CorpusWriteResult {
48
+ /** Repo-relative path actually written. */
49
+ corpus_path: string;
50
+ /** Repo-relative path of the shards plan. */
51
+ shards_path: string;
52
+ records_total: number;
53
+ records_by_kind: {
54
+ comment: number;
55
+ doc: number;
56
+ rule: number;
57
+ };
58
+ }
59
+ export declare function writeCorpus(repoRoot: string, records: CorpusRecord[]): CorpusWriteResult;
60
+ export interface Shard {
61
+ /** Stable shard id (e.g. `module-0001` or `docs/architecture-0`). */
62
+ shard_id: string;
63
+ /** Module slug the shard belongs to. */
64
+ module: string;
65
+ /** comment_ids included in this shard. */
66
+ comment_ids: string[];
67
+ /** Estimated input tokens for the shard's prose. */
68
+ estimated_input_tokens: number;
69
+ /** Per-source-kind count (helps the subagent prompt know what to expect). */
70
+ records_by_kind: {
71
+ comment: number;
72
+ doc: number;
73
+ rule: number;
74
+ };
75
+ }
76
+ export interface ShardPlan {
77
+ /** Total shards across all modules. */
78
+ shards: Shard[];
79
+ /** Total input tokens summed across shards. */
80
+ total_input_tokens_estimate: number;
81
+ /** Cap honored by the packer (echoed for telemetry / future tuning). */
82
+ cap_per_shard: number;
83
+ }
84
+ /**
85
+ * Pack records into shards capped at `MAX_INPUT_TOKENS_PER_SHARD`.
86
+ * Modules exceeding the cap split by file directory prefix; in the
87
+ * worst case (one record over the cap by itself) the record gets its
88
+ * own shard regardless. Records keep their original ordering within
89
+ * each module — corpus locality matters for the curator subagent.
90
+ */
91
+ export declare function packShards(records: CorpusRecord[]): ShardPlan;
92
+ export declare function writeShards(repoRoot: string, plan: ShardPlan): string;
@@ -0,0 +1,171 @@
1
+ /**
2
+ * Curator pipeline — corpus.jsonl + shards.json IO (Phase 9a-walker).
3
+ *
4
+ * After the regex pre-filter (`regex-prefilter.ts`) drops ~60-80% of
5
+ * raw blocks, this module:
6
+ * 1. Writes one `CorpusRecord` per surviving block to
7
+ * `.cairn/init/curator/corpus.jsonl`
8
+ * 2. Packs records into shards capped at MAX_INPUT_TOKENS_PER_SHARD
9
+ * input tokens, grouped by `module` (or by file group for
10
+ * docs/rules), and writes the plan to `shards.json`
11
+ *
12
+ * Modules exceeding the cap split by submodule/directory hierarchy.
13
+ * Never random shard — the curator-map subagent benefits from
14
+ * intra-module locality (one Sonnet call sees all the auth-module
15
+ * essay comments at once).
16
+ *
17
+ * Token estimate: ~4 chars/token for English prose. The walker hands
18
+ * us already-cleaned prose, so this matches the input the subagent
19
+ * actually receives within ~10%.
20
+ */
21
+ import { mkdirSync, renameSync, writeFileSync } from "node:fs";
22
+ import { dirname, join } from "node:path";
23
+ export const CORPUS_DIR = join(".cairn", "init", "curator");
24
+ export const CORPUS_JSONL_PATH = join(CORPUS_DIR, "corpus.jsonl");
25
+ export const SHARDS_JSON_PATH = join(CORPUS_DIR, "shards.json");
26
+ /** Cap per shard. 80k headroom in 200k Sonnet for system prompt + tools. */
27
+ export const MAX_INPUT_TOKENS_PER_SHARD = 120_000;
28
+ /** Average chars-per-token estimate for English prose. */
29
+ const CHARS_PER_TOKEN = 4;
30
+ export function writeCorpus(repoRoot, records) {
31
+ const corpusAbs = join(repoRoot, CORPUS_JSONL_PATH);
32
+ mkdirSync(dirname(corpusAbs), { recursive: true });
33
+ const tmp = `${corpusAbs}.tmp`;
34
+ const lines = records.map((r) => JSON.stringify(r)).join("\n");
35
+ writeFileSync(tmp, lines.length === 0 ? "" : `${lines}\n`, "utf8");
36
+ renameSync(tmp, corpusAbs);
37
+ const counts = { comment: 0, doc: 0, rule: 0 };
38
+ for (const r of records)
39
+ counts[r.source_kind] += 1;
40
+ return {
41
+ corpus_path: CORPUS_JSONL_PATH,
42
+ shards_path: SHARDS_JSON_PATH,
43
+ records_total: records.length,
44
+ records_by_kind: counts,
45
+ };
46
+ }
47
+ /**
48
+ * Pack records into shards capped at `MAX_INPUT_TOKENS_PER_SHARD`.
49
+ * Modules exceeding the cap split by file directory prefix; in the
50
+ * worst case (one record over the cap by itself) the record gets its
51
+ * own shard regardless. Records keep their original ordering within
52
+ * each module — corpus locality matters for the curator subagent.
53
+ */
54
+ export function packShards(records) {
55
+ // 1. Group by module (preserve insertion order).
56
+ const byModule = new Map();
57
+ for (const r of records) {
58
+ const list = byModule.get(r.module) ?? [];
59
+ list.push(r);
60
+ byModule.set(r.module, list);
61
+ }
62
+ const shards = [];
63
+ let total = 0;
64
+ for (const [moduleSlug, moduleRecords] of byModule.entries()) {
65
+ const moduleTokens = sumTokens(moduleRecords);
66
+ if (moduleTokens <= MAX_INPUT_TOKENS_PER_SHARD) {
67
+ const shard = makeShard(moduleSlug, shards.length, moduleRecords);
68
+ shards.push(shard);
69
+ total += shard.estimated_input_tokens;
70
+ continue;
71
+ }
72
+ // Module overflows — split by top-level directory under the module.
73
+ const splits = splitByDirectoryHierarchy(moduleRecords);
74
+ for (const split of splits) {
75
+ const splitTokens = sumTokens(split.records);
76
+ if (splitTokens <= MAX_INPUT_TOKENS_PER_SHARD) {
77
+ const shard = makeShard(`${moduleSlug}/${split.label}`, shards.length, split.records);
78
+ shards.push(shard);
79
+ total += shard.estimated_input_tokens;
80
+ continue;
81
+ }
82
+ // Split is still too large — fall back to greedy bin-packing
83
+ // by record (each record ≪ cap by construction; if a single
84
+ // record > cap, it gets its own oversized shard).
85
+ const bins = greedyBinPack(split.records);
86
+ for (let i = 0; i < bins.length; i++) {
87
+ const bin = bins[i];
88
+ if (bin === undefined)
89
+ continue;
90
+ const shard = makeShard(`${moduleSlug}/${split.label}-bin${i}`, shards.length, bin);
91
+ shards.push(shard);
92
+ total += shard.estimated_input_tokens;
93
+ }
94
+ }
95
+ }
96
+ return {
97
+ shards,
98
+ total_input_tokens_estimate: total,
99
+ cap_per_shard: MAX_INPUT_TOKENS_PER_SHARD,
100
+ };
101
+ }
102
+ export function writeShards(repoRoot, plan) {
103
+ const shardsAbs = join(repoRoot, SHARDS_JSON_PATH);
104
+ mkdirSync(dirname(shardsAbs), { recursive: true });
105
+ const tmp = `${shardsAbs}.tmp`;
106
+ writeFileSync(tmp, JSON.stringify(plan, null, 2), "utf8");
107
+ renameSync(tmp, shardsAbs);
108
+ return SHARDS_JSON_PATH;
109
+ }
110
+ /* -------------------------------------------------------------------------- */
111
+ /* Internals */
112
+ /* -------------------------------------------------------------------------- */
113
+ function makeShard(label, index, records) {
114
+ const counts = { comment: 0, doc: 0, rule: 0 };
115
+ for (const r of records)
116
+ counts[r.source_kind] += 1;
117
+ return {
118
+ shard_id: `${label}#${index.toString().padStart(4, "0")}`,
119
+ module: label.split("/")[0] ?? label,
120
+ comment_ids: records.map((r) => r.comment_id),
121
+ estimated_input_tokens: sumTokens(records),
122
+ records_by_kind: counts,
123
+ };
124
+ }
125
+ function sumTokens(records) {
126
+ let sum = 0;
127
+ for (const r of records) {
128
+ sum += Math.ceil(r.prose_clean.length / CHARS_PER_TOKEN);
129
+ }
130
+ return sum;
131
+ }
132
+ function splitByDirectoryHierarchy(records) {
133
+ // Group by the SECOND directory segment (first segment is the
134
+ // module slug we already split by). For records whose path has no
135
+ // second segment, group under "(root)".
136
+ const byDir = new Map();
137
+ for (const r of records) {
138
+ const parts = r.file.split("/");
139
+ const label = parts.length >= 2 ? `${parts[0]}/${parts[1]}` : parts[0] ?? "(root)";
140
+ const list = byDir.get(label) ?? [];
141
+ list.push(r);
142
+ byDir.set(label, list);
143
+ }
144
+ return Array.from(byDir.entries()).map(([label, list]) => ({
145
+ label: sanitizeShardLabel(label),
146
+ records: list,
147
+ }));
148
+ }
149
+ function sanitizeShardLabel(label) {
150
+ return label.replace(/[^a-zA-Z0-9_/-]/g, "_");
151
+ }
152
+ function greedyBinPack(records) {
153
+ const bins = [];
154
+ let current = [];
155
+ let currentTokens = 0;
156
+ for (const r of records) {
157
+ const tokens = Math.ceil(r.prose_clean.length / CHARS_PER_TOKEN);
158
+ if (current.length > 0 &&
159
+ currentTokens + tokens > MAX_INPUT_TOKENS_PER_SHARD) {
160
+ bins.push(current);
161
+ current = [];
162
+ currentTokens = 0;
163
+ }
164
+ current.push(r);
165
+ currentTokens += tokens;
166
+ }
167
+ if (current.length > 0)
168
+ bins.push(current);
169
+ return bins;
170
+ }
171
+ //# sourceMappingURL=corpus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"corpus.js","sourceRoot":"","sources":["../../../src/init/curator/corpus.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Curator pipeline — Phase 9c-emit (v0.9.0).
3
+ *
4
+ * Reads `.cairn/init/curator/final.jsonl` (written by the
5
+ * skill-driven curator-reduce subagent), validates each entry via
6
+ * `validateEntry`, and writes survivors directly to ground:
7
+ *
8
+ * - DEC → `.cairn/ground/decisions/<id>.md` (status: accepted)
9
+ * - INV → `.cairn/ground/invariants/<id>.md` (status: active)
10
+ *
11
+ * Frontmatter fields populated:
12
+ * - `id` — content-addressed sha7 over (title, body, capture_source)
13
+ * - `title` — verbatim from final entry
14
+ * - `status` — "accepted" (DEC) / "active" (INV)
15
+ * - `capture_source` — "init-curator"
16
+ * - `evidence_files` — array of `path[:line-range]` strings the
17
+ * curator cited as the source of the decision
18
+ * - `scope_globs` — narrow globs covering the cited evidence
19
+ * - `topic_tags` — short slugs for cross-referencing
20
+ *
21
+ * Invalid entries drop silently with a counter; operator's
22
+ * auto-accept directive (curator plan §"Decision log" Q2) means the
23
+ * bar is hard, not deferred to inbox.
24
+ */
25
+ export interface RunCuratorEmitArgs {
26
+ repoRoot: string;
27
+ }
28
+ export interface CuratorEmitWritten {
29
+ id: string;
30
+ /** Repo-relative POSIX path. */
31
+ path: string;
32
+ title: string;
33
+ }
34
+ export interface RunCuratorEmitResult {
35
+ decsWritten: CuratorEmitWritten[];
36
+ invsWritten: CuratorEmitWritten[];
37
+ /** Total dropped by validators. */
38
+ dropped: number;
39
+ /** Per-rejection-reason counts. */
40
+ dropReasons: Record<string, number>;
41
+ }
42
+ export declare function runCuratorEmit(args: RunCuratorEmitArgs): Promise<RunCuratorEmitResult>;
@@ -0,0 +1,230 @@
1
+ /**
2
+ * Curator pipeline — Phase 9c-emit (v0.9.0).
3
+ *
4
+ * Reads `.cairn/init/curator/final.jsonl` (written by the
5
+ * skill-driven curator-reduce subagent), validates each entry via
6
+ * `validateEntry`, and writes survivors directly to ground:
7
+ *
8
+ * - DEC → `.cairn/ground/decisions/<id>.md` (status: accepted)
9
+ * - INV → `.cairn/ground/invariants/<id>.md` (status: active)
10
+ *
11
+ * Frontmatter fields populated:
12
+ * - `id` — content-addressed sha7 over (title, body, capture_source)
13
+ * - `title` — verbatim from final entry
14
+ * - `status` — "accepted" (DEC) / "active" (INV)
15
+ * - `capture_source` — "init-curator"
16
+ * - `evidence_files` — array of `path[:line-range]` strings the
17
+ * curator cited as the source of the decision
18
+ * - `scope_globs` — narrow globs covering the cited evidence
19
+ * - `topic_tags` — short slugs for cross-referencing
20
+ *
21
+ * Invalid entries drop silently with a counter; operator's
22
+ * auto-accept directive (curator plan §"Decision log" Q2) means the
23
+ * bar is hard, not deferred to inbox.
24
+ */
25
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
26
+ import { join } from "node:path";
27
+ import { stringify as stringifyYaml } from "yaml";
28
+ import { bodyContentHash, decisionsDir, invariantsDir, writeDecisionsLedger, writeInvariantsLedger, } from "@isaacriehm/cairn-state";
29
+ import { computeDecisionId, computeInvariantId, scanExistingDecisionIds, scanExistingInvariantIds, } from "../../decision-capture/id.js";
30
+ import { logger } from "../../logger.js";
31
+ import { validateEntry } from "./validate.js";
32
+ import { CURATOR_FINAL_PATH } from "../phases/9b-curate.js";
33
+ const log = logger("init.curator.emit");
34
+ const CAPTURE_SOURCE = "init-curator";
35
+ export async function runCuratorEmit(args) {
36
+ const { repoRoot } = args;
37
+ const finalAbs = join(repoRoot, CURATOR_FINAL_PATH);
38
+ if (!existsSync(finalAbs)) {
39
+ return {
40
+ decsWritten: [],
41
+ invsWritten: [],
42
+ dropped: 0,
43
+ dropReasons: {},
44
+ };
45
+ }
46
+ const lines = readFileSync(finalAbs, "utf8").split("\n");
47
+ const existingDecIds = scanExistingDecisionIds(repoRoot);
48
+ const existingInvIds = scanExistingInvariantIds(repoRoot);
49
+ const decsWritten = [];
50
+ const invsWritten = [];
51
+ const dropReasons = {};
52
+ let lineNo = 0;
53
+ for (const raw of lines) {
54
+ lineNo += 1;
55
+ if (raw.trim().length === 0)
56
+ continue;
57
+ let parsed;
58
+ try {
59
+ parsed = JSON.parse(raw);
60
+ }
61
+ catch (err) {
62
+ bumpDrop(dropReasons, "json-parse-failed");
63
+ log.warn({ lineNo, err: err instanceof Error ? err.message : String(err) }, "curator final.jsonl line failed to parse");
64
+ continue;
65
+ }
66
+ const entry = coerceFinalEntry(parsed);
67
+ if (entry === null) {
68
+ bumpDrop(dropReasons, "shape-mismatch");
69
+ continue;
70
+ }
71
+ const verdict = validateEntry(entry, repoRoot);
72
+ if (!verdict.valid) {
73
+ bumpDrop(dropReasons, verdict.rejectReason ?? "unknown");
74
+ continue;
75
+ }
76
+ if (entry.kind === "DEC") {
77
+ const id = allocateDecId(entry, existingDecIds);
78
+ const path = writeDecisionFile({ repoRoot, id, entry });
79
+ existingDecIds.add(id);
80
+ decsWritten.push({ id, path, title: entry.title });
81
+ }
82
+ else {
83
+ const id = allocateInvId(entry, existingInvIds);
84
+ const path = writeInvariantFile({ repoRoot, id, entry });
85
+ existingInvIds.add(id);
86
+ invsWritten.push({ id, path, title: entry.title });
87
+ }
88
+ }
89
+ // Rebuild aggregate ledgers when we wrote anything.
90
+ if (decsWritten.length > 0) {
91
+ try {
92
+ writeDecisionsLedger({ repoRoot });
93
+ }
94
+ catch (err) {
95
+ log.warn({ err: err instanceof Error ? err.message : String(err) }, "curator decisions ledger rebuild failed");
96
+ }
97
+ }
98
+ if (invsWritten.length > 0) {
99
+ try {
100
+ writeInvariantsLedger({ repoRoot });
101
+ }
102
+ catch (err) {
103
+ log.warn({ err: err instanceof Error ? err.message : String(err) }, "curator invariants ledger rebuild failed");
104
+ }
105
+ }
106
+ const dropped = Object.values(dropReasons).reduce((a, b) => a + b, 0);
107
+ return { decsWritten, invsWritten, dropped, dropReasons };
108
+ }
109
+ /* -------------------------------------------------------------------------- */
110
+ /* Internals */
111
+ /* -------------------------------------------------------------------------- */
112
+ function bumpDrop(reasons, key) {
113
+ reasons[key] = (reasons[key] ?? 0) + 1;
114
+ }
115
+ /**
116
+ * Loose JSON → FinalEntry coercion. Returns null when required fields
117
+ * are missing or the wrong type. Validators catch deeper quality
118
+ * issues; this guard only ensures the shape is parseable.
119
+ */
120
+ function coerceFinalEntry(raw) {
121
+ if (typeof raw !== "object" || raw === null)
122
+ return null;
123
+ const o = raw;
124
+ const kind = o["kind"];
125
+ if (kind !== "DEC" && kind !== "INV")
126
+ return null;
127
+ const title = o["title"];
128
+ if (typeof title !== "string")
129
+ return null;
130
+ const body = o["body"];
131
+ if (typeof body !== "string")
132
+ return null;
133
+ const scope = o["scope_globs"];
134
+ if (!Array.isArray(scope))
135
+ return null;
136
+ const evidence = o["evidence_files"];
137
+ if (!Array.isArray(evidence))
138
+ return null;
139
+ const tags = o["topic_tags"];
140
+ if (!Array.isArray(tags))
141
+ return null;
142
+ return {
143
+ kind,
144
+ title,
145
+ body,
146
+ scope_globs: scope.filter((s) => typeof s === "string"),
147
+ evidence_files: evidence.filter((s) => typeof s === "string"),
148
+ topic_tags: tags.filter((s) => typeof s === "string"),
149
+ };
150
+ }
151
+ function allocateDecId(entry, existing) {
152
+ return computeDecisionId({
153
+ title: entry.title,
154
+ rationale: entry.body,
155
+ capture_source: CAPTURE_SOURCE,
156
+ scope_globs: entry.scope_globs,
157
+ body_markdown: entry.body,
158
+ }, existing);
159
+ }
160
+ function allocateInvId(entry, existing) {
161
+ // Invariant id derivation hashes a smaller surface — pin
162
+ // (title, raw=body, capture_source) so curator ids stay stable
163
+ // across re-runs that produce the same final entry.
164
+ return computeInvariantId({
165
+ title: entry.title,
166
+ raw: entry.body,
167
+ }, existing);
168
+ }
169
+ function writeDecisionFile(args) {
170
+ const dir = decisionsDir(args.repoRoot);
171
+ mkdirSync(dir, { recursive: true });
172
+ const filename = `${args.id}.md`;
173
+ const abs = join(dir, filename);
174
+ writeFileSync(abs, renderDecision(args), "utf8");
175
+ return `.cairn/ground/decisions/${filename}`;
176
+ }
177
+ function writeInvariantFile(args) {
178
+ const dir = invariantsDir(args.repoRoot);
179
+ mkdirSync(dir, { recursive: true });
180
+ const filename = `${args.id}.md`;
181
+ const abs = join(dir, filename);
182
+ writeFileSync(abs, renderInvariant(args), "utf8");
183
+ return `.cairn/ground/invariants/${filename}`;
184
+ }
185
+ function renderDecision(args) {
186
+ const now = new Date().toISOString();
187
+ const fm = {
188
+ id: args.id,
189
+ title: args.entry.title,
190
+ type: "adr",
191
+ status: "accepted",
192
+ audience: "dual",
193
+ generated: now,
194
+ "verified-at": now,
195
+ decided_at: now.slice(0, 10),
196
+ decided_by: CAPTURE_SOURCE,
197
+ capture_source: CAPTURE_SOURCE,
198
+ sot_kind: "ledger",
199
+ sot_path: "ledger",
200
+ sot_content_hash: bodyContentHash(args.entry.body),
201
+ scope_globs: args.entry.scope_globs,
202
+ evidence_files: args.entry.evidence_files,
203
+ topic_tags: args.entry.topic_tags,
204
+ };
205
+ return joinFrontmatter(fm, args.entry.body);
206
+ }
207
+ function renderInvariant(args) {
208
+ const now = new Date().toISOString();
209
+ const fm = {
210
+ id: args.id,
211
+ title: args.entry.title,
212
+ type: "invariant",
213
+ status: "active",
214
+ audience: "dual",
215
+ generated: now,
216
+ "verified-at": now,
217
+ capture_source: CAPTURE_SOURCE,
218
+ sot_kind: "ledger",
219
+ sot_path: "ledger",
220
+ sot_content_hash: bodyContentHash(args.entry.body),
221
+ scope_globs: args.entry.scope_globs,
222
+ evidence_files: args.entry.evidence_files,
223
+ topic_tags: args.entry.topic_tags,
224
+ };
225
+ return joinFrontmatter(fm, args.entry.body);
226
+ }
227
+ function joinFrontmatter(fm, body) {
228
+ return ["---", stringifyYaml(fm).trimEnd(), "---", "", body.trim(), ""].join("\n");
229
+ }
230
+ //# sourceMappingURL=emit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emit.js","sourceRoot":"","sources":["../../../src/init/curator/emit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export { validateEntry, stripLineRange, type FinalEntry, type ValidationResult, } from "./validate.js";
@@ -0,0 +1,2 @@
1
+ export { validateEntry, stripLineRange, } from "./validate.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/init/curator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,cAAc,GAGf,MAAM,eAAe,CAAC"}