@isaacriehm/cairn-core 0.5.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -1
- package/dist/align-undo/log.d.ts +2 -2
- package/dist/align-undo/log.js +80 -17
- package/dist/align-undo/log.js.map +1 -1
- package/dist/align-undo/undo.d.ts +10 -11
- package/dist/align-undo/undo.js +233 -23
- package/dist/align-undo/undo.js.map +1 -1
- package/dist/attention/bulk-accept.js +65 -37
- package/dist/attention/bulk-accept.js.map +1 -1
- package/dist/attention/serve/api.js +10 -18
- package/dist/attention/serve/api.js.map +1 -1
- package/dist/attention/serve/index.js +3 -3
- package/dist/attention/serve/index.js.map +1 -1
- package/dist/drain/drain.js +4 -4
- package/dist/drain/drain.js.map +1 -1
- package/dist/fix-align/index.d.ts +2 -0
- package/dist/fix-align/index.js +1 -0
- package/dist/fix-align/index.js.map +1 -1
- package/dist/fix-align/sentinel.d.ts +59 -0
- package/dist/fix-align/sentinel.js +149 -0
- package/dist/fix-align/sentinel.js.map +1 -0
- package/dist/fs.d.ts +5 -0
- package/dist/fs.js +11 -0
- package/dist/fs.js.map +1 -0
- package/dist/gc/apply.js +4 -4
- package/dist/gc/apply.js.map +1 -1
- package/dist/ground/anchor-map.js +3 -4
- package/dist/ground/anchor-map.js.map +1 -1
- package/dist/ground/file-candidates-map.d.ts +23 -0
- package/dist/ground/file-candidates-map.js +76 -0
- package/dist/ground/file-candidates-map.js.map +1 -0
- package/dist/ground/frontmatter.d.ts +12 -0
- package/dist/ground/frontmatter.js +28 -0
- package/dist/ground/frontmatter.js.map +1 -1
- package/dist/ground/index.d.ts +6 -4
- package/dist/ground/index.js +6 -4
- package/dist/ground/index.js.map +1 -1
- package/dist/ground/paths.d.ts +2 -0
- package/dist/ground/paths.js +6 -0
- package/dist/ground/paths.js.map +1 -1
- package/dist/ground/rejected.d.ts +42 -0
- package/dist/ground/rejected.js +100 -0
- package/dist/ground/rejected.js.map +1 -0
- package/dist/ground/schemas.d.ts +88 -8
- package/dist/ground/schemas.js +73 -19
- package/dist/ground/schemas.js.map +1 -1
- package/dist/ground/scope-index.js +4 -4
- package/dist/ground/scope-index.js.map +1 -1
- package/dist/ground/sot-bindings.js +3 -4
- package/dist/ground/sot-bindings.js.map +1 -1
- package/dist/ground/sot-cache.js +3 -4
- package/dist/ground/sot-cache.js.map +1 -1
- package/dist/ground/topic-index.d.ts +7 -0
- package/dist/ground/topic-index.js +26 -4
- package/dist/ground/topic-index.js.map +1 -1
- package/dist/hooks/post-tool-use/index.d.ts +1 -1
- package/dist/hooks/post-tool-use/index.js +1 -1
- package/dist/hooks/post-tool-use/index.js.map +1 -1
- package/dist/hooks/post-tool-use/ledger-cache.d.ts +13 -0
- package/dist/hooks/post-tool-use/ledger-cache.js +48 -0
- package/dist/hooks/post-tool-use/ledger-cache.js.map +1 -1
- package/dist/hooks/post-tool-use/legend-builder.d.ts +10 -1
- package/dist/hooks/post-tool-use/legend-builder.js +27 -2
- package/dist/hooks/post-tool-use/legend-builder.js.map +1 -1
- package/dist/hooks/post-tool-use/read-enricher.js +8 -2
- package/dist/hooks/post-tool-use/read-enricher.js.map +1 -1
- package/dist/hooks/post-tool-use/sot-align.js +11 -16
- package/dist/hooks/post-tool-use/sot-align.js.map +1 -1
- package/dist/hooks/pre-commit/sot-align-precommit.js +3 -3
- package/dist/hooks/pre-commit/sot-align-precommit.js.map +1 -1
- package/dist/init/index.d.ts +2 -2
- package/dist/init/index.js +1 -1
- package/dist/init/index.js.map +1 -1
- package/dist/init/ingest-docs.d.ts +82 -22
- package/dist/init/ingest-docs.js +632 -108
- package/dist/init/ingest-docs.js.map +1 -1
- package/dist/init/init.d.ts +10 -1
- package/dist/init/init.js +113 -251
- package/dist/init/init.js.map +1 -1
- package/dist/init/mapper-parallel.js +8 -0
- package/dist/init/mapper-parallel.js.map +1 -1
- package/dist/init/mapper.js +6 -6
- package/dist/init/mapper.js.map +1 -1
- package/dist/init/phases/6-docs-ingest.d.ts +9 -4
- package/dist/init/phases/6-docs-ingest.js +13 -10
- package/dist/init/phases/6-docs-ingest.js.map +1 -1
- package/dist/init/phases/parallel-678.js +10 -4
- package/dist/init/phases/parallel-678.js.map +1 -1
- package/dist/init/sot-emit.d.ts +22 -0
- package/dist/init/sot-emit.js +51 -9
- package/dist/init/sot-emit.js.map +1 -1
- package/dist/init/source-comments/ingest.js +107 -7
- package/dist/init/source-comments/ingest.js.map +1 -1
- package/dist/init/topic-index/index.d.ts +14 -0
- package/dist/init/topic-index/index.js +83 -4
- package/dist/init/topic-index/index.js.map +1 -1
- package/dist/init/topic-index/judge.js +14 -1
- package/dist/init/topic-index/judge.js.map +1 -1
- package/dist/init/topic-index/resolve.d.ts +19 -0
- package/dist/init/topic-index/resolve.js +100 -14
- package/dist/init/topic-index/resolve.js.map +1 -1
- package/dist/init/topic-index/walk.d.ts +32 -0
- package/dist/init/topic-index/walk.js +70 -4
- package/dist/init/topic-index/walk.js.map +1 -1
- package/dist/mcp/history/summarizer.js +5 -0
- package/dist/mcp/history/summarizer.js.map +1 -1
- package/dist/mcp/schemas.d.ts +48 -0
- package/dist/mcp/schemas.js +43 -0
- package/dist/mcp/schemas.js.map +1 -1
- package/dist/mcp/tools/index.d.ts +1 -1
- package/dist/mcp/tools/index.js +8 -0
- package/dist/mcp/tools/index.js.map +1 -1
- package/dist/mcp/tools/init-phases.js.map +1 -1
- package/dist/mcp/tools/propose-decision.d.ts +34 -0
- package/dist/mcp/tools/propose-decision.js +200 -0
- package/dist/mcp/tools/propose-decision.js.map +1 -0
- package/dist/mcp/tools/record-decision.js +5 -2
- package/dist/mcp/tools/record-decision.js.map +1 -1
- package/dist/mcp/tools/reject-candidate.d.ts +24 -0
- package/dist/mcp/tools/reject-candidate.js +71 -0
- package/dist/mcp/tools/reject-candidate.js.map +1 -0
- package/dist/mcp/tools/resolve-attention.js +7 -54
- package/dist/mcp/tools/resolve-attention.js.map +1 -1
- package/dist/mcp/tools/search-candidates.d.ts +20 -0
- package/dist/mcp/tools/search-candidates.js +93 -0
- package/dist/mcp/tools/search-candidates.js.map +1 -0
- package/package.json +1 -1
- package/templates/attention-ui/app.js +40 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ingest-docs.js","sourceRoot":"","sources":["../../src/init/ingest-docs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EACL,UAAU,EAEV,WAAW,EACX,QAAQ,GACT,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EACL,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,eAAe,GAEhB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAA2B,MAAM,eAAe,CAAC;AAE5E,MAAM,GAAG,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAEvC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,MAAM,YAAY,GAAG,KAAK,CAAC;AAE3B,0EAA0E;AAC1E,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;IACxB,QAAQ;IACR,cAAc;IACd,MAAM;IACN,MAAM;IACN,OAAO;IACP,KAAK;IACL,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,UAAU;CACX,CAAC,CAAC;AAqDH,gFAAgF;AAChF,gFAAgF;AAChF,gFAAgF;AAEhF,MAAM,UAAU,YAAY,CAAC,QAAgB;IAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,WAAW,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IACpC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,WAAW,CAAC,GAAW,EAAE,QAAgB,EAAE,GAAmB;IACrE,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IACxE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;IACT,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC;YACtB,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;YAChC,SAAS;QACX,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS;QACzD,IAAI,EAAE,CAAC;QACP,IAAI,CAAC;YACH,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACvG,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,GAAW;IAC3B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC;IACvC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;AACxB,CAAC;AAED,gFAAgF;AAChF,gFAAgF;AAChF,gFAAgF;AAEhF,MAAM,eAAe,GAAG;IACtB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,kBAAkB,EAAE,UAAU,EAAE,OAAO,CAAC;SAC3E;QACD,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KAClC;IACD,QAAQ,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC;CAC3B,CAAC;AAEX,MAAM,eAAe,GAAG;;;;;;;;;;;;;;wDAcgC,CAAC;AAEzD,KAAK,UAAU,aAAa,CAC1B,KAAsB,EACtB,IAAY;IAEZ,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC;IAClG,MAAM,MAAM,GAAG,WAAW,KAAK,CAAC,UAAU,WAAW,KAAK,CAAC,IAAI,YAAY,MAAM,EAAE,CAAC;IACpF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;QAC7B,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,eAAe;QACvB,MAAM;QACN,UAAU,EAAE,eAAe;QAC3B,SAAS,EAAE,kBAAkB;QAC7B,qBAAqB,EAAE,IAAI;KAC5B,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IACD,MAAM,CAAC,GAAG,MAAiC,CAAC;IAC5C,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;IACvB,IACE,IAAI,KAAK,UAAU;QACnB,IAAI,KAAK,aAAa;QACtB,IAAI,KAAK,kBAAkB;QAC3B,IAAI,KAAK,UAAU;QACnB,IAAI,KAAK,OAAO,EAChB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,OAAO;QACL,IAAI;QACJ,aAAa,EAAE,OAAO,CAAC,CAAC,eAAe,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE;KAChF,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,gFAAgF;AAChF,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAA0B;IAE1B,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE/C,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CACzE,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAC9C,CAAC;IAEF,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,GAAG,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;QAClE,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC;IAC7D,CAAC;IAED,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC;QACtC,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,UAAU;QACV,SAAS;QACT,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;QAChE,UAAU,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;YACpC,IAAI,GAAsB,CAAC;YAC3B,IAAI,CAAC;gBACH,GAAG,GAAG,IAAI,CAAC,YAAY,KAAK,SAAS;oBACnC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC;oBAChC,CAAC,CAAC,MAAM,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACvC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,IAAI,CACN,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3E,6BAA6B,CAC9B,CAAC;gBACF,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAA+B,CAAC;YAClE,CAAC;YACD,SAAS,IAAI,CAAC,CAAC;YACf,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBACvC,IAAI,CAAC,eAAe,CAAC;oBACnB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,OAAO,EAAE,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,GAAG,CAAC,IAAI,KAAK,aAAa;oBAC9D,KAAK,EAAE,gBAAgB,CAAC,MAAM;iBAC/B,CAAC,CAAC;YACL,CAAC;YACD,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,GAAG,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBAC1D,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,aAAa,EAA+B,CAAC;YACrF,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,aAAa,EAA+B,CAAC;QACjF,CAAC;QACD,QAAQ,EAAE,MAAM;QAChB,cAAc,EAAE,kBAAkB;KACnC,CAAC,CAAC;IAEH,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjD,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3C,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAElD,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC/C,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,IAAI,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,IAAI,EAAE,GAAG,CAAC,IAAI;KACf,CAAC,CAAC,CAAC;IAEJ,GAAG,CAAC,IAAI,CACN;QACE,OAAO,EAAE,gBAAgB,CAAC,MAAM;QAChC,OAAO,EAAE,WAAW,CAAC,MAAM;QAC3B,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM;QAC9B,SAAS;KACV,EACD,kBAAkB,CACnB,CAAC;IAEF,OAAO;QACL,WAAW;QACX,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,cAAc,EAAE,gBAAgB,CAAC,MAAM;KACxC,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,EAAU;IACjC,OAAO,2BAA2B,EAAE,KAAK,CAAC;AAC5C,CAAC;AAED;;;;;GAKG;AACH,SAAS,QAAQ,CAAC,KAA2E;IAC3F,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,UAAU,CAAC,CAAC;IACtE,OAAO,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC;AACjD,CAAC"}
|
|
1
|
+
{"version":3,"file":"ingest-docs.js","sourceRoot":"","sources":["../../src/init/ingest-docs.ts"],"names":[],"mappings":"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"}
|
package/dist/init/init.d.ts
CHANGED
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
*/
|
|
17
17
|
import { type BrandAnswers } from "./brand-setup.js";
|
|
18
18
|
import { type BaselineAuditResult } from "./baseline-audit.js";
|
|
19
|
-
import { type IngestionResult } from "./ingest-docs.js";
|
|
19
|
+
import { type DocClassification, type IngestionResult } from "./ingest-docs.js";
|
|
20
|
+
import type { TopicIndexEntry } from "../ground/index.js";
|
|
20
21
|
import { type SemanticJudge } from "./topic-index/index.js";
|
|
21
22
|
import { type CommentClassification, type IngestSourceCommentsResult } from "./source-comments/index.js";
|
|
22
23
|
import { type RuleClassification, type RunRulesMergeResult } from "./rules-merge/index.js";
|
|
@@ -126,6 +127,14 @@ export interface RunInitArgs {
|
|
|
126
127
|
* trip the Jaccard similarity threshold.
|
|
127
128
|
*/
|
|
128
129
|
mockTopicIndexJudge?: SemanticJudge;
|
|
130
|
+
/**
|
|
131
|
+
* Test override for the phase 6 docs-ingestion classifier. When set,
|
|
132
|
+
* Stages 1 + 2 (file filter + section classify) are bypassed; every
|
|
133
|
+
* non-marker topic-index doc candidate flows through this synchronous
|
|
134
|
+
* mock instead of Haiku. Mirrors {@link RunDocsIngestionArgs.mockClassify}
|
|
135
|
+
* so smokes can exercise the Stage 4 draft-emit path end-to-end.
|
|
136
|
+
*/
|
|
137
|
+
mockIngestionClassify?: (entry: TopicIndexEntry, body: string) => DocClassification;
|
|
129
138
|
}
|
|
130
139
|
export interface InitResult {
|
|
131
140
|
detection: DetectionResult;
|
package/dist/init/init.js
CHANGED
|
@@ -46,6 +46,7 @@ export async function runInit(args = {}) {
|
|
|
46
46
|
const cwd = process.cwd();
|
|
47
47
|
const mode = args.mode ?? "interactive";
|
|
48
48
|
const warnings = [];
|
|
49
|
+
const initStartMs = Date.now();
|
|
49
50
|
// ── Phase -1: self-adoption hard stop ──────────────────────────────
|
|
50
51
|
// If repoRoot or cwd looks like the Cairn source repo itself, refuse —
|
|
51
52
|
// running init here would overwrite cairn internals.
|
|
@@ -309,14 +310,23 @@ export async function runInit(args = {}) {
|
|
|
309
310
|
// runs every runnable sensor against the full codebase to surface pre-
|
|
310
311
|
// Cairn debt. Both pieces are best-effort; failures degrade to empty
|
|
311
312
|
// result, never block the init.
|
|
312
|
-
const
|
|
313
|
+
const phase6Args = {
|
|
313
314
|
repoRoot,
|
|
314
315
|
decidedSlug,
|
|
315
316
|
detection,
|
|
316
317
|
mapperOutput,
|
|
317
|
-
|
|
318
|
+
// Auto mode skips Haiku-backed ingestion by default. Smokes that
|
|
319
|
+
// need to exercise the phase-6 emit path (e2e-adoption,
|
|
320
|
+
// ingestion-baseline) provide `mockIngestionClassify` so the
|
|
321
|
+
// pipeline runs end-to-end without burning Haiku.
|
|
322
|
+
skip: args.skipIngestion === true ||
|
|
323
|
+
(mode === "auto" && args.mockIngestionClassify === undefined),
|
|
318
324
|
warnings,
|
|
319
|
-
}
|
|
325
|
+
};
|
|
326
|
+
if (args.mockIngestionClassify !== undefined) {
|
|
327
|
+
phase6Args.mockClassify = args.mockIngestionClassify;
|
|
328
|
+
}
|
|
329
|
+
const phase6 = await runPhaseSix(phase6Args);
|
|
320
330
|
// ── Phase 7b: source-comment ingestion ─────────────────────────────
|
|
321
331
|
// Walks every source file, batches block-comments through Haiku, files
|
|
322
332
|
// DEC drafts + invariant proposals + canonical citations into
|
|
@@ -415,20 +425,15 @@ export async function runInit(args = {}) {
|
|
|
415
425
|
// (PLUGIN_ARCHITECTURE §7). Init no longer writes it; the next
|
|
416
426
|
// SessionStart in any clone seeds the per-session file with the
|
|
417
427
|
// current attention_count derived from drafts + baseline findings.
|
|
418
|
-
// ── Step 6: completion summary (
|
|
428
|
+
// ── Step 6: completion summary (terse, per PHASE_6_REDESIGN §4.9) ──
|
|
419
429
|
printCompletionSummary({
|
|
420
430
|
projectName: decidedSlug,
|
|
421
431
|
repoRoot,
|
|
422
|
-
seededFiles: seed.written_files,
|
|
423
|
-
brandSetup,
|
|
424
|
-
submodules: submoduleSummary,
|
|
425
|
-
scanTruncated: repoSummary.truncated_at_file_cap ||
|
|
426
|
-
repoSummary.truncated_at_depth_cap,
|
|
427
432
|
mapperFallbackSlugs,
|
|
428
|
-
ingestion: phase6.ingestion,
|
|
429
433
|
baselineAudit: phase6.baselineAudit,
|
|
430
434
|
logFilePath,
|
|
431
435
|
warnings,
|
|
436
|
+
durationMs: Date.now() - initStartMs,
|
|
432
437
|
});
|
|
433
438
|
log.info({
|
|
434
439
|
repo_root: repoRoot,
|
|
@@ -706,58 +711,43 @@ async function preflightSubmodules(args) {
|
|
|
706
711
|
success: true,
|
|
707
712
|
};
|
|
708
713
|
}
|
|
714
|
+
/**
|
|
715
|
+
* Cold-start summary, locked wording from PHASE_6_REDESIGN §4.9.
|
|
716
|
+
*
|
|
717
|
+
* Adopted <project> in <duration>.
|
|
718
|
+
* - <N> active rules baseline verified.
|
|
719
|
+
* - <M> new decision drafts found.
|
|
720
|
+
* - <K> unpromoted candidates indexed.
|
|
721
|
+
*
|
|
722
|
+
* Run `cairn attention` to review drafts and commit them to the ledger.
|
|
723
|
+
*
|
|
724
|
+
* No auto-wizard. No statusline drumbeat. Operator drives the next
|
|
725
|
+
* step. Warnings (if any) tail the locked block. Rich operational
|
|
726
|
+
* status moved to `cairn doctor`.
|
|
727
|
+
*/
|
|
709
728
|
function printCompletionSummary(args) {
|
|
710
|
-
const
|
|
711
|
-
const
|
|
712
|
-
const
|
|
713
|
-
const
|
|
714
|
-
const mcpReport = describeMcpRegistration(args.repoRoot);
|
|
729
|
+
const N = describeActiveRulesVerified(args.baselineAudit);
|
|
730
|
+
const M = countInboxDrafts(args.repoRoot);
|
|
731
|
+
const K = countUnpromotedCandidates(args.repoRoot);
|
|
732
|
+
const duration = formatDuration(args.durationMs);
|
|
715
733
|
info("");
|
|
716
|
-
info(`
|
|
734
|
+
info(` Adopted ${args.projectName} in ${duration}.`);
|
|
735
|
+
info(` - ${N} active rules baseline verified.`);
|
|
736
|
+
info(` - ${M} new decision drafts found.`);
|
|
737
|
+
info(` - ${K} unpromoted candidates indexed.`);
|
|
717
738
|
info("");
|
|
718
|
-
info(
|
|
719
|
-
|
|
720
|
-
|
|
739
|
+
info(" Run `cairn attention` to review drafts and commit them to the ledger.");
|
|
740
|
+
if (args.logFilePath !== null) {
|
|
741
|
+
info("");
|
|
742
|
+
info(` Log ${shortenHomePath(args.logFilePath)}`);
|
|
743
|
+
}
|
|
721
744
|
if (args.mapperFallbackSlugs.length > 0) {
|
|
722
745
|
const head = args.mapperFallbackSlugs.slice(0, 3).join(", ");
|
|
723
746
|
const more = args.mapperFallbackSlugs.length > 3
|
|
724
747
|
? ` +${args.mapperFallbackSlugs.length - 3} more`
|
|
725
748
|
: "";
|
|
726
|
-
info(`
|
|
727
|
-
}
|
|
728
|
-
info(` Brand ${brandReport}`);
|
|
729
|
-
info(` Scope index ${scopeReport.line}`);
|
|
730
|
-
if (scopeReport.followUp !== null) {
|
|
731
|
-
info(` ${scopeReport.followUp}`);
|
|
732
|
-
}
|
|
733
|
-
if (args.logFilePath !== null) {
|
|
734
|
-
info(` Log ${shortenHomePath(args.logFilePath)}`);
|
|
749
|
+
info(` Mapper fallback ${head}${more} — rerun cairn scope rebuild`);
|
|
735
750
|
}
|
|
736
|
-
// Project brain populated from existing codebase.
|
|
737
|
-
const ingestionReport = describeIngestion(args.ingestion);
|
|
738
|
-
const canonicalReport = describeCanonical(args.ingestion);
|
|
739
|
-
const baselineReport = describeBaseline(args.baselineAudit);
|
|
740
|
-
if (ingestionReport !== null ||
|
|
741
|
-
canonicalReport !== null ||
|
|
742
|
-
baselineReport !== null) {
|
|
743
|
-
info("");
|
|
744
|
-
info(" Project brain populated from existing codebase:");
|
|
745
|
-
if (ingestionReport !== null) {
|
|
746
|
-
info(` DEC drafts ${ingestionReport}`);
|
|
747
|
-
}
|
|
748
|
-
if (canonicalReport !== null) {
|
|
749
|
-
info(` Canonical map ${canonicalReport}`);
|
|
750
|
-
}
|
|
751
|
-
if (baselineReport !== null) {
|
|
752
|
-
info(` Baseline debt ${baselineReport}`);
|
|
753
|
-
}
|
|
754
|
-
}
|
|
755
|
-
info("");
|
|
756
|
-
info(" Open Claude Code in this directory. Cairn is live immediately.");
|
|
757
|
-
info("");
|
|
758
|
-
info(" Next: cairn attention see pending items");
|
|
759
|
-
info(" cairn doctor verify everything is working");
|
|
760
|
-
info(" cairn configure brand fill in brand guidelines");
|
|
761
751
|
if (args.warnings.length > 0) {
|
|
762
752
|
info("");
|
|
763
753
|
info(` ${args.warnings.length} warning${args.warnings.length === 1 ? "" : "s"}:`);
|
|
@@ -765,180 +755,75 @@ function printCompletionSummary(args) {
|
|
|
765
755
|
info(` ! ${w}`);
|
|
766
756
|
}
|
|
767
757
|
}
|
|
768
|
-
function
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
function countGroundFiles(repoRoot) {
|
|
775
|
-
const groundDir = join(repoRoot, ".cairn", "ground");
|
|
776
|
-
if (!existsSync(groundDir))
|
|
758
|
+
function describeActiveRulesVerified(audit) {
|
|
759
|
+
// "Active rules baseline verified" = sensors that ran clean against
|
|
760
|
+
// the existing codebase. A clean sensor means the project already
|
|
761
|
+
// satisfies the rule it enforces — that's the baseline. Skipped
|
|
762
|
+
// sensors and sensors with findings don't count.
|
|
763
|
+
if (audit === null)
|
|
777
764
|
return 0;
|
|
778
|
-
|
|
779
|
-
const stack = [groundDir];
|
|
780
|
-
while (stack.length > 0) {
|
|
781
|
-
const dir = stack.pop();
|
|
782
|
-
if (dir === undefined)
|
|
783
|
-
break;
|
|
784
|
-
let entries;
|
|
785
|
-
try {
|
|
786
|
-
entries = readdirSync(dir, { withFileTypes: true, encoding: "utf8" });
|
|
787
|
-
}
|
|
788
|
-
catch {
|
|
789
|
-
continue;
|
|
790
|
-
}
|
|
791
|
-
for (const e of entries) {
|
|
792
|
-
const abs = join(dir, e.name);
|
|
793
|
-
if (e.isDirectory()) {
|
|
794
|
-
if (e.name === "_inbox")
|
|
795
|
-
continue;
|
|
796
|
-
stack.push(abs);
|
|
797
|
-
}
|
|
798
|
-
else if (e.isFile()) {
|
|
799
|
-
count++;
|
|
800
|
-
}
|
|
801
|
-
}
|
|
802
|
-
}
|
|
803
|
-
return count;
|
|
765
|
+
return audit.cleanSensorIds.length;
|
|
804
766
|
}
|
|
805
|
-
function
|
|
806
|
-
const
|
|
807
|
-
if (!existsSync(
|
|
767
|
+
function countInboxDrafts(repoRoot) {
|
|
768
|
+
const inbox = join(repoRoot, ".cairn", "ground", "decisions", "_inbox");
|
|
769
|
+
if (!existsSync(inbox))
|
|
808
770
|
return 0;
|
|
771
|
+
let entries;
|
|
809
772
|
try {
|
|
810
|
-
|
|
811
|
-
if (typeof parsed !== "object" || parsed === null)
|
|
812
|
-
return 0;
|
|
813
|
-
const sensorsRaw = parsed["sensors"];
|
|
814
|
-
if (!Array.isArray(sensorsRaw))
|
|
815
|
-
return 0;
|
|
816
|
-
return sensorsRaw.length;
|
|
773
|
+
entries = readdirSync(inbox, { withFileTypes: true, encoding: "utf8" });
|
|
817
774
|
}
|
|
818
775
|
catch {
|
|
819
776
|
return 0;
|
|
820
777
|
}
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
const truncationFollowUp = "Run cairn scope rebuild for full classification";
|
|
828
|
-
if (!existsSync(path)) {
|
|
829
|
-
return {
|
|
830
|
-
line: "missing — run cairn scope rebuild",
|
|
831
|
-
followUp: null,
|
|
832
|
-
};
|
|
778
|
+
let n = 0;
|
|
779
|
+
for (const e of entries) {
|
|
780
|
+
if (!e.isFile())
|
|
781
|
+
continue;
|
|
782
|
+
if (e.name.endsWith(".draft.md"))
|
|
783
|
+
n += 1;
|
|
833
784
|
}
|
|
785
|
+
return n;
|
|
786
|
+
}
|
|
787
|
+
function countUnpromotedCandidates(repoRoot) {
|
|
788
|
+
const path = join(repoRoot, ".cairn", "ground", "topic-index.yaml");
|
|
789
|
+
if (!existsSync(path))
|
|
790
|
+
return 0;
|
|
791
|
+
let parsed;
|
|
834
792
|
try {
|
|
835
|
-
|
|
836
|
-
if (typeof parsed !== "object" || parsed === null) {
|
|
837
|
-
return {
|
|
838
|
-
line: "empty — run cairn scope rebuild",
|
|
839
|
-
followUp: null,
|
|
840
|
-
};
|
|
841
|
-
}
|
|
842
|
-
const filesRaw = parsed["files"];
|
|
843
|
-
if (typeof filesRaw !== "object" || filesRaw === null) {
|
|
844
|
-
return {
|
|
845
|
-
line: "empty — run cairn scope rebuild",
|
|
846
|
-
followUp: null,
|
|
847
|
-
};
|
|
848
|
-
}
|
|
849
|
-
const count = Object.keys(filesRaw).length;
|
|
850
|
-
if (count === 0) {
|
|
851
|
-
if (scanTruncated) {
|
|
852
|
-
return {
|
|
853
|
-
line: "empty — analysis was truncated during init",
|
|
854
|
-
followUp: truncationFollowUp,
|
|
855
|
-
};
|
|
856
|
-
}
|
|
857
|
-
return {
|
|
858
|
-
line: submoduleNoteJustInitialized
|
|
859
|
-
? "empty — submodules now initialized, run cairn scope rebuild"
|
|
860
|
-
: "empty — run cairn scope rebuild",
|
|
861
|
-
followUp: null,
|
|
862
|
-
};
|
|
863
|
-
}
|
|
864
|
-
if (scanTruncated) {
|
|
865
|
-
return {
|
|
866
|
-
line: "partial — analysis was truncated during init",
|
|
867
|
-
followUp: truncationFollowUp,
|
|
868
|
-
};
|
|
869
|
-
}
|
|
870
|
-
if (submoduleNoteJustInitialized) {
|
|
871
|
-
return {
|
|
872
|
-
line: `partial — ${count} file${count === 1 ? "" : "s"} classified (submodules now initialized)`,
|
|
873
|
-
followUp: truncationFollowUp,
|
|
874
|
-
};
|
|
875
|
-
}
|
|
876
|
-
return {
|
|
877
|
-
line: `ready (${count} file${count === 1 ? "" : "s"} classified)`,
|
|
878
|
-
followUp: null,
|
|
879
|
-
};
|
|
793
|
+
parsed = parseYaml(readFileSync(path, "utf8"));
|
|
880
794
|
}
|
|
881
795
|
catch {
|
|
882
|
-
return
|
|
883
|
-
line: "unreadable — run cairn scope rebuild",
|
|
884
|
-
followUp: null,
|
|
885
|
-
};
|
|
796
|
+
return 0;
|
|
886
797
|
}
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
const
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
for (const p of all) {
|
|
896
|
-
if (!existsSync(p))
|
|
798
|
+
if (typeof parsed !== "object" || parsed === null)
|
|
799
|
+
return 0;
|
|
800
|
+
const topics = parsed["topics"];
|
|
801
|
+
if (typeof topics !== "object" || topics === null)
|
|
802
|
+
return 0;
|
|
803
|
+
let n = 0;
|
|
804
|
+
for (const entry of Object.values(topics)) {
|
|
805
|
+
if (typeof entry !== "object" || entry === null)
|
|
897
806
|
continue;
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
currentCount++;
|
|
807
|
+
if (entry["dec_id"] === undefined)
|
|
808
|
+
n += 1;
|
|
901
809
|
}
|
|
902
|
-
|
|
903
|
-
return "missing — re-run cairn init";
|
|
904
|
-
if (currentCount === total)
|
|
905
|
-
return "ready";
|
|
906
|
-
if (currentCount === 0)
|
|
907
|
-
return "draft — run cairn configure brand";
|
|
908
|
-
return `partial (${currentCount}/${total} current) — run cairn configure brand`;
|
|
810
|
+
return n;
|
|
909
811
|
}
|
|
910
|
-
function
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
}
|
|
920
|
-
catch {
|
|
921
|
-
return null;
|
|
922
|
-
}
|
|
812
|
+
function formatDuration(ms) {
|
|
813
|
+
if (ms < 1_000)
|
|
814
|
+
return `${ms}ms`;
|
|
815
|
+
const seconds = ms / 1_000;
|
|
816
|
+
if (seconds < 60)
|
|
817
|
+
return `${seconds.toFixed(1)}s`;
|
|
818
|
+
const minutes = Math.floor(seconds / 60);
|
|
819
|
+
const remSeconds = Math.round(seconds - minutes * 60);
|
|
820
|
+
return `${minutes}m ${remSeconds}s`;
|
|
923
821
|
}
|
|
924
|
-
function
|
|
925
|
-
const
|
|
926
|
-
if (
|
|
927
|
-
return
|
|
928
|
-
|
|
929
|
-
const parsed = JSON.parse(readFileSync(path, "utf8"));
|
|
930
|
-
const servers = parsed["mcpServers"];
|
|
931
|
-
if (typeof servers !== "object" || servers === null) {
|
|
932
|
-
return ".mcp.json · missing cairn entry";
|
|
933
|
-
}
|
|
934
|
-
if (servers["cairn"] !== undefined) {
|
|
935
|
-
return ".mcp.json · ready";
|
|
936
|
-
}
|
|
937
|
-
return ".mcp.json · missing cairn entry";
|
|
938
|
-
}
|
|
939
|
-
catch {
|
|
940
|
-
return ".mcp.json · unreadable";
|
|
941
|
-
}
|
|
822
|
+
function shortenHomePath(abs) {
|
|
823
|
+
const home = homedir();
|
|
824
|
+
if (abs.startsWith(home))
|
|
825
|
+
return `~${abs.slice(home.length)}`;
|
|
826
|
+
return abs;
|
|
942
827
|
}
|
|
943
828
|
function printDiscovery(d, decidedSlug, warnings, summary) {
|
|
944
829
|
process.stdout.write("\n");
|
|
@@ -1010,21 +895,29 @@ async function runPhaseSix(args) {
|
|
|
1010
895
|
}
|
|
1011
896
|
process.stdout.write("\n");
|
|
1012
897
|
process.stdout.write(` ${visualC.bold("Phase 6")} — ingesting existing project knowledge…\n`);
|
|
1013
|
-
// ── 6.1 — docs ingestion (
|
|
898
|
+
// ── 6.1 — docs ingestion (staged: marker → file-filter → section) ──
|
|
1014
899
|
let ingestion = null;
|
|
1015
900
|
try {
|
|
1016
|
-
let
|
|
1017
|
-
|
|
1018
|
-
ingestion = await runDocsIngestion({
|
|
901
|
+
let lastStage = null;
|
|
902
|
+
const ingestionArgs = {
|
|
1019
903
|
repoRoot: args.repoRoot,
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
904
|
+
onChunkProgress: (row) => {
|
|
905
|
+
// Print one trailer line per stage so the operator sees the
|
|
906
|
+
// staged pipeline land — Stage 1 (file filter) finishes first
|
|
907
|
+
// and is usually the smaller batch; Stage 2 (section classify)
|
|
908
|
+
// follows once authoritative files are known.
|
|
909
|
+
if (row.chunksDone === row.totalChunks && row.stage !== lastStage) {
|
|
910
|
+
lastStage = row.stage;
|
|
911
|
+
const label = row.stage === "file-filter"
|
|
912
|
+
? "stage 1 file filter"
|
|
913
|
+
: "stage 2 section classify";
|
|
914
|
+
process.stdout.write(` ${label.padEnd(28)} ✓ ${row.entriesDone}/${row.totalEntries} in ${row.totalChunks} batches\n`);
|
|
1025
915
|
}
|
|
1026
916
|
},
|
|
1027
|
-
}
|
|
917
|
+
};
|
|
918
|
+
if (args.mockClassify !== undefined)
|
|
919
|
+
ingestionArgs.mockClassify = args.mockClassify;
|
|
920
|
+
ingestion = await runDocsIngestion(ingestionArgs);
|
|
1028
921
|
}
|
|
1029
922
|
catch (err) {
|
|
1030
923
|
const msg = err instanceof Error ? err.message : String(err);
|
|
@@ -1076,37 +969,6 @@ async function runPhaseSix(args) {
|
|
|
1076
969
|
}
|
|
1077
970
|
return { ingestion, baselineAudit };
|
|
1078
971
|
}
|
|
1079
|
-
function describeIngestion(ingestion) {
|
|
1080
|
-
if (ingestion === null)
|
|
1081
|
-
return null;
|
|
1082
|
-
const decCount = ingestion.decsWritten.length;
|
|
1083
|
-
if (decCount === 0) {
|
|
1084
|
-
if (ingestion.scannedEntries === 0) {
|
|
1085
|
-
return `0 emitted (no docs/* paragraphs in topic-index)`;
|
|
1086
|
-
}
|
|
1087
|
-
return `0 emitted (${ingestion.scannedEntries} entries scanned, none classified as decision/domain-rule)`;
|
|
1088
|
-
}
|
|
1089
|
-
return `${decCount} DEC${decCount === 1 ? "" : "s"} written verbatim from docs/* (auto-promoted)`;
|
|
1090
|
-
}
|
|
1091
|
-
function describeCanonical(_ingestion) {
|
|
1092
|
-
// canonical-map seeding moved out of phase 6 in v0.5.0 — handled by
|
|
1093
|
-
// the standalone topic-index pipeline instead.
|
|
1094
|
-
return null;
|
|
1095
|
-
}
|
|
1096
|
-
function describeBaseline(audit) {
|
|
1097
|
-
if (audit === null)
|
|
1098
|
-
return null;
|
|
1099
|
-
const fileNote = audit.truncatedAtFileCap
|
|
1100
|
-
? `${audit.filesScanned}/${audit.filesAvailable} files — sample mode`
|
|
1101
|
-
: `${audit.filesScanned} files`;
|
|
1102
|
-
if (audit.totalFindings === 0) {
|
|
1103
|
-
if (audit.skippedSensorIds.length > 0 && audit.cleanSensorIds.length === 0) {
|
|
1104
|
-
return null;
|
|
1105
|
-
}
|
|
1106
|
-
return `0 findings (run on ${fileNote})`;
|
|
1107
|
-
}
|
|
1108
|
-
return `${audit.totalFindings} existing sensor finding${audit.totalFindings === 1 ? "" : "s"} (run cairn attention; ${fileNote})`;
|
|
1109
|
-
}
|
|
1110
972
|
function remoteShorthand(url) {
|
|
1111
973
|
// https://github.com/foo/bar.git → github.com/foo/bar
|
|
1112
974
|
// git@github.com:foo/bar.git → github.com/foo/bar
|