@mindrian_os/cli 2.0.0-beta.29 → 2.0.0-beta.31

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 (1829) hide show
  1. package/.claude-plugin/plugin.json +21 -0
  2. package/.mcp.json +14 -0
  3. package/CHANGELOG.md +41 -0
  4. package/agents/analogy-query-fetcher.md +119 -0
  5. package/agents/brain-query.md +91 -0
  6. package/agents/competitor-watch-fetcher.md +94 -0
  7. package/agents/framework-runner.md +258 -0
  8. package/agents/grading.md +216 -0
  9. package/agents/grant-reviewer.md +191 -0
  10. package/agents/investor.md +141 -0
  11. package/agents/larry-extended.md +215 -0
  12. package/agents/meeting-perspective-extractor.md +94 -0
  13. package/agents/opportunity-scanner.md +105 -0
  14. package/agents/persona-analyst.md +201 -0
  15. package/agents/research.md +103 -0
  16. package/agents/reverse-salient-agent.md +42 -0
  17. package/agents/vault-section-reviewer.md +107 -0
  18. package/assets/banner-showcase.html +537 -0
  19. package/assets/fonts/BebasNeue-Regular.ttf +0 -0
  20. package/assets/fonts/Inter-Bold.ttf +0 -0
  21. package/assets/fonts/Inter-Regular.ttf +0 -0
  22. package/assets/logo.svg +10 -0
  23. package/bin/local-chain-recommender.cjs +256 -0
  24. package/bin/mindrian-brain-mcp-client.cjs +319 -0
  25. package/bin/mindrian-mcp-server.cjs +445 -0
  26. package/bin/mindrian-mcp-shim.cjs +100 -0
  27. package/bin/mindrian-tools.cjs +784 -0
  28. package/commands/act.md +529 -0
  29. package/commands/admin.md +439 -0
  30. package/commands/agentshield.md +49 -0
  31. package/commands/analyze-needs.md +78 -0
  32. package/commands/analyze-systems.md +73 -0
  33. package/commands/analyze-timing.md +98 -0
  34. package/commands/auto-explore.md +85 -0
  35. package/commands/beautiful-question.md +76 -0
  36. package/commands/bono.md +152 -0
  37. package/commands/brain-derive.md +137 -0
  38. package/commands/build-knowledge.md +121 -0
  39. package/commands/build-thesis.md +94 -0
  40. package/commands/causal.md +269 -0
  41. package/commands/challenge-assumptions.md +78 -0
  42. package/commands/compare-ventures.md +117 -0
  43. package/commands/correct-reference-now.md +88 -0
  44. package/commands/dashboard.md +144 -0
  45. package/commands/deck.md +117 -0
  46. package/commands/deep-grade.md +214 -0
  47. package/commands/diagnose.md +131 -0
  48. package/commands/diagnostics.md +195 -0
  49. package/commands/dial-memory-refresh.md +113 -0
  50. package/commands/diffusion.md +129 -0
  51. package/commands/discover.md +221 -0
  52. package/commands/doctor.md +271 -0
  53. package/commands/dogfood-flush.md +130 -0
  54. package/commands/dominant-designs.md +76 -0
  55. package/commands/eureka.md +315 -0
  56. package/commands/explain-decision.md +135 -0
  57. package/commands/explore-domains.md +78 -0
  58. package/commands/explore-futures.md +67 -0
  59. package/commands/explore-opportunity.md +172 -0
  60. package/commands/explore-trends.md +78 -0
  61. package/commands/export.md +128 -0
  62. package/commands/feynman-timeline-refresh.md +102 -0
  63. package/commands/file-meeting.md +1195 -0
  64. package/commands/find-analogies.md +369 -0
  65. package/commands/find-bottlenecks.md +108 -0
  66. package/commands/find-connections.md +111 -0
  67. package/commands/funding.md +114 -0
  68. package/commands/futures.md +128 -0
  69. package/commands/grade-grant.md +297 -0
  70. package/commands/grade.md +257 -0
  71. package/commands/graph.md +218 -0
  72. package/commands/hat-briefing.md +163 -0
  73. package/commands/heal.md +72 -0
  74. package/commands/help.md +176 -0
  75. package/commands/hmi-status.md +75 -0
  76. package/commands/ignite.md +229 -0
  77. package/commands/ingest-methodology.md +128 -0
  78. package/commands/intel-pipeline.md +133 -0
  79. package/commands/jtbd.md +262 -0
  80. package/commands/leadership.md +113 -0
  81. package/commands/lean-canvas.md +74 -0
  82. package/commands/macro-trends.md +88 -0
  83. package/commands/map-unknowns.md +76 -0
  84. package/commands/memory-cortex-reach.md +79 -0
  85. package/commands/memory.md +213 -0
  86. package/commands/models.md +200 -0
  87. package/commands/mos-reason.md +489 -0
  88. package/commands/mos.md +162 -0
  89. package/commands/mullins.md +155 -0
  90. package/commands/mva-brief.md +86 -0
  91. package/commands/mva-option.md +119 -0
  92. package/commands/mva-report.md +76 -0
  93. package/commands/new-project.md +633 -0
  94. package/commands/new-surface.md +116 -0
  95. package/commands/onboard.md +489 -0
  96. package/commands/operator.md +168 -0
  97. package/commands/opportunities.md +177 -0
  98. package/commands/organize.md +74 -0
  99. package/commands/persona.md +276 -0
  100. package/commands/pipeline.md +167 -0
  101. package/commands/present.md +125 -0
  102. package/commands/publish.md +227 -0
  103. package/commands/pws-brain.md +154 -0
  104. package/commands/qualify-opportunity.md +113 -0
  105. package/commands/query.md +70 -0
  106. package/commands/radar.md +110 -0
  107. package/commands/reanalyze.md +124 -0
  108. package/commands/research.md +467 -0
  109. package/commands/room.md +385 -0
  110. package/commands/rooms.md +682 -0
  111. package/commands/root-cause.md +77 -0
  112. package/commands/rs-experts.md +153 -0
  113. package/commands/rs-explain.md +134 -0
  114. package/commands/rs-fetch.md +119 -0
  115. package/commands/rs-thesis.md +131 -0
  116. package/commands/scenario-plan.md +80 -0
  117. package/commands/scheduled-tasks.md +308 -0
  118. package/commands/score-innovation.md +78 -0
  119. package/commands/scout.md +379 -0
  120. package/commands/setup.md +658 -0
  121. package/commands/show.md +71 -0
  122. package/commands/skill.md +108 -0
  123. package/commands/snapshot.md +179 -0
  124. package/commands/speakers.md +118 -0
  125. package/commands/splash.md +55 -0
  126. package/commands/stance.md +91 -0
  127. package/commands/status.md +109 -0
  128. package/commands/structure-argument.md +82 -0
  129. package/commands/suggest-next.md +141 -0
  130. package/commands/systems-thinking.md +224 -0
  131. package/commands/think-hats.md +86 -0
  132. package/commands/trending-to-absurd.md +151 -0
  133. package/commands/update.md +256 -0
  134. package/commands/user-needs.md +77 -0
  135. package/commands/validate.md +77 -0
  136. package/commands/value-proposition.md +116 -0
  137. package/commands/vault.md +330 -0
  138. package/commands/visualize.md +71 -0
  139. package/commands/whitespace.md +541 -0
  140. package/commands/wiki.md +96 -0
  141. package/data/ROOM.md +47 -0
  142. package/data/brain-census.generated.json +2617 -0
  143. package/data/brain-orchestration-projection.json +4973 -0
  144. package/data/brain-packet-schema.json +545 -0
  145. package/data/brain-surface-contract.json +32 -0
  146. package/data/capability-ledger.json +391 -0
  147. package/data/capability-map-registry.json +23 -0
  148. package/data/command-registry.json +2433 -0
  149. package/data/connector-coverage-ledger.json +1618 -0
  150. package/data/connector-out-of-spine-allowlist.json +71 -0
  151. package/data/connector-registry.json +3637 -0
  152. package/data/corpus-stats-source.json +11 -0
  153. package/data/corpus-stats.generated.json +10 -0
  154. package/data/cross-domain-analogues.json +15 -0
  155. package/data/deck-aliases.json +6 -0
  156. package/data/deck-styles.json +85 -0
  157. package/data/deployment-surfaces.json +69 -0
  158. package/data/dispatch-framework-map.json +18 -0
  159. package/data/doctor-modules.json +206 -0
  160. package/data/dual-graph-health-baseline.json +12 -0
  161. package/data/eureka-critic-tags.json +32 -0
  162. package/data/first-reward-surfaces.json +66 -0
  163. package/data/first-touch-surfaces.json +60 -0
  164. package/data/flagship-floor-set.json +37 -0
  165. package/data/framework-names.json +121 -0
  166. package/data/grant-rubric-fixtures/early-stage-pre-seed.json +18 -0
  167. package/data/grant-rubric-fixtures/early-stage-round-a.json +18 -0
  168. package/data/grant-rubric-fixtures/early-stage-seed.json +18 -0
  169. package/data/grant-rubric-fixtures/hybrid-seed-incentive.json +18 -0
  170. package/data/grant-rubric-fixtures/rd-fund.json +18 -0
  171. package/data/grant-rubric-fixtures/regional-innovation-incubators.json +18 -0
  172. package/data/grant-rubric-fixtures/technology-incubators.json +18 -0
  173. package/data/grant-rubric-fixtures/tnufa.json +167 -0
  174. package/data/grant-rubric-schema.json +33 -0
  175. package/data/harness-fixtures/converged-room/.context/ROOM.md +13 -0
  176. package/data/harness-fixtures/converged-room/.intelligence/ROOM.md +13 -0
  177. package/data/harness-fixtures/converged-room/.snapshots/ROOM.md +13 -0
  178. package/data/harness-fixtures/converged-room/MINTO.md +19 -0
  179. package/data/harness-fixtures/converged-room/STATE.md +73 -0
  180. package/data/harness-fixtures/converged-room/USER.md +23 -0
  181. package/data/harness-fixtures/converged-room/assets/ROOM.md +13 -0
  182. package/data/harness-fixtures/converged-room/business-model/CONTEXT.md +32 -0
  183. package/data/harness-fixtures/converged-room/business-model/ROOM.md +36 -0
  184. package/data/harness-fixtures/converged-room/competitive-analysis/CONTEXT.md +33 -0
  185. package/data/harness-fixtures/converged-room/competitive-analysis/ROOM.md +35 -0
  186. package/data/harness-fixtures/converged-room/financial-model/CONTEXT.md +30 -0
  187. package/data/harness-fixtures/converged-room/financial-model/ROOM.md +35 -0
  188. package/data/harness-fixtures/converged-room/funding/CONTEXT.md +41 -0
  189. package/data/harness-fixtures/converged-room/funding/ROOM.md +35 -0
  190. package/data/harness-fixtures/converged-room/legal-ip/CONTEXT.md +30 -0
  191. package/data/harness-fixtures/converged-room/legal-ip/ROOM.md +35 -0
  192. package/data/harness-fixtures/converged-room/market-analysis/CONTEXT.md +32 -0
  193. package/data/harness-fixtures/converged-room/market-analysis/ROOM.md +35 -0
  194. package/data/harness-fixtures/converged-room/opportunity-bank/CONTEXT.md +39 -0
  195. package/data/harness-fixtures/converged-room/opportunity-bank/ROOM.md +36 -0
  196. package/data/harness-fixtures/converged-room/problem-definition/CONTEXT.md +32 -0
  197. package/data/harness-fixtures/converged-room/problem-definition/ROOM.md +36 -0
  198. package/data/harness-fixtures/converged-room/references/ROOM.md +13 -0
  199. package/data/harness-fixtures/converged-room/references/SECTION-SCHEMA.md +213 -0
  200. package/data/harness-fixtures/converged-room/references/SUB-SCHEMAS.md +91 -0
  201. package/data/harness-fixtures/converged-room/solution-design/CONTEXT.md +36 -0
  202. package/data/harness-fixtures/converged-room/solution-design/ROOM.md +36 -0
  203. package/data/harness-fixtures/converged-room/strategy/CONTEXT.md +35 -0
  204. package/data/harness-fixtures/converged-room/strategy/ROOM.md +35 -0
  205. package/data/harness-fixtures/converged-room/team/ROOM.md +13 -0
  206. package/data/harness-fixtures/converged-room/team-execution/CONTEXT.md +36 -0
  207. package/data/harness-fixtures/converged-room/team-execution/ROOM.md +35 -0
  208. package/data/harness-manifest.json +74 -0
  209. package/data/harness-policies/CONTEXT.md +55 -0
  210. package/data/harness-policies/_schema.json +42 -0
  211. package/data/harness-policies/contract-parity-larry.json +63 -0
  212. package/data/harness-policies/gate-card-fire.json +13 -0
  213. package/data/harness-policies/gate-graph-derive-health.json +13 -0
  214. package/data/harness-policies/gate-shape-declaration.json +13 -0
  215. package/data/harness-policies/gate-tool-honesty.json +13 -0
  216. package/data/harness-policies/gate-worktree-hygiene.json +13 -0
  217. package/data/harness-policies/memory-write-policy.json +28 -0
  218. package/data/harness-policies/registry-drift.json +13 -0
  219. package/data/harness-policies/release-payload-ceiling.json +13 -0
  220. package/data/harness-policies/voice-backend-noun-free.json +13 -0
  221. package/data/harness-policies/voice-fork-as-card.json +13 -0
  222. package/data/harness-policies/voice-glyph-present.json +13 -0
  223. package/data/harness-policies/voice-hyphens-only.json +13 -0
  224. package/data/help-groups.json +236 -0
  225. package/data/hitl-shape-backfill.json +777 -0
  226. package/data/hitl-shape-declaration-fixtures/invalid-bad-shape.json +5 -0
  227. package/data/hitl-shape-declaration-fixtures/invalid-missing-why.json +4 -0
  228. package/data/hitl-shape-declaration-fixtures/invalid-ranker-contradiction.json +6 -0
  229. package/data/hitl-shape-declaration-fixtures/invalid-skill-gap.json +3 -0
  230. package/data/hitl-shape-declaration-fixtures/valid-multi-stage.json +7 -0
  231. package/data/hitl-shape-declaration-fixtures/valid-single-shape.json +5 -0
  232. package/data/hitl-shape-declaration-fixtures/valid-skill-exempt.json +5 -0
  233. package/data/hitl-shape-declaration-schema.json +34 -0
  234. package/data/hitl-stages-fixtures/bono.json +10 -0
  235. package/data/hitl-stages-fixtures/pipeline-1.json +9 -0
  236. package/data/hitl-stages-fixtures/pipeline-2.json +9 -0
  237. package/data/hitl-stages-fixtures/pipeline-3.json +10 -0
  238. package/data/hitl-stages-fixtures/research.json +10 -0
  239. package/data/hitl-stages-fixtures/rs-convergence.json +10 -0
  240. package/data/hitl-stages-fixtures/rs-family.json +11 -0
  241. package/data/hitl-stages-fixtures/rs-reverse-salient.json +10 -0
  242. package/data/hitl-stages-fixtures/trending-to-absurd.json +11 -0
  243. package/data/hitl-stages-schema.json +26 -0
  244. package/data/mcp-tool-connectors.json +464 -0
  245. package/data/mva-agent-prompts.json +31 -0
  246. package/data/mva-deck-template.html +15 -0
  247. package/data/mva-heuristic-keywords.json +35 -0
  248. package/data/orchestration-command-ledger.json +576 -0
  249. package/data/orchestration-unwired-allowlist.json +6 -0
  250. package/data/portfolio-ahp-matrix.json +16 -0
  251. package/data/publish-needs.json +76 -0
  252. package/data/render-coverage-registry.json +1152 -0
  253. package/data/research-sources.json +58 -0
  254. package/data/roadmap-type-chains.json +28 -0
  255. package/data/room-blueprints.json +156 -0
  256. package/data/subagent-dispatch-grants.json +150 -0
  257. package/hooks/hooks.json +493 -0
  258. package/hooks/run-hook.cmd +64 -0
  259. package/lib/__init__.py +0 -0
  260. package/lib/__pycache__/__init__.cpython-312.pyc +0 -0
  261. package/lib/agents/auto-explore-agent.cjs +1163 -0
  262. package/lib/agents/mva/brain-classic-traps.cjs +55 -0
  263. package/lib/agents/mva/brain-cross-domain.cjs +79 -0
  264. package/lib/agents/mva/brain-similar-ventures.cjs +93 -0
  265. package/lib/agents/mva/dashboard-graph-neighborhood.cjs +72 -0
  266. package/lib/agents/mva/index.cjs +42 -0
  267. package/lib/agents/mva/six-hats-red-black.cjs +137 -0
  268. package/lib/agents/mva/tavily-funding-scan.cjs +147 -0
  269. package/lib/agents/mva/test-all-six-agents.cjs +467 -0
  270. package/lib/agents/reverse-salient-agent.cjs +757 -0
  271. package/lib/agents/tension-hook-agent.cjs +586 -0
  272. package/lib/brain/ROOM.md +44 -0
  273. package/lib/brain/chain-recommender.cjs +784 -0
  274. package/lib/brain/curation-batch.cjs +519 -0
  275. package/lib/brain/framework-chain-slice.cjs +252 -0
  276. package/lib/brain/hypergraph-event-schema.cjs +184 -0
  277. package/lib/chat/chat-context.js +185 -0
  278. package/lib/chat/chat-panel.js +721 -0
  279. package/lib/chat/fabric-chat.cjs +288 -0
  280. package/lib/chat/generative-tools.js +219 -0
  281. package/lib/conversation/ROOM.md +39 -0
  282. package/lib/conversation/classifier-rules.json +38 -0
  283. package/lib/conversation/classifier.cjs +264 -0
  284. package/lib/conversation/operator-epistemic-cap.test.cjs +156 -0
  285. package/lib/conversation/operator.cjs +492 -0
  286. package/lib/conversation/operator.test.cjs +160 -0
  287. package/lib/copy/115-spec-strings.cjs +55 -0
  288. package/lib/core/__init__.py +0 -0
  289. package/lib/core/__nav-stub.cjs +14 -0
  290. package/lib/core/__pycache__/__init__.cpython-312.pyc +0 -0
  291. package/lib/core/__pycache__/rs-math.cpython-312.pyc +0 -0
  292. package/lib/core/__pycache__/rs_cache.cpython-312.pyc +0 -0
  293. package/lib/core/__pycache__/rs_corpus.cpython-312.pyc +0 -0
  294. package/lib/core/__pycache__/rs_corpus_exclude.cpython-312.pyc +0 -0
  295. package/lib/core/__pycache__/rs_hybrid.cpython-312.pyc +0 -0
  296. package/lib/core/__pycache__/rs_math.cpython-312.pyc +0 -0
  297. package/lib/core/__pycache__/rs_rooms.cpython-312.pyc +0 -0
  298. package/lib/core/abstraction-gate.cjs +133 -0
  299. package/lib/core/act-jtbd-blurb.cjs +231 -0
  300. package/lib/core/artifact-id.cjs +148 -0
  301. package/lib/core/asset-ops.cjs +151 -0
  302. package/lib/core/auto-commit-throttle.cjs +129 -0
  303. package/lib/core/bearer-token.cjs +199 -0
  304. package/lib/core/behavioral/observation-schema.cjs +86 -0
  305. package/lib/core/bono/cell-fanout.cjs +305 -0
  306. package/lib/core/bono/debate-composition.cjs +495 -0
  307. package/lib/core/bono/hat-governance.cjs +367 -0
  308. package/lib/core/bono/persona-research.cjs +288 -0
  309. package/lib/core/bono/reviewer-governance.cjs +331 -0
  310. package/lib/core/brain-client.cjs +2365 -0
  311. package/lib/core/brain-derivation-prompts.cjs +331 -0
  312. package/lib/core/brain-derivation-queue.cjs +535 -0
  313. package/lib/core/brain-derivation.cjs +740 -0
  314. package/lib/core/brain-md-schema.cjs +528 -0
  315. package/lib/core/brain-md-staleness.cjs +357 -0
  316. package/lib/core/brain-response-sanitize.cjs +396 -0
  317. package/lib/core/breakthrough/canary.cjs +134 -0
  318. package/lib/core/breakthrough/canary.test.cjs +136 -0
  319. package/lib/core/breakthrough/detectors.cjs +359 -0
  320. package/lib/core/breakthrough/detectors.test.cjs +333 -0
  321. package/lib/core/breakthrough/ethics-fence.cjs +129 -0
  322. package/lib/core/breakthrough/ethics-fence.test.cjs +178 -0
  323. package/lib/core/breakthrough/resurfacing.cjs +150 -0
  324. package/lib/core/breakthrough/resurfacing.test.cjs +233 -0
  325. package/lib/core/breakthrough/review-queue.cjs +168 -0
  326. package/lib/core/breakthrough/review-queue.test.cjs +160 -0
  327. package/lib/core/breakthrough/scanner-d17-d18.test.cjs +229 -0
  328. package/lib/core/breakthrough/scanner.cjs +435 -0
  329. package/lib/core/breakthrough/scanner.test.cjs +267 -0
  330. package/lib/core/breakthrough/schema.cjs +180 -0
  331. package/lib/core/breakthrough/schema.test.cjs +256 -0
  332. package/lib/core/breakthrough/scoring.cjs +293 -0
  333. package/lib/core/breakthrough/scoring.test.cjs +423 -0
  334. package/lib/core/breakthrough/verb-dispatch.cjs +230 -0
  335. package/lib/core/breakthrough/verb-dispatch.test.cjs +185 -0
  336. package/lib/core/breakthrough/voice-scaffold.cjs +249 -0
  337. package/lib/core/breakthrough/voice-scaffold.test.cjs +251 -0
  338. package/lib/core/bridge-writer.cjs +477 -0
  339. package/lib/core/cache-prune.cjs +314 -0
  340. package/lib/core/card-fire-gate.cjs +107 -0
  341. package/lib/core/card-fire-sidechannel.cjs +518 -0
  342. package/lib/core/chain-executor.cjs +939 -0
  343. package/lib/core/chain-retry.cjs +214 -0
  344. package/lib/core/chain-step-dispatcher.cjs +397 -0
  345. package/lib/core/chat-context-builder.cjs +253 -0
  346. package/lib/core/check-plugin-enabled.cjs +145 -0
  347. package/lib/core/close-loop-writer.cjs +492 -0
  348. package/lib/core/command-registration-check.cjs +246 -0
  349. package/lib/core/correlation-label-index.cjs +230 -0
  350. package/lib/core/correlation.cjs +112 -0
  351. package/lib/core/coverage-monitor.cjs +183 -0
  352. package/lib/core/coverage-rollup.cjs +232 -0
  353. package/lib/core/cross-room-aggregator.cjs +1127 -0
  354. package/lib/core/cross-room-store.cjs +292 -0
  355. package/lib/core/cross-room-triggers.cjs +222 -0
  356. package/lib/core/daily-briefing.cjs +438 -0
  357. package/lib/core/decision-axes.cjs +178 -0
  358. package/lib/core/decision-capture.cjs +618 -0
  359. package/lib/core/deck-design-rules.cjs +211 -0
  360. package/lib/core/deep-links.cjs +82 -0
  361. package/lib/core/directive-envelope.cjs +217 -0
  362. package/lib/core/directive-envelope.test.cjs +225 -0
  363. package/lib/core/dispatch-optimizer.cjs +354 -0
  364. package/lib/core/doc-text-extractor.cjs +133 -0
  365. package/lib/core/doctor/capability-ledger-module.cjs +170 -0
  366. package/lib/core/doctor/card-fire-health-module.cjs +159 -0
  367. package/lib/core/doctor/cascade-rooms-active-module.cjs +127 -0
  368. package/lib/core/doctor/cascade-rooms-module.cjs +184 -0
  369. package/lib/core/doctor/class-m-brain-smoke.cjs +479 -0
  370. package/lib/core/doctor/class-m-brain-smoke.test.cjs +448 -0
  371. package/lib/core/doctor/class-s-eureka-smoke.cjs +380 -0
  372. package/lib/core/doctor/deployment-surfaces-module.cjs +408 -0
  373. package/lib/core/doctor/deprecated-usage-module.cjs +155 -0
  374. package/lib/core/doctor/eureka-fts-health-module.cjs +236 -0
  375. package/lib/core/doctor/graph-derive-heal-retrofit-module.cjs +148 -0
  376. package/lib/core/doctor/graph-derive-health-module.cjs +486 -0
  377. package/lib/core/doctor/install-incomplete-module.cjs +320 -0
  378. package/lib/core/doctor/install-state-module.cjs +503 -0
  379. package/lib/core/doctor/mcp-surface-module.cjs +369 -0
  380. package/lib/core/doctor/mode-select-checkpoint-module.cjs +113 -0
  381. package/lib/core/doctor/plugin-enabled-state-module.cjs +86 -0
  382. package/lib/core/doctor/room-graph-density-module.cjs +181 -0
  383. package/lib/core/doctor/room-md-module.cjs +198 -0
  384. package/lib/core/doctor/shared.cjs +555 -0
  385. package/lib/core/doctor/stale-first-touch-copy-module.cjs +83 -0
  386. package/lib/core/doctor/statusline-visibility-module.cjs +295 -0
  387. package/lib/core/doctor/ui-compliance-module.cjs +223 -0
  388. package/lib/core/doctor/umbilical-module.cjs +486 -0
  389. package/lib/core/doctor/verify-surface-module.cjs +82 -0
  390. package/lib/core/doctor/voice-style-log-module.cjs +146 -0
  391. package/lib/core/domain-insight-sweep.cjs +224 -0
  392. package/lib/core/drift-baseline.cjs +362 -0
  393. package/lib/core/drift-runtime-reachability.cjs +283 -0
  394. package/lib/core/dual-path-detector.cjs +84 -0
  395. package/lib/core/dual-path-detector.test.cjs +334 -0
  396. package/lib/core/enrichment-queue.cjs +636 -0
  397. package/lib/core/eureka/ahp-weights.cjs +232 -0
  398. package/lib/core/eureka/analogy-fitness.cjs +326 -0
  399. package/lib/core/eureka/compression-meter.cjs +165 -0
  400. package/lib/core/eureka/embedding-classifier.cjs +226 -0
  401. package/lib/core/eureka/embedding-spine.cjs +563 -0
  402. package/lib/core/eureka/entity-classifier.cjs +232 -0
  403. package/lib/core/eureka/entity-extractor.cjs +356 -0
  404. package/lib/core/eureka/eureka-enable.cjs +228 -0
  405. package/lib/core/eureka/eureka-offer.cjs +225 -0
  406. package/lib/core/eureka/eureka-reach-runner.cjs +430 -0
  407. package/lib/core/eureka/explore-chain.cjs +834 -0
  408. package/lib/core/eureka/explored-artifact.cjs +456 -0
  409. package/lib/core/eureka/fts-index-lifecycle.cjs +265 -0
  410. package/lib/core/eureka/grade-grant-examine.cjs +544 -0
  411. package/lib/core/eureka/grade-grant.cjs +596 -0
  412. package/lib/core/eureka/hybrid-retrieve.cjs +256 -0
  413. package/lib/core/eureka/lateral-engine-adapter.cjs +118 -0
  414. package/lib/core/eureka/lexical-overlap.cjs +98 -0
  415. package/lib/core/eureka/online-pattern-query.cjs +142 -0
  416. package/lib/core/eureka/opportunity-harvest.cjs +752 -0
  417. package/lib/core/eureka/opportunity-statement.cjs +519 -0
  418. package/lib/core/eureka/portfolio-dimensions.cjs +255 -0
  419. package/lib/core/eureka/qualify-opportunity.cjs +607 -0
  420. package/lib/core/eureka/reasoning-mode.cjs +481 -0
  421. package/lib/core/eureka/report-html.cjs +368 -0
  422. package/lib/core/eureka/research-filing.cjs +547 -0
  423. package/lib/core/eureka/room-native-substrate.cjs +343 -0
  424. package/lib/core/eureka/tail-quadrant.cjs +177 -0
  425. package/lib/core/eureka/tri-modal-index.cjs +564 -0
  426. package/lib/core/eureka/vector-store.cjs +414 -0
  427. package/lib/core/eureka-critic.cjs +733 -0
  428. package/lib/core/eureka-deps-resolver.cjs +179 -0
  429. package/lib/core/expert-genesis.cjs +437 -0
  430. package/lib/core/expert-library.cjs +303 -0
  431. package/lib/core/exports-log.cjs +79 -0
  432. package/lib/core/feynman/ROOM.md +25 -0
  433. package/lib/core/feynman/dial-memory-renderer.cjs +279 -0
  434. package/lib/core/feynman/dial-memory-runner.cjs +173 -0
  435. package/lib/core/feynman/feynman-seed-writer.cjs +187 -0
  436. package/lib/core/feynman/timeline-renderer.cjs +197 -0
  437. package/lib/core/feynman/timeline-runner.cjs +281 -0
  438. package/lib/core/feynman-minto-invariants.cjs +609 -0
  439. package/lib/core/findings-wirer.cjs +360 -0
  440. package/lib/core/first-touch-version-stamper.cjs +113 -0
  441. package/lib/core/folder-memory-async.cjs +424 -0
  442. package/lib/core/folder-memory-shared.cjs +890 -0
  443. package/lib/core/folder-memory.cjs +546 -0
  444. package/lib/core/framework-chain-composer.cjs +583 -0
  445. package/lib/core/frontmatter-schemas.cjs +468 -0
  446. package/lib/core/fusion-router.cjs +540 -0
  447. package/lib/core/futures/causal-cue.cjs +91 -0
  448. package/lib/core/futures/orchestrator.cjs +1391 -0
  449. package/lib/core/futures/subsystem-render.cjs +164 -0
  450. package/lib/core/gate-relevance.cjs +278 -0
  451. package/lib/core/git-ops.cjs +141 -0
  452. package/lib/core/graph-backfill.cjs +562 -0
  453. package/lib/core/graph-candidate-producer.cjs +235 -0
  454. package/lib/core/graph-derivation.cjs +546 -0
  455. package/lib/core/graph-derive-classifier.cjs +352 -0
  456. package/lib/core/graph-ops.cjs +274 -0
  457. package/lib/core/graph-refine-loop.cjs +194 -0
  458. package/lib/core/graph-self-heal.cjs +289 -0
  459. package/lib/core/greeting-intent-detector.cjs +201 -0
  460. package/lib/core/grill-engine.cjs +459 -0
  461. package/lib/core/hat-persistence.cjs +274 -0
  462. package/lib/core/hsi-engine.cjs +439 -0
  463. package/lib/core/hsi-lsa.cjs +246 -0
  464. package/lib/core/hsi-spectral.cjs +554 -0
  465. package/lib/core/hsi-to-graph.test.cjs +168 -0
  466. package/lib/core/icm-forest.cjs +703 -0
  467. package/lib/core/ignite-branch-gate.cjs +66 -0
  468. package/lib/core/index.cjs +60 -0
  469. package/lib/core/insight-sensors.cjs +1000 -0
  470. package/lib/core/install-state.cjs +242 -0
  471. package/lib/core/integration-registry.cjs +232 -0
  472. package/lib/core/intel-pipeline.cjs +545 -0
  473. package/lib/core/intelligence-cascade.cjs +852 -0
  474. package/lib/core/issue-tree.cjs +269 -0
  475. package/lib/core/larry-thinness-acknowledgment.cjs +64 -0
  476. package/lib/core/larry-thinness-acknowledgment.test.cjs +97 -0
  477. package/lib/core/lazygraph-ops.cjs +1453 -0
  478. package/lib/core/lens-engine.cjs +434 -0
  479. package/lib/core/leverage-scan.cjs +218 -0
  480. package/lib/core/llm-name-suggester.cjs +194 -0
  481. package/lib/core/llm-name-suggester.test.cjs +132 -0
  482. package/lib/core/lru-cache.cjs +139 -0
  483. package/lib/core/mcp-dep-heal.cjs +475 -0
  484. package/lib/core/mcp-dep-heal.test.cjs +253 -0
  485. package/lib/core/mcp-profiles.cjs +185 -0
  486. package/lib/core/meeting-ops.cjs +54 -0
  487. package/lib/core/memory/governance-candidate-raiser.cjs +205 -0
  488. package/lib/core/memory/governance-candidate.cjs +95 -0
  489. package/lib/core/memory/reconcile-memory-runner.cjs +653 -0
  490. package/lib/core/memory-ops.cjs +641 -0
  491. package/lib/core/meter/gate-density-reader.cjs +112 -0
  492. package/lib/core/meter/transfer-reader.cjs +276 -0
  493. package/lib/core/meter/two-gauge.cjs +245 -0
  494. package/lib/core/methodology-ingest.cjs +346 -0
  495. package/lib/core/metrics/larryreach-loop-health.cjs +142 -0
  496. package/lib/core/migration-snapshot.cjs +287 -0
  497. package/lib/core/migration-snapshot.test.cjs +174 -0
  498. package/lib/core/migrations/ROOM.md +33 -0
  499. package/lib/core/migrations/phase-109-nodes-provenance.cjs +400 -0
  500. package/lib/core/migrations/phase-109-session-focus.cjs +99 -0
  501. package/lib/core/migrations/phase-160-nodes-bitemporal.cjs +168 -0
  502. package/lib/core/migrations/phase-160-nodes-bitemporal.test.cjs +140 -0
  503. package/lib/core/migrations/phase-162-section-nodes.cjs +156 -0
  504. package/lib/core/migrations/phase-222-ranker-weights.cjs +62 -0
  505. package/lib/core/migrations/phase-224-edge-review-status.cjs +87 -0
  506. package/lib/core/mindrian-brain-shim.test.cjs +221 -0
  507. package/lib/core/mode-select-sidechannel.cjs +259 -0
  508. package/lib/core/model-profiles.cjs +246 -0
  509. package/lib/core/mullins-scaffold.cjs +258 -0
  510. package/lib/core/mullins-scaffold.test.cjs +128 -0
  511. package/lib/core/mva-agent-contract.cjs +170 -0
  512. package/lib/core/mva-agent-contract.test.cjs +169 -0
  513. package/lib/core/mva-budget.cjs +75 -0
  514. package/lib/core/mva-budget.test.cjs +68 -0
  515. package/lib/core/mva-classifier.cjs +392 -0
  516. package/lib/core/mva-classifier.test.cjs +248 -0
  517. package/lib/core/mva-deck-builder.cjs +452 -0
  518. package/lib/core/mva-deck-builder.test.cjs +287 -0
  519. package/lib/core/mva-detect.smoke.test.cjs +209 -0
  520. package/lib/core/mva-dispatcher.cjs +110 -0
  521. package/lib/core/mva-dispatcher.test.cjs +216 -0
  522. package/lib/core/mva-option-router.cjs +414 -0
  523. package/lib/core/mva-option-router.test.cjs +483 -0
  524. package/lib/core/mva-orchestrator.cjs +365 -0
  525. package/lib/core/mva-orchestrator.test.cjs +916 -0
  526. package/lib/core/mva-progressive-renderer.cjs +194 -0
  527. package/lib/core/mva-progressive-renderer.test.cjs +157 -0
  528. package/lib/core/mva-rule-linter.cjs +458 -0
  529. package/lib/core/mva-rule-linter.test.cjs +484 -0
  530. package/lib/core/mva-state.cjs +159 -0
  531. package/lib/core/mva-telemetry.cjs +58 -0
  532. package/lib/core/mva-telemetry.test.cjs +196 -0
  533. package/lib/core/mva-vercel-deploy.cjs +168 -0
  534. package/lib/core/mva-vercel-deploy.test.cjs +239 -0
  535. package/lib/core/nav-dial.cjs +440 -0
  536. package/lib/core/navigation/ROOM.md +15 -0
  537. package/lib/core/navigation/abstraction-claim.cjs +185 -0
  538. package/lib/core/navigation/calibration-gate.cjs +284 -0
  539. package/lib/core/navigation/calibration-log.cjs +141 -0
  540. package/lib/core/navigation/confirm-node.cjs +73 -0
  541. package/lib/core/navigation/dashboard-helpers.cjs +145 -0
  542. package/lib/core/navigation/edges.cjs +1150 -0
  543. package/lib/core/navigation/evidence-claim.cjs +186 -0
  544. package/lib/core/navigation/explanation.cjs +48 -0
  545. package/lib/core/navigation/file-evidence-readback.cjs +242 -0
  546. package/lib/core/navigation/focus.cjs +155 -0
  547. package/lib/core/navigation/get-domains-for-trends.cjs +277 -0
  548. package/lib/core/navigation/governance.cjs +101 -0
  549. package/lib/core/navigation/grant-rubric.cjs +218 -0
  550. package/lib/core/navigation/graph-export.cjs +325 -0
  551. package/lib/core/navigation/ingestion.cjs +109 -0
  552. package/lib/core/navigation/insights-stale.test.cjs +127 -0
  553. package/lib/core/navigation/insights.cjs +574 -0
  554. package/lib/core/navigation/lens-nodes.cjs +315 -0
  555. package/lib/core/navigation/memory-artifacts.cjs +437 -0
  556. package/lib/core/navigation/memory-cortex-packet.cjs +274 -0
  557. package/lib/core/navigation/memory-events.cjs +811 -0
  558. package/lib/core/navigation/neighborhood.cjs +79 -0
  559. package/lib/core/navigation/packet.cjs +420 -0
  560. package/lib/core/navigation/planning-artifacts.cjs +219 -0
  561. package/lib/core/navigation/projections.cjs +295 -0
  562. package/lib/core/navigation/ranker-weights.cjs +133 -0
  563. package/lib/core/navigation/reasoning-write.cjs +211 -0
  564. package/lib/core/navigation/reconcile-guard.cjs +98 -0
  565. package/lib/core/navigation/reified-claim.cjs +287 -0
  566. package/lib/core/navigation/research-preflight.cjs +156 -0
  567. package/lib/core/navigation/room-birth.cjs +1213 -0
  568. package/lib/core/navigation/room-context.cjs +380 -0
  569. package/lib/core/navigation/room-home.cjs +142 -0
  570. package/lib/core/navigation/spine-events.cjs +548 -0
  571. package/lib/core/navigation/synthetic-expert.cjs +177 -0
  572. package/lib/core/navigation/transitions.cjs +253 -0
  573. package/lib/core/navigation/typed-claim.cjs +208 -0
  574. package/lib/core/navigation/typed-domain.cjs +249 -0
  575. package/lib/core/navigation/typed-entity.cjs +236 -0
  576. package/lib/core/navigation/typed-frame.cjs +257 -0
  577. package/lib/core/navigation/typed-open-question.cjs +130 -0
  578. package/lib/core/navigation/typed-opportunity.cjs +418 -0
  579. package/lib/core/navigation-engine-offer.cjs +776 -0
  580. package/lib/core/navigation-engine-shared.cjs +256 -0
  581. package/lib/core/navigation-engine.cjs +1696 -0
  582. package/lib/core/navigation.cjs +686 -0
  583. package/lib/core/nl-graph-queries.cjs +164 -0
  584. package/lib/core/node-insert-epistemic.test.cjs +212 -0
  585. package/lib/core/node-insert-overrides.test.cjs +273 -0
  586. package/lib/core/node-insert.cjs +274 -0
  587. package/lib/core/npm-cli-resolve.cjs +151 -0
  588. package/lib/core/npm-cli-resolve.test.cjs +153 -0
  589. package/lib/core/npm-install-lock.cjs +326 -0
  590. package/lib/core/npm-install-lock.test.cjs +379 -0
  591. package/lib/core/numeric/sklearn-stopwords-v1.json +325 -0
  592. package/lib/core/numeric/svd.cjs +377 -0
  593. package/lib/core/numeric/tfidf.cjs +241 -0
  594. package/lib/core/offer-presenter.cjs +406 -0
  595. package/lib/core/opportunity-extractor.cjs +183 -0
  596. package/lib/core/opportunity-ops.cjs +1423 -0
  597. package/lib/core/orchestration-candidate-lift.cjs +284 -0
  598. package/lib/core/part8-egress-guard.cjs +536 -0
  599. package/lib/core/part8-egress-guard.test.cjs +194 -0
  600. package/lib/core/part8-egress-ontology.cjs +174 -0
  601. package/lib/core/part8-egress-ontology.test.cjs +133 -0
  602. package/lib/core/persona-ops.cjs +692 -0
  603. package/lib/core/persona-override.cjs +327 -0
  604. package/lib/core/persona-taxonomy.cjs +328 -0
  605. package/lib/core/pinecone-inference.cjs +176 -0
  606. package/lib/core/pitch-feedback-schemas.cjs +303 -0
  607. package/lib/core/planning/artifact-brain-packet.cjs +212 -0
  608. package/lib/core/planning/reconcile-runner.cjs +347 -0
  609. package/lib/core/platform-gates.cjs +120 -0
  610. package/lib/core/platform.cjs +257 -0
  611. package/lib/core/proactive-intelligence.cjs +528 -0
  612. package/lib/core/problem-type-router.cjs +315 -0
  613. package/lib/core/publish-needs-default-lane.cjs +110 -0
  614. package/lib/core/ralph-loop-gate.cjs +48 -0
  615. package/lib/core/reader/ab-harness.cjs +177 -0
  616. package/lib/core/reader/decide-projection-reader.cjs +358 -0
  617. package/lib/core/reasoning-ops.cjs +639 -0
  618. package/lib/core/recipe-maps.cjs +442 -0
  619. package/lib/core/recovery/case-file.cjs +358 -0
  620. package/lib/core/recovery/controller.cjs +1008 -0
  621. package/lib/core/recovery/dispatcher.cjs +533 -0
  622. package/lib/core/recovery/result-semantics.cjs +488 -0
  623. package/lib/core/recovery/stage-envelope.cjs +338 -0
  624. package/lib/core/refusal-messaging.cjs +569 -0
  625. package/lib/core/refusal-messaging.test.cjs +220 -0
  626. package/lib/core/repo-version.cjs +134 -0
  627. package/lib/core/research-cache.cjs +165 -0
  628. package/lib/core/research-cache.test.cjs +137 -0
  629. package/lib/core/research-context-extractor.cjs +283 -0
  630. package/lib/core/research-corpus.cjs +814 -0
  631. package/lib/core/research-corpus.test.cjs +280 -0
  632. package/lib/core/research-filing-selector.cjs +189 -0
  633. package/lib/core/resolve-active-room.cjs +602 -0
  634. package/lib/core/resolve-brain-key.cjs +273 -0
  635. package/lib/core/resolve-umbilical-target.cjs +288 -0
  636. package/lib/core/resolve-vercel-key.cjs +107 -0
  637. package/lib/core/resolve-vercel-key.test.cjs +137 -0
  638. package/lib/core/reverse-salient-persona-suffix.cjs +115 -0
  639. package/lib/core/room-auto-create.cjs +318 -0
  640. package/lib/core/room-auto-create.test.cjs +198 -0
  641. package/lib/core/room-chooser.cjs +244 -0
  642. package/lib/core/room-classifier-strict-mode.cjs +235 -0
  643. package/lib/core/room-db.cjs +348 -0
  644. package/lib/core/room-discard-cascade.cjs +238 -0
  645. package/lib/core/room-discard-cascade.test.cjs +135 -0
  646. package/lib/core/room-name-validator.cjs +132 -0
  647. package/lib/core/room-name-validator.test.cjs +156 -0
  648. package/lib/core/room-naming-selector.cjs +357 -0
  649. package/lib/core/room-naming-selector.test.cjs +277 -0
  650. package/lib/core/room-open.cjs +259 -0
  651. package/lib/core/room-ops-async.cjs +92 -0
  652. package/lib/core/room-ops-shared.cjs +64 -0
  653. package/lib/core/room-ops-sync.cjs +70 -0
  654. package/lib/core/room-ops.cjs +32 -0
  655. package/lib/core/room-receipt-emit.cjs +63 -0
  656. package/lib/core/room-root.cjs +93 -0
  657. package/lib/core/room-skeleton-scaffold.cjs +669 -0
  658. package/lib/core/room-skeleton-scaffold.test.cjs +296 -0
  659. package/lib/core/room-type-detector.cjs +386 -0
  660. package/lib/core/rs-backend-dispatch.cjs +64 -0
  661. package/lib/core/rs-brain-substrate-prompts.cjs +129 -0
  662. package/lib/core/rs-brain-substrate.cjs +570 -0
  663. package/lib/core/rs-breakthrough-scorer.cjs +255 -0
  664. package/lib/core/rs-canon-violations.cjs +82 -0
  665. package/lib/core/rs-chain-feeder.cjs +381 -0
  666. package/lib/core/rs-commercial-assessor.cjs +280 -0
  667. package/lib/core/rs-corpus-quality-gate.cjs +62 -0
  668. package/lib/core/rs-differential-scorer.cjs +629 -0
  669. package/lib/core/rs-domain-analyzer.cjs +385 -0
  670. package/lib/core/rs-egress-prompts.cjs +113 -0
  671. package/lib/core/rs-egress-telemetry.cjs +225 -0
  672. package/lib/core/rs-egress-violations.cjs +53 -0
  673. package/lib/core/rs-engine.cjs +597 -0
  674. package/lib/core/rs-expert-brain-projection.cjs +280 -0
  675. package/lib/core/rs-expert-mapper.cjs +467 -0
  676. package/lib/core/rs-fetcher-academic.cjs +697 -0
  677. package/lib/core/rs-fetcher-experts.cjs +314 -0
  678. package/lib/core/rs-fetcher-industry.cjs +731 -0
  679. package/lib/core/rs-fetcher-patents.cjs +564 -0
  680. package/lib/core/rs-innovation-classifier.cjs +194 -0
  681. package/lib/core/rs-math.cjs +458 -0
  682. package/lib/core/rs-mind-map.cjs +656 -0
  683. package/lib/core/rs-neo4j-writer.cjs +388 -0
  684. package/lib/core/rs-nl-to-query.cjs +435 -0
  685. package/lib/core/rs-pinecone-bridge.cjs +344 -0
  686. package/lib/core/rs-preprocessor.cjs +350 -0
  687. package/lib/core/rs-query-matrix.cjs +316 -0
  688. package/lib/core/rs-query-to-text.cjs +438 -0
  689. package/lib/core/rs-sqlite-mirror.cjs +495 -0
  690. package/lib/core/rs-thesis-generator.cjs +188 -0
  691. package/lib/core/rs_cache.py +635 -0
  692. package/lib/core/rs_corpus.py +562 -0
  693. package/lib/core/rs_corpus_exclude.py +62 -0
  694. package/lib/core/rs_hybrid.py +589 -0
  695. package/lib/core/rs_math.py +287 -0
  696. package/lib/core/rs_rooms.py +196 -0
  697. package/lib/core/salient-governance.cjs +315 -0
  698. package/lib/core/scheduled-scanner.cjs +658 -0
  699. package/lib/core/scratchpad-ops.cjs +316 -0
  700. package/lib/core/seam-liveness.cjs +191 -0
  701. package/lib/core/seam-liveness.test.cjs +177 -0
  702. package/lib/core/section-8-trace-schema.cjs +138 -0
  703. package/lib/core/section-registry.cjs +167 -0
  704. package/lib/core/security/agentshield-adapters.test.cjs +104 -0
  705. package/lib/core/security/agentshield-run.cjs +343 -0
  706. package/lib/core/security/agentshield-scanner.cjs +314 -0
  707. package/lib/core/security/agentshield-scanner.test.cjs +259 -0
  708. package/lib/core/sensors/hat-scoping-table.cjs +103 -0
  709. package/lib/core/sensors/sensor-circularity.cjs +278 -0
  710. package/lib/core/sensors/sensor-content-relevance.cjs +407 -0
  711. package/lib/core/sensors/sensor-diffusion-adoption.cjs +230 -0
  712. package/lib/core/sensors/sensor-eureka.cjs +208 -0
  713. package/lib/core/sensors/sensor-expert-skill.cjs +293 -0
  714. package/lib/core/sensors/sensor-external-fact.cjs +184 -0
  715. package/lib/core/sensors/sensor-gate-approach.cjs +104 -0
  716. package/lib/core/sensors/sensor-jtbd-reweight.cjs +141 -0
  717. package/lib/core/sensors/sensor-lagging-component.cjs +115 -0
  718. package/lib/core/sensors/sensor-memory-cortex.cjs +111 -0
  719. package/lib/core/sensors/sensor-methodology-decision.cjs +131 -0
  720. package/lib/core/sensors/sensor-opportunity-harvest.cjs +195 -0
  721. package/lib/core/sensors/sensor-perspective-lock.cjs +174 -0
  722. package/lib/core/sensors/sensor-priority.cjs +183 -0
  723. package/lib/core/sensors/sensor-recency.cjs +151 -0
  724. package/lib/core/sensors/sensor-roadmap-type.cjs +421 -0
  725. package/lib/core/sensors/sensor-room-pick.cjs +238 -0
  726. package/lib/core/sensors/sensor-show-share.cjs +215 -0
  727. package/lib/core/sensors/sensor-temporal-blindness.cjs +123 -0
  728. package/lib/core/sensors/sensor-types.cjs +294 -0
  729. package/lib/core/sensors/sensor-url-ingest.cjs +234 -0
  730. package/lib/core/session-binding.cjs +208 -0
  731. package/lib/core/session-presence.cjs +404 -0
  732. package/lib/core/session-register.cjs +138 -0
  733. package/lib/core/session-state.cjs +144 -0
  734. package/lib/core/shallow-doc-parser.cjs +353 -0
  735. package/lib/core/shallow-doc-parser.test.cjs +226 -0
  736. package/lib/core/skill-activation-router.cjs +284 -0
  737. package/lib/core/skillopt-schemas.cjs +509 -0
  738. package/lib/core/stale-copy-scanner.cjs +190 -0
  739. package/lib/core/stance-state.cjs +153 -0
  740. package/lib/core/state-aware-router.cjs +78 -0
  741. package/lib/core/state-ops.cjs +80 -0
  742. package/lib/core/state-version.cjs +350 -0
  743. package/lib/core/statusline-cache.cjs +266 -0
  744. package/lib/core/statusline-liveness-gate.cjs +105 -0
  745. package/lib/core/surface-fence.cjs +127 -0
  746. package/lib/core/synthesizers/comparison-matrix.cjs +82 -0
  747. package/lib/core/synthesizers/convergence-map.cjs +107 -0
  748. package/lib/core/synthesizers/domain-hierarchy.cjs +138 -0
  749. package/lib/core/synthesizers/source-comparison.cjs +56 -0
  750. package/lib/core/synthesizers/tension-map.cjs +119 -0
  751. package/lib/core/synthetic-expert-behavior-gate.cjs +99 -0
  752. package/lib/core/synthetic-expert-construction-gate.cjs +170 -0
  753. package/lib/core/telemetry/schema.cjs +168 -0
  754. package/lib/core/telemetry/schema.test.cjs +124 -0
  755. package/lib/core/telemetry/validator.cjs +200 -0
  756. package/lib/core/telemetry/validator.test.cjs +188 -0
  757. package/lib/core/telemetry/writer.cjs +141 -0
  758. package/lib/core/telemetry/writer.test.cjs +331 -0
  759. package/lib/core/temporal/date-sync-gate.cjs +256 -0
  760. package/lib/core/temporal/date-sync-gate.test.cjs +191 -0
  761. package/lib/core/temporal/dual-stamp.cjs +172 -0
  762. package/lib/core/temporal/dual-stamp.test.cjs +172 -0
  763. package/lib/core/temporal/point-in-time.cjs +76 -0
  764. package/lib/core/temporal/point-in-time.test.cjs +169 -0
  765. package/lib/core/temporal/recency-decay.cjs +119 -0
  766. package/lib/core/temporal/recency-decay.test.cjs +140 -0
  767. package/lib/core/temporal/reference-now.cjs +281 -0
  768. package/lib/core/temporal/reference-now.test.cjs +225 -0
  769. package/lib/core/temporal/resolve-relative-time.cjs +116 -0
  770. package/lib/core/temporal/resolve-relative-time.test.cjs +138 -0
  771. package/lib/core/temporal/supersession.cjs +250 -0
  772. package/lib/core/temporal/supersession.test.cjs +103 -0
  773. package/lib/core/terminal-capability.cjs +88 -0
  774. package/lib/core/token-estimator.cjs +348 -0
  775. package/lib/core/tone-filter.cjs +147 -0
  776. package/lib/core/trending-to-absurd/orchestrator.cjs +341 -0
  777. package/lib/core/trending-to-absurd/stage7-roadmap.cjs +317 -0
  778. package/lib/core/trending-to-absurd/variance.cjs +169 -0
  779. package/lib/core/unknowns/bandit.cjs +332 -0
  780. package/lib/core/unknowns/corpus-adapter.cjs +327 -0
  781. package/lib/core/unknowns/dsp.cjs +356 -0
  782. package/lib/core/unknowns/edge-writer.cjs +211 -0
  783. package/lib/core/unknowns/iface.cjs +212 -0
  784. package/lib/core/unknowns/orchestrator.cjs +375 -0
  785. package/lib/core/unknowns/pattern-miner.cjs +214 -0
  786. package/lib/core/unknowns/rumsfeld-matrix.cjs +155 -0
  787. package/lib/core/unknowns/verdict.cjs +254 -0
  788. package/lib/core/update-path.cjs +57 -0
  789. package/lib/core/url-ingest.cjs +568 -0
  790. package/lib/core/user-archetype.cjs +284 -0
  791. package/lib/core/user-md-ops.cjs +578 -0
  792. package/lib/core/venture-shape-nudge.cjs +178 -0
  793. package/lib/core/venture-shape-nudge.test.cjs +266 -0
  794. package/lib/core/verb-reach-affinity.cjs +299 -0
  795. package/lib/core/visual-ops.cjs +692 -0
  796. package/lib/core/voice-transition-detector.cjs +125 -0
  797. package/lib/core/watched-sources.cjs +237 -0
  798. package/lib/core/write-lock.cjs +149 -0
  799. package/lib/graph/canvas-graph.js +467 -0
  800. package/lib/graph/constellation-config.cjs +299 -0
  801. package/lib/graph/graph-detail-panel.js +165 -0
  802. package/lib/hmi/ROOM.md +47 -0
  803. package/lib/hmi/across-session-memory.cjs +669 -0
  804. package/lib/hmi/agentshield-drift-gate.cjs +142 -0
  805. package/lib/hmi/brain-review-packet.cjs +221 -0
  806. package/lib/hmi/cortex-reach-adapter.cjs +271 -0
  807. package/lib/hmi/cross-room-memory.cjs +618 -0
  808. package/lib/hmi/decoy-tier.cjs +395 -0
  809. package/lib/hmi/depth-state.cjs +164 -0
  810. package/lib/hmi/dial-label-composer.cjs +410 -0
  811. package/lib/hmi/dial-presenter.cjs +508 -0
  812. package/lib/hmi/dial-reach-orchestrator.cjs +377 -0
  813. package/lib/hmi/dial-selector.cjs +239 -0
  814. package/lib/hmi/f1-pick-capture-cli.cjs +131 -0
  815. package/lib/hmi/f3-depth-capture-cli.cjs +77 -0
  816. package/lib/hmi/f4-scope-capture-cli.cjs +86 -0
  817. package/lib/hmi/f8-action-capture-cli.cjs +145 -0
  818. package/lib/hmi/f8-capture.test.cjs +77 -0
  819. package/lib/hmi/f9-ordered-capture-cli.cjs +138 -0
  820. package/lib/hmi/harvest-scope-state.cjs +202 -0
  821. package/lib/hmi/hats-persona-cache.cjs +142 -0
  822. package/lib/hmi/jtbd-classifier.cjs +219 -0
  823. package/lib/hmi/jtbd-state.cjs +263 -0
  824. package/lib/hmi/jtbd-taxonomy.json +402 -0
  825. package/lib/hmi/mindrian-ascii-logo.cjs +96 -0
  826. package/lib/hmi/part8-egress-gate.cjs +149 -0
  827. package/lib/hmi/reach-component-map.json +47 -0
  828. package/lib/hmi/reach-relevance-gate.cjs +147 -0
  829. package/lib/hmi/selector-dispatcher.cjs +1201 -0
  830. package/lib/hmi/selector-dispatcher.test.cjs +141 -0
  831. package/lib/hmi/selector-telemetry.cjs +269 -0
  832. package/lib/hmi/shape-f0-renderer.cjs +145 -0
  833. package/lib/hmi/shape-f1-fallback.cjs +80 -0
  834. package/lib/hmi/shape-f1-renderer.cjs +219 -0
  835. package/lib/hmi/shape-f2-renderer.cjs +132 -0
  836. package/lib/hmi/shape-f3-parity.test.cjs +64 -0
  837. package/lib/hmi/shape-f3-renderer.cjs +66 -0
  838. package/lib/hmi/shape-f4-parity.test.cjs +72 -0
  839. package/lib/hmi/shape-f4-renderer.cjs +72 -0
  840. package/lib/hmi/shape-f5-renderer.cjs +155 -0
  841. package/lib/hmi/shape-f6-plan-review-renderer.cjs +324 -0
  842. package/lib/hmi/shape-f6-renderer.cjs +144 -0
  843. package/lib/hmi/shape-f7-breakthrough-renderer.cjs +234 -0
  844. package/lib/hmi/shape-f7-breakthrough-renderer.test.cjs +233 -0
  845. package/lib/hmi/shape-f8-renderer.cjs +150 -0
  846. package/lib/hmi/shape-f8-renderer.test.cjs +70 -0
  847. package/lib/hmi/shape-f9-renderer.cjs +187 -0
  848. package/lib/hmi/shape-f9-renderer.test.cjs +80 -0
  849. package/lib/hmi/shape-g-renderer.cjs +219 -0
  850. package/lib/hmi/shape-h-renderer.cjs +222 -0
  851. package/lib/hmi/tier-check.cjs +63 -0
  852. package/lib/hmi/turn-text.cjs +268 -0
  853. package/lib/hmi/voice-color-mark.cjs +318 -0
  854. package/lib/hmi/voice-style-log.cjs +276 -0
  855. package/lib/import/PRECONDITIONS.md +41 -0
  856. package/lib/import/branding.cjs +210 -0
  857. package/lib/import/branding.test.cjs +235 -0
  858. package/lib/import/classifications-sync.cjs +104 -0
  859. package/lib/import/classifications-sync.test.cjs +129 -0
  860. package/lib/import/enricher.cjs +296 -0
  861. package/lib/import/enricher.test.cjs +273 -0
  862. package/lib/import/integration.test.cjs +376 -0
  863. package/lib/import/manifest.cjs +129 -0
  864. package/lib/import/manifest.schema.json +185 -0
  865. package/lib/import/manifest.test.cjs +123 -0
  866. package/lib/import/meeting-detector.cjs +92 -0
  867. package/lib/import/meeting-detector.test.cjs +100 -0
  868. package/lib/import/person-detector.cjs +229 -0
  869. package/lib/import/person-detector.test.cjs +149 -0
  870. package/lib/import/report.cjs +186 -0
  871. package/lib/import/report.test.cjs +186 -0
  872. package/lib/import/room-md-scaffolder.cjs +49 -0
  873. package/lib/import/router.cjs +224 -0
  874. package/lib/import/router.test.cjs +356 -0
  875. package/lib/import/run-all-tests.cjs +36 -0
  876. package/lib/import/smoke-test.cjs +213 -0
  877. package/lib/import/smoke-test.test.cjs +148 -0
  878. package/lib/import/undo.test.cjs +199 -0
  879. package/lib/import/vault-scanner.cjs +105 -0
  880. package/lib/import/vault-scanner.test.cjs +67 -0
  881. package/lib/lens-engine/correlation-resolver.cjs +174 -0
  882. package/lib/lens-engine/source-lens-driver.cjs +736 -0
  883. package/lib/mcp/adapter-client.cjs +103 -0
  884. package/lib/mcp/app-html/dashboard.html +316 -0
  885. package/lib/mcp/app-html/graph.html +428 -0
  886. package/lib/mcp/app-html/mindrian-platform.html +1841 -0
  887. package/lib/mcp/app-html/wiki.html +383 -0
  888. package/lib/mcp/app-views.cjs +322 -0
  889. package/lib/mcp/brain-composition-census.cjs +184 -0
  890. package/lib/mcp/brain-router.cjs +530 -0
  891. package/lib/mcp/capability-registry.cjs +62 -0
  892. package/lib/mcp/contract-version.cjs +59 -0
  893. package/lib/mcp/daemon-lifecycle.cjs +324 -0
  894. package/lib/mcp/gate-dedup.cjs +120 -0
  895. package/lib/mcp/gate-ledger.cjs +145 -0
  896. package/lib/mcp/gate-render.cjs +483 -0
  897. package/lib/mcp/hook-adapter-audit.cjs +199 -0
  898. package/lib/mcp/larry-context.cjs +42 -0
  899. package/lib/mcp/mcp-first-flag.cjs +147 -0
  900. package/lib/mcp/no-instructions.test.cjs +270 -0
  901. package/lib/mcp/pipeline-state.cjs +424 -0
  902. package/lib/mcp/prompts.cjs +421 -0
  903. package/lib/mcp/register-core-tools.cjs +78 -0
  904. package/lib/mcp/resources.cjs +359 -0
  905. package/lib/mcp/runtime-instructions.cjs +38 -0
  906. package/lib/mcp/session-catchup.cjs +349 -0
  907. package/lib/mcp/session-registry.cjs +113 -0
  908. package/lib/mcp/session-room.cjs +124 -0
  909. package/lib/mcp/sse-event-bus.cjs +98 -0
  910. package/lib/mcp/stop-gate-handler.cjs +589 -0
  911. package/lib/mcp/surface-detect.cjs +186 -0
  912. package/lib/mcp/tool-router.cjs +2113 -0
  913. package/lib/mcp/tools/chain.cjs +674 -0
  914. package/lib/mcp/tools/claim.cjs +180 -0
  915. package/lib/mcp/tools/context.cjs +92 -0
  916. package/lib/mcp/tools/dual-path.cjs +79 -0
  917. package/lib/mcp/tools/gate.cjs +392 -0
  918. package/lib/mcp/tools/graph-reason.cjs +130 -0
  919. package/lib/mcp/tools/graph.cjs +321 -0
  920. package/lib/mcp/tools/identity.cjs +174 -0
  921. package/lib/mcp/tools/room.cjs +449 -0
  922. package/lib/mcp/tools/sensors.cjs +450 -0
  923. package/lib/mcp/tools/status.cjs +183 -0
  924. package/lib/mcp/tools/stop-gate.cjs +103 -0
  925. package/lib/mcp/tools/views.cjs +382 -0
  926. package/lib/mcp/tree-watcher.cjs +199 -0
  927. package/lib/memory/.mindrian/auto-explore-mat-test-001.json +11 -0
  928. package/lib/memory/aaak-compress.cjs +403 -0
  929. package/lib/memory/aaak-compress.test.cjs +288 -0
  930. package/lib/memory/async-artifact-auto-commit.test.cjs +223 -0
  931. package/lib/memory/bearer-token.test.cjs +315 -0
  932. package/lib/memory/body-shape-coverage.test.cjs +268 -0
  933. package/lib/memory/brain-cache-lru.test.cjs +259 -0
  934. package/lib/memory/brain-client-query-shape.test.cjs +160 -0
  935. package/lib/memory/brain-cypher-chain-slice.test.cjs +368 -0
  936. package/lib/memory/brain-derivation-graceful-degradation.test.cjs +1019 -0
  937. package/lib/memory/brain-derivation-queue.test.cjs +553 -0
  938. package/lib/memory/brain-derivation.test.cjs +639 -0
  939. package/lib/memory/brain-derive-command.test.cjs +534 -0
  940. package/lib/memory/brain-derive-curation.test.cjs +243 -0
  941. package/lib/memory/brain-md-invariants-validator.test.cjs +704 -0
  942. package/lib/memory/brain-md-schema.test.cjs +467 -0
  943. package/lib/memory/brain-md-staleness.test.cjs +525 -0
  944. package/lib/memory/brain-server-resolution.test.cjs +314 -0
  945. package/lib/memory/brain-suggestion-template.test.cjs +200 -0
  946. package/lib/memory/chain-recommender-canonical.test.cjs +208 -0
  947. package/lib/memory/chain-recommender.test.cjs +233 -0
  948. package/lib/memory/chat-context.test.cjs +128 -0
  949. package/lib/memory/command-registry.test.cjs +220 -0
  950. package/lib/memory/connector-registry.test.cjs +94 -0
  951. package/lib/memory/correlation-label-index.test.cjs +119 -0
  952. package/lib/memory/correlation.test.cjs +253 -0
  953. package/lib/memory/cross-room-aggregator.test.cjs +909 -0
  954. package/lib/memory/curation-132-03-dedup-held-rename.test.cjs +251 -0
  955. package/lib/memory/curation-132-05-pseudonymize.test.cjs +205 -0
  956. package/lib/memory/curation-batch.test.cjs +213 -0
  957. package/lib/memory/dashboard-server.test.cjs +256 -0
  958. package/lib/memory/debouncer-drain-at-prompt.test.cjs +389 -0
  959. package/lib/memory/decision-capture.test.cjs +632 -0
  960. package/lib/memory/decision-capture.worker.cjs +70 -0
  961. package/lib/memory/doctor-deprecation-surface.test.cjs +188 -0
  962. package/lib/memory/dual-graph-health.test.cjs +485 -0
  963. package/lib/memory/explain-decision-command.test.cjs +521 -0
  964. package/lib/memory/explain-decision-footer.test.cjs +316 -0
  965. package/lib/memory/explored-materials-store.cjs +392 -0
  966. package/lib/memory/f-selector-ranker.test.cjs +593 -0
  967. package/lib/memory/feynman-minto-guardian.test.cjs +863 -0
  968. package/lib/memory/feynman-minto-invariants.test.cjs +554 -0
  969. package/lib/memory/feynman-prompts-drift.test.cjs +144 -0
  970. package/lib/memory/feynman-prompts.cjs +151 -0
  971. package/lib/memory/feynman-prompts.test.cjs +96 -0
  972. package/lib/memory/first-touch-version.test.cjs +198 -0
  973. package/lib/memory/folder-memory-quadruple.test.cjs +548 -0
  974. package/lib/memory/folder-memory.test.cjs +503 -0
  975. package/lib/memory/framework-chain-composer.test.cjs +549 -0
  976. package/lib/memory/frontmatter-schema-validator.test.cjs +344 -0
  977. package/lib/memory/guardian-onstop-reaches-user.test.cjs +396 -0
  978. package/lib/memory/heal-command.test.cjs +604 -0
  979. package/lib/memory/help-coverage.test.cjs +108 -0
  980. package/lib/memory/help-renderer.test.cjs +145 -0
  981. package/lib/memory/huji-run-one-async-parity.test.cjs +242 -0
  982. package/lib/memory/hypergraph-event-schema.test.cjs +116 -0
  983. package/lib/memory/index-artifact-transaction.test.cjs +333 -0
  984. package/lib/memory/lazygraph-rs-discoveries-view.test.cjs +122 -0
  985. package/lib/memory/local-chain-recommender.test.cjs +172 -0
  986. package/lib/memory/mcp-input-validation.test.cjs +240 -0
  987. package/lib/memory/mcp-server-brain-deps.test.cjs +270 -0
  988. package/lib/memory/mcp-stack-fallback.test.cjs +433 -0
  989. package/lib/memory/minto-debounce-consumer-census.test.cjs +567 -0
  990. package/lib/memory/minto-debouncer.test.cjs +407 -0
  991. package/lib/memory/minto-debouncer.worker.cjs +46 -0
  992. package/lib/memory/minto-migration-v88.test.cjs +265 -0
  993. package/lib/memory/minto-schema-v88.test.cjs +390 -0
  994. package/lib/memory/mos-status-renderer.test.cjs +631 -0
  995. package/lib/memory/narrative-schema.cjs +376 -0
  996. package/lib/memory/narrative-schema.test.cjs +209 -0
  997. package/lib/memory/nav-dial.test.cjs +414 -0
  998. package/lib/memory/navigation-engine-core.test.cjs +712 -0
  999. package/lib/memory/navigation-engine-offer.test.cjs +404 -0
  1000. package/lib/memory/navigation-hook-resolver.test.cjs +177 -0
  1001. package/lib/memory/navigation-invariants.test.cjs +483 -0
  1002. package/lib/memory/navigation-projections.test.cjs +241 -0
  1003. package/lib/memory/navigation-write-edge.test.cjs +206 -0
  1004. package/lib/memory/offer-closer.test.cjs +258 -0
  1005. package/lib/memory/offer-presenter.test.cjs +554 -0
  1006. package/lib/memory/on-stop-snapshot.test.cjs +404 -0
  1007. package/lib/memory/orchestration-projection.test.cjs +706 -0
  1008. package/lib/memory/packet-chain-hint.test.cjs +407 -0
  1009. package/lib/memory/packet-schema-validation.test.cjs +317 -0
  1010. package/lib/memory/palette-consistency.test.cjs +127 -0
  1011. package/lib/memory/pending-tension-store.cjs +453 -0
  1012. package/lib/memory/per-command-jtbd-derivation.test.cjs +130 -0
  1013. package/lib/memory/per-command-teaching.test.cjs +110 -0
  1014. package/lib/memory/post-compact-reinjection.test.cjs +854 -0
  1015. package/lib/memory/post-write-triple.test.cjs +317 -0
  1016. package/lib/memory/pre-compact-snapshot.test.cjs +495 -0
  1017. package/lib/memory/precommit-real-commit.test.cjs +301 -0
  1018. package/lib/memory/problem-type-router.test.cjs +656 -0
  1019. package/lib/memory/query-efficiency-telemetry.test.cjs +612 -0
  1020. package/lib/memory/recompile-room-references.test.cjs +392 -0
  1021. package/lib/memory/recompile-room-references.worker.cjs +42 -0
  1022. package/lib/memory/record-decision-dual-write.test.cjs +454 -0
  1023. package/lib/memory/render-v2-disposition.test.cjs +199 -0
  1024. package/lib/memory/room-classifier-strict-mode.test.cjs +430 -0
  1025. package/lib/memory/room-minto-hook.test.cjs +398 -0
  1026. package/lib/memory/rs-discovery-engine.test.cjs +323 -0
  1027. package/lib/memory/run-feynman-tests.cjs +2101 -0
  1028. package/lib/memory/security-trifecta.test.cjs +329 -0
  1029. package/lib/memory/selector-alias-map.test.cjs +172 -0
  1030. package/lib/memory/selector-decisions.test.cjs +417 -0
  1031. package/lib/memory/selector-miss.test.cjs +290 -0
  1032. package/lib/memory/session-start-brain-staleness.test.cjs +363 -0
  1033. package/lib/memory/session-start-triple-injection.test.cjs +514 -0
  1034. package/lib/memory/sessionstart-banner-formatter.cjs +318 -0
  1035. package/lib/memory/sessionstart-coordinator.test.cjs +446 -0
  1036. package/lib/memory/sessionstart-minto-banner.test.cjs +373 -0
  1037. package/lib/memory/skill-activation-router.test.cjs +465 -0
  1038. package/lib/memory/skill-vs-code-drift.test.cjs +257 -0
  1039. package/lib/memory/soft-alias.test.cjs +144 -0
  1040. package/lib/memory/spine-events-correlation.test.cjs +198 -0
  1041. package/lib/memory/stale-copy-scanner.test.cjs +294 -0
  1042. package/lib/memory/stamp-artifact-write.test.cjs +304 -0
  1043. package/lib/memory/state-aware-router.test.cjs +90 -0
  1044. package/lib/memory/statusline-active-room-write.test.cjs +245 -0
  1045. package/lib/memory/statusline-active-room.test.cjs +315 -0
  1046. package/lib/memory/statusline-minto-segment.test.cjs +292 -0
  1047. package/lib/memory/statusline-two-row.test.cjs +338 -0
  1048. package/lib/memory/suggest-next-workflow.test.cjs +176 -0
  1049. package/lib/memory/sync-async-entry-points.test.cjs +204 -0
  1050. package/lib/memory/terminal-capability.test.cjs +155 -0
  1051. package/lib/memory/test-bridge-writer-enhanced.cjs +452 -0
  1052. package/lib/memory/test-rs-brain-substrate-shape.cjs +529 -0
  1053. package/lib/memory/test-rs-brain-substrate.cjs +636 -0
  1054. package/lib/memory/test-rs-breakthrough-scorer.cjs +375 -0
  1055. package/lib/memory/test-rs-canon-violations.cjs +218 -0
  1056. package/lib/memory/test-rs-chain-feeder-core.cjs +344 -0
  1057. package/lib/memory/test-rs-chain-feeder-skill-spawn.cjs +297 -0
  1058. package/lib/memory/test-rs-commercial-assessor.cjs +385 -0
  1059. package/lib/memory/test-rs-differential-scorer.cjs +480 -0
  1060. package/lib/memory/test-rs-discovery-engine.cjs +648 -0
  1061. package/lib/memory/test-rs-domain-analyzer.cjs +492 -0
  1062. package/lib/memory/test-rs-egress-primitives.cjs +420 -0
  1063. package/lib/memory/test-rs-expert-mapper.cjs +547 -0
  1064. package/lib/memory/test-rs-explain-command.cjs +443 -0
  1065. package/lib/memory/test-rs-fetcher-academic.cjs +848 -0
  1066. package/lib/memory/test-rs-fetcher-experts.cjs +496 -0
  1067. package/lib/memory/test-rs-fetcher-industry.cjs +702 -0
  1068. package/lib/memory/test-rs-fetcher-patents.cjs +674 -0
  1069. package/lib/memory/test-rs-innovation-classifier.cjs +301 -0
  1070. package/lib/memory/test-rs-mind-map.cjs +646 -0
  1071. package/lib/memory/test-rs-neo4j-writer.cjs +518 -0
  1072. package/lib/memory/test-rs-nl-to-query.cjs +449 -0
  1073. package/lib/memory/test-rs-pinecone-bridge.cjs +282 -0
  1074. package/lib/memory/test-rs-preprocessor.cjs +433 -0
  1075. package/lib/memory/test-rs-query-matrix.cjs +391 -0
  1076. package/lib/memory/test-rs-query-to-text.cjs +551 -0
  1077. package/lib/memory/test-rs-sqlite-mirror.cjs +649 -0
  1078. package/lib/memory/test-rs-thesis-generator.cjs +360 -0
  1079. package/lib/memory/triple-context-formatter.cjs +473 -0
  1080. package/lib/memory/triple-context-formatter.test.cjs +442 -0
  1081. package/lib/memory/user-md-persona.test.cjs +565 -0
  1082. package/lib/memory/userpromptsubmit-integration.test.cjs +787 -0
  1083. package/lib/memory/validators/README.md +157 -0
  1084. package/lib/memory/validators/brain-md-invariants.cjs +475 -0
  1085. package/lib/memory/validators/brain-substrate-invariants.cjs +285 -0
  1086. package/lib/memory/validators/external-academic-invariants.cjs +249 -0
  1087. package/lib/memory/validators/external-industry-invariants.cjs +271 -0
  1088. package/lib/memory/validators/external-patents-invariants.cjs +266 -0
  1089. package/lib/memory/validators/minto-invariants.cjs +62 -0
  1090. package/lib/memory/validators/navigation-invariants.cjs +340 -0
  1091. package/lib/memory/validators/queue-health.cjs +95 -0
  1092. package/lib/memory/validators/snapshot-integrity.cjs +129 -0
  1093. package/lib/memory/validators/stale-lifecycle.cjs +116 -0
  1094. package/lib/memory/vault-section-minto-generator-atomic.test.cjs +556 -0
  1095. package/lib/memory/vault-section-minto-generator-atomic.worker.cjs +73 -0
  1096. package/lib/memory/workflow-layer-e2e.test.cjs +262 -0
  1097. package/lib/memory/write-lock-atomic.test.cjs +137 -0
  1098. package/lib/memory/write-lock-atomic.worker.cjs +55 -0
  1099. package/lib/parity/check-parity.cjs +83 -0
  1100. package/lib/presentation/presentation-server.cjs +101 -0
  1101. package/lib/presentation/presentation-watcher.cjs +123 -0
  1102. package/lib/quickview/hub-server.cjs +719 -0
  1103. package/lib/quickview/server.cjs +533 -0
  1104. package/lib/render/JTBD-PALETTES.md +145 -0
  1105. package/lib/render/ROOM.md +111 -0
  1106. package/lib/render/render-v2.cjs +532 -0
  1107. package/lib/render/render-v2.test.cjs +267 -0
  1108. package/lib/render/render.cjs +65 -0
  1109. package/lib/sessionstart/budget-compressor.cjs +130 -0
  1110. package/lib/sessionstart/contributor-interface.cjs +134 -0
  1111. package/lib/sessionstart/contributor-isolator.cjs +128 -0
  1112. package/lib/sessionstart/precedence-ladder.cjs +47 -0
  1113. package/lib/state/ROOM.md +46 -0
  1114. package/lib/state/state-md-parser.cjs +215 -0
  1115. package/lib/statusline/ROOM.md +38 -0
  1116. package/lib/statusline/banner-suppression.cjs +50 -0
  1117. package/lib/statusline/cockpit-renderer.cjs +443 -0
  1118. package/lib/statusline/cockpit-signals.cjs +312 -0
  1119. package/lib/statusline/cockpit-telemetry.cjs +152 -0
  1120. package/lib/statusline/ctx-window.cjs +135 -0
  1121. package/lib/statusline/governing-thought-truncator.cjs +45 -0
  1122. package/lib/statusline/next-move-cache.cjs +235 -0
  1123. package/lib/statusline/ratification-next.cjs +164 -0
  1124. package/lib/statusline/room-health-cache.cjs +200 -0
  1125. package/lib/statusline/surface-detect.cjs +85 -0
  1126. package/lib/statusline/two-row-renderer.cjs +207 -0
  1127. package/lib/statusline/version-resolver.cjs +81 -0
  1128. package/lib/ui/design-system.cjs +19 -0
  1129. package/lib/update-bootstrap.sh.template +145 -0
  1130. package/lib/vault/frontmatter-schema.cjs +297 -0
  1131. package/lib/vault/room-scanner.cjs +365 -0
  1132. package/lib/vault/wikilink-builder.cjs +231 -0
  1133. package/lib/vault/wikilink-builder.test.cjs +182 -0
  1134. package/lib/wiki/briefing.cjs +193 -0
  1135. package/lib/wiki/editor-dist/wiki-editor.css +1 -0
  1136. package/lib/wiki/editor-dist/wiki-editor.js +1327 -0
  1137. package/lib/wiki/graph-links.cjs +281 -0
  1138. package/lib/wiki/page-renderer.cjs +229 -0
  1139. package/lib/wiki/room-home.cjs +353 -0
  1140. package/lib/wiki/wiki-chat.cjs +81 -0
  1141. package/lib/wiki/wiki-export.cjs +364 -0
  1142. package/lib/wiki/wiki-layout.cjs +1143 -0
  1143. package/lib/wiki/wiki-search.cjs +142 -0
  1144. package/lib/wiki/wiki-server.cjs +748 -0
  1145. package/lib/wiki/wiki-watcher.cjs +105 -0
  1146. package/lib/workflow/ROOM.md +47 -0
  1147. package/lib/workflow/chain-source.cjs +179 -0
  1148. package/lib/workflow/command-resolver.cjs +155 -0
  1149. package/lib/workflow/command-resolver.test.cjs +235 -0
  1150. package/lib/workflow/cross-room-umbilical-closer.cjs +364 -0
  1151. package/lib/workflow/dial-close-reach.cjs +405 -0
  1152. package/lib/workflow/f-selector-ranker.cjs +1148 -0
  1153. package/lib/workflow/f1-pick-consumer.cjs +232 -0
  1154. package/lib/workflow/f3-depth-consumer.cjs +98 -0
  1155. package/lib/workflow/f4-scope-consumer.cjs +112 -0
  1156. package/lib/workflow/f8-consumer.test.cjs +82 -0
  1157. package/lib/workflow/f8-fanout-consumer.cjs +208 -0
  1158. package/lib/workflow/f9-consumer.test.cjs +71 -0
  1159. package/lib/workflow/f9-ordered-consumer.cjs +199 -0
  1160. package/lib/workflow/local-chain-recommender.cjs +330 -0
  1161. package/lib/workflow/memory-cascade-f9-adapter.cjs +273 -0
  1162. package/lib/workflow/memory-governance-closer.cjs +384 -0
  1163. package/lib/workflow/offer-closer.cjs +407 -0
  1164. package/lib/workflow/reach-hedge-ranker.cjs +809 -0
  1165. package/lib/workflow/reach-reject-reader.cjs +372 -0
  1166. package/lib/workflow/reconcile-f9-adapter.cjs +299 -0
  1167. package/lib/workflow/selector-decisions.cjs +478 -0
  1168. package/lib/workflow/session-binding-consumer.cjs +249 -0
  1169. package/npm-shrinkwrap.json +1544 -0
  1170. package/output-styles/destijl.md +67 -0
  1171. package/package.json +22 -4
  1172. package/pipelines/PWS_grading/01-deep-grade.md +48 -0
  1173. package/pipelines/PWS_grading/02-mullins.md +50 -0
  1174. package/pipelines/PWS_grading/03-build-thesis.md +60 -0
  1175. package/pipelines/PWS_grading/04-structure-argument.md +77 -0
  1176. package/pipelines/PWS_grading/CHAIN.md +79 -0
  1177. package/pipelines/analogy/01-decompose.md +80 -0
  1178. package/pipelines/analogy/02-abstract.md +87 -0
  1179. package/pipelines/analogy/03-search.md +135 -0
  1180. package/pipelines/analogy/04-transfer.md +101 -0
  1181. package/pipelines/analogy/05-validate.md +106 -0
  1182. package/pipelines/analogy/CHAIN.md +73 -0
  1183. package/pipelines/discovery/01-explore-domains.md +44 -0
  1184. package/pipelines/discovery/02-think-hats.md +50 -0
  1185. package/pipelines/discovery/03-analyze-needs.md +54 -0
  1186. package/pipelines/discovery/CHAIN.md +48 -0
  1187. package/pipelines/thesis/01-structure-argument.md +45 -0
  1188. package/pipelines/thesis/02-challenge-assumptions.md +48 -0
  1189. package/pipelines/thesis/03-build-thesis.md +54 -0
  1190. package/pipelines/thesis/CHAIN.md +48 -0
  1191. package/references/brain/causal-directives.md +91 -0
  1192. package/references/brain/causal-enrichment.cypher +165 -0
  1193. package/references/brain/command-triggers-schema.md +15 -0
  1194. package/references/brain/graph-architecture.md +317 -0
  1195. package/references/brain/query-patterns.md +504 -0
  1196. package/references/brain/room-hierarchy-schema.md +218 -0
  1197. package/references/brain/schema.md +86 -0
  1198. package/references/capability-radar/capabilities-index.md +269 -0
  1199. package/references/capability-radar/changelog-cache.md +95 -0
  1200. package/references/causal/causal-schema.md +103 -0
  1201. package/references/design/email-template-standard.md +169 -0
  1202. package/references/design/graph-visualization-standard.md +178 -0
  1203. package/references/design/newsletter-email-template.html +307 -0
  1204. package/references/document-generation.md +179 -0
  1205. package/references/hsi/HSI-TOOLS-REFERENCE.md +222 -0
  1206. package/references/import-config.md +141 -0
  1207. package/references/integrations/detection-patterns.md +101 -0
  1208. package/references/meeting/artifact-template.md +377 -0
  1209. package/references/meeting/cross-meeting-intelligence.md +216 -0
  1210. package/references/meeting/cross-relationship-patterns.md +202 -0
  1211. package/references/meeting/extraction-perspectives.md +225 -0
  1212. package/references/meeting/filing-protocol.md +222 -0
  1213. package/references/meeting/knowledge-typing.md +242 -0
  1214. package/references/meeting/live-join-interface.md +244 -0
  1215. package/references/meeting/section-mapping.md +192 -0
  1216. package/references/meeting/segment-classification.md +258 -0
  1217. package/references/meeting/speaker-profile-template.md +219 -0
  1218. package/references/meeting/summary-template.md +348 -0
  1219. package/references/meeting/transcript-patterns.md +226 -0
  1220. package/references/methodology/analyze-needs.md +135 -0
  1221. package/references/methodology/analyze-systems.md +121 -0
  1222. package/references/methodology/analyze-timing.md +149 -0
  1223. package/references/methodology/beautiful-question.md +109 -0
  1224. package/references/methodology/build-knowledge.md +161 -0
  1225. package/references/methodology/build-thesis-scored.md +60 -0
  1226. package/references/methodology/build-thesis.md +237 -0
  1227. package/references/methodology/causal-loop-diagrams.md +65 -0
  1228. package/references/methodology/challenge-assumptions.md +127 -0
  1229. package/references/methodology/diagnose.md +169 -0
  1230. package/references/methodology/dominant-designs.md +212 -0
  1231. package/references/methodology/explore-domains.md +147 -0
  1232. package/references/methodology/explore-futures.md +163 -0
  1233. package/references/methodology/explore-trends.md +129 -0
  1234. package/references/methodology/find-bottlenecks.md +131 -0
  1235. package/references/methodology/grade.md +211 -0
  1236. package/references/methodology/huji-stage-a-intake.md +246 -0
  1237. package/references/methodology/index.md +34 -0
  1238. package/references/methodology/leadership.md +200 -0
  1239. package/references/methodology/lean-canvas.md +116 -0
  1240. package/references/methodology/leverage-scan-signatures.md +83 -0
  1241. package/references/methodology/macro-trends.md +192 -0
  1242. package/references/methodology/map-unknowns.md +137 -0
  1243. package/references/methodology/mullins-7-domains.md +104 -0
  1244. package/references/methodology/problem-types.md +65 -0
  1245. package/references/methodology/root-cause.md +178 -0
  1246. package/references/methodology/rubric-huji.md +160 -0
  1247. package/references/methodology/sapphire-encoding.md +355 -0
  1248. package/references/methodology/scenario-plan.md +190 -0
  1249. package/references/methodology/score-innovation.md +154 -0
  1250. package/references/methodology/skillopt-judge-rubric.md +48 -0
  1251. package/references/methodology/skillopt-queries-rubric.md +60 -0
  1252. package/references/methodology/skillopt-refute-rubric.md +59 -0
  1253. package/references/methodology/skillopt-review-rubric.md +72 -0
  1254. package/references/methodology/skillopt-revise-rubric.md +48 -0
  1255. package/references/methodology/structure-argument.md +158 -0
  1256. package/references/methodology/systems-thinking.md +231 -0
  1257. package/references/methodology/think-hats.md +147 -0
  1258. package/references/methodology/triz-matrix.json +751 -0
  1259. package/references/methodology/triz-principles.md +501 -0
  1260. package/references/methodology/user-needs.md +199 -0
  1261. package/references/methodology/validate.md +163 -0
  1262. package/references/methodology/value-proposition.md +244 -0
  1263. package/references/opportunities/funding-lifecycle.md +103 -0
  1264. package/references/opportunities/grant-api-patterns.md +99 -0
  1265. package/references/opportunities/opportunity-template.md +84 -0
  1266. package/references/opportunities/tnufa-rubric.md +81 -0
  1267. package/references/personality/assessment-philosophy.md +72 -0
  1268. package/references/personality/lexicon.md +100 -0
  1269. package/references/personality/persona-chains.md +56 -0
  1270. package/references/personality/pws-lexicon-full.md +499 -0
  1271. package/references/personality/voice-dna.md +156 -0
  1272. package/references/personas/hat-perspectives.md +76 -0
  1273. package/references/personas/persona-template.md +63 -0
  1274. package/references/pipeline/act-output-contract.md +88 -0
  1275. package/references/pipeline/chains-index.md +39 -0
  1276. package/references/pws-profile-generation.md +79 -0
  1277. package/references/reasoning/reasoning-schema.md +143 -0
  1278. package/references/reasoning/reasoning-template.md +68 -0
  1279. package/references/reasoning/run-template.md +38 -0
  1280. package/references/research/RESEARCH_14_CLAUDE_CODE_SOURCE_ARCHITECTURE.md +209 -0
  1281. package/references/research/RESEARCH_15_V1.8_OPTIMIZATION_JTBD.md +375 -0
  1282. package/references/research/RESEARCH_16_NATIVE_FIRST_PLUGIN_ARCHITECTURE.md +575 -0
  1283. package/references/research/RESEARCH_17_MCP_UI_FRAMEWORKS.md +272 -0
  1284. package/references/security/agentshield-baseline.json +8 -0
  1285. package/references/security/cve-db.json +220 -0
  1286. package/references/taxonomy/TAXONOMY.md +192 -0
  1287. package/references/templates/MINTO.md +36 -0
  1288. package/references/user-research/2026-04-05-leah-lawrence-session.md +202 -0
  1289. package/references/vault-kit/README.md +35 -0
  1290. package/references/vault-kit/app.json +12 -0
  1291. package/references/vault-kit/appearance.json +12 -0
  1292. package/references/vault-kit/graph.json +35 -0
  1293. package/references/vault-kit/snippets/mindrian-destijl.css +297 -0
  1294. package/references/vault-kit/templates/new-artifact.md +37 -0
  1295. package/references/vault-kit/templates/new-meeting-note.md +35 -0
  1296. package/references/vault-kit/templates/new-team-profile.md +29 -0
  1297. package/references/vault-kit/templates/new-xref.md +35 -0
  1298. package/references/visual/ROOM.md +55 -0
  1299. package/references/visual/palette.json +54 -0
  1300. package/references/visual/symbol-system.md +151 -0
  1301. package/scripts/189-plurai-gate-check.cjs +88 -0
  1302. package/scripts/198-plurai-gate-check.cjs +118 -0
  1303. package/scripts/198-rollback-rehearsal.cjs +233 -0
  1304. package/scripts/83-scope-injection.test.cjs +648 -0
  1305. package/scripts/PYTHON_GATES.md +78 -0
  1306. package/scripts/__pycache__/compute-hsi.cpython-312.pyc +0 -0
  1307. package/scripts/__pycache__/detect-reverse-salients.cpython-312.pyc +0 -0
  1308. package/scripts/__pycache__/rs-engine.cpython-312.pyc +0 -0
  1309. package/scripts/act-command.cjs +518 -0
  1310. package/scripts/admin-brain-write.cjs +442 -0
  1311. package/scripts/admin-command-gate.cjs +178 -0
  1312. package/scripts/agentshield-scan-cli.cjs +226 -0
  1313. package/scripts/agentshield-sessionstart-scan.cjs +282 -0
  1314. package/scripts/analogy-fitness-report.cjs +266 -0
  1315. package/scripts/analyze-room +1079 -0
  1316. package/scripts/apply-teaching-content.cjs +298 -0
  1317. package/scripts/async-artifact-auto-commit.cjs +485 -0
  1318. package/scripts/audit-active-phase-resolver.cjs +160 -0
  1319. package/scripts/audit-body-shape-coverage.cjs +213 -0
  1320. package/scripts/auto-explore-drain.cjs +274 -0
  1321. package/scripts/auto-explore-fingerprint.cjs +354 -0
  1322. package/scripts/auto-explore-fire.cjs +359 -0
  1323. package/scripts/backfill-correlation-id.cjs +425 -0
  1324. package/scripts/backfill-hitl-shape.cjs +276 -0
  1325. package/scripts/backfill-hitl-shape.test.cjs +307 -0
  1326. package/scripts/backup-modifications +68 -0
  1327. package/scripts/banner +182 -0
  1328. package/scripts/brain-derivation-drain.cjs +291 -0
  1329. package/scripts/brain-derive-command.cjs +846 -0
  1330. package/scripts/brain-normalize-books.cypher +505 -0
  1331. package/scripts/brain-normalize-final.cypher +1355 -0
  1332. package/scripts/brain-normalize-problemtype.cypher +475 -0
  1333. package/scripts/brain-normalize-supplement.cypher +449 -0
  1334. package/scripts/brain-normalize-targeted.cypher +344 -0
  1335. package/scripts/brain-normalize-v194.cypher +61 -0
  1336. package/scripts/brain-normalize.cypher +530 -0
  1337. package/scripts/brain-response-sanitize-hook.cjs +165 -0
  1338. package/scripts/build-brain-census.cjs +957 -0
  1339. package/scripts/build-brain-packet-schema.cjs +225 -0
  1340. package/scripts/build-command-registry.cjs +587 -0
  1341. package/scripts/build-connector-registry.cjs +1331 -0
  1342. package/scripts/build-corpus-stats.cjs +408 -0
  1343. package/scripts/build-dist-bundles.cjs +495 -0
  1344. package/scripts/build-ecosystem-graph.cjs +490 -0
  1345. package/scripts/build-graph +1462 -0
  1346. package/scripts/build-graph-from-sqlite.cjs +97 -0
  1347. package/scripts/build-harness-manifest.cjs +1090 -0
  1348. package/scripts/build-jtbd-nudges +205 -0
  1349. package/scripts/build-new-surface.cjs +805 -0
  1350. package/scripts/build-orchestration-projection.cjs +1221 -0
  1351. package/scripts/build-render-coverage.cjs +637 -0
  1352. package/scripts/build-skill-mirrors.cjs +681 -0
  1353. package/scripts/cache-hitrate-report.cjs +216 -0
  1354. package/scripts/causal-to-graph.cjs +163 -0
  1355. package/scripts/check-abstraction-fixture-neutral.cjs +160 -0
  1356. package/scripts/check-admin-identity.cjs +212 -0
  1357. package/scripts/check-brain-tool-liveness.cjs +502 -0
  1358. package/scripts/check-card-fire.cjs +1809 -0
  1359. package/scripts/check-cirs-declaration.cjs +279 -0
  1360. package/scripts/check-deck-design.cjs +104 -0
  1361. package/scripts/check-dual-graph-health.cjs +645 -0
  1362. package/scripts/check-first-touch-drift.cjs +220 -0
  1363. package/scripts/check-flagship-floor.cjs +391 -0
  1364. package/scripts/check-framework-vocabulary-drift.cjs +563 -0
  1365. package/scripts/check-gate-seam.cjs +178 -0
  1366. package/scripts/check-graph-derive-health.cjs +208 -0
  1367. package/scripts/check-graph-export-typemap.cjs +118 -0
  1368. package/scripts/check-help-coverage.cjs +290 -0
  1369. package/scripts/check-hitl-stages.cjs +219 -0
  1370. package/scripts/check-hook-schema-compatibility.cjs +231 -0
  1371. package/scripts/check-hsi-deps +42 -0
  1372. package/scripts/check-kuzu-reintroduction.cjs +251 -0
  1373. package/scripts/check-onboard +43 -0
  1374. package/scripts/check-onboard-statusline.cjs +363 -0
  1375. package/scripts/check-palette-consistency.cjs +106 -0
  1376. package/scripts/check-pending-ambiguous.cjs +244 -0
  1377. package/scripts/check-pending-breakthrough.cjs +189 -0
  1378. package/scripts/check-pending-breakthrough.test.cjs +166 -0
  1379. package/scripts/check-pending-naming-decision.cjs +97 -0
  1380. package/scripts/check-plugin-path-anchoring.cjs +830 -0
  1381. package/scripts/check-publish-needs.cjs +126 -0
  1382. package/scripts/check-registry-drift.cjs +206 -0
  1383. package/scripts/check-release-payload-ceiling.cjs +269 -0
  1384. package/scripts/check-render-coverage.cjs +558 -0
  1385. package/scripts/check-research-isomorphism.cjs +446 -0
  1386. package/scripts/check-reward-before-investment.cjs +261 -0
  1387. package/scripts/check-room-blueprints.cjs +213 -0
  1388. package/scripts/check-schema-aliases.cjs +532 -0
  1389. package/scripts/check-shape-declaration.cjs +958 -0
  1390. package/scripts/check-shape-declaration.test.cjs +185 -0
  1391. package/scripts/check-skill-spec.cjs +312 -0
  1392. package/scripts/check-skill-vs-code-drift.cjs +178 -0
  1393. package/scripts/check-substrate.cjs +513 -0
  1394. package/scripts/check-tool-honesty.cjs +1601 -0
  1395. package/scripts/check-update +60 -0
  1396. package/scripts/check-version-and-sha.cjs +366 -0
  1397. package/scripts/check-voice-style.cjs +184 -0
  1398. package/scripts/check-worktree-hygiene.cjs +530 -0
  1399. package/scripts/classify-insight +59 -0
  1400. package/scripts/coherence-smoke-test.cjs +489 -0
  1401. package/scripts/compute-bayesian-surprise.py +175 -0
  1402. package/scripts/compute-blindspot-mass.py +209 -0
  1403. package/scripts/compute-disruption-index.py +211 -0
  1404. package/scripts/compute-element-novelty.py +254 -0
  1405. package/scripts/compute-external-whitespace.py +563 -0
  1406. package/scripts/compute-hsi.py +947 -0
  1407. package/scripts/compute-meetings-intelligence +716 -0
  1408. package/scripts/compute-opportunity-state +17 -0
  1409. package/scripts/compute-state +393 -0
  1410. package/scripts/compute-team +1112 -0
  1411. package/scripts/compute-whitespace-embeddings.py +464 -0
  1412. package/scripts/compute-whitespace-gaps.py +562 -0
  1413. package/scripts/compute_topic_forest.py +684 -0
  1414. package/scripts/consolidate-pinecone.py +265 -0
  1415. package/scripts/context-monitor +943 -0
  1416. package/scripts/create-speaker-profile +311 -0
  1417. package/scripts/cross-room-detect.cjs +195 -0
  1418. package/scripts/csv-to-idea-graph.cjs +755 -0
  1419. package/scripts/ctxl-eval.cjs +846 -0
  1420. package/scripts/curation-132-03-dedup-held-rename.cjs +395 -0
  1421. package/scripts/curation-132-05-pseudonymize.cjs +189 -0
  1422. package/scripts/derive-verb-reach-affinity.cjs +507 -0
  1423. package/scripts/detect-reverse-salients.py +242 -0
  1424. package/scripts/diagnostics-command.cjs +345 -0
  1425. package/scripts/dial-memory-refresh-command.cjs +147 -0
  1426. package/scripts/discover-analogy-whitespace.py +433 -0
  1427. package/scripts/discover-hsi-whitespace.py +352 -0
  1428. package/scripts/discover-rs-whitespace.py +327 -0
  1429. package/scripts/discovery-cycle.cjs +625 -0
  1430. package/scripts/disposition-render-v2.cjs +229 -0
  1431. package/scripts/doctor-preflight-format.cjs +101 -0
  1432. package/scripts/doctor.cjs +4327 -0
  1433. package/scripts/dogfood-bridge/append-to-queue.sh +59 -0
  1434. package/scripts/dogfood-bridge/path-filter.cjs +86 -0
  1435. package/scripts/dogfood-derive.cjs +158 -0
  1436. package/scripts/dogfood-emit.cjs +126 -0
  1437. package/scripts/empathy-observation-emit.cjs +108 -0
  1438. package/scripts/enrichment-queue-append.cjs +157 -0
  1439. package/scripts/ensure-brain-baseline.cjs +117 -0
  1440. package/scripts/entity-extract.cjs +1135 -0
  1441. package/scripts/eureka-command.cjs +687 -0
  1442. package/scripts/eureka-critic-run.cjs +662 -0
  1443. package/scripts/eureka-portfolio-report.cjs +2038 -0
  1444. package/scripts/eureka-room-report.cjs +419 -0
  1445. package/scripts/explain-decision-command.cjs +499 -0
  1446. package/scripts/export-pinecone-embeddings.cjs +516 -0
  1447. package/scripts/extract-room-intelligence.cjs +714 -0
  1448. package/scripts/fetch-brain-baseline.cjs +190 -0
  1449. package/scripts/fetch-brain-baseline.py +360 -0
  1450. package/scripts/feynman-minto-guardian.cjs +672 -0
  1451. package/scripts/feynman-timeline-refresh-command.cjs +270 -0
  1452. package/scripts/file-asset +253 -0
  1453. package/scripts/fire-sensor-event.cjs +83 -0
  1454. package/scripts/first-install-router.cjs +968 -0
  1455. package/scripts/frontmatter-schema-validator.cjs +339 -0
  1456. package/scripts/fts-index-drain.cjs +221 -0
  1457. package/scripts/generate-chat-embed.cjs +179 -0
  1458. package/scripts/generate-deck.cjs +322 -0
  1459. package/scripts/generate-export.cjs +474 -0
  1460. package/scripts/generate-hub.cjs +2553 -0
  1461. package/scripts/generate-lobby.cjs +718 -0
  1462. package/scripts/generate-presentation.cjs +988 -0
  1463. package/scripts/generate-presentation.test.cjs +405 -0
  1464. package/scripts/generate-section-intelligence.cjs +330 -0
  1465. package/scripts/generate-snapshot.cjs +1410 -0
  1466. package/scripts/generate-standalone +159 -0
  1467. package/scripts/git-ops +211 -0
  1468. package/scripts/graph-heal-pipeline.cjs +321 -0
  1469. package/scripts/gsd-artifact-graph-hook.cjs +219 -0
  1470. package/scripts/gsd-graph-derive-drain.cjs +571 -0
  1471. package/scripts/gsd-graph-derive-sweep.cjs +195 -0
  1472. package/scripts/heal-command.cjs +1365 -0
  1473. package/scripts/hedge-refit-pipeline.cjs +207 -0
  1474. package/scripts/help-renderer.cjs +303 -0
  1475. package/scripts/hmi-compliance-poll.cjs +451 -0
  1476. package/scripts/hmi-status-command.cjs +510 -0
  1477. package/scripts/hooked-rescore-117.cjs +224 -0
  1478. package/scripts/hooks/pre-commit +533 -0
  1479. package/scripts/hooks/pre-commit-room-minto-guard.cmd +43 -0
  1480. package/scripts/hooks/pre-commit-room-minto-guard.sh +533 -0
  1481. package/scripts/hsi-to-graph.cjs +194 -0
  1482. package/scripts/huji-batch.cjs +821 -0
  1483. package/scripts/huji-eval.cjs +1158 -0
  1484. package/scripts/huji-intake.cjs +563 -0
  1485. package/scripts/huji-pin-smoketest.cjs +454 -0
  1486. package/scripts/huji-run-one-async.cjs +305 -0
  1487. package/scripts/huji-run-one.cjs +671 -0
  1488. package/scripts/install-pre-commit.sh +113 -0
  1489. package/scripts/intent-classifier +106 -0
  1490. package/scripts/intent-classifier.cjs +3620 -0
  1491. package/scripts/interpret-whitespace.cjs +691 -0
  1492. package/scripts/jtbd-command.cjs +810 -0
  1493. package/scripts/jtbd-update.cjs +299 -0
  1494. package/scripts/label-topic-forest.cjs +667 -0
  1495. package/scripts/learn-from-usage +168 -0
  1496. package/scripts/lib/__pycache__/ensure_ml_deps.cpython-312.pyc +0 -0
  1497. package/scripts/lib/ensure_ml_deps.py +97 -0
  1498. package/scripts/load-embeddings-into-neo4j.cjs +569 -0
  1499. package/scripts/memory-artifact-graph-hook.cjs +191 -0
  1500. package/scripts/memory-command.cjs +687 -0
  1501. package/scripts/memory-completion-detector.cjs +217 -0
  1502. package/scripts/memory-lifecycle.cjs +620 -0
  1503. package/scripts/memory-resume-nudge.cjs +233 -0
  1504. package/scripts/methodology-ingest-local.sh +36 -0
  1505. package/scripts/migrate-brain-mcp-from-http-to-stdio.cjs +190 -0
  1506. package/scripts/migrate-brain-mcp-from-http-to-stdio.test.cjs +242 -0
  1507. package/scripts/migrate-hats-to-roomdb.cjs +217 -0
  1508. package/scripts/migrate-lazygraph.cjs +250 -0
  1509. package/scripts/migrate-minto-schema-v88.cjs +296 -0
  1510. package/scripts/migrate-plugin-root-refs.cjs +168 -0
  1511. package/scripts/migrate-room-sections-v275.cjs +556 -0
  1512. package/scripts/migrate-rooms +417 -0
  1513. package/scripts/migrate-skill-frontmatter.cjs +472 -0
  1514. package/scripts/migrate-stale-user-settings.cjs +296 -0
  1515. package/scripts/migrate-telemetry-v1.cjs +384 -0
  1516. package/scripts/migrate-telemetry-v1.test.cjs +356 -0
  1517. package/scripts/minto-debouncer.cjs +428 -0
  1518. package/scripts/mos-status.cjs +622 -0
  1519. package/scripts/mva-detect.cjs +229 -0
  1520. package/scripts/mva-run.cjs +36 -0
  1521. package/scripts/on-agent-complete +163 -0
  1522. package/scripts/on-cwd-changed +149 -0
  1523. package/scripts/on-file-changed +68 -0
  1524. package/scripts/on-stop +617 -0
  1525. package/scripts/on-task-complete +194 -0
  1526. package/scripts/operator-command.cjs +858 -0
  1527. package/scripts/operator-update.cjs +308 -0
  1528. package/scripts/part8-egress-guard-hook.cjs +229 -0
  1529. package/scripts/pipeline-command.cjs +271 -0
  1530. package/scripts/post-compact +383 -0
  1531. package/scripts/post-update-activation.cjs +339 -0
  1532. package/scripts/post-write +283 -0
  1533. package/scripts/power-demo-prompt.md +621 -0
  1534. package/scripts/pre-compact +273 -0
  1535. package/scripts/preflight-auto-explore.cjs +314 -0
  1536. package/scripts/preflight-doctor.cjs +225 -0
  1537. package/scripts/preflight-release-drift.cjs +168 -0
  1538. package/scripts/preflight-tension-surface.cjs +414 -0
  1539. package/scripts/probe-brain-contract.cjs +502 -0
  1540. package/scripts/publish-ops +346 -0
  1541. package/scripts/query-efficiency-telemetry.cjs +364 -0
  1542. package/scripts/query-semantic-scholar.cjs +545 -0
  1543. package/scripts/reapply-modifications +49 -0
  1544. package/scripts/reassign-primary.cjs +125 -0
  1545. package/scripts/recompile-room-references.cjs +601 -0
  1546. package/scripts/release-beta-preflight.sh +69 -0
  1547. package/scripts/render-pdf +588 -0
  1548. package/scripts/render-viz +190 -0
  1549. package/scripts/research-speaker +239 -0
  1550. package/scripts/resolve-room +204 -0
  1551. package/scripts/restore-post-compact-context.cjs +320 -0
  1552. package/scripts/room-auto-create-nudge.cjs +136 -0
  1553. package/scripts/room-naming-selector.cjs +201 -0
  1554. package/scripts/room-registry +767 -0
  1555. package/scripts/rs-discovery-engine.cjs +725 -0
  1556. package/scripts/rs-engine.py +2073 -0
  1557. package/scripts/rs-experts-command.cjs +300 -0
  1558. package/scripts/rs-explain-command.cjs +323 -0
  1559. package/scripts/rs-fetch-command.cjs +170 -0
  1560. package/scripts/rs-thesis-command.cjs +203 -0
  1561. package/scripts/rs-vector-bridge.cjs +410 -0
  1562. package/scripts/run-harness.cjs +890 -0
  1563. package/scripts/scout-cadence-guard.cjs +323 -0
  1564. package/scripts/scout-cadence-runner.cjs +509 -0
  1565. package/scripts/scout-telemetry-aggregator.cjs +268 -0
  1566. package/scripts/sealed-walker.py +96 -0
  1567. package/scripts/seed-brain-commands.cjs +324 -0
  1568. package/scripts/self-update +105 -0
  1569. package/scripts/sentinel-deadline-monitor +241 -0
  1570. package/scripts/sentinel-health-check +198 -0
  1571. package/scripts/sentinel-snapshot +42 -0
  1572. package/scripts/serve-dashboard +103 -0
  1573. package/scripts/serve-dashboard-live +932 -0
  1574. package/scripts/serve-presentation +97 -0
  1575. package/scripts/serve-wiki +90 -0
  1576. package/scripts/session-end-presence.cjs +79 -0
  1577. package/scripts/session-start +1942 -0
  1578. package/scripts/sessionstart-coordinator.cjs +249 -0
  1579. package/scripts/sessionstart-npm-reconcile.cjs +111 -0
  1580. package/scripts/sessionstart-post-update-preflight.cjs +303 -0
  1581. package/scripts/sessionstart-reference-now-seed.cjs +137 -0
  1582. package/scripts/setup-hooks.sh +112 -0
  1583. package/scripts/skillopt-codereview.cjs +830 -0
  1584. package/scripts/skillopt-eval.cjs +519 -0
  1585. package/scripts/skillopt-funnel.cjs +1076 -0
  1586. package/scripts/skillopt-genqueries.cjs +571 -0
  1587. package/scripts/skillopt-inventory.cjs +319 -0
  1588. package/scripts/skillopt-merge.cjs +656 -0
  1589. package/scripts/skillopt-triggerloop.cjs +1126 -0
  1590. package/scripts/soft-alias-runner.cjs +116 -0
  1591. package/scripts/stamp-artifact-write.cjs +276 -0
  1592. package/scripts/stamp-firing-block.cjs +325 -0
  1593. package/scripts/state-write.cjs +97 -0
  1594. package/scripts/statusline-fallback-echo.cjs +297 -0
  1595. package/scripts/statusline-mos +116 -0
  1596. package/scripts/statusline-mos-dispatch +127 -0
  1597. package/scripts/suggest-next-command.cjs +416 -0
  1598. package/scripts/sweep-skill-descriptions.cjs +263 -0
  1599. package/scripts/sync-rooms-brain +438 -0
  1600. package/scripts/sync-rooms-graph +264 -0
  1601. package/scripts/telemetry-command-invocation.cjs +120 -0
  1602. package/scripts/test-doctor-recovery.cjs +242 -0
  1603. package/scripts/test-fresh-install.md +140 -0
  1604. package/scripts/track-analytics +156 -0
  1605. package/scripts/transcribe-audio +148 -0
  1606. package/scripts/transcript-ingest.cjs +225 -0
  1607. package/scripts/update-icm-index +153 -0
  1608. package/scripts/v182-brain-optimize.cypher +1191 -0
  1609. package/scripts/validate-model-profiles +93 -0
  1610. package/scripts/vault-content-reformatter.cjs +581 -0
  1611. package/scripts/vault-export-orchestrator.cjs +400 -0
  1612. package/scripts/vault-footer-injector.cjs +315 -0
  1613. package/scripts/vault-import.cjs +839 -0
  1614. package/scripts/vault-integration-test.cjs +318 -0
  1615. package/scripts/vault-regenerate-all.cjs +216 -0
  1616. package/scripts/vault-regenerate-all.test.cjs +138 -0
  1617. package/scripts/vault-rules-generator.cjs +220 -0
  1618. package/scripts/vault-section-minto-generator.cjs +1642 -0
  1619. package/scripts/vault-section-minto-generator.integration.test.cjs +576 -0
  1620. package/scripts/vault-section-minto-generator.test.cjs +291 -0
  1621. package/scripts/vault-section-state-generator.cjs +385 -0
  1622. package/scripts/vault-welcome-generator.cjs +403 -0
  1623. package/scripts/vault-wikilink-injector.cjs +449 -0
  1624. package/scripts/verify-phase-132.cjs +338 -0
  1625. package/scripts/verify-release +744 -0
  1626. package/scripts/whitespace-command.cjs +831 -0
  1627. package/scripts/whitespace-to-brain.cjs +383 -0
  1628. package/scripts/whitespace-to-graph.cjs +220 -0
  1629. package/scripts/wikilink-batch.cjs +102 -0
  1630. package/scripts/wikilink-file.cjs +139 -0
  1631. package/scripts/write-bridge-artifacts.cjs +140 -0
  1632. package/scripts/write-scope-check +12 -0
  1633. package/scripts/write-scope-check.cjs +461 -0
  1634. package/scripts/write-whitespace-sections.cjs +483 -0
  1635. package/settings.json +7 -0
  1636. package/skills/act/SKILL.md +523 -0
  1637. package/skills/admin/SKILL.md +437 -0
  1638. package/skills/agentshield/SKILL.md +50 -0
  1639. package/skills/analyze-needs/SKILL.md +74 -0
  1640. package/skills/analyze-systems/SKILL.md +69 -0
  1641. package/skills/analyze-timing/SKILL.md +94 -0
  1642. package/skills/auto-explore/SKILL.md +84 -0
  1643. package/skills/beautiful-question/SKILL.md +72 -0
  1644. package/skills/bono/SKILL.md +146 -0
  1645. package/skills/brain-connector/SKILL.md +206 -0
  1646. package/skills/brain-derive/SKILL.md +140 -0
  1647. package/skills/build-knowledge/SKILL.md +118 -0
  1648. package/skills/build-thesis/SKILL.md +90 -0
  1649. package/skills/causal/SKILL.md +265 -0
  1650. package/skills/challenge-assumptions/SKILL.md +74 -0
  1651. package/skills/client-discovery-interview/SKILL.md +94 -0
  1652. package/skills/client-discovery-interview/discovery-scaffold.json +41 -0
  1653. package/skills/client-discovery-interview/question-bank.md +149 -0
  1654. package/skills/compare-ventures/SKILL.md +113 -0
  1655. package/skills/context-engine/SKILL.md +169 -0
  1656. package/skills/conversation-mode/SKILL.md +189 -0
  1657. package/skills/correct-reference-now/SKILL.md +86 -0
  1658. package/skills/dashboard/SKILL.md +142 -0
  1659. package/skills/deck/SKILL.md +113 -0
  1660. package/skills/deep-grade/SKILL.md +210 -0
  1661. package/skills/diagnose/SKILL.md +128 -0
  1662. package/skills/diagnostics/SKILL.md +193 -0
  1663. package/skills/dial-memory-refresh/SKILL.md +116 -0
  1664. package/skills/diffusion/SKILL.md +125 -0
  1665. package/skills/discover/SKILL.md +216 -0
  1666. package/skills/doctor/SKILL.md +269 -0
  1667. package/skills/dogfood-flush/SKILL.md +133 -0
  1668. package/skills/dominant-designs/SKILL.md +72 -0
  1669. package/skills/eureka/SKILL.md +313 -0
  1670. package/skills/explain-decision/SKILL.md +138 -0
  1671. package/skills/explore-domains/SKILL.md +74 -0
  1672. package/skills/explore-futures/SKILL.md +64 -0
  1673. package/skills/explore-opportunity/SKILL.md +168 -0
  1674. package/skills/explore-trends/SKILL.md +74 -0
  1675. package/skills/export/SKILL.md +126 -0
  1676. package/skills/feynman-timeline-refresh/SKILL.md +105 -0
  1677. package/skills/file-meeting/SKILL.md +1190 -0
  1678. package/skills/find-analogies/SKILL.md +360 -0
  1679. package/skills/find-bottlenecks/SKILL.md +104 -0
  1680. package/skills/find-connections/SKILL.md +108 -0
  1681. package/skills/funding/SKILL.md +110 -0
  1682. package/skills/futures/SKILL.md +124 -0
  1683. package/skills/grade/SKILL.md +252 -0
  1684. package/skills/grade-grant/SKILL.md +293 -0
  1685. package/skills/graph/SKILL.md +216 -0
  1686. package/skills/hat-briefing/SKILL.md +160 -0
  1687. package/skills/heal/SKILL.md +69 -0
  1688. package/skills/help/SKILL.md +172 -0
  1689. package/skills/hmi-status/SKILL.md +73 -0
  1690. package/skills/ignite/SKILL.md +225 -0
  1691. package/skills/ingest-methodology/SKILL.md +125 -0
  1692. package/skills/intel-pipeline/SKILL.md +128 -0
  1693. package/skills/intelligence-orchestrator/SKILL.md +262 -0
  1694. package/skills/jtbd/SKILL.md +261 -0
  1695. package/skills/larry-personality/SKILL.md +570 -0
  1696. package/skills/larry-personality/framework-chains.md +92 -0
  1697. package/skills/larry-personality/mode-engine.md +185 -0
  1698. package/skills/leadership/SKILL.md +109 -0
  1699. package/skills/lean-canvas/SKILL.md +70 -0
  1700. package/skills/macro-trends/SKILL.md +84 -0
  1701. package/skills/map-unknowns/SKILL.md +72 -0
  1702. package/skills/memory/SKILL.md +212 -0
  1703. package/skills/memory-cortex-reach/SKILL.md +80 -0
  1704. package/skills/models/SKILL.md +197 -0
  1705. package/skills/mos/SKILL.md +160 -0
  1706. package/skills/mos-deck-engine/SKILL.md +329 -0
  1707. package/skills/mos-reason/SKILL.md +484 -0
  1708. package/skills/mullins/SKILL.md +151 -0
  1709. package/skills/mullins-scaffold/SKILL.md +132 -0
  1710. package/skills/mullins-scaffold/scaffold.json +223 -0
  1711. package/skills/mva-brief/SKILL.md +87 -0
  1712. package/skills/mva-option/SKILL.md +120 -0
  1713. package/skills/mva-pipeline/SKILL.md +158 -0
  1714. package/skills/mva-report/SKILL.md +79 -0
  1715. package/skills/new-project/SKILL.md +629 -0
  1716. package/skills/new-surface/SKILL.md +112 -0
  1717. package/skills/onboard/SKILL.md +485 -0
  1718. package/skills/operator/SKILL.md +167 -0
  1719. package/skills/opportunities/SKILL.md +171 -0
  1720. package/skills/organize/SKILL.md +69 -0
  1721. package/skills/persona/SKILL.md +272 -0
  1722. package/skills/pipeline/SKILL.md +164 -0
  1723. package/skills/present/SKILL.md +123 -0
  1724. package/skills/publish/SKILL.md +224 -0
  1725. package/skills/pws-brain/SKILL.md +152 -0
  1726. package/skills/pws-methodology/SKILL.md +92 -0
  1727. package/skills/qualify-opportunity/SKILL.md +111 -0
  1728. package/skills/query/SKILL.md +68 -0
  1729. package/skills/radar/SKILL.md +106 -0
  1730. package/skills/reanalyze/SKILL.md +122 -0
  1731. package/skills/research/SKILL.md +462 -0
  1732. package/skills/room/SKILL.md +381 -0
  1733. package/skills/room-passive/SKILL.md +174 -0
  1734. package/skills/room-proactive/SKILL.md +344 -0
  1735. package/skills/rooms/SKILL.md +678 -0
  1736. package/skills/root-cause/SKILL.md +73 -0
  1737. package/skills/rs-experts/SKILL.md +151 -0
  1738. package/skills/rs-explain/SKILL.md +130 -0
  1739. package/skills/rs-fetch/SKILL.md +115 -0
  1740. package/skills/rs-thesis/SKILL.md +129 -0
  1741. package/skills/scenario-plan/SKILL.md +76 -0
  1742. package/skills/scheduled-tasks/SKILL.md +301 -0
  1743. package/skills/score-innovation/SKILL.md +74 -0
  1744. package/skills/scout/SKILL.md +370 -0
  1745. package/skills/setup/SKILL.md +654 -0
  1746. package/skills/show/SKILL.md +68 -0
  1747. package/skills/skill/SKILL.md +104 -0
  1748. package/skills/snapshot/SKILL.md +178 -0
  1749. package/skills/speakers/SKILL.md +116 -0
  1750. package/skills/splash/SKILL.md +54 -0
  1751. package/skills/stance/SKILL.md +89 -0
  1752. package/skills/status/SKILL.md +107 -0
  1753. package/skills/structure-argument/SKILL.md +78 -0
  1754. package/skills/suggest-next/SKILL.md +137 -0
  1755. package/skills/systems-thinking/SKILL.md +220 -0
  1756. package/skills/think-hats/SKILL.md +82 -0
  1757. package/skills/trending-to-absurd/SKILL.md +100 -0
  1758. package/skills/ui-system/SKILL.md +474 -0
  1759. package/skills/ui-system/design-system/M-OS-DESIGN-SYSTEM.md +273 -0
  1760. package/skills/ui-system/design-system/SPEC.md +72 -0
  1761. package/skills/ui-system/design-system/image-prompt-style.md +29 -0
  1762. package/skills/ui-system/design-system/mos-design-system.css +240 -0
  1763. package/skills/ui-system/rules/design-system.md +60 -0
  1764. package/skills/ui-system/rules/dual-palette.md +156 -0
  1765. package/skills/ui-system/rules/glyph-disambiguation.md +171 -0
  1766. package/skills/ui-system/rules/shape-f-zero-and-six.md +169 -0
  1767. package/skills/update/SKILL.md +254 -0
  1768. package/skills/user-needs/SKILL.md +73 -0
  1769. package/skills/validate/SKILL.md +73 -0
  1770. package/skills/value-proposition/SKILL.md +141 -0
  1771. package/skills/vault/SKILL.md +326 -0
  1772. package/skills/visualize/SKILL.md +69 -0
  1773. package/skills/whitespace/SKILL.md +539 -0
  1774. package/skills/wiki/SKILL.md +94 -0
  1775. package/templates/_base.html +20 -0
  1776. package/templates/chat-panel.html +205 -0
  1777. package/templates/constellation-chat-hooks.js +89 -0
  1778. package/templates/constellation.html +1272 -0
  1779. package/templates/destijl-base.css +268 -0
  1780. package/templates/discovery/discovery-brief-template.md +97 -0
  1781. package/templates/due-diligence.html +49 -0
  1782. package/templates/executive-summary.html +40 -0
  1783. package/templates/icm/CLAUDE.md +31 -0
  1784. package/templates/icm/GROUP-CLAUDE.md +33 -0
  1785. package/templates/icm/INDEX.md +26 -0
  1786. package/templates/import/stage-contracts/01-ingest.md +34 -0
  1787. package/templates/import/stage-contracts/02-classify.md +48 -0
  1788. package/templates/import/stage-contracts/03-route.md +42 -0
  1789. package/templates/import/stage-contracts/04-enrich.md +40 -0
  1790. package/templates/investment-thesis.html +25 -0
  1791. package/templates/meeting-report.html +361 -0
  1792. package/templates/presentation/dashboard.html +1150 -0
  1793. package/templates/presentation/deck.html +540 -0
  1794. package/templates/presentation/diagrams.html +437 -0
  1795. package/templates/presentation/graph.html +391 -0
  1796. package/templates/presentation/insights.html +548 -0
  1797. package/templates/presentation/wiki.html +533 -0
  1798. package/templates/profile.html +136 -0
  1799. package/templates/room-context/last-session.md +56 -0
  1800. package/templates/room-context/methodology-history.md +28 -0
  1801. package/templates/room-context/rejection-log.md +25 -0
  1802. package/templates/room-context/weekly-digest.md +54 -0
  1803. package/templates/room-skeleton/MINTO.md.tmpl +19 -0
  1804. package/templates/room-skeleton/ROOM.md.identity.tmpl +13 -0
  1805. package/templates/room-skeleton/ROOM.md.section.tmpl +33 -0
  1806. package/templates/room-skeleton/STATE.md.tmpl +33 -0
  1807. package/templates/room-skeleton/USER.md.tmpl +23 -0
  1808. package/templates/room-skeleton/references/.gitkeep +0 -0
  1809. package/templates/room-skeleton/references/SECTION-SCHEMA.md +213 -0
  1810. package/templates/room-skeleton/references/SUB-SCHEMAS.md +91 -0
  1811. package/templates/room-skeleton/section-contracts/.gitkeep +0 -0
  1812. package/templates/room-skeleton/section-contracts/business-model.md +32 -0
  1813. package/templates/room-skeleton/section-contracts/competitive-analysis.md +33 -0
  1814. package/templates/room-skeleton/section-contracts/financial-model.md +30 -0
  1815. package/templates/room-skeleton/section-contracts/funding.md +41 -0
  1816. package/templates/room-skeleton/section-contracts/legal-ip.md +30 -0
  1817. package/templates/room-skeleton/section-contracts/market-analysis.md +32 -0
  1818. package/templates/room-skeleton/section-contracts/opportunity-bank.md +39 -0
  1819. package/templates/room-skeleton/section-contracts/problem-definition.md +32 -0
  1820. package/templates/room-skeleton/section-contracts/solution-design.md +36 -0
  1821. package/templates/room-skeleton/section-contracts/strategy.md +35 -0
  1822. package/templates/room-skeleton/section-contracts/team-execution.md +36 -0
  1823. package/templates/shared.css +427 -0
  1824. package/templates/showcase/blueprint.html +432 -0
  1825. package/templates/showcase/library.html +571 -0
  1826. package/templates/showcase/narrative.html +361 -0
  1827. package/templates/showcase/overview.html +468 -0
  1828. package/templates/showcase/synthesis.html +473 -0
  1829. package/templates/signature-footer.html +34 -0
@@ -0,0 +1,1195 @@
1
+ ---
2
+ name: file-meeting
3
+ description: File a meeting transcript into the Data Room
4
+ help_jtbd: "Turn a meeting recording into structured room intelligence."
5
+ body_shape: E
6
+ hitl_shape: "F.8"
7
+ hitl_why: "Extracted nuggets are routed as an independent set the navigator files in any order."
8
+ argument-hint: "[--latest|--paste|<file>]"
9
+ serves_jtbd: ["file-meeting"]
10
+ teaching: "When a meeting just happened, /mos:file-meeting captures the transcript and routes the intelligence into the right room sections. Meetings are where institutional knowledge actually lives."
11
+ # Per docs/reward-before-investment-rule.md line 60-62: surface first-paragraph extraction preview before full transcript ask. Remediation tracked as follow-up phase.
12
+ interactive_first_reward: paragraph_preview
13
+ # Phase 265 Plan 19 (pre-approval): Step 3a dispatches 5 meeting-perspective-extractor
14
+ # subagents in one turn. Task is a pre-approval list entry, not a new capability --
15
+ # Claude Code already lets any turn spawn subagents through the normal permission
16
+ # flow; this removes the per-spawn prompt for this dispatch shape. Tracked pending
17
+ # in data/subagent-dispatch-grants.json (row: commands/file-meeting.md); ratification
18
+ # to status:"granted" is plan 265-23's job, not this plan's.
19
+ allowed-tools:
20
+ - Read
21
+ - Write
22
+ - Bash
23
+ - Glob
24
+ - AskUserQuestion
25
+ - Task
26
+ # --- Phase 165 connector (close the file-meeting orphan; D-165-07) ---
27
+ # The meeting-filing event dispatches the blind-spot trigger sensors. Rides the
28
+ # EXISTING 'contradiction' reach (a filed meeting that contradicts a confident
29
+ # claim = the oracle returning a true label). NO new reach_id (frozen bank = 6).
30
+ connector:
31
+ connects_to_spine: true
32
+ sensor_triggers: []
33
+ reach_id: contradiction
34
+ sub_mode: file-meeting
35
+ framework: null
36
+ posture: pull_back
37
+ hierarchy_rank: 37
38
+ filing: fileEvidenceWithReadback
39
+ plan_gated: false
40
+ web_scope: null
41
+ surface: F.1
42
+ ---
43
+
44
+ # /mos:file-meeting
45
+
46
+ You are Larry. This command turns meeting conversations into Data Room intelligence through a 6-step conversational pipeline.
47
+
48
+ ---
49
+
50
+ ## Setup
51
+
52
+ Load all reference files and context before starting:
53
+
54
+ 1. Read `${CLAUDE_PLUGIN_ROOT}/references/personality/voice-dna.md` for Larry's voice
55
+ 2. Read `${CLAUDE_PLUGIN_ROOT}/references/meeting/transcript-patterns.md` for speaker ID regex patterns
56
+ 3. Read `${CLAUDE_PLUGIN_ROOT}/references/meeting/segment-classification.md` for the 6-type segment taxonomy (the SELECTION pass)
57
+ 4. Read `${CLAUDE_PLUGIN_ROOT}/references/meeting/knowledge-typing.md` for the 6-enum knowledge taxonomy + conditions/counter_conditions + temporal validity (the TYPING pass)
58
+ 5. Read `${CLAUDE_PLUGIN_ROOT}/references/meeting/extraction-perspectives.md` for the five whole-transcript extraction perspectives dispatched at Step 3a
59
+ 6. Read `${CLAUDE_PLUGIN_ROOT}/references/meeting/section-mapping.md` for the 12-role x 6-type x 8-section routing matrix
60
+ 7. Read `${CLAUDE_PLUGIN_ROOT}/references/meeting/artifact-template.md` for wicked-problem-aware YAML frontmatter
61
+ 8. Read `${CLAUDE_PLUGIN_ROOT}/references/meeting/summary-template.md` for narrative + structured dual storage format
62
+ 9. Read `${CLAUDE_PLUGIN_ROOT}/references/meeting/speaker-profile-template.md` for ICM nested folder profiles
63
+ 10. Read `${CLAUDE_PLUGIN_ROOT}/references/meeting/cross-relationship-patterns.md` (if file exists -- skip gracefully if not)
64
+ 11. Read `${CLAUDE_PLUGIN_ROOT}/references/meeting/cross-meeting-intelligence.md` for cross-meeting convergence/contradiction detection and action item triage protocols
65
+ 12. Read `room/STATE.md` for venture context (if exists)
66
+ 13. Scan `room/team/` for known speaker profiles: glob `room/team/*/*/PROFILE.md`
67
+
68
+ Track any newly created speaker profiles in a list called `new_profiles` for the post-pipeline research step.
69
+
70
+ ---
71
+
72
+ ## Step 0: Action Item Triage (Pre-Filing)
73
+
74
+ Before starting the filing pipeline, check for open action items from prior meetings.
75
+
76
+ ### Load Open Items
77
+
78
+ Read `room/action-items.md` if it exists. If the file does not exist or has zero open items, skip Step 0 entirely and proceed to Step 1.
79
+
80
+ ### Present Quick Triage
81
+
82
+ Show open items as a pre-flight check (not an interrogation):
83
+
84
+ > "3 open items from your last meeting. Quick check -- any done?"
85
+ >
86
+ > | # | Owner | Task | From Meeting |
87
+ > |---|-------|------|--------------|
88
+ > | 1 | Lawrence | Review TAM analysis | 2026-03-15-mentoring |
89
+ > | 2 | Sarah | Send competitor deck | 2026-03-15-mentoring |
90
+ > | 3 | Tyler | Schedule user interviews | 2026-03-10-research |
91
+ >
92
+ > [mark done: 1,3 / skip / review all]
93
+
94
+ ### Handle Responses
95
+
96
+ - **mark done (e.g., "1,3")**: Update each item's status from `open` to `done` in the SOURCE meeting's action-items.md file (not the aggregated file). Find the source by the meeting_id in the aggregated table.
97
+ - **skip**: Move on to Step 1. No changes.
98
+ - **review all**: Show each item individually for yes/no.
99
+
100
+ Track items marked done for inclusion in this meeting's summary ("Cleared 2 action items from prior meetings").
101
+
102
+ ---
103
+
104
+ ## Step 1: Get Transcript Input
105
+
106
+ Determine the input mode based on flags:
107
+
108
+ ### No flags (default) -- Paste Mode
109
+
110
+ Ask the user to paste their transcript text:
111
+
112
+ > "Paste your meeting transcript below. I'll handle any format -- Zoom, Teams, Otter, Google Meet, or raw text."
113
+
114
+ Accept multi-line paste. After receiving text, detect the transcript format using the regex patterns from `${CLAUDE_PLUGIN_ROOT}/references/meeting/transcript-patterns.md`. Report the detected format:
115
+
116
+ > "Got it. Looks like a {format} transcript."
117
+
118
+ ### `--file <path>` -- File Mode
119
+
120
+ Read the file at the provided path. Support `.txt` and `.md` extensions. Detect format from content using transcript-patterns.md patterns. If the file does not exist, report the error and suggest alternatives:
121
+
122
+ > "Can't find that file. Try the full path, or just paste the transcript here."
123
+
124
+ ### `--audio <path>` -- Audio Mode
125
+
126
+ Check if Velma is configured:
127
+ 1. Check `VELMA_API_KEY` environment variable
128
+ 2. Check `.mcp.json` for `mcpServers.velma.env.VELMA_API_KEY`
129
+
130
+ **If not configured:**
131
+ > "Audio needs Velma configured. Set it up now? (30 seconds)"
132
+ > - If yes: Walk through the Velma setup flow (same as `/mos:setup transcription`)
133
+ > - If no: "No problem. Paste the transcript text instead, or point me to a text file with `--file`."
134
+
135
+ **If configured:**
136
+ Run `bash "${CLAUDE_PLUGIN_ROOT}/scripts/transcribe-audio" <path>` and use the output as the transcript. Note the source as `velma` (affects artifact frontmatter).
137
+
138
+ Also capture the full JSON response (written to temp file via stderr) for emotion data parsing downstream.
139
+
140
+ ### `--latest` -- Auto-Fetch Mode
141
+
142
+ Automatically fetch the most recent meeting transcript from a configured meeting source (Read AI, Vexa, or Recall.ai).
143
+
144
+ #### 1. Check for Configured Meeting Source
145
+
146
+ Read `.mcp.json` in the workspace root and look for meeting source keys under `mcpServers`:
147
+
148
+ - `read-ai` -- Read AI MCP
149
+ - `vexa` -- Vexa MCP
150
+ - `recall-ai` -- Recall.ai MCP
151
+
152
+ **If no meeting source configured:**
153
+ > "No meeting source configured. Run `/mos:setup meetings` first, or paste your transcript here."
154
+
155
+ Then fall back to default paste mode (continue to the paste prompt above).
156
+
157
+ #### 2. Fetch Recent Meetings
158
+
159
+ If a meeting source is found, detect which provider by the key name in `mcpServers` and call its list tool:
160
+
161
+ | Provider | MCP Tool Call | Returns |
162
+ |----------|--------------|---------|
163
+ | Read AI | `mcp__read-ai__list-meetings` | Recent meetings with titles, dates, durations |
164
+ | Vexa | `mcp__vexa__list-sessions` | Recent sessions with metadata |
165
+ | Recall.ai | `mcp__recall-ai__list-meetings` | Recent meetings with participant info |
166
+
167
+ Present the 5 most recent meetings in a table:
168
+
169
+ ```
170
+ | # | Date | Title | Duration | Participants |
171
+ |---|------------|--------------------------------|----------|--------------|
172
+ | 1 | 2026-03-23 | Weekly Team Sync | 45min | 4 |
173
+ | 2 | 2026-03-22 | Investor Update Call | 30min | 3 |
174
+ | 3 | 2026-03-21 | Product Review | 1h 15min | 6 |
175
+ | 4 | 2026-03-20 | Mentor Session with Lawrence | 50min | 2 |
176
+ | 5 | 2026-03-19 | Customer Discovery Interview | 35min | 3 |
177
+ ```
178
+
179
+ > "Grabbing your latest meeting. Or pick a different one: [1-5]"
180
+
181
+ Default to #1 (most recent) if user confirms or presses enter. If user selects a number, use that meeting.
182
+
183
+ #### 3. Fetch Transcript
184
+
185
+ Call the source's transcript retrieval tool with the selected session/meeting ID:
186
+
187
+ | Provider | MCP Tool Call |
188
+ |----------|--------------|
189
+ | Read AI | `mcp__read-ai__get-transcript` with the session ID |
190
+ | Vexa | `mcp__vexa__get-transcript` with the session ID |
191
+ | Recall.ai | `mcp__recall-ai__get-meeting-transcript` with the meeting ID |
192
+
193
+ Use the returned transcript text as input to Step 1 format detection (proceed to "Infer Meeting Metadata" below).
194
+
195
+ Set source metadata to the meeting provider name (e.g., `read-ai`, `vexa`, or `recall-ai`) for artifact provenance tracking.
196
+
197
+ #### 4. Handle MCP Errors
198
+
199
+ **Auth errors (401/403):**
200
+ > "Authentication expired. Re-run `/mos:setup meetings` to reconnect."
201
+
202
+ Then fall back to paste mode. Never block the pipeline.
203
+
204
+ **Network / other errors:**
205
+ > "Could not reach {source}. Check your connection. Meanwhile, paste the transcript or use `--file`."
206
+
207
+ Then fall back to paste mode. Never block the pipeline.
208
+
209
+ **Empty response (no meetings found):**
210
+ > "No recent meetings found in {source}. Your meeting tool might not have recorded anything recently. Paste the transcript here instead."
211
+
212
+ Then fall back to paste mode.
213
+
214
+ ### `--join <url>` -- Future Mode
215
+
216
+ Print:
217
+ > "Not yet available. Coming in a future update. Use `--latest`, paste, `--file`, or `--audio` for now."
218
+
219
+ This flag is designed in `${CLAUDE_PLUGIN_ROOT}/references/meeting/live-join-interface.md` but not implemented until v3.0.
220
+
221
+ ### Infer Meeting Metadata
222
+
223
+ After getting the transcript content, infer metadata from content and Data Room context:
224
+
225
+ - **Meeting date**: Extract from timestamps in transcript, file modification date, or ask user. When `--latest` is used, the meeting date comes directly from the MCP response metadata -- no need to infer from transcript content.
226
+ - **Meeting purpose**: Infer from content themes and dominant topics
227
+ - **Participant count**: Count unique speaker labels. When `--latest` is used, the participant count comes from the MCP response metadata and can be cross-checked against speaker labels in the transcript.
228
+
229
+ Present inferences for confirmation:
230
+ > "This looks like a {type} meeting from {date} with {N} participants. Correct?"
231
+
232
+ If the user corrects any inference, use their version. Store confirmed metadata for artifact provenance.
233
+
234
+ ### Step 1c. Meeting date and time
235
+
236
+ Before moving to speaker identification, ask the navigator ONE question: when did this
237
+ meeting happen? Accept an absolute date, a relative phrase ("last Tuesday", "yesterday
238
+ morning"), or a time of day alongside either. State plainly that the phrase is resolved by
239
+ chrono-node against `getReferenceNow()` -- the SAME resolver Step 4's `requireValidAt` gate
240
+ uses -- so the two never disagree.
241
+
242
+ **When the ingest path already carries a trustworthy timestamp** (the `--latest` provider
243
+ tables above and the `--audio` file mtime both do): do NOT ask blind. State the date you
244
+ found and ask the navigator to confirm or correct it. One question either way.
245
+
246
+ Carry the confirmed or corrected answer forward as `whenAnswer` and pass it into Step 4's
247
+ `requireValidAt` call (`{whenAnswer: process.env.WHEN_ANSWER||undefined}`) so the gate
248
+ resolves and returns `GATE_PASS` on the first attempt instead of blocking.
249
+
250
+ **Why the ask moved here:** an undated meeting BLOCKS at Step 4's date-sync gate, and
251
+ blocking after the navigator has watched the whole extraction assemble is a worse experience
252
+ than answering one question at ingest.
253
+
254
+ **This does not replace the Step 4 gate.** `requireValidAt` remains the ONE enforcement
255
+ chokepoint (D-02); this section only PRE-POPULATES `whenAnswer` so that gate resolves
256
+ cleanly the first time. If no answer was captured here for any reason, Step 4 still blocks
257
+ and asks -- the enforcement point is unchanged.
258
+
259
+ ---
260
+
261
+ ## Step 2: Speaker Identification + Profile Creation
262
+
263
+ ### Parse Speaker Labels
264
+
265
+ Use the regex patterns from `${CLAUDE_PLUGIN_ROOT}/references/meeting/transcript-patterns.md` to extract speaker labels from the transcript.
266
+
267
+ **If speaker labels are found:** Extract all unique speakers and proceed to matching.
268
+
269
+ **If no speaker labels found:** Ask the user:
270
+ > "I don't see speaker labels in this transcript. Who was in this meeting? Give me names and I'll match the voices to the content."
271
+
272
+ Use their response combined with content analysis to attribute segments to speakers.
273
+
274
+ ### Cross-Reference Against Team Directory
275
+
276
+ For each identified speaker, check `room/team/` profiles:
277
+
278
+ - **Known match** (exact name match in existing profile): Mark as `AUTO-MATCHED`
279
+ - Example: "Lawrence matches team/mentors/lawrence-aronhime/ (mentor)"
280
+ - **Partial match** (similar name in existing profile): Present for confirmation
281
+ - Example: "This sounds like Lawrence -- mentor from team directory. Confirm?"
282
+ - **Unknown** (no match in team directory): Infer role from content
283
+ - Example: "Speaker 2 discussed financials and seems senior -- could this be your advisor?"
284
+
285
+ ### Present Smart Hybrid Table
286
+
287
+ Show all speakers in a single table:
288
+
289
+ ```
290
+ | Speaker | Match | Role | Status |
291
+ |---------|-------|------|--------|
292
+ | Lawrence | team/mentors/lawrence-aronhime/ | mentor | AUTO-MATCHED |
293
+ | Tyler | (no match) | researcher? | NEEDS CONFIRMATION |
294
+ | Sarah | team/founders/sarah-chen/ | founder | AUTO-MATCHED |
295
+ ```
296
+
297
+ User confirms matches and fills unknowns. Roles must be from the 12-type taxonomy:
298
+ mentor, researcher, team-member, investor, advisor, customer, founder, partner, domain-expert, government, competitor, unknown
299
+
300
+ ### Create Profiles for New Speakers
301
+
302
+ For each CONFIRMED unknown speaker (user has confirmed their identity and role):
303
+
304
+ Run `bash "${CLAUDE_PLUGIN_ROOT}/scripts/create-speaker-profile" <room_dir> <speaker-slug> <speaker-role> <display-name>`
305
+
306
+ Add the speaker to the `new_profiles` list for post-pipeline research.
307
+
308
+ ### Emotion Signals (Audio Input Only)
309
+
310
+ If the input was `--audio` and Velma data includes emotion scores, surface ONLY strong emotions (score > 0.7):
311
+
312
+ > "Tyler was notably skeptical when discussing market size."
313
+ > "Sarah showed high enthusiasm about the enterprise pivot."
314
+
315
+ Do not surface routine or weak emotions. Only notable emotional signals that provide insight.
316
+
317
+ ---
318
+
319
+ ### Transcript size probe
320
+
321
+ Before Step 3 begins, count words and speaker turns in the transcript. State both numbers to
322
+ the navigator in one line, for example: "3,400 words, 62 turns -- extracting now."
323
+
324
+ **Under 12,000 words:** proceed. Say nothing beyond the one line above.
325
+
326
+ **At or above 12,000 words:** surface an honest offer, in Larry's voice, that this is a long
327
+ one, and ask whether to work through it in sections. For example: "This is a long one --
328
+ {N} words. Want me to work through it in sections, or run it straight through?"
329
+
330
+ **Why 12,000 words.** A 1-hour meeting runs about 9,000 words (~13k tokens at typical
331
+ conversational density); the largest transcript in this repo is 19,208 words (~26k tokens).
332
+ 12,000 sits between the two so the offer fires on genuinely long material and not on a
333
+ normal meeting -- this is not a magic constant, it is reasoned from the two measured data
334
+ points above.
335
+
336
+ **What the offer does and does not do today.** This is a conversational offer, not a
337
+ fan-out: today, working "in sections" means Larry paces the four Claimify passes across the
338
+ conversation, nothing more. The parallel perspective-subagent extraction that actually
339
+ splits the work across concurrent workers is plan 265-19, and it reuses this SAME probe as
340
+ its trigger -- do not build a second probe for it.
341
+
342
+ **The failure this prevents.** Per the research, a long transcript degrades with no signal
343
+ today: the symptom reads as "Larry missed some claims," not "the pass was over budget." This
344
+ probe turns a silent quality loss into a visible, reasoned choice.
345
+
346
+ ---
347
+
348
+ ## Step 3: Claimify Extraction (Five-Perspective Parallel Dispatch + Consolidation)
349
+
350
+ > Quick 260903-kwl: `${CLAUDE_PLUGIN_ROOT}/references/meeting/filing-protocol.md` is the
351
+ > surface-neutral extract of this step, handed back by the MCP `meeting` tool
352
+ > on Claude Desktop and Cowork. This CLI command keeps its own inline copy of
353
+ > the protocol deliberately - the extract cannot carry the subagent dispatch
354
+ > below or the F.8 gate in Step 4, both CLI-only machinery. `tests/test-kwl-meeting-mcp-honesty.cjs`
355
+ > is the drift guard that pins the shared taxonomies across both files.
356
+
357
+ This step replaces a single unified extraction pass with FIVE PARALLEL
358
+ WHOLE-TRANSCRIPT PERSPECTIVE workers (Step 3a, DISPATCH) followed by one
359
+ orchestrator-only reconciliation pass (Step 3b, CONSOLIDATION). Extraction IS
360
+ the segmentation authority -- a transcript that decomposes into K atomic
361
+ claims mints K claim nodes, never one file-level claim. Consolidation FEEDS
362
+ the existing F.8 nugget routing gate in Step 4; it never replaces or bypasses it.
363
+
364
+ Purpose: recall. One pass over a long meeting misses what only one lens would
365
+ have noticed. The five perspectives, their taxonomy anchors, and the uniform
366
+ return schema are defined in
367
+ `${CLAUDE_PLUGIN_ROOT}/references/meeting/extraction-perspectives.md` (loaded
368
+ in Setup, alongside segment-classification.md and knowledge-typing.md).
369
+
370
+ **The cost, stated plainly.** Five whole-transcript passes cost roughly FIVE
371
+ TIMES the transcript tokens, plus five reference payloads. This is bought for
372
+ RECALL, not for wall clock or token savings, and that trade is recorded
373
+ honestly rather than pretended away. The Transcript size probe above (the
374
+ 12,000-word threshold wired by plan 265-10) is where the navigator is told the
375
+ run is large, BEFORE this dispatch starts -- the cost of a long meeting is a
376
+ stated, reasoned choice, never a silent quality loss.
377
+
378
+ All extraction judgment is LLM reasoning (Larry reasoning over the full
379
+ transcript, once per perspective). There is NO CJS extractor: extraction is
380
+ judgment, and a hardcoded extractor would be the RESEARCH anti-pattern.
381
+
382
+ ---
383
+
384
+ ### Step 3a: Dispatch (five perspectives, one message)
385
+
386
+ Dispatch FIVE subagents in ONE message, one per perspective defined in
387
+ `${CLAUDE_PLUGIN_ROOT}/references/meeting/extraction-perspectives.md`:
388
+ Decisions and Commitments; Technical Claims and Causal Mechanisms; Open
389
+ Questions and Unknowns; Risks, Blockers and Anomaly Cues; Stakeholder
390
+ Dynamics and Working Models.
391
+
392
+ **Dispatch idiom:**
393
+
394
+ 1. Dispatch all 5 in ONE message using the Agent tool with
395
+ `subagent_type: meeting-perspective-extractor` (the explicit type string,
396
+ not a file path -- an Agent tool call that cannot resolve a
397
+ `subagent_type` is a hard error listing available agents since 2.1.235;
398
+ see `agents/meeting-perspective-extractor.md` for its instructions).
399
+ Claude Code runs spawned subagents in the background by default under
400
+ fork mode, the interactive default since 2.1.232 -- do NOT pass any
401
+ manual background-execution parameter to the Agent tool call; the
402
+ platform removes that kind of parameter from the Agent tool entirely once
403
+ fork mode is on (code.claude.com/docs/en/sub-agents). The platform caps
404
+ concurrent subagents at 20 (`CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS`); five
405
+ is well under that cap, but state it anyway as the standing rule so a
406
+ future author does not reintroduce an unbounded fan-out.
407
+ 2. Print a status block before dispatch:
408
+ ```
409
+ [FILE-MEETING] Dispatching 5 extraction perspectives
410
+ 1. Decisions and Commitments
411
+ 2. Technical Claims and Causal Mechanisms
412
+ 3. Open Questions and Unknowns
413
+ 4. Risks, Blockers and Anomaly Cues
414
+ 5. Stakeholder Dynamics and Working Models
415
+ ```
416
+
417
+ **Each worker's prompt MUST carry:**
418
+
419
+ - **The FULL transcript.** Not a partial excerpt, not a segment range -- the
420
+ fan-out is bought for recall, and a lens that cannot see the whole meeting
421
+ cannot notice the thing only it would notice.
422
+ - **The CONFIRMED Step 2 speaker roster.** Never re-derived per worker;
423
+ speaker identity is an upstream, human-confirmed input.
424
+ - **Its own perspective definition, verbatim,** from
425
+ `extraction-perspectives.md`.
426
+ - **`${CLAUDE_PLUGIN_ROOT}/references/meeting/segment-classification.md` and
427
+ `${CLAUDE_PLUGIN_ROOT}/references/meeting/knowledge-typing.md`.** NOT
428
+ `section-mapping.md`: workers do not propose target sections, so they do
429
+ not need the routing matrix. This omission is a deliberate cost decision,
430
+ not an oversight.
431
+ - **The Four Claimify Passes** (below) as the worker's own procedure.
432
+ - **An explicit no-write, no-gate, no-user-interaction contract:** return
433
+ structured JSON only. No `writeClaimNode`, no `writeEdge`, no artifact
434
+ write, no AskUserQuestion, no room state change. This worker does not
435
+ write anything, ever.
436
+ - **A read-only tool grant,** with the reason named: transcript prose is
437
+ untrusted input and `tests/test-part8-poison-transcript.cjs` exists
438
+ because of it; fanning it into five tool-capable contexts multiplies the
439
+ injection surface. `agents/meeting-perspective-extractor.md` declares
440
+ `allowed-tools: Read` only -- no Write, no Bash, no Glob, no external web
441
+ reach, no MCP tool.
442
+
443
+ **Returns:** the uniform array from `extraction-perspectives.md`'s return
444
+ schema, with `perspective` set to the worker's assigned lens name.
445
+
446
+ #### The Four Claimify Passes (run inside each worker, per perspective)
447
+
448
+ ##### Pass 1: Selection
449
+
450
+ Classify each segment using the 6-type SEGMENT taxonomy from
451
+ `${CLAUDE_PLUGIN_ROOT}/references/meeting/segment-classification.md` (decision, action-item, insight,
452
+ advice, question, noise) and this worker's own perspective definition (its
453
+ primary segment types, from `extraction-perspectives.md`):
454
+
455
+ 1. **Classify** the segment type.
456
+ 2. **Apply role-aware heuristics**:
457
+ - Investor question about financials = HIGH priority
458
+ - Mentor advice on problem framing = HIGH priority
459
+ - Team-member status update = MEDIUM priority
460
+ 3. **Sort by priority**: decisions (HIGHEST) > action-items (HIGH) > insights (MEDIUM) > advice (MEDIUM) > questions (LOW)
461
+ 4. **Flag potential noise** that contains proper nouns, competitor names, or numbers -- this
462
+ worker does not decide to skip it; it returns the row like any other for the
463
+ orchestrator's basket.
464
+
465
+ Filler and pure social talk is tagged `no_claim` and discarded (it mints no
466
+ claim row). The selection pass IS the priority sort -- it decides WHICH
467
+ segments carry candidate knowledge, through this worker's own lens.
468
+
469
+ ##### Pass 2: Disambiguation
470
+
471
+ For each selected segment, resolve pronouns and referents before decomposing:
472
+
473
+ 1. Use the **speaker identity** from the Step 2 roster and the **prior 2 to 3
474
+ turns** of context to bind every pronoun ("it", "they", "this") and every
475
+ bare referent ("the deal", "that number") to a concrete antecedent.
476
+ 2. **Unresolvable referents** do NOT drop the segment. Extend the existing
477
+ below-0.5 ask-the-user rule (`segment-classification.md` Classification
478
+ Confidence Scoring, the "below 0.5 -> ask the user" threshold): when a referent
479
+ cannot be resolved from the speaker plus the prior 2 to 3 turns, the resulting
480
+ atomic claim is still returned, marked `disambiguation: 'ambiguous'`, and QUEUED
481
+ for human review. An ambiguous claim is NEVER silently dropped. This worker
482
+ never asks the user directly -- the ambiguous marker travels in the
483
+ returned row for the orchestrator to surface.
484
+
485
+ ##### Pass 3: Decomposition
486
+
487
+ Split each compound segment into ATOMIC claims (extends the Multi-Type resolution
488
+ rules in `segment-classification.md`):
489
+
490
+ 1. A segment that asserts two things becomes two atomic claims ("revenue was $1.2M
491
+ and churn dropped" -> a `fact` claim and a separate claim about churn).
492
+ 2. A decision-plus-action segment becomes the decision claim plus the action
493
+ sub-element.
494
+ 3. Each atomic claim must carry exactly ONE dominant knowledge_type after typing.
495
+ If it still reads as two types, it was not fully decomposed; split again.
496
+
497
+ ##### Pass 4: Typing (return, do NOT write)
498
+
499
+ Classify each atomic claim against the 6-enum knowledge taxonomy in
500
+ `${CLAUDE_PLUGIN_ROOT}/references/meeting/knowledge-typing.md`
501
+ (fact / causal / heuristic / anomaly_cue / mental_model / assumption), run the
502
+ conditions/counter_conditions contrastive probe, extract valid_from/valid_until
503
+ when the claim is time-bound, then RETURN the row in the uniform schema
504
+ (`extraction-perspectives.md`):
505
+
506
+ ```
507
+ {
508
+ segment_id, speaker_id, segment_type, priority, claim_text, knowledge_type,
509
+ conditions, counter_conditions, valid_from, valid_until, disambiguation,
510
+ confidence, reasoning_line, perspective
511
+ }
512
+ ```
513
+
514
+ This worker NEVER calls `navigation.writeClaimNode` itself -- that write
515
+ happens exactly once per consolidated claim, from the single main-thread db
516
+ handle, in Step 3b sub-step 5. The claim text stays out of this worker's
517
+ return only in the sense that it never touches any Brain call; it rides the
518
+ returned row back to the orchestrator, which is still LOCAL (Canon Part 8).
519
+
520
+ ##### Show perspective reasoning
521
+
522
+ For EVERY classified atomic claim, this worker's `reasoning_line` field
523
+ carries Larry's one-line reasoning, extending each line with the
524
+ knowledge_type -- for example:
525
+
526
+ > "insight about market size | claim: fact | Confidence: 0.85"
527
+ > "decision about product focus | claim: heuristic | Confidence: 0.92"
528
+ > "advice on hiring | claim: mental_model | Confidence: 0.78"
529
+ > "unresolved referent 'they' -> queued AMBIGUOUS | claim: assumption | Confidence: 0.40"
530
+
531
+ The section-target routing (e.g. "-> market-analysis") is added later, at
532
+ Step 4, because target-section decisions are section-mapping.md's job and
533
+ this worker never sees that matrix. Transparency is mandatory -- even when it
534
+ makes the flow longer. The user needs to trust Larry's classifications.
535
+
536
+ ---
537
+
538
+ ### Step 3b: Consolidation (orchestrator only, after all five workers return)
539
+
540
+ A worker structurally cannot own any of the following: Step 3 requires
541
+ showing reasoning for EVERY classified atomic claim across the WHOLE meeting;
542
+ Step 4 is confirm-then-file per batch with structured rejection capture;
543
+ Step 4's date-sync gate can return `GATE_BLOCK`. None of that is visible to,
544
+ or ownable by, a single perspective worker holding only its own output. The
545
+ orchestrator (the main conversation thread) owns every one of these seven
546
+ ordered sub-steps:
547
+
548
+ 1. **Merge and deduplicate across perspectives.** Two lenses seeing the same
549
+ segment is the EXPECTED case, not the edge case: a decision that is also a
550
+ causal claim will surface twice. Merge on `segment_id`. Step 3 has NO
551
+ claim-level dedup today (`CLAIM_NODE_ID` gives idempotency for the same
552
+ segment in the same session, which is a different property), so this step
553
+ is genuinely new and exists because the fan-out created the duplicate.
554
+ 2. **Reconcile `knowledge_type` disagreement.** When two perspectives assign
555
+ different types to the same `segment_id`, do NOT average and do NOT pick
556
+ by confidence alone. Apply the existing rule from `knowledge-typing.md`: a
557
+ claim must carry exactly ONE dominant type after typing, else it splits.
558
+ So either split the claim into two atomic claims (Pass 3's own remedy), or
559
+ record the losing type in `disambiguation` and surface the disagreement in
560
+ the reasoning line. A silent pick is forbidden.
561
+ 3. **Mint cross-claim edges over the full set.** When the prose justifies a
562
+ relationship BETWEEN two consolidated atomic claims, mint a typed edge via
563
+ `navigation.writeEdge` using the amended taxonomy
564
+ (`lib/core/navigation/edges.cjs` `ALLOWED_EDGE_TYPES`):
565
+ - `REFINES` -- a new claim TIGHTENS or CONDITIONS a prior claim without
566
+ invalidating it (the missing middle between INFORMS-too-weak and
567
+ CONTRADICTS-wrong). Source = the refining claim.
568
+ - `ROOT_CAUSES` -- a directional cause-to-effect edge. Source = the cause
569
+ claim, target = the effect claim (a `causal` claim is the natural
570
+ source).
571
+ - `INSTANTIATES` -- a concrete example claim that EVIDENCES an abstract
572
+ claim. Source = the concrete claim, target = the abstract
573
+ `mental_model` claim.
574
+ `valid_from` / `valid_until` ride the edge `properties` JSON (zero
575
+ `writeEdge` signature change). The claim BODY never lands on the edge --
576
+ edge properties are enum and scalar only (Canon Part 8). This is
577
+ orchestrator work: the canonical `INSTANTIATES` case is a concrete claim
578
+ evidencing an abstract `mental_model` claim, and in a real meeting the
579
+ abstraction and its example are frequently 20 minutes apart and found by
580
+ two different perspectives -- only the orchestrator ever holds both.
581
+ 4. **Detect intra-meeting contradictions** across the FULL claim set,
582
+ rendered in the claim-A-versus-claim-B-with-speakers format from
583
+ `${CLAUDE_PLUGIN_ROOT}/references/meeting/summary-template.md`'s
584
+ "## Contradictions Detected" section.
585
+ 5. **Call `navigation.writeClaimNode(db, params)` ONCE PER CONSOLIDATED CLAIM
586
+ FROM THE SINGLE MAIN-THREAD DB HANDLE** (via `lib/core/navigation.cjs`
587
+ over a room.db handle from `openRoomDb`), with:
588
+ ```
589
+ {
590
+ text, // the atomic claim text (stays LOCAL, never to Brain)
591
+ knowledge_type, // one of the frozen 6 enum members
592
+ conditions, // "when does this hold?" ('' if none stated)
593
+ counter_conditions, // "when does this break?" ('' if none stated)
594
+ valid_from, // ISO date or '' (TV-01)
595
+ valid_until, // ISO date or '' (TV-01)
596
+ sourceSpeaker, // the Step 2 roster speaker id
597
+ sourceSegment, // the segment id (idempotency key)
598
+ sessionId, // the meeting session id
599
+ disambiguation // 'ambiguous' ONLY for unresolved claims (Pass 2), else omitted
600
+ }
601
+ ```
602
+ `lib/core/room-db.cjs` folds a 5-second busy timeout into `DatabaseSync`
603
+ precisely because a background worker and a live conversation can
604
+ contend on the same WAL file; five agents writing would multiply that for
605
+ no benefit -- so the main thread is the ONLY writer. `writeClaimNode`
606
+ mints `type='claim'`, `review_status='proposed'` (NEVER auto-confirmed --
607
+ Canon Part 9 role 5: a human confirms truth at a Decision Gate). Re-filing
608
+ the same segment in the same session UPSERTs (idempotent), never
609
+ duplicates. The claim PROSE lives only in room.db and the artifact; only
610
+ the knowledge_type enum handle may ride to Brain downstream (Canon Part 8).
611
+ 6. **Render the reasoning line for every claim.** The reasoning line rule is
612
+ unconditional and survives verbatim, extending each line with the
613
+ knowledge_type AND now naming WHICH PERSPECTIVE surfaced the claim (both,
614
+ when two did):
615
+
616
+ > "insight about market size -> market-analysis | claim: fact | Confidence: 0.85 | via Technical Claims and Causal Mechanisms"
617
+ > "decision about product focus -> solution-design | claim: heuristic | Confidence: 0.92 | via Decisions and Commitments"
618
+ > "advice on hiring -> team-execution | claim: mental_model | Confidence: 0.78 | via Stakeholder Dynamics and Working Models"
619
+ > "unresolved referent 'they' -> queued AMBIGUOUS | claim: assumption | Confidence: 0.40 | via Open Questions and Unknowns, Risks, Blockers and Anomaly Cues"
620
+
621
+ Transparency is mandatory -- even when it makes the flow longer. The user
622
+ needs to trust Larry's classifications.
623
+ 7. **Hand the consolidated set to Step 4 UNCHANGED.** Consolidation FEEDS the
624
+ F.8 nugget routing table Step 4 wires (`renderShapeF8` ->
625
+ `consumeF8Fanout`); it does not replace or bypass it: one consolidated
626
+ table, one `renderShapeF8` card, one confirm through `consumeF8Fanout`,
627
+ nothing files without the navigator. Every claim is still born
628
+ `review_status: 'proposed'` at the writer, and `promoteNodeStatus` still
629
+ rejects a literal `larry`, `brain`, `system` or `assistant` identity with
630
+ `agent_attribution_forbidden`.
631
+
632
+ ---
633
+
634
+ ## Step 4: Section Mapping + Confirm-Then-File
635
+
636
+ ### Present Segments Batched by Type (Priority Order)
637
+
638
+ Group classified segments by type. Within each type, sort by confidence. Present the highest-priority types first, with Larry's reasoning for each:
639
+
640
+ ```
641
+ **DECISIONS (2 segments):**
642
+ 1. Lawrence (mentor): "Focus on B2B first, consumer can wait."
643
+ -> team-execution | decision | HIGH confidence
644
+ Reasoning: Direct strategic direction from mentor
645
+
646
+ 2. Sarah (founder): "We're pausing the mobile app."
647
+ -> solution-design | decision | HIGH confidence
648
+ Reasoning: Product roadmap change from founder
649
+ ```
650
+
651
+ Do this for EVERY type present (decisions, action items, insights, advice, open questions)
652
+ before moving to the filing gate below -- the navigator sees the full extraction before being
653
+ asked to file any of it.
654
+
655
+ ### The Filing Gate is Shape F.8 (renderShapeF8 -> consumeF8Fanout)
656
+
657
+ The frontmatter above declares `hitl_shape: "F.8"` -- "Extracted nuggets are routed as an
658
+ independent set the navigator files in any order." This is where that declaration actually
659
+ fires, in place of a flat ASCII prompt.
660
+
661
+ **1. Build ONE consolidated nugget routing table** across ALL extracted types (decisions,
662
+ action items, insights, advice, open questions) -- one table, not one prompt per batch.
663
+ Use the same canonical columns already shipping in `commands/ignite.md` and
664
+ `commands/new-project.md`:
665
+
666
+ ```
667
+ | nugget | target section | why |
668
+ |--------|----------------|-----|
669
+ | Lawrence (mentor): "Focus on B2B first, consumer can wait." | team-execution | Direct strategic direction from mentor |
670
+ | Sarah (founder): "We're pausing the mobile app." | solution-design | Product roadmap change from founder |
671
+ | ... one row per classified segment across every type ... |
672
+ ```
673
+
674
+ **2. Render it through the shipped machinery, never a hand-rolled prompt.** Call
675
+ `lib/hmi/shape-f8-renderer.cjs` `renderShapeF8` with the table rows as the toggle basket
676
+ (one option per nugget: `label` is the nugget summary, `confidence` is the segment's
677
+ classification confidence, so a >=0.70 nugget renders PRE-CHECKED per D-06 -- display-only,
678
+ never auto-applied). Fire the returned card via **AskUserQuestion** as a multi-select (the
679
+ contract's `multiSelect: true`). On the single confirm, hand the navigator's selected subset
680
+ to `lib/workflow/f8-fanout-consumer.cjs` `consumeF8Fanout`, passing a per-nugget filing
681
+ closer that writes the artifact (see Create Filed Artifacts, below) for each confirmed item.
682
+ ONE confirm fans out to N filed artifacts -- toggling a nugget off is how the navigator skips
683
+ it; there is no separate "review individually" mode because every nugget already IS reviewed
684
+ individually via its own toggle.
685
+
686
+ **3. Honor the paging bound.** `MAX_TOGGLE_N` is 4. A basket larger than 4 PAGES rather than
687
+ truncates (D-05) -- a 40-nugget meeting therefore walks several pages of the same card, never
688
+ a silently-truncated set. Do not invent a per-command cap and do not raise `MAX_TOGGLE_N`.
689
+
690
+ **4. Nothing files until the navigator confirms.** Every claim minted by Step 3 Pass 4
691
+ (`navigation.writeClaimNode`) is born `review_status: 'proposed'` -- rendering this gate as
692
+ F.8 does not and cannot change that; the writer is the sole mint point (Canon Part 9 role 5).
693
+ Promotion runs only through `navigation.confirmNode` with a non-agent `byUser` resolved from
694
+ USER.md: a literal `larry`/`brain`/`system`/`assistant` is rejected by `promoteNodeStatus`
695
+ with `agent_attribution_forbidden`. The declaration and the render finally agree.
696
+
697
+ ### Handle Rejections
698
+
699
+ A nugget the navigator does NOT toggle on still records why, when a reason is given: offer
700
+ structured rejection reasons for the unchecked rows --
701
+
702
+ > "Skipping {N} nuggets. Why? [not relevant] [already known] [wrong section] [other]"
703
+
704
+ Capture the rejection reason per unchecked nugget. This becomes graph data per the wicked
705
+ problem architecture (rejection IS data, project decision 13) -- the F.8 toggle basket
706
+ changes HOW the navigator picks, it does not change that a skip is still recorded.
707
+
708
+ ### Cross-Reference Against Open Action Items
709
+
710
+ During filing, if any open action items remain (not cleared in Step 0), compare each segment being filed against them. If a segment appears to address or complete an open action item:
711
+
712
+ > "This looks like progress on Lawrence's 'Review TAM analysis'. Mark as done?"
713
+
714
+ Use Larry's judgment -- not exact text matching. Only surface when confidence is high. If user confirms, update the source meeting's action-items.md.
715
+
716
+ ### Date+Sync Gate (R11, D-02) -- runs BEFORE any artifact write
717
+
718
+ The human owns `valid_at`. `created_at` = when we filed it; `valid_at` = when it
719
+ actually happened. A meeting is ALWAYS a real-world event, so before writing the
720
+ meeting artifact you MUST clear the shared date+sync gate -- the ONE enforcement
721
+ chokepoint that both this CLI path and the MCP filing tool call (D-02, tri-polar;
722
+ the rule lives in `lib/core/temporal/date-sync-gate.cjs` `requireValidAt`, never
723
+ re-implemented per surface).
724
+
725
+ A meeting node is flagged `has_event_date=true` at write time by node type (D-04 --
726
+ meeting always; a decision/claim is flagged ONLY when this filing path detects an
727
+ explicit event date). The flag is set at write, never inferred at read.
728
+
729
+ Call the gate before the artifact write:
730
+
731
+ ```bash
732
+ node -e "const {requireValidAt}=require('./lib/core/temporal/date-sync-gate.cjs'); \
733
+ const r=requireValidAt({type:'meeting',id:process.env.MEETING_ID,source_path:process.env.MEETING_PATH}, \
734
+ {whenAnswer:process.env.WHEN_ANSWER||undefined}); \
735
+ console.log(JSON.stringify(r));"
736
+ ```
737
+
738
+ - If the gate returns `GATE_BLOCK`, render its Shape F.1 selector spec via
739
+ **AskUserQuestion** (the CLI render surface): a "when?" question that sets
740
+ `valid_at` (it accepts a free-typed relative phrase like "last Tuesday", which
741
+ the gate resolves via chrono-node against `getReferenceNow()`) AND a
742
+ multi-select "relates to?" question. You MUST NOT write the meeting artifact
743
+ until the gate returns `GATE_PASS` -- an undated meeting BLOCKS here.
744
+ - When the human answers "relates to?", the gate writes a sync edge per relation
745
+ and emits `f_selector_sync_confirmed` (the existing Shape F sync machinery).
746
+ - `created_at` stays the filing moment; `valid_at` is the human's answer. Both
747
+ ride the meeting node's `properties` JSON (additive, no DDL), Part 8 LOCAL only.
748
+
749
+ ### Create Filed Artifacts
750
+
751
+ For each filed segment, create a markdown file in the target room section using the frontmatter from `${CLAUDE_PLUGIN_ROOT}/references/meeting/artifact-template.md`:
752
+
753
+ **File path pattern:** `room/{section}/YYYY-MM-DD-{slug}.md`
754
+
755
+ Include ALL provenance fields:
756
+ - methodology: file-meeting
757
+ - created: {today}
758
+ - source: transcript (or velma)
759
+ - attribution:
760
+ - speaker: {name}
761
+ - role: {role}
762
+ - profile_path: team/{role-plural}/{speaker-slug}
763
+ - meeting_date: {meeting date}
764
+ - meeting_id: {YYYY-MM-DD-meeting-slug}
765
+ - segment_type: {type}
766
+ - confidence: {confidence score}
767
+ - meeting_date: {meeting date}
768
+ - meeting_name: {meeting identifier}
769
+ - room_section: {target section}
770
+ - assumptions: {extracted assumptions with status and impacts}
771
+ - perspective: {speaker_role}
772
+ - cascade_sections: {sections this may affect beyond target}
773
+
774
+ When writing the artifact content, auto-insert [[concept-name]] links for key concepts that connect this segment to other parts of the Data Room. Use [[section-name]] for cross-section references (existing pattern) and [[concept-name]] for domain concepts, frameworks, or recurring themes. Examples: [[wicked-problems]], [[assumption-tracking]], [[market-sizing]], [[competitive-moat]]. These wikilinks feed the knowledge graph -- build-graph parses them into concept nodes and REFERENCES edges. Users can also manually add [[wikilinks]] to any room artifact at any time.
775
+
776
+ **Native wikilink injection (NATIVE-01/02):** Immediately after writing each filed artifact, run:
777
+ ```bash
778
+ node "${CLAUDE_PLUGIN_ROOT}/scripts/wikilink-file.cjs" "$ROOM_DIR" "$ARTIFACT_PATH"
779
+ ```
780
+ This uses `lib/vault/wikilink-builder.cjs` to inject team-name wikilinks at write time so the artifact arrives pre-linked. Errors are logged but non-fatal -- filing never aborts because of a wikilink pass.
781
+
782
+ Speaker contributions are tracked via computed backlinks in PROFILE.md (run by compute-team), not by filing copies to speaker subfolders.
783
+
784
+ Track: total segments filed, total rejected, sections touched.
785
+
786
+ ---
787
+
788
+ ## Step 5: Create Meeting Summary + Archive
789
+
790
+ ### Infer Meeting Name + Confirm
791
+
792
+ Before creating the archive, confirm the meeting name with the user:
793
+
794
+ 1. **Larry proposes** a meeting name from the dominant topic/purpose of classified segments:
795
+ > "This looks like a mentoring session focused on market validation. I'd call it 'Market Validation Mentoring'. Sound right?"
796
+
797
+ 2. **User confirms or changes** the name. Use their version if they provide one.
798
+
799
+ 3. The confirmed meeting name becomes the **meeting_id** used in all attribution blocks and archive paths:
800
+ - meeting_id: `YYYY-MM-DD-{confirmed-slug}` (e.g., `2026-03-15-market-validation-mentoring`)
801
+ - Slugify: lowercase, hyphens, no special characters, max 50 characters
802
+
803
+ ### Meeting Archive Package
804
+
805
+ The complete meeting archive directory structure:
806
+
807
+ ```
808
+ room/meetings/YYYY-MM-DD-{meeting-name}/
809
+ transcript.md
810
+ summary.md
811
+ speakers.md
812
+ decisions.md
813
+ action-items.md
814
+ metadata.yaml
815
+ {audio-filename} # only if --audio input
816
+ filed-to/
817
+ ```
818
+
819
+ Each meeting is a self-contained knowledge artifact. The entire folder can be browsed, shared, or referenced as a unit.
820
+
821
+ ### Create Meeting Archive Directory
822
+
823
+ ```bash
824
+ mkdir -p room/meetings/YYYY-MM-DD-{meeting-name}/filed-to/
825
+ ```
826
+
827
+ ### Store Processed Transcript
828
+
829
+ Write the processed transcript (with speaker labels and format metadata) to:
830
+ `room/meetings/YYYY-MM-DD-{meeting-name}/transcript.md`
831
+
832
+ ### Create Speakers Roster
833
+
834
+ Create `room/meetings/YYYY-MM-DD-{meeting-name}/speakers.md`:
835
+
836
+ ```markdown
837
+ ---
838
+ meeting_id: {YYYY-MM-DD-meeting-slug}
839
+ meeting_date: {YYYY-MM-DD}
840
+ ---
841
+ # Speakers: {meeting_name}
842
+
843
+ | Speaker | Role | Segments | Profile |
844
+ |---------|------|----------|---------|
845
+ | {name} | {role} | {count} | [[team/{role-plural}/{slug}/PROFILE.md]] |
846
+ ```
847
+
848
+ One row per confirmed speaker from Step 2. Profile links use the slug from create-speaker-profile (canonical slug source).
849
+
850
+ ### Create Full Summary
851
+
852
+ Following `${CLAUDE_PLUGIN_ROOT}/references/meeting/summary-template.md`, create the full meeting summary at:
853
+ `room/meetings/YYYY-MM-DD-{meeting-name}/summary.md`
854
+
855
+ Structure:
856
+
857
+ 1. **Narrative lead paragraph** in Larry's voice:
858
+ > "Lawrence pushed hard on market validation today. Three things you can't ignore..."
859
+
860
+ 2. **## Key Decisions** -- with who decided and the reasoning
861
+
862
+ 3. **## Insights Filed** -- {count} insights filed to {sections list}
863
+
864
+ 4. **## Contradictions Detected** -- if any contradictions found between this meeting's content and existing room content. Skip section entirely if none.
865
+
866
+ 5. **## Gaps Identified** -- room sections that SHOULD have received input from this meeting but didn't. Based on the speaker roles present and what they discussed.
867
+
868
+ 6. **## Action Items** -- with owners assigned from speaker context. Deadlines ONLY when explicitly mentioned in transcript. Never invent deadlines.
869
+
870
+ 7. **## Rejections** -- segments rejected with structured reasons. This IS data -- do not hide or minimize rejections.
871
+
872
+ 8. **## Speakers** -- {count} speakers with roles and contribution summary
873
+
874
+ 9. **## Convergence Signals** -- topics appearing in 3+ meetings across the meeting history. Only include if convergence was detected. Skip section entirely if none.
875
+
876
+ 10. **## Cross-Meeting Contradictions** -- contradictions detected against prior meetings (beyond within-meeting contradictions in section 4). Only include if cross-meeting contradictions were found.
877
+
878
+ ### Create Decisions Log
879
+
880
+ Create `room/meetings/YYYY-MM-DD-{meeting-name}/decisions.md`:
881
+
882
+ ```markdown
883
+ ---
884
+ meeting_id: {YYYY-MM-DD-meeting-slug}
885
+ ---
886
+ # Decisions: {meeting_name}
887
+
888
+ 1. **{Decision summary}** -- {speaker} ({role})
889
+ Filed to: [[{section}/{artifact-filename}.md]]
890
+ Impact: {cascade_sections from the decision artifact}
891
+ ```
892
+
893
+ Extract from the segments classified as `decision` in Step 3. If no decisions were made, write: "No explicit decisions were recorded in this meeting."
894
+
895
+ ### Create Action Items Log
896
+
897
+ Create `room/meetings/YYYY-MM-DD-{meeting-name}/action-items.md`:
898
+
899
+ ```markdown
900
+ ---
901
+ meeting_id: {YYYY-MM-DD-meeting-slug}
902
+ ---
903
+ # Action Items: {meeting_name}
904
+
905
+ | Owner | Task | Deadline | Status |
906
+ |-------|------|----------|--------|
907
+ | {name} | {task} | {date or "not specified"} | open |
908
+ ```
909
+
910
+ Extract from segments classified as `action-item` in Step 3. Deadlines ONLY if explicitly stated in transcript -- never invent deadlines. All items start as `status: open`. If no action items, write: "No action items were identified in this meeting."
911
+
912
+ ### Create Structured Metadata
913
+
914
+ Create `room/meetings/YYYY-MM-DD-{meeting-name}/metadata.yaml` as the LAST file in the archive (after all other data is known):
915
+
916
+ ```yaml
917
+ meeting_id: {YYYY-MM-DD-meeting-slug}
918
+ meeting_name: {human-readable meeting name}
919
+ meeting_date: {YYYY-MM-DD}
920
+ source: {transcript | velma}
921
+ speakers:
922
+ - name: {full name}
923
+ role: {role}
924
+ slug: {speaker-slug matching profile directory}
925
+ - name: {full name}
926
+ role: {role}
927
+ slug: {speaker-slug}
928
+ topics:
929
+ - {dominant topic 1}
930
+ - {dominant topic 2}
931
+ decisions_count: {N}
932
+ insights_count: {N}
933
+ action_items_count: {N}
934
+ sections_touched:
935
+ - {section-name}
936
+ - {section-name}
937
+ has_audio: {true | false}
938
+ ```
939
+
940
+ Topics are inferred from the dominant themes of filed segments. Speaker slugs MUST match the directory names created by create-speaker-profile (canonical slug source).
941
+
942
+ ### Copy Audio File (if --audio)
943
+
944
+ If input was `--audio <path>`, copy the audio file into the meeting archive:
945
+
946
+ ```bash
947
+ cp {audio-path} room/meetings/{YYYY-MM-DD-meeting-slug}/{original-filename}
948
+ ```
949
+
950
+ Set `has_audio: true` in metadata.yaml. If no audio input, set `has_audio: false`.
951
+
952
+ Register the audio file in the room's ASSET_MANIFEST.md for dashboard/wiki discovery:
953
+
954
+ ```bash
955
+ # Register audio in ASSET_MANIFEST.md
956
+ bash "${CLAUDE_PLUGIN_ROOT}/scripts/file-asset" "$room_path" "$audio_path" "meetings" --meeting "$meeting_id"
957
+ ```
958
+
959
+ This creates a markdown wrapper alongside the audio file in the meeting archive with a link to the transcript:
960
+ ```yaml
961
+ ---
962
+ type: audio
963
+ asset_path: meetings/{meeting_id}/{audio_filename}
964
+ meeting_id: {meeting_id}
965
+ transcript: meetings/{meeting_id}/transcript.md
966
+ ---
967
+ ```
968
+
969
+ The wrapper content includes: `Transcript: [[meetings/{meeting_id}/transcript.md]]`
970
+
971
+ ### Create Filed-To Reference Directory
972
+
973
+ In `room/meetings/YYYY-MM-DD-{meeting-name}/filed-to/`, create a small markdown file for each filed artifact pointing to its location:
974
+
975
+ ```markdown
976
+ # {artifact-slug}
977
+ Filed to: room/{section}/YYYY-MM-DD-{slug}.md
978
+ Speaker: {name} ({role})
979
+ Type: {segment_type}
980
+ ```
981
+
982
+ **Native wikilink injection (NATIVE-01/02):** After writing each filed-to stub AND the meeting summary.md, run the wikilink wrapper to inject team links and filed-to footer lines at write time:
983
+ ```bash
984
+ # For each filed-to stub
985
+ node "${CLAUDE_PLUGIN_ROOT}/scripts/wikilink-file.cjs" "$ROOM_DIR" "$STUB_PATH" \
986
+ --filed-to-target="{section}/YYYY-MM-DD-{slug}.md" \
987
+ --meeting-slug="YYYY-MM-DD-{meeting-name}"
988
+
989
+ # For the meeting summary
990
+ node "${CLAUDE_PLUGIN_ROOT}/scripts/wikilink-file.cjs" "$ROOM_DIR" "$SUMMARY_PATH" \
991
+ --meeting-slug="YYYY-MM-DD-{meeting-name}"
992
+ ```
993
+ See `lib/vault/wikilink-builder.cjs` for the canonical builders. The wrapper fails soft -- if the room has zero team profiles or scan errors, filing still completes cleanly.
994
+
995
+ ### Create Compact Root Reference
996
+
997
+ Create a compact one-paragraph reference at the room root:
998
+ `room/meeting-YYYY-MM-DD-{meeting-name}.md`
999
+
1000
+ ```markdown
1001
+ ---
1002
+ type: meeting-reference
1003
+ meeting_date: YYYY-MM-DD
1004
+ meeting_name: {name}
1005
+ speakers: {count}
1006
+ artifacts_filed: {count}
1007
+ sections_touched: [{sections}]
1008
+ ---
1009
+
1010
+ {One paragraph summary of the meeting and its impact on the Data Room.}
1011
+
1012
+ Full summary: [[meetings/YYYY-MM-DD-{meeting-name}/summary.md]]
1013
+ Transcript: [[meetings/YYYY-MM-DD-{meeting-name}/transcript.md]]
1014
+ Filed {N} artifacts across {M} sections.
1015
+ ```
1016
+
1017
+ ### Past Meeting Lookup
1018
+
1019
+ When Larry needs to reference past meetings (e.g., "Lawrence mentioned this 3 meetings ago"), grep metadata.yaml files across `room/meetings/`:
1020
+
1021
+ - **By speaker:** `grep -rl '{speaker-slug}' room/meetings/*/metadata.yaml`
1022
+ - **By topic:** `grep -rl '{topic}' room/meetings/*/metadata.yaml`
1023
+ - **By date range:** Scan `meeting_date` fields in metadata.yaml files
1024
+ - **By decision count:** `grep -l 'decisions_count: [1-9]' room/meetings/*/metadata.yaml`
1025
+
1026
+ This provides fast targeted lookups without indexing. metadata.yaml is designed as a grep-friendly structured search surface.
1027
+
1028
+ ---
1029
+
1030
+ ## Step 6: Cross-Relationship Batch Scan
1031
+
1032
+ After ALL filing is complete, scan filed artifacts against existing Data Room content.
1033
+
1034
+ ### Load Detection Heuristics
1035
+
1036
+ Use `${CLAUDE_PLUGIN_ROOT}/references/meeting/cross-relationship-patterns.md` (already loaded in Setup if available) for the 5 edge types:
1037
+
1038
+ - **INFORMS**: new artifact references or provides evidence for another section
1039
+ - **CONTRADICTS**: new artifact conflicts with existing claim
1040
+ - **CONVERGES**: theme from this meeting appears in 3+ sections
1041
+ - **INVALIDATES**: new artifact makes an existing assumption stale
1042
+ - **ENABLES**: new artifact unblocks something in another section
1043
+
1044
+ ### Scan Protocol
1045
+
1046
+ 1. For each filed artifact, read its content and assumptions
1047
+ 2. Glob existing room content in related sections (especially cascade_sections)
1048
+ 3. Apply Tier 0 keyword matching heuristics from cross-relationship-patterns.md
1049
+ 4. Detect significant cross-relationships only -- not every minor keyword overlap
1050
+
1051
+ **Tier 0 implementation:** Larry's conversational reasoning against room content. No LSA/MiniLM in Phase 6 -- computational similarity comes in Phase 8.
1052
+
1053
+ ### Present Findings
1054
+
1055
+ **If significant cross-relationships found:**
1056
+
1057
+ Present in priority order (INVALIDATES > CONTRADICTS > CONVERGES > ENABLES > INFORMS):
1058
+
1059
+ > "This meeting changed something in your Data Room:"
1060
+ >
1061
+ > **CONTRADICTS:** Tyler's market size estimate ($50M) conflicts with the $190M TAM in your financial-model/revenue-projection.md. Which is current?
1062
+ >
1063
+ > **CONVERGES:** Enterprise focus was mentioned by 3 speakers and now appears in problem-definition, market-analysis, and solution-design. This is becoming a clear strategic direction.
1064
+ >
1065
+ > **INFORMS:** Sarah's competitive analysis point adds evidence to your competitive-analysis section.
1066
+
1067
+ **If no significant cross-relationships found:**
1068
+
1069
+ > "No significant cross-relationships detected from this meeting's content against your existing Data Room. As your room grows, cross-meeting intelligence will get richer."
1070
+
1071
+ ### Cross-Meeting Intelligence Scan
1072
+
1073
+ After the within-meeting cross-relationship scan, perform cross-meeting pattern detection using the protocols from `${CLAUDE_PLUGIN_ROOT}/references/meeting/cross-meeting-intelligence.md`:
1074
+
1075
+ #### Convergence Detection
1076
+ 1. Extract key topics from the current meeting's metadata (topics inferred from filed segments)
1077
+ 2. Grep `topics:` across all `room/meetings/*/metadata.yaml` files
1078
+ 3. Any topic in 3+ meetings (including this one) = convergence signal
1079
+ 4. Surface each: "Market validation has been raised in 4 of your last 6 meetings. This is becoming a central theme."
1080
+
1081
+ #### Contradiction Detection
1082
+ 1. Pre-filter prior meetings that share topics/speakers with current meeting (via metadata.yaml grep)
1083
+ 2. Load summaries from up to 10 matching prior meetings
1084
+ 3. Use Larry's reasoning to detect position changes or disagreements across meetings
1085
+ 4. HIGH-impact contradictions (financials, strategy, key decisions): surface immediately with specific references
1086
+ 5. LOW-impact contradictions (opinions, preferences): note in meeting summary
1087
+
1088
+ #### Record Findings
1089
+ - Add convergence signals and cross-meeting contradictions to the meeting summary (new sections in Step 5)
1090
+ - Present the combined cross-relationship + cross-meeting findings to the user in priority order
1091
+
1092
+ ---
1093
+
1094
+ ## Post-Pipeline: Proactive Speaker Research
1095
+
1096
+ After the entire 6-step pipeline is complete, check if any new speaker profiles were created in Step 2.
1097
+
1098
+ **If `new_profiles` is empty:** Skip this section.
1099
+
1100
+ **If `new_profiles` has entries:**
1101
+
1102
+ > "I created profiles for {names}. Let me research them online to fill in context..."
1103
+
1104
+ For each new speaker profile:
1105
+
1106
+ 1. Extract venture context from `room/STATE.md` (venture name, domain, stage) or use confirmed meeting context
1107
+ 2. Run: `bash "${CLAUDE_PLUGIN_ROOT}/scripts/research-speaker" <room_dir> <speaker-slug> <display-name> "<project-context>"`
1108
+ 3. Present the research findings to the user:
1109
+ > "Here's what I found about {name}. Want me to update their profile?"
1110
+ 4. **User confirms** before any research content is written to PROFILE.md
1111
+ 5. If confirmed, run: `bash "${CLAUDE_PLUGIN_ROOT}/scripts/research-speaker" <room_dir> <speaker-slug> <display-name> "<project-context>" --apply`
1112
+ 6. If declined: Leave profile with `research_status: pending` -- user can research later
1113
+
1114
+ **Important:** Research runs AFTER the filing pipeline. Never block filing on external API calls. This follows Pitfall 7 from research: proactive research is valuable but must not interrupt the core workflow.
1115
+
1116
+ ---
1117
+
1118
+ ## Closing
1119
+
1120
+ After all steps complete (including optional research):
1121
+
1122
+ > "Meeting filed. {N} artifacts across {M} sections. {P} speakers identified. {R} new profiles created. Anything else from this conversation?"
1123
+
1124
+ If cross-relationships were found, add:
1125
+ > "I flagged {X} cross-relationships worth reviewing."
1126
+
1127
+ If cross-meeting intelligence was detected, add:
1128
+ > "{Y} convergence signals and {Z} cross-meeting contradictions detected."
1129
+
1130
+ ### Post-Filing Next-Move Selector (F.1)
1131
+
1132
+ A write-only ladder with no visible next move is the exact failure class this
1133
+ milestone keeps finding (RESEARCH Pitfall 5). After filing completes, surface the
1134
+ DIKW ladder's next move through the canonical Shape F.1 selector so the navigator
1135
+ always has a visible move.
1136
+
1137
+ Count the two scalars from the room.db graph (LOCAL only -- never the transcript
1138
+ prose, Canon Part 8):
1139
+
1140
+ - `M` = the ambiguous-queue size:
1141
+ `SELECT COUNT(*) FROM nodes WHERE type='claim' AND json_extract(properties,'$.disambiguation')='ambiguous' AND review_status='proposed'`
1142
+ - `N` = the proposed-claim count:
1143
+ `SELECT COUNT(*) FROM nodes WHERE type='claim' AND review_status='proposed'`
1144
+
1145
+ Then render the selector via `lib/hmi/selector-dispatcher.cjs` pickShape (the
1146
+ dispatcher auto-attaches the AskUserQuestion trailer + archetype and appends
1147
+ Free-Text last, so 3 ladder verbs render as `verbs=4`):
1148
+
1149
+ ```js
1150
+ const dispatcher = require('lib/hmi/selector-dispatcher.cjs');
1151
+ dispatcher.pickShape({
1152
+ requestedShape: 'F.1',
1153
+ tier, // the resolved room tier
1154
+ roomDir, // the active room dir
1155
+ payload: {
1156
+ verbs: [
1157
+ 'Review ambiguous segments (' + M + ')',
1158
+ 'Confirm proposed claims (' + N + ')',
1159
+ 'Build knowledge from this meeting',
1160
+ ],
1161
+ header: '-- mindrianOS -- meeting filed -- next move --',
1162
+ emitTelemetry: true, // ONLY on the actual presentation surface
1163
+ },
1164
+ });
1165
+ ```
1166
+
1167
+ Verb routing (each is a thin dispatch over a SHIPPED chokepoint -- no new machinery):
1168
+
1169
+ - **Review ambiguous segments (M)** -- walk the `disambiguation:'ambiguous'`
1170
+ queue (the same scan the SessionStart `scripts/check-pending-ambiguous.cjs`
1171
+ resurfaces); resolve each referent with the user, then re-mint the claim with
1172
+ the resolved text (idempotent UPSERT).
1173
+ - **Confirm proposed claims (N)** -- per-claim APPROVE routes through
1174
+ `navigation.confirmNode(db, claimId, navigation.resolveByUser(roomDir), reason)`.
1175
+ `resolveByUser` reads USER.md first; NEVER pass a literal
1176
+ 'larry'/'brain'/'system'/'assistant' (promoteNodeStatus rejects with
1177
+ `agent_attribution_forbidden`). The Knowledge rung is confirmable per Canon
1178
+ Part 9 role 5: the human confirms truth.
1179
+ - **Build knowledge from this meeting** -- invoke `/mos:build-knowledge`, which
1180
+ reads the typed claims by `knowledge_type` and renders them by DIKW rung.
1181
+
1182
+ The frozen 148 dial constitution is UNTOUCHED here: this is a render-host call,
1183
+ not a ranker edit. MAX_K=3, DIAL_REACH_K=6, and the 0.70/0.15 gate stay where
1184
+ they are.
1185
+
1186
+ ---
1187
+
1188
+ ## Voice Rules
1189
+
1190
+ - Larry's conversational voice throughout. Short sentences. Direct.
1191
+ - Frame gaps as opportunities: "Your competitive-analysis is light -- this meeting could change that."
1192
+ - Show reasoning for every classification. Transparency builds trust.
1193
+ - Never file silently. Always confirm-then-file.
1194
+ - Rejection reasons are valuable -- treat them with respect, not as failures.
1195
+ - Challenge gently when a user skips something important: "That decision from Lawrence seems significant. Sure you want to skip it?"