@adammcarter/use-cases 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (704) hide show
  1. package/.agents/skills/migration/SKILL.md +85 -0
  2. package/.agents/skills/showcase/SKILL.md +60 -0
  3. package/.agents/skills/use-cases/SKILL.md +161 -0
  4. package/.agents/skills/walkthrough/SKILL.md +48 -0
  5. package/.claude-plugin/plugin.json +14 -0
  6. package/.codex-plugin/plugin.json +33 -0
  7. package/.mcp.json +8 -0
  8. package/.opencode/plugin/use-cases.js +32 -0
  9. package/CHANGELOG.md +125 -0
  10. package/LICENSE +21 -0
  11. package/README.md +112 -0
  12. package/bootstrap/use-cases.md +60 -0
  13. package/docs/README.md +51 -0
  14. package/docs/acceptance.md +16 -0
  15. package/docs/activation.md +89 -0
  16. package/docs/adr/0001-p0-bootstrap-decisions.md +107 -0
  17. package/docs/adr/0002-p1-schema-contracts.md +136 -0
  18. package/docs/adr/0003-p2-use-case-matrix-contracts.md +67 -0
  19. package/docs/adr/0004-p3-evidence-ledger-contracts.md +85 -0
  20. package/docs/adr/0005-p4-cli-contract.md +70 -0
  21. package/docs/adr/0006-trusted-user-approval-path.md +125 -0
  22. package/docs/cli.md +108 -0
  23. package/docs/data-model.md +56 -0
  24. package/docs/getting-started.md +296 -0
  25. package/docs/hosts.md +30 -0
  26. package/docs/markers-adoption.md +100 -0
  27. package/docs/mcp.md +114 -0
  28. package/docs/migration.md +90 -0
  29. package/docs/reference/error-codes.md +123 -0
  30. package/docs/reference/stability.md +123 -0
  31. package/docs/release.md +26 -0
  32. package/docs/security/ci-hardening.md +144 -0
  33. package/docs/security/key-management.md +158 -0
  34. package/docs/security.md +66 -0
  35. package/docs/showcase.md +39 -0
  36. package/docs/tutorials/python-pytest.md +188 -0
  37. package/examples/basic-product/demo-capsules/product-search.yml +23 -0
  38. package/examples/basic-product/evidence/by-id/ev/evidence-basic-search.jsonl +1 -0
  39. package/examples/basic-product/showcase-runs/run.basic.product.search/events.jsonl +4 -0
  40. package/examples/basic-product/use-cases/product.yml +85 -0
  41. package/examples/basic-product/use-cases.yml +9 -0
  42. package/examples/damaged-product/evidence/broken.jsonl +1 -0
  43. package/examples/damaged-product/use-cases/duplicate-a.yml +28 -0
  44. package/examples/damaged-product/use-cases/duplicate-b.yml +28 -0
  45. package/examples/damaged-product/use-cases/malformed.yml +14 -0
  46. package/examples/damaged-product/use-cases/valid-sibling.yml +28 -0
  47. package/examples/damaged-product/use-cases.yml +9 -0
  48. package/examples/host-projections/use-cases.yml +9 -0
  49. package/examples/python-pytest/README.md +39 -0
  50. package/examples/python-pytest/pytest.ini +8 -0
  51. package/examples/python-pytest/src/coupon.py +32 -0
  52. package/examples/python-pytest/tests/use_cases/example.checkout.apply_coupon_test.py +31 -0
  53. package/examples/python-pytest/use-cases/checkout.yml +47 -0
  54. package/examples/python-pytest/use-cases.yml +19 -0
  55. package/hooks/hooks-codex.json +16 -0
  56. package/hooks/hooks.json +16 -0
  57. package/hooks/session-start +42 -0
  58. package/hosts/claude.yml +29 -0
  59. package/hosts/codex.yml +29 -0
  60. package/hosts/copilot.yml +29 -0
  61. package/hosts/opencode.yml +29 -0
  62. package/package.json +81 -0
  63. package/packages/cli/README.md +37 -0
  64. package/packages/cli/dist/args/parse.d.ts +6 -0
  65. package/packages/cli/dist/args/parse.d.ts.map +1 -0
  66. package/packages/cli/dist/args/parse.js +55 -0
  67. package/packages/cli/dist/args/parse.js.map +1 -0
  68. package/packages/cli/dist/args/validate.d.ts +3 -0
  69. package/packages/cli/dist/args/validate.d.ts.map +1 -0
  70. package/packages/cli/dist/args/validate.js +80 -0
  71. package/packages/cli/dist/args/validate.js.map +1 -0
  72. package/packages/cli/dist/builtins.d.ts +2 -0
  73. package/packages/cli/dist/builtins.d.ts.map +1 -0
  74. package/packages/cli/dist/builtins.js +235 -0
  75. package/packages/cli/dist/builtins.js.map +1 -0
  76. package/packages/cli/dist/command/dispatch.d.ts +4 -0
  77. package/packages/cli/dist/command/dispatch.d.ts.map +1 -0
  78. package/packages/cli/dist/command/dispatch.js +45 -0
  79. package/packages/cli/dist/command/dispatch.js.map +1 -0
  80. package/packages/cli/dist/command/help-catalog.d.ts +13 -0
  81. package/packages/cli/dist/command/help-catalog.d.ts.map +1 -0
  82. package/packages/cli/dist/command/help-catalog.js +42 -0
  83. package/packages/cli/dist/command/help-catalog.js.map +1 -0
  84. package/packages/cli/dist/command/registry.d.ts +3 -0
  85. package/packages/cli/dist/command/registry.d.ts.map +1 -0
  86. package/packages/cli/dist/command/registry.js +33 -0
  87. package/packages/cli/dist/command/registry.js.map +1 -0
  88. package/packages/cli/dist/command/types.d.ts +32 -0
  89. package/packages/cli/dist/command/types.d.ts.map +1 -0
  90. package/packages/cli/dist/command/types.js +6 -0
  91. package/packages/cli/dist/command/types.js.map +1 -0
  92. package/packages/cli/dist/commands/capsule.d.ts +7 -0
  93. package/packages/cli/dist/commands/capsule.d.ts.map +1 -0
  94. package/packages/cli/dist/commands/capsule.js +178 -0
  95. package/packages/cli/dist/commands/capsule.js.map +1 -0
  96. package/packages/cli/dist/commands/common.d.ts +7 -0
  97. package/packages/cli/dist/commands/common.d.ts.map +1 -0
  98. package/packages/cli/dist/commands/common.js +32 -0
  99. package/packages/cli/dist/commands/common.js.map +1 -0
  100. package/packages/cli/dist/commands/doctor.d.ts +6 -0
  101. package/packages/cli/dist/commands/doctor.d.ts.map +1 -0
  102. package/packages/cli/dist/commands/doctor.js +133 -0
  103. package/packages/cli/dist/commands/doctor.js.map +1 -0
  104. package/packages/cli/dist/commands/evidence.d.ts +6 -0
  105. package/packages/cli/dist/commands/evidence.d.ts.map +1 -0
  106. package/packages/cli/dist/commands/evidence.js +191 -0
  107. package/packages/cli/dist/commands/evidence.js.map +1 -0
  108. package/packages/cli/dist/commands/host.d.ts +6 -0
  109. package/packages/cli/dist/commands/host.d.ts.map +1 -0
  110. package/packages/cli/dist/commands/host.js +180 -0
  111. package/packages/cli/dist/commands/host.js.map +1 -0
  112. package/packages/cli/dist/commands/keygen.d.ts +4 -0
  113. package/packages/cli/dist/commands/keygen.d.ts.map +1 -0
  114. package/packages/cli/dist/commands/keygen.js +132 -0
  115. package/packages/cli/dist/commands/keygen.js.map +1 -0
  116. package/packages/cli/dist/commands/markers.d.ts +8 -0
  117. package/packages/cli/dist/commands/markers.d.ts.map +1 -0
  118. package/packages/cli/dist/commands/markers.js +455 -0
  119. package/packages/cli/dist/commands/markers.js.map +1 -0
  120. package/packages/cli/dist/commands/matrix.d.ts +8 -0
  121. package/packages/cli/dist/commands/matrix.d.ts.map +1 -0
  122. package/packages/cli/dist/commands/matrix.js +237 -0
  123. package/packages/cli/dist/commands/matrix.js.map +1 -0
  124. package/packages/cli/dist/commands/migrate.d.ts +4 -0
  125. package/packages/cli/dist/commands/migrate.d.ts.map +1 -0
  126. package/packages/cli/dist/commands/migrate.js +82 -0
  127. package/packages/cli/dist/commands/migrate.js.map +1 -0
  128. package/packages/cli/dist/commands/plan.d.ts +6 -0
  129. package/packages/cli/dist/commands/plan.d.ts.map +1 -0
  130. package/packages/cli/dist/commands/plan.js +129 -0
  131. package/packages/cli/dist/commands/plan.js.map +1 -0
  132. package/packages/cli/dist/commands/recover.d.ts +4 -0
  133. package/packages/cli/dist/commands/recover.d.ts.map +1 -0
  134. package/packages/cli/dist/commands/recover.js +352 -0
  135. package/packages/cli/dist/commands/recover.js.map +1 -0
  136. package/packages/cli/dist/commands/schema.d.ts +5 -0
  137. package/packages/cli/dist/commands/schema.d.ts.map +1 -0
  138. package/packages/cli/dist/commands/schema.js +51 -0
  139. package/packages/cli/dist/commands/schema.js.map +1 -0
  140. package/packages/cli/dist/commands/showcase.d.ts +14 -0
  141. package/packages/cli/dist/commands/showcase.d.ts.map +1 -0
  142. package/packages/cli/dist/commands/showcase.js +638 -0
  143. package/packages/cli/dist/commands/showcase.js.map +1 -0
  144. package/packages/cli/dist/commands/workflow.d.ts +5 -0
  145. package/packages/cli/dist/commands/workflow.d.ts.map +1 -0
  146. package/packages/cli/dist/commands/workflow.js +107 -0
  147. package/packages/cli/dist/commands/workflow.js.map +1 -0
  148. package/packages/cli/dist/coreLoader.d.ts +6 -0
  149. package/packages/cli/dist/coreLoader.d.ts.map +1 -0
  150. package/packages/cli/dist/coreLoader.js +34 -0
  151. package/packages/cli/dist/coreLoader.js.map +1 -0
  152. package/packages/cli/dist/index.d.ts +5 -0
  153. package/packages/cli/dist/index.d.ts.map +1 -0
  154. package/packages/cli/dist/index.js +83 -0
  155. package/packages/cli/dist/index.js.map +1 -0
  156. package/packages/cli/dist/render.d.ts +2 -0
  157. package/packages/cli/dist/render.d.ts.map +1 -0
  158. package/packages/cli/dist/render.js +88 -0
  159. package/packages/cli/dist/render.js.map +1 -0
  160. package/packages/cli/dist/runtime.d.ts +25 -0
  161. package/packages/cli/dist/runtime.d.ts.map +1 -0
  162. package/packages/cli/dist/runtime.js +89 -0
  163. package/packages/cli/dist/runtime.js.map +1 -0
  164. package/packages/cli/package.json +38 -0
  165. package/packages/core/README.md +37 -0
  166. package/packages/core/dist/capsules/index.d.ts +4 -0
  167. package/packages/core/dist/capsules/index.d.ts.map +1 -0
  168. package/packages/core/dist/capsules/index.js +4 -0
  169. package/packages/core/dist/capsules/index.js.map +1 -0
  170. package/packages/core/dist/capsules/loadCapsule.d.ts +11 -0
  171. package/packages/core/dist/capsules/loadCapsule.d.ts.map +1 -0
  172. package/packages/core/dist/capsules/loadCapsule.js +167 -0
  173. package/packages/core/dist/capsules/loadCapsule.js.map +1 -0
  174. package/packages/core/dist/capsules/runCapsule.d.ts +3 -0
  175. package/packages/core/dist/capsules/runCapsule.d.ts.map +1 -0
  176. package/packages/core/dist/capsules/runCapsule.js +333 -0
  177. package/packages/core/dist/capsules/runCapsule.js.map +1 -0
  178. package/packages/core/dist/capsules/types.d.ts +106 -0
  179. package/packages/core/dist/capsules/types.d.ts.map +1 -0
  180. package/packages/core/dist/capsules/types.js +2 -0
  181. package/packages/core/dist/capsules/types.js.map +1 -0
  182. package/packages/core/dist/durableWrite.d.ts +2 -0
  183. package/packages/core/dist/durableWrite.d.ts.map +1 -0
  184. package/packages/core/dist/durableWrite.js +34 -0
  185. package/packages/core/dist/durableWrite.js.map +1 -0
  186. package/packages/core/dist/errors/registry.d.ts +122 -0
  187. package/packages/core/dist/errors/registry.d.ts.map +1 -0
  188. package/packages/core/dist/errors/registry.js +206 -0
  189. package/packages/core/dist/errors/registry.js.map +1 -0
  190. package/packages/core/dist/errors/render.d.ts +3 -0
  191. package/packages/core/dist/errors/render.d.ts.map +1 -0
  192. package/packages/core/dist/errors/render.js +64 -0
  193. package/packages/core/dist/errors/render.js.map +1 -0
  194. package/packages/core/dist/errors.d.ts +5 -0
  195. package/packages/core/dist/errors.d.ts.map +1 -0
  196. package/packages/core/dist/errors.js +9 -0
  197. package/packages/core/dist/errors.js.map +1 -0
  198. package/packages/core/dist/evidence/appendEvidenceEvent.d.ts +27 -0
  199. package/packages/core/dist/evidence/appendEvidenceEvent.d.ts.map +1 -0
  200. package/packages/core/dist/evidence/appendEvidenceEvent.js +218 -0
  201. package/packages/core/dist/evidence/appendEvidenceEvent.js.map +1 -0
  202. package/packages/core/dist/evidence/assurance.d.ts +18 -0
  203. package/packages/core/dist/evidence/assurance.d.ts.map +1 -0
  204. package/packages/core/dist/evidence/assurance.js +38 -0
  205. package/packages/core/dist/evidence/assurance.js.map +1 -0
  206. package/packages/core/dist/evidence/index.d.ts +8 -0
  207. package/packages/core/dist/evidence/index.d.ts.map +1 -0
  208. package/packages/core/dist/evidence/index.js +8 -0
  209. package/packages/core/dist/evidence/index.js.map +1 -0
  210. package/packages/core/dist/evidence/jsonlLedger.d.ts +13 -0
  211. package/packages/core/dist/evidence/jsonlLedger.d.ts.map +1 -0
  212. package/packages/core/dist/evidence/jsonlLedger.js +171 -0
  213. package/packages/core/dist/evidence/jsonlLedger.js.map +1 -0
  214. package/packages/core/dist/evidence/linkEvidence.d.ts +4 -0
  215. package/packages/core/dist/evidence/linkEvidence.d.ts.map +1 -0
  216. package/packages/core/dist/evidence/linkEvidence.js +53 -0
  217. package/packages/core/dist/evidence/linkEvidence.js.map +1 -0
  218. package/packages/core/dist/evidence/replayEvidence.d.ts +6 -0
  219. package/packages/core/dist/evidence/replayEvidence.d.ts.map +1 -0
  220. package/packages/core/dist/evidence/replayEvidence.js +216 -0
  221. package/packages/core/dist/evidence/replayEvidence.js.map +1 -0
  222. package/packages/core/dist/evidence/results.d.ts +4 -0
  223. package/packages/core/dist/evidence/results.d.ts.map +1 -0
  224. package/packages/core/dist/evidence/results.js +32 -0
  225. package/packages/core/dist/evidence/results.js.map +1 -0
  226. package/packages/core/dist/evidence/types.d.ts +149 -0
  227. package/packages/core/dist/evidence/types.d.ts.map +1 -0
  228. package/packages/core/dist/evidence/types.js +2 -0
  229. package/packages/core/dist/evidence/types.js.map +1 -0
  230. package/packages/core/dist/host-profiles/claude.yml +29 -0
  231. package/packages/core/dist/host-profiles/codex.yml +29 -0
  232. package/packages/core/dist/host-profiles/copilot.yml +29 -0
  233. package/packages/core/dist/host-profiles/opencode.yml +29 -0
  234. package/packages/core/dist/hosts/conformanceStatus.d.ts +16 -0
  235. package/packages/core/dist/hosts/conformanceStatus.d.ts.map +1 -0
  236. package/packages/core/dist/hosts/conformanceStatus.js +160 -0
  237. package/packages/core/dist/hosts/conformanceStatus.js.map +1 -0
  238. package/packages/core/dist/hosts/index.d.ts +5 -0
  239. package/packages/core/dist/hosts/index.d.ts.map +1 -0
  240. package/packages/core/dist/hosts/index.js +5 -0
  241. package/packages/core/dist/hosts/index.js.map +1 -0
  242. package/packages/core/dist/hosts/loadHostProfile.d.ts +6 -0
  243. package/packages/core/dist/hosts/loadHostProfile.d.ts.map +1 -0
  244. package/packages/core/dist/hosts/loadHostProfile.js +41 -0
  245. package/packages/core/dist/hosts/loadHostProfile.js.map +1 -0
  246. package/packages/core/dist/hosts/projectHostFiles.d.ts +16 -0
  247. package/packages/core/dist/hosts/projectHostFiles.d.ts.map +1 -0
  248. package/packages/core/dist/hosts/projectHostFiles.js +272 -0
  249. package/packages/core/dist/hosts/projectHostFiles.js.map +1 -0
  250. package/packages/core/dist/hosts/types.d.ts +122 -0
  251. package/packages/core/dist/hosts/types.d.ts.map +1 -0
  252. package/packages/core/dist/hosts/types.js +2 -0
  253. package/packages/core/dist/hosts/types.js.map +1 -0
  254. package/packages/core/dist/index.d.ts +26 -0
  255. package/packages/core/dist/index.d.ts.map +1 -0
  256. package/packages/core/dist/index.js +31 -0
  257. package/packages/core/dist/index.js.map +1 -0
  258. package/packages/core/dist/init/index.d.ts +2 -0
  259. package/packages/core/dist/init/index.d.ts.map +1 -0
  260. package/packages/core/dist/init/index.js +3 -0
  261. package/packages/core/dist/init/index.js.map +1 -0
  262. package/packages/core/dist/init/scaffold.d.ts +28 -0
  263. package/packages/core/dist/init/scaffold.d.ts.map +1 -0
  264. package/packages/core/dist/init/scaffold.js +293 -0
  265. package/packages/core/dist/init/scaffold.js.map +1 -0
  266. package/packages/core/dist/markers/appendOnly.d.ts +23 -0
  267. package/packages/core/dist/markers/appendOnly.d.ts.map +1 -0
  268. package/packages/core/dist/markers/appendOnly.js +75 -0
  269. package/packages/core/dist/markers/appendOnly.js.map +1 -0
  270. package/packages/core/dist/markers/bindingSetHash.d.ts +28 -0
  271. package/packages/core/dist/markers/bindingSetHash.d.ts.map +1 -0
  272. package/packages/core/dist/markers/bindingSetHash.js +33 -0
  273. package/packages/core/dist/markers/bindingSetHash.js.map +1 -0
  274. package/packages/core/dist/markers/canonicalJson.d.ts +4 -0
  275. package/packages/core/dist/markers/canonicalJson.d.ts.map +1 -0
  276. package/packages/core/dist/markers/canonicalJson.js +51 -0
  277. package/packages/core/dist/markers/canonicalJson.js.map +1 -0
  278. package/packages/core/dist/markers/ciAuthority.d.ts +17 -0
  279. package/packages/core/dist/markers/ciAuthority.d.ts.map +1 -0
  280. package/packages/core/dist/markers/ciAuthority.js +131 -0
  281. package/packages/core/dist/markers/ciAuthority.js.map +1 -0
  282. package/packages/core/dist/markers/cli/bind.d.ts +48 -0
  283. package/packages/core/dist/markers/cli/bind.d.ts.map +1 -0
  284. package/packages/core/dist/markers/cli/bind.js +198 -0
  285. package/packages/core/dist/markers/cli/bind.js.map +1 -0
  286. package/packages/core/dist/markers/cli/index.d.ts +9 -0
  287. package/packages/core/dist/markers/cli/index.d.ts.map +1 -0
  288. package/packages/core/dist/markers/cli/index.js +15 -0
  289. package/packages/core/dist/markers/cli/index.js.map +1 -0
  290. package/packages/core/dist/markers/cli/io.d.ts +18 -0
  291. package/packages/core/dist/markers/cli/io.d.ts.map +1 -0
  292. package/packages/core/dist/markers/cli/io.js +62 -0
  293. package/packages/core/dist/markers/cli/io.js.map +1 -0
  294. package/packages/core/dist/markers/cli/precommit.d.ts +32 -0
  295. package/packages/core/dist/markers/cli/precommit.d.ts.map +1 -0
  296. package/packages/core/dist/markers/cli/precommit.js +174 -0
  297. package/packages/core/dist/markers/cli/precommit.js.map +1 -0
  298. package/packages/core/dist/markers/cli/prove.d.ts +69 -0
  299. package/packages/core/dist/markers/cli/prove.d.ts.map +1 -0
  300. package/packages/core/dist/markers/cli/prove.js +381 -0
  301. package/packages/core/dist/markers/cli/prove.js.map +1 -0
  302. package/packages/core/dist/markers/cli/scan.d.ts +63 -0
  303. package/packages/core/dist/markers/cli/scan.d.ts.map +1 -0
  304. package/packages/core/dist/markers/cli/scan.js +233 -0
  305. package/packages/core/dist/markers/cli/scan.js.map +1 -0
  306. package/packages/core/dist/markers/cli/shared.d.ts +25 -0
  307. package/packages/core/dist/markers/cli/shared.d.ts.map +1 -0
  308. package/packages/core/dist/markers/cli/shared.js +123 -0
  309. package/packages/core/dist/markers/cli/shared.js.map +1 -0
  310. package/packages/core/dist/markers/cli/validateLedger.d.ts +38 -0
  311. package/packages/core/dist/markers/cli/validateLedger.d.ts.map +1 -0
  312. package/packages/core/dist/markers/cli/validateLedger.js +81 -0
  313. package/packages/core/dist/markers/cli/validateLedger.js.map +1 -0
  314. package/packages/core/dist/markers/cli/verify.d.ts +65 -0
  315. package/packages/core/dist/markers/cli/verify.d.ts.map +1 -0
  316. package/packages/core/dist/markers/cli/verify.js +245 -0
  317. package/packages/core/dist/markers/cli/verify.js.map +1 -0
  318. package/packages/core/dist/markers/commentPrefix.d.ts +7 -0
  319. package/packages/core/dist/markers/commentPrefix.d.ts.map +1 -0
  320. package/packages/core/dist/markers/commentPrefix.js +79 -0
  321. package/packages/core/dist/markers/commentPrefix.js.map +1 -0
  322. package/packages/core/dist/markers/constants.d.ts +10 -0
  323. package/packages/core/dist/markers/constants.d.ts.map +1 -0
  324. package/packages/core/dist/markers/constants.js +13 -0
  325. package/packages/core/dist/markers/constants.js.map +1 -0
  326. package/packages/core/dist/markers/evidenceLedger.d.ts +150 -0
  327. package/packages/core/dist/markers/evidenceLedger.d.ts.map +1 -0
  328. package/packages/core/dist/markers/evidenceLedger.js +391 -0
  329. package/packages/core/dist/markers/evidenceLedger.js.map +1 -0
  330. package/packages/core/dist/markers/freshness.d.ts +125 -0
  331. package/packages/core/dist/markers/freshness.d.ts.map +1 -0
  332. package/packages/core/dist/markers/freshness.js +605 -0
  333. package/packages/core/dist/markers/freshness.js.map +1 -0
  334. package/packages/core/dist/markers/index.d.ts +26 -0
  335. package/packages/core/dist/markers/index.d.ts.map +1 -0
  336. package/packages/core/dist/markers/index.js +38 -0
  337. package/packages/core/dist/markers/index.js.map +1 -0
  338. package/packages/core/dist/markers/keygen.d.ts +6 -0
  339. package/packages/core/dist/markers/keygen.d.ts.map +1 -0
  340. package/packages/core/dist/markers/keygen.js +18 -0
  341. package/packages/core/dist/markers/keygen.js.map +1 -0
  342. package/packages/core/dist/markers/keyring.d.ts +23 -0
  343. package/packages/core/dist/markers/keyring.d.ts.map +1 -0
  344. package/packages/core/dist/markers/keyring.js +93 -0
  345. package/packages/core/dist/markers/keyring.js.map +1 -0
  346. package/packages/core/dist/markers/markerLine.d.ts +35 -0
  347. package/packages/core/dist/markers/markerLine.d.ts.map +1 -0
  348. package/packages/core/dist/markers/markerLine.js +125 -0
  349. package/packages/core/dist/markers/markerLine.js.map +1 -0
  350. package/packages/core/dist/markers/physicalLines.d.ts +10 -0
  351. package/packages/core/dist/markers/physicalLines.d.ts.map +1 -0
  352. package/packages/core/dist/markers/physicalLines.js +48 -0
  353. package/packages/core/dist/markers/physicalLines.js.map +1 -0
  354. package/packages/core/dist/markers/policyHash.d.ts +4 -0
  355. package/packages/core/dist/markers/policyHash.d.ts.map +1 -0
  356. package/packages/core/dist/markers/policyHash.js +14 -0
  357. package/packages/core/dist/markers/policyHash.js.map +1 -0
  358. package/packages/core/dist/markers/proofSignature.d.ts +29 -0
  359. package/packages/core/dist/markers/proofSignature.d.ts.map +1 -0
  360. package/packages/core/dist/markers/proofSignature.js +106 -0
  361. package/packages/core/dist/markers/proofSignature.js.map +1 -0
  362. package/packages/core/dist/markers/reconcile.d.ts +26 -0
  363. package/packages/core/dist/markers/reconcile.d.ts.map +1 -0
  364. package/packages/core/dist/markers/reconcile.js +52 -0
  365. package/packages/core/dist/markers/reconcile.js.map +1 -0
  366. package/packages/core/dist/markers/registry.d.ts +53 -0
  367. package/packages/core/dist/markers/registry.d.ts.map +1 -0
  368. package/packages/core/dist/markers/registry.js +161 -0
  369. package/packages/core/dist/markers/registry.js.map +1 -0
  370. package/packages/core/dist/markers/rowHash.d.ts +2 -0
  371. package/packages/core/dist/markers/rowHash.d.ts.map +1 -0
  372. package/packages/core/dist/markers/rowHash.js +10 -0
  373. package/packages/core/dist/markers/rowHash.js.map +1 -0
  374. package/packages/core/dist/markers/scanner.d.ts +67 -0
  375. package/packages/core/dist/markers/scanner.d.ts.map +1 -0
  376. package/packages/core/dist/markers/scanner.js +292 -0
  377. package/packages/core/dist/markers/scanner.js.map +1 -0
  378. package/packages/core/dist/markers/schemas/binding-registry-event.schema.json +41 -0
  379. package/packages/core/dist/markers/schemas/freshness-status.schema.json +134 -0
  380. package/packages/core/dist/markers/schemas/proof-event.schema.json +170 -0
  381. package/packages/core/dist/markers/spanCanon.d.ts +4 -0
  382. package/packages/core/dist/markers/spanCanon.d.ts.map +1 -0
  383. package/packages/core/dist/markers/spanCanon.js +42 -0
  384. package/packages/core/dist/markers/spanCanon.js.map +1 -0
  385. package/packages/core/dist/markers/swiftFuncRecognizer.d.ts +36 -0
  386. package/packages/core/dist/markers/swiftFuncRecognizer.d.ts.map +1 -0
  387. package/packages/core/dist/markers/swiftFuncRecognizer.js +638 -0
  388. package/packages/core/dist/markers/swiftFuncRecognizer.js.map +1 -0
  389. package/packages/core/dist/markers/validators.d.ts +13 -0
  390. package/packages/core/dist/markers/validators.d.ts.map +1 -0
  391. package/packages/core/dist/markers/validators.js +64 -0
  392. package/packages/core/dist/markers/validators.js.map +1 -0
  393. package/packages/core/dist/markers/verificationContextHash.d.ts +23 -0
  394. package/packages/core/dist/markers/verificationContextHash.d.ts.map +1 -0
  395. package/packages/core/dist/markers/verificationContextHash.js +96 -0
  396. package/packages/core/dist/markers/verificationContextHash.js.map +1 -0
  397. package/packages/core/dist/markers/verifierPresets.d.ts +18 -0
  398. package/packages/core/dist/markers/verifierPresets.d.ts.map +1 -0
  399. package/packages/core/dist/markers/verifierPresets.js +71 -0
  400. package/packages/core/dist/markers/verifierPresets.js.map +1 -0
  401. package/packages/core/dist/markers/verifierResolver.d.ts +27 -0
  402. package/packages/core/dist/markers/verifierResolver.d.ts.map +1 -0
  403. package/packages/core/dist/markers/verifierResolver.js +151 -0
  404. package/packages/core/dist/markers/verifierResolver.js.map +1 -0
  405. package/packages/core/dist/migration/index.d.ts +2 -0
  406. package/packages/core/dist/migration/index.d.ts.map +1 -0
  407. package/packages/core/dist/migration/index.js +2 -0
  408. package/packages/core/dist/migration/index.js.map +1 -0
  409. package/packages/core/dist/migration/testMatrix.d.ts +42 -0
  410. package/packages/core/dist/migration/testMatrix.d.ts.map +1 -0
  411. package/packages/core/dist/migration/testMatrix.js +351 -0
  412. package/packages/core/dist/migration/testMatrix.js.map +1 -0
  413. package/packages/core/dist/package/index.d.ts +2 -0
  414. package/packages/core/dist/package/index.d.ts.map +1 -0
  415. package/packages/core/dist/package/index.js +2 -0
  416. package/packages/core/dist/package/index.js.map +1 -0
  417. package/packages/core/dist/package/inspectPackage.d.ts +67 -0
  418. package/packages/core/dist/package/inspectPackage.d.ts.map +1 -0
  419. package/packages/core/dist/package/inspectPackage.js +371 -0
  420. package/packages/core/dist/package/inspectPackage.js.map +1 -0
  421. package/packages/core/dist/presentation/candidates.d.ts +13 -0
  422. package/packages/core/dist/presentation/candidates.d.ts.map +1 -0
  423. package/packages/core/dist/presentation/candidates.js +86 -0
  424. package/packages/core/dist/presentation/candidates.js.map +1 -0
  425. package/packages/core/dist/presentation/index.d.ts +8 -0
  426. package/packages/core/dist/presentation/index.d.ts.map +1 -0
  427. package/packages/core/dist/presentation/index.js +8 -0
  428. package/packages/core/dist/presentation/index.js.map +1 -0
  429. package/packages/core/dist/presentation/items.d.ts +18 -0
  430. package/packages/core/dist/presentation/items.d.ts.map +1 -0
  431. package/packages/core/dist/presentation/items.js +228 -0
  432. package/packages/core/dist/presentation/items.js.map +1 -0
  433. package/packages/core/dist/presentation/ordering.d.ts +8 -0
  434. package/packages/core/dist/presentation/ordering.d.ts.map +1 -0
  435. package/packages/core/dist/presentation/ordering.js +31 -0
  436. package/packages/core/dist/presentation/ordering.js.map +1 -0
  437. package/packages/core/dist/presentation/planHelpers.d.ts +26 -0
  438. package/packages/core/dist/presentation/planHelpers.d.ts.map +1 -0
  439. package/packages/core/dist/presentation/planHelpers.js +62 -0
  440. package/packages/core/dist/presentation/planHelpers.js.map +1 -0
  441. package/packages/core/dist/presentation/presentationFormat.d.ts +39 -0
  442. package/packages/core/dist/presentation/presentationFormat.d.ts.map +1 -0
  443. package/packages/core/dist/presentation/presentationFormat.js +58 -0
  444. package/packages/core/dist/presentation/presentationFormat.js.map +1 -0
  445. package/packages/core/dist/presentation/renderCard.d.ts +37 -0
  446. package/packages/core/dist/presentation/renderCard.d.ts.map +1 -0
  447. package/packages/core/dist/presentation/renderCard.js +129 -0
  448. package/packages/core/dist/presentation/renderCard.js.map +1 -0
  449. package/packages/core/dist/presentation/scoring.d.ts +10 -0
  450. package/packages/core/dist/presentation/scoring.d.ts.map +1 -0
  451. package/packages/core/dist/presentation/scoring.js +82 -0
  452. package/packages/core/dist/presentation/scoring.js.map +1 -0
  453. package/packages/core/dist/presentation/selectPlan.d.ts +4 -0
  454. package/packages/core/dist/presentation/selectPlan.d.ts.map +1 -0
  455. package/packages/core/dist/presentation/selectPlan.js +122 -0
  456. package/packages/core/dist/presentation/selectPlan.js.map +1 -0
  457. package/packages/core/dist/presentation/selectShowcasePlan.d.ts +3 -0
  458. package/packages/core/dist/presentation/selectShowcasePlan.d.ts.map +1 -0
  459. package/packages/core/dist/presentation/selectShowcasePlan.js +6 -0
  460. package/packages/core/dist/presentation/selectShowcasePlan.js.map +1 -0
  461. package/packages/core/dist/presentation/selectWalkthroughPlan.d.ts +3 -0
  462. package/packages/core/dist/presentation/selectWalkthroughPlan.d.ts.map +1 -0
  463. package/packages/core/dist/presentation/selectWalkthroughPlan.js +6 -0
  464. package/packages/core/dist/presentation/selectWalkthroughPlan.js.map +1 -0
  465. package/packages/core/dist/presentation/selection.d.ts +7 -0
  466. package/packages/core/dist/presentation/selection.d.ts.map +1 -0
  467. package/packages/core/dist/presentation/selection.js +20 -0
  468. package/packages/core/dist/presentation/selection.js.map +1 -0
  469. package/packages/core/dist/presentation/snapshot.d.ts +12 -0
  470. package/packages/core/dist/presentation/snapshot.d.ts.map +1 -0
  471. package/packages/core/dist/presentation/snapshot.js +53 -0
  472. package/packages/core/dist/presentation/snapshot.js.map +1 -0
  473. package/packages/core/dist/presentation/types.d.ts +172 -0
  474. package/packages/core/dist/presentation/types.d.ts.map +1 -0
  475. package/packages/core/dist/presentation/types.js +2 -0
  476. package/packages/core/dist/presentation/types.js.map +1 -0
  477. package/packages/core/dist/redact.d.ts +11 -0
  478. package/packages/core/dist/redact.d.ts.map +1 -0
  479. package/packages/core/dist/redact.js +17 -0
  480. package/packages/core/dist/redact.js.map +1 -0
  481. package/packages/core/dist/roots.d.ts +81 -0
  482. package/packages/core/dist/roots.d.ts.map +1 -0
  483. package/packages/core/dist/roots.js +220 -0
  484. package/packages/core/dist/roots.js.map +1 -0
  485. package/packages/core/dist/schema/cliResult.d.ts +34 -0
  486. package/packages/core/dist/schema/cliResult.d.ts.map +1 -0
  487. package/packages/core/dist/schema/cliResult.js +35 -0
  488. package/packages/core/dist/schema/cliResult.js.map +1 -0
  489. package/packages/core/dist/schema/diagnostic.d.ts +26 -0
  490. package/packages/core/dist/schema/diagnostic.d.ts.map +1 -0
  491. package/packages/core/dist/schema/diagnostic.js +28 -0
  492. package/packages/core/dist/schema/diagnostic.js.map +1 -0
  493. package/packages/core/dist/schema/index.d.ts +8 -0
  494. package/packages/core/dist/schema/index.d.ts.map +1 -0
  495. package/packages/core/dist/schema/index.js +9 -0
  496. package/packages/core/dist/schema/index.js.map +1 -0
  497. package/packages/core/dist/schema/registry.d.ts +15 -0
  498. package/packages/core/dist/schema/registry.d.ts.map +1 -0
  499. package/packages/core/dist/schema/registry.js +206 -0
  500. package/packages/core/dist/schema/registry.js.map +1 -0
  501. package/packages/core/dist/schema/syntheticContracts.d.ts +3 -0
  502. package/packages/core/dist/schema/syntheticContracts.d.ts.map +1 -0
  503. package/packages/core/dist/schema/syntheticContracts.js +342 -0
  504. package/packages/core/dist/schema/syntheticContracts.js.map +1 -0
  505. package/packages/core/dist/schema/validate.d.ts +21 -0
  506. package/packages/core/dist/schema/validate.d.ts.map +1 -0
  507. package/packages/core/dist/schema/validate.js +210 -0
  508. package/packages/core/dist/schema/validate.js.map +1 -0
  509. package/packages/core/dist/schemas/v1/authority.schema.json +70 -0
  510. package/packages/core/dist/schemas/v1/cli-result.schema.json +30 -0
  511. package/packages/core/dist/schemas/v1/common.schema.json +274 -0
  512. package/packages/core/dist/schemas/v1/demo-capsule.schema.json +78 -0
  513. package/packages/core/dist/schemas/v1/evidence-append-result.schema.json +14 -0
  514. package/packages/core/dist/schemas/v1/evidence-event.schema.json +181 -0
  515. package/packages/core/dist/schemas/v1/evidence-status-result.schema.json +68 -0
  516. package/packages/core/dist/schemas/v1/host-profile.schema.json +94 -0
  517. package/packages/core/dist/schemas/v1/host-status-result.schema.json +49 -0
  518. package/packages/core/dist/schemas/v1/keyring.schema.json +77 -0
  519. package/packages/core/dist/schemas/v1/ledger.schema.json +99 -0
  520. package/packages/core/dist/schemas/v1/marker.schema.json +84 -0
  521. package/packages/core/dist/schemas/v1/matrix-list-result.schema.json +67 -0
  522. package/packages/core/dist/schemas/v1/matrix-mutation-result.schema.json +49 -0
  523. package/packages/core/dist/schemas/v1/matrix-validation-result.schema.json +77 -0
  524. package/packages/core/dist/schemas/v1/mcp-tool-results.schema.json +34 -0
  525. package/packages/core/dist/schemas/v1/migration-test-matrix-result.schema.json +76 -0
  526. package/packages/core/dist/schemas/v1/presentation-plan-result.schema.json +62 -0
  527. package/packages/core/dist/schemas/v1/presentation-plan.schema.json +259 -0
  528. package/packages/core/dist/schemas/v1/release-gate-result.schema.json +136 -0
  529. package/packages/core/dist/schemas/v1/showcase-approval-result.schema.json +5 -0
  530. package/packages/core/dist/schemas/v1/showcase-event-append-result.schema.json +17 -0
  531. package/packages/core/dist/schemas/v1/showcase-event.schema.json +235 -0
  532. package/packages/core/dist/schemas/v1/showcase-finish-result.schema.json +5 -0
  533. package/packages/core/dist/schemas/v1/showcase-run-status-result.schema.json +70 -0
  534. package/packages/core/dist/schemas/v1/showcase-start-result.schema.json +5 -0
  535. package/packages/core/dist/schemas/v1/use-case-file.schema.json +178 -0
  536. package/packages/core/dist/schemas/v1/workflow-mode.schema.json +16 -0
  537. package/packages/core/dist/schemas/v1/workspace-config.schema.json +58 -0
  538. package/packages/core/dist/showcase/appendShowcaseEvent.d.ts +116 -0
  539. package/packages/core/dist/showcase/appendShowcaseEvent.d.ts.map +1 -0
  540. package/packages/core/dist/showcase/appendShowcaseEvent.js +353 -0
  541. package/packages/core/dist/showcase/appendShowcaseEvent.js.map +1 -0
  542. package/packages/core/dist/showcase/approval.d.ts +2 -0
  543. package/packages/core/dist/showcase/approval.d.ts.map +1 -0
  544. package/packages/core/dist/showcase/approval.js +2 -0
  545. package/packages/core/dist/showcase/approval.js.map +1 -0
  546. package/packages/core/dist/showcase/approvalAuthority.d.ts +19 -0
  547. package/packages/core/dist/showcase/approvalAuthority.d.ts.map +1 -0
  548. package/packages/core/dist/showcase/approvalAuthority.js +46 -0
  549. package/packages/core/dist/showcase/approvalAuthority.js.map +1 -0
  550. package/packages/core/dist/showcase/index.d.ts +11 -0
  551. package/packages/core/dist/showcase/index.d.ts.map +1 -0
  552. package/packages/core/dist/showcase/index.js +11 -0
  553. package/packages/core/dist/showcase/index.js.map +1 -0
  554. package/packages/core/dist/showcase/jsonlLedger.d.ts +11 -0
  555. package/packages/core/dist/showcase/jsonlLedger.d.ts.map +1 -0
  556. package/packages/core/dist/showcase/jsonlLedger.js +50 -0
  557. package/packages/core/dist/showcase/jsonlLedger.js.map +1 -0
  558. package/packages/core/dist/showcase/planBinding.d.ts +5 -0
  559. package/packages/core/dist/showcase/planBinding.d.ts.map +1 -0
  560. package/packages/core/dist/showcase/planBinding.js +33 -0
  561. package/packages/core/dist/showcase/planBinding.js.map +1 -0
  562. package/packages/core/dist/showcase/replayRun.d.ts +5 -0
  563. package/packages/core/dist/showcase/replayRun.d.ts.map +1 -0
  564. package/packages/core/dist/showcase/replayRun.js +199 -0
  565. package/packages/core/dist/showcase/replayRun.js.map +1 -0
  566. package/packages/core/dist/showcase/results.d.ts +3 -0
  567. package/packages/core/dist/showcase/results.d.ts.map +1 -0
  568. package/packages/core/dist/showcase/results.js +4 -0
  569. package/packages/core/dist/showcase/results.js.map +1 -0
  570. package/packages/core/dist/showcase/revisionEpochs.d.ts +2 -0
  571. package/packages/core/dist/showcase/revisionEpochs.d.ts.map +1 -0
  572. package/packages/core/dist/showcase/revisionEpochs.js +2 -0
  573. package/packages/core/dist/showcase/revisionEpochs.js.map +1 -0
  574. package/packages/core/dist/showcase/startRun.d.ts +2 -0
  575. package/packages/core/dist/showcase/startRun.d.ts.map +1 -0
  576. package/packages/core/dist/showcase/startRun.js +2 -0
  577. package/packages/core/dist/showcase/startRun.js.map +1 -0
  578. package/packages/core/dist/showcase/types.d.ts +66 -0
  579. package/packages/core/dist/showcase/types.d.ts.map +1 -0
  580. package/packages/core/dist/showcase/types.js +2 -0
  581. package/packages/core/dist/showcase/types.js.map +1 -0
  582. package/packages/core/dist/skills/canonicalSkills.d.ts +3 -0
  583. package/packages/core/dist/skills/canonicalSkills.d.ts.map +1 -0
  584. package/packages/core/dist/skills/canonicalSkills.js +7 -0
  585. package/packages/core/dist/skills/canonicalSkills.js.map +1 -0
  586. package/packages/core/dist/skills/index.d.ts +4 -0
  587. package/packages/core/dist/skills/index.d.ts.map +1 -0
  588. package/packages/core/dist/skills/index.js +4 -0
  589. package/packages/core/dist/skills/index.js.map +1 -0
  590. package/packages/core/dist/skills/types.d.ts +26 -0
  591. package/packages/core/dist/skills/types.d.ts.map +1 -0
  592. package/packages/core/dist/skills/types.js +2 -0
  593. package/packages/core/dist/skills/types.js.map +1 -0
  594. package/packages/core/dist/skills/validateSkillAssets.d.ts +6 -0
  595. package/packages/core/dist/skills/validateSkillAssets.d.ts.map +1 -0
  596. package/packages/core/dist/skills/validateSkillAssets.js +218 -0
  597. package/packages/core/dist/skills/validateSkillAssets.js.map +1 -0
  598. package/packages/core/dist/useCases/integrity.d.ts +11 -0
  599. package/packages/core/dist/useCases/integrity.d.ts.map +1 -0
  600. package/packages/core/dist/useCases/integrity.js +178 -0
  601. package/packages/core/dist/useCases/integrity.js.map +1 -0
  602. package/packages/core/dist/useCases/loadUseCaseMatrix.d.ts +7 -0
  603. package/packages/core/dist/useCases/loadUseCaseMatrix.d.ts.map +1 -0
  604. package/packages/core/dist/useCases/loadUseCaseMatrix.js +74 -0
  605. package/packages/core/dist/useCases/loadUseCaseMatrix.js.map +1 -0
  606. package/packages/core/dist/useCases/mutateUseCaseMatrix.d.ts +25 -0
  607. package/packages/core/dist/useCases/mutateUseCaseMatrix.d.ts.map +1 -0
  608. package/packages/core/dist/useCases/mutateUseCaseMatrix.js +198 -0
  609. package/packages/core/dist/useCases/mutateUseCaseMatrix.js.map +1 -0
  610. package/packages/core/dist/useCases/query.d.ts +12 -0
  611. package/packages/core/dist/useCases/query.d.ts.map +1 -0
  612. package/packages/core/dist/useCases/query.js +47 -0
  613. package/packages/core/dist/useCases/query.js.map +1 -0
  614. package/packages/core/dist/useCases/types.d.ts +149 -0
  615. package/packages/core/dist/useCases/types.d.ts.map +1 -0
  616. package/packages/core/dist/useCases/types.js +2 -0
  617. package/packages/core/dist/useCases/types.js.map +1 -0
  618. package/packages/core/dist/useCases/validateUseCaseFile.d.ts +9 -0
  619. package/packages/core/dist/useCases/validateUseCaseFile.d.ts.map +1 -0
  620. package/packages/core/dist/useCases/validateUseCaseFile.js +107 -0
  621. package/packages/core/dist/useCases/validateUseCaseFile.js.map +1 -0
  622. package/packages/core/dist/version.d.ts +9 -0
  623. package/packages/core/dist/version.d.ts.map +1 -0
  624. package/packages/core/dist/version.js +17 -0
  625. package/packages/core/dist/version.js.map +1 -0
  626. package/packages/core/package.json +39 -0
  627. package/packages/mcp/README.md +48 -0
  628. package/packages/mcp/dist/index.d.ts +20 -0
  629. package/packages/mcp/dist/index.d.ts.map +1 -0
  630. package/packages/mcp/dist/index.js +180 -0
  631. package/packages/mcp/dist/index.js.map +1 -0
  632. package/packages/mcp/dist/prompts.d.ts +32 -0
  633. package/packages/mcp/dist/prompts.d.ts.map +1 -0
  634. package/packages/mcp/dist/prompts.js +199 -0
  635. package/packages/mcp/dist/prompts.js.map +1 -0
  636. package/packages/mcp/dist/resources.d.ts +22 -0
  637. package/packages/mcp/dist/resources.d.ts.map +1 -0
  638. package/packages/mcp/dist/resources.js +342 -0
  639. package/packages/mcp/dist/resources.js.map +1 -0
  640. package/packages/mcp/dist/toolHandlers.d.ts +28 -0
  641. package/packages/mcp/dist/toolHandlers.d.ts.map +1 -0
  642. package/packages/mcp/dist/toolHandlers.js +592 -0
  643. package/packages/mcp/dist/toolHandlers.js.map +1 -0
  644. package/packages/mcp/dist/toolSchemas.d.ts +23 -0
  645. package/packages/mcp/dist/toolSchemas.d.ts.map +1 -0
  646. package/packages/mcp/dist/toolSchemas.js +223 -0
  647. package/packages/mcp/dist/toolSchemas.js.map +1 -0
  648. package/packages/mcp/dist/tools.d.ts +22 -0
  649. package/packages/mcp/dist/tools.d.ts.map +1 -0
  650. package/packages/mcp/dist/tools.js +65 -0
  651. package/packages/mcp/dist/tools.js.map +1 -0
  652. package/packages/mcp/package.json +38 -0
  653. package/plugin.json +6 -0
  654. package/schemas/v1/authority.schema.json +70 -0
  655. package/schemas/v1/cli-result.schema.json +30 -0
  656. package/schemas/v1/common.schema.json +274 -0
  657. package/schemas/v1/demo-capsule.schema.json +78 -0
  658. package/schemas/v1/evidence-append-result.schema.json +14 -0
  659. package/schemas/v1/evidence-event.schema.json +181 -0
  660. package/schemas/v1/evidence-status-result.schema.json +68 -0
  661. package/schemas/v1/host-profile.schema.json +94 -0
  662. package/schemas/v1/host-status-result.schema.json +49 -0
  663. package/schemas/v1/keyring.schema.json +77 -0
  664. package/schemas/v1/ledger.schema.json +99 -0
  665. package/schemas/v1/marker.schema.json +84 -0
  666. package/schemas/v1/matrix-list-result.schema.json +67 -0
  667. package/schemas/v1/matrix-mutation-result.schema.json +49 -0
  668. package/schemas/v1/matrix-validation-result.schema.json +77 -0
  669. package/schemas/v1/mcp-tool-results.schema.json +34 -0
  670. package/schemas/v1/migration-test-matrix-result.schema.json +76 -0
  671. package/schemas/v1/presentation-plan-result.schema.json +62 -0
  672. package/schemas/v1/presentation-plan.schema.json +259 -0
  673. package/schemas/v1/release-gate-result.schema.json +136 -0
  674. package/schemas/v1/showcase-approval-result.schema.json +5 -0
  675. package/schemas/v1/showcase-event-append-result.schema.json +17 -0
  676. package/schemas/v1/showcase-event.schema.json +235 -0
  677. package/schemas/v1/showcase-finish-result.schema.json +5 -0
  678. package/schemas/v1/showcase-run-status-result.schema.json +70 -0
  679. package/schemas/v1/showcase-start-result.schema.json +5 -0
  680. package/schemas/v1/use-case-file.schema.json +178 -0
  681. package/schemas/v1/workflow-mode.schema.json +16 -0
  682. package/schemas/v1/workspace-config.schema.json +58 -0
  683. package/use-cases/capsule/demos.yml +212 -0
  684. package/use-cases/capsule/runner.yml +49 -0
  685. package/use-cases/diagnostics/contracts.yml +239 -0
  686. package/use-cases/evidence/core.yml +32 -0
  687. package/use-cases/evidence/ledger.yml +330 -0
  688. package/use-cases/hosts/profiles.yml +365 -0
  689. package/use-cases/hosts/projections.yml +96 -0
  690. package/use-cases/lifecycle/loop.yml +229 -0
  691. package/use-cases/matrix/core.yml +92 -0
  692. package/use-cases/matrix/product.yml +289 -0
  693. package/use-cases/mcp/surface.yml +257 -0
  694. package/use-cases/mcp/wrapper.yml +100 -0
  695. package/use-cases/migration/importer.yml +171 -0
  696. package/use-cases/migration/test-matrix.yml +32 -0
  697. package/use-cases/planning/cards.yml +215 -0
  698. package/use-cases/release/package.yml +80 -0
  699. package/use-cases/release/proof.yml +180 -0
  700. package/use-cases/roadmap/deferred.yml +184 -0
  701. package/use-cases/showcase/flow.yml +269 -0
  702. package/use-cases/showcase/live.yml +44 -0
  703. package/use-cases/skills/assets.yml +92 -0
  704. package/use-cases.yml +9 -0
@@ -0,0 +1,592 @@
1
+ import { accessSync, constants } from "node:fs";
2
+ import { isAbsolute, relative, resolve } from "node:path";
3
+ const { appendEvidenceEvent, appendEvidenceVoidEvent, isValidId, appendShowcaseFailureDecision, appendShowcaseObservation, appendShowcaseVerdict, createCliResult, finishShowcaseRun, loadHostProfile, loadUseCaseMatrix, loadPresentationPlanFile, mutateUseCaseMatrix, queryUseCases, readShowcaseEvents, replayEvidence, replayShowcaseRun, resolveContainedPath, resolveWorkspaceContext, workspaceNotFoundDiagnostic, runDemoCapsule, runHostDoctor, selectShowcasePlan, selectWalkthroughPlan, startShowcaseRun, toEvidenceAppendResult, toEvidenceStatusResult, toMatrixListResult, toMatrixValidationResult } = await loadUcmCore();
4
+ async function loadUcmCore() {
5
+ try {
6
+ return await import("@adammcarter/use-cases-core");
7
+ }
8
+ catch (error) {
9
+ if (!isMissingCorePackage(error)) {
10
+ throw error;
11
+ }
12
+ const bundledCoreSpecifier = "../../core/dist/index.js";
13
+ return await import(bundledCoreSpecifier);
14
+ }
15
+ }
16
+ function isMissingCorePackage(error) {
17
+ return error instanceof Error && "code" in error && error.code === "ERR_MODULE_NOT_FOUND" && error.message.includes("@adammcarter/use-cases-core");
18
+ }
19
+ const hostSurfaceDefault = "codex.cli";
20
+ export function doctorRoots(args) {
21
+ const context = contextFromArgs(args, "doctor.roots");
22
+ if ("envelope" in context)
23
+ return context.envelope;
24
+ return envelope("doctor.roots", {
25
+ schema_version: 1,
26
+ workspace_root: context.workspace_root,
27
+ data_root: context.data_root,
28
+ use_cases_root: context.use_cases_root,
29
+ component_id: context.component_id,
30
+ config_path: context.config_path,
31
+ provenance: context.provenance,
32
+ writable: canWrite(context.data_root)
33
+ }, context);
34
+ }
35
+ // Mirror of the CLI's `canWrite` (packages/cli/src/commands/doctor.ts): probe a
36
+ // directory for write access without mutating it so both transports emit the same
37
+ // `writable` boolean in the doctor.roots envelope.
38
+ function canWrite(path) {
39
+ try {
40
+ accessSync(path, constants.W_OK);
41
+ return true;
42
+ }
43
+ catch {
44
+ return false;
45
+ }
46
+ }
47
+ export function matrixValidate(args) {
48
+ const context = contextFromArgs(args, "matrix.validate");
49
+ if ("envelope" in context)
50
+ return context.envelope;
51
+ const snapshot = loadUseCaseMatrix({ context });
52
+ return envelope("matrix.validate", toMatrixValidationResult(snapshot), context, {
53
+ ok: true,
54
+ complete: snapshot.complete,
55
+ diagnostics: snapshot.diagnostics
56
+ });
57
+ }
58
+ export function matrixList(args) {
59
+ const context = contextFromArgs(args, "matrix.list");
60
+ if ("envelope" in context)
61
+ return context.envelope;
62
+ const snapshot = loadUseCaseMatrix({ context });
63
+ const selected = queryUseCases(snapshot, {
64
+ valueTiers: stringArrayArg(args, "value"),
65
+ journeyRoles: stringArrayArg(args, "journey_role"),
66
+ lifecycles: stringArrayArg(args, "lifecycle"),
67
+ hostSurfaces: stringArrayArg(args, "host"),
68
+ tagsAny: stringArrayArg(args, "tag"),
69
+ changedPaths: stringArrayArg(args, "changed_path")
70
+ });
71
+ const ok = boolArg(args, "strict") ? snapshot.complete : true;
72
+ return envelope("matrix.list", toMatrixListResult(snapshot, selected), context, {
73
+ ok,
74
+ complete: snapshot.complete,
75
+ diagnostics: snapshot.diagnostics
76
+ });
77
+ }
78
+ export function matrixStatus(args) {
79
+ const context = contextFromArgs(args, "matrix.status");
80
+ if ("envelope" in context)
81
+ return context.envelope;
82
+ const matrix = loadUseCaseMatrix({ context });
83
+ const evidence = replayEvidence({ context });
84
+ const data = {
85
+ schema_version: 1,
86
+ complete: matrix.complete && evidence.complete,
87
+ matrix: toMatrixValidationResult(matrix),
88
+ evidence: toEvidenceStatusResult(evidence)
89
+ };
90
+ return envelope("matrix.status", data, context, {
91
+ ok: data.complete,
92
+ complete: data.complete,
93
+ diagnostics: [...matrix.diagnostics, ...evidence.diagnostics]
94
+ });
95
+ }
96
+ export function useCaseUpsert(args) {
97
+ const context = contextFromArgs(args, "matrix.upsert");
98
+ if ("envelope" in context)
99
+ return context.envelope;
100
+ const targetFile = stringArg(args, "file");
101
+ const useCase = objectArg(args, "use_case");
102
+ if (!targetFile || !useCase) {
103
+ return errorEnvelope("matrix.upsert", "cli_invalid_arguments", "Missing file or use_case.");
104
+ }
105
+ const result = mutateUseCaseMatrix({
106
+ context,
107
+ operation: "upsert",
108
+ targetFile,
109
+ useCase,
110
+ expectedSemanticHash: stringArg(args, "expected_hash") ?? undefined,
111
+ actor: actorArg(args)
112
+ });
113
+ return useCaseMutationEnvelope("matrix.upsert", result, context);
114
+ }
115
+ export function useCaseRemove(args) {
116
+ const context = contextFromArgs(args, "matrix.remove");
117
+ if ("envelope" in context)
118
+ return context.envelope;
119
+ const useCaseId = stringArg(args, "use_case");
120
+ const reason = stringArg(args, "reason");
121
+ if (!useCaseId || !reason) {
122
+ return errorEnvelope("matrix.remove", "cli_invalid_arguments", "Missing use_case or reason.");
123
+ }
124
+ const result = mutateUseCaseMatrix({
125
+ context,
126
+ operation: "remove",
127
+ useCaseId,
128
+ reason,
129
+ expectedSemanticHash: stringArg(args, "expected_hash") ?? undefined,
130
+ actor: actorArg(args)
131
+ });
132
+ return useCaseMutationEnvelope("matrix.remove", result, context);
133
+ }
134
+ export function evidenceStatus(args) {
135
+ const context = contextFromArgs(args, "evidence.status");
136
+ if ("envelope" in context)
137
+ return context.envelope;
138
+ const snapshot = replayEvidence({ context });
139
+ return envelope("evidence.status", toEvidenceStatusResult(snapshot), context, {
140
+ ok: snapshot.complete,
141
+ complete: snapshot.complete,
142
+ diagnostics: snapshot.diagnostics
143
+ });
144
+ }
145
+ export function evidenceRecord(args) {
146
+ const context = contextFromArgs(args, "evidence.record");
147
+ if ("envelope" in context)
148
+ return context.envelope;
149
+ const useCaseId = stringArg(args, "use_case");
150
+ if (!useCaseId)
151
+ return errorEnvelope("evidence.record", "evidence.use_case.required", "Missing use_case.");
152
+ const matrix = loadUseCaseMatrix({ context });
153
+ const resolved = matrix.resolveUseCase(useCaseId);
154
+ if (resolved.kind !== "resolved") {
155
+ return errorEnvelope("evidence.record", "evidence.use_case.unresolved", `Use case '${useCaseId}' is ${resolved.kind}.`);
156
+ }
157
+ const kind = stringArg(args, "kind") ?? "manual_observation";
158
+ const result = stringArg(args, "result") ?? "observed";
159
+ const append = appendEvidenceEvent({
160
+ context,
161
+ idempotencyKey: stringArg(args, "idempotency_key") ?? `mcp:${useCaseId}:${kind}:${result}`,
162
+ target: {
163
+ use_case_id: useCaseId,
164
+ use_case_semantic_hash: resolved.useCase.semanticHash
165
+ },
166
+ kind: kind,
167
+ result: result,
168
+ summary: stringArg(args, "summary") ?? `Recorded ${kind} evidence for ${useCaseId}.`,
169
+ actorType: actorArg(args),
170
+ hostSurface: hostSurfaceArg(args)
171
+ });
172
+ return envelope("evidence.record", toEvidenceAppendResult(append), context);
173
+ }
174
+ export function evidenceVoid(args) {
175
+ const context = contextFromArgs(args, "evidence.void");
176
+ if ("envelope" in context)
177
+ return context.envelope;
178
+ const evidenceId = stringArg(args, "evidence");
179
+ const expectedHead = stringArg(args, "expected_head");
180
+ const reason = stringArg(args, "reason");
181
+ if (!evidenceId || !expectedHead || !reason) {
182
+ return errorEnvelope("evidence.void", "cli_invalid_arguments", "Missing evidence, expected_head, or reason.");
183
+ }
184
+ const invalidEvidenceId = rejectUnsafeId("evidence.void", "evidence", evidenceId);
185
+ if (invalidEvidenceId)
186
+ return invalidEvidenceId;
187
+ const append = appendEvidenceVoidEvent({
188
+ context,
189
+ evidenceId,
190
+ expectedHeadEventId: expectedHead,
191
+ reason,
192
+ idempotencyKey: stringArg(args, "idempotency_key") ?? `mcp:void:${evidenceId}:${expectedHead}`,
193
+ actorType: actorArg(args),
194
+ hostSurface: hostSurfaceArg(args)
195
+ });
196
+ return envelope("evidence.void", toEvidenceAppendResult(append), context);
197
+ }
198
+ export function planPresentation(args, mode) {
199
+ const command = `plan.${mode}`;
200
+ const context = contextFromArgs(args, command);
201
+ if ("envelope" in context)
202
+ return context.envelope;
203
+ const matrix = loadUseCaseMatrix({ context });
204
+ const evidence = replayEvidence({ context });
205
+ const request = {
206
+ audience: stringArg(args, "audience") ?? "reviewer",
207
+ timeboxSeconds: numberArg(args, "timebox_seconds") ?? (mode === "showcase" ? 600 : 1800),
208
+ maxItems: numberArg(args, "max_items") ?? undefined,
209
+ hostSurface: (stringArg(args, "host") ?? "unknown"),
210
+ changedPaths: stringArrayArg(args, "changed_path"),
211
+ generatedAt: stringArg(args, "generated_at") ?? undefined,
212
+ strict: boolArg(args, "strict")
213
+ };
214
+ const result = mode === "showcase"
215
+ ? selectShowcasePlan({ context, matrix, evidence, request })
216
+ : selectWalkthroughPlan({ context, matrix, evidence, request });
217
+ return envelope(command, result, context, {
218
+ ok: result.outcome !== "integrity_blocked",
219
+ complete: result.plan?.complete ?? (result.outcome === "no_eligible_items" && matrix.complete && evidence.complete),
220
+ diagnostics: [...matrix.diagnostics, ...evidence.diagnostics]
221
+ });
222
+ }
223
+ export function capsuleRun(args) {
224
+ const context = contextFromArgs(args, "capsule.run");
225
+ if ("envelope" in context)
226
+ return context.envelope;
227
+ const capsuleId = stringArg(args, "capsule");
228
+ if (!capsuleId) {
229
+ return errorEnvelope("capsule.run", "cli_invalid_arguments", "Missing capsule.");
230
+ }
231
+ const result = runDemoCapsule({
232
+ context,
233
+ capsuleId,
234
+ executeCommands: boolArg(args, "execute_commands"),
235
+ actorType: actorArg(args),
236
+ hostSurface: hostSurfaceArg(args),
237
+ idempotencyKey: stringArg(args, "idempotency_key") ?? undefined,
238
+ recordedAt: stringArg(args, "recorded_at") ?? undefined,
239
+ commandTimeoutMs: numberArg(args, "command_timeout_ms") ?? undefined
240
+ });
241
+ return envelope("capsule.run", result, context, {
242
+ ok: result.outcome !== "blocked",
243
+ complete: result.complete,
244
+ diagnostics: result.diagnostics
245
+ });
246
+ }
247
+ export function showcaseStart(args) {
248
+ const context = contextFromArgs(args, "showcase.start");
249
+ if ("envelope" in context)
250
+ return context.envelope;
251
+ const planFile = stringArg(args, "plan_file");
252
+ if (planFile) {
253
+ const contained = containedFilePath("showcase.start", context.workspace_root, planFile);
254
+ if ("envelope" in contained)
255
+ return contained.envelope;
256
+ const plan = loadPresentationPlanFile(contained.path);
257
+ return showcaseEnvelope("showcase.start", startShowcaseRun({
258
+ context,
259
+ plan,
260
+ controlMode: "agent_led",
261
+ actorType: actorArg(args),
262
+ hostSurface: hostSurfaceArg(args),
263
+ idempotencyKey: stringArg(args, "idempotency_key") ?? `mcp:start-plan:${plan.plan_content_hash}`,
264
+ recordedAt: stringArg(args, "recorded_at") ?? new Date().toISOString()
265
+ }), context);
266
+ }
267
+ const selected = stringArg(args, "select");
268
+ if (!selected)
269
+ return errorEnvelope("showcase.start", "showcase.plan_required", "Only ad hoc select starts are supported.");
270
+ const matrix = loadUseCaseMatrix({ context });
271
+ const evidence = replayEvidence({ context });
272
+ const planResult = selectShowcasePlan({
273
+ context,
274
+ matrix,
275
+ evidence,
276
+ request: {
277
+ audience: stringArg(args, "audience") ?? "reviewer",
278
+ timeboxSeconds: numberArg(args, "timebox_seconds") ?? 600,
279
+ maxItems: 1,
280
+ hostSurface: hostSurfaceArg(args),
281
+ requestedUseCaseIds: [selected],
282
+ generatedAt: stringArg(args, "generated_at") ?? new Date().toISOString(),
283
+ freshnessEvaluatedAt: stringArg(args, "generated_at") ?? new Date().toISOString()
284
+ }
285
+ });
286
+ if (!planResult.plan || !planResult.plan.selected_items.some((item) => item.use_case_id === selected)) {
287
+ return errorEnvelope("showcase.start", "showcase.selected_use_case_unavailable", "Selected use case was not available for an ad hoc plan.");
288
+ }
289
+ return showcaseEnvelope("showcase.start", startShowcaseRun({
290
+ context,
291
+ plan: planResult.plan,
292
+ controlMode: "agent_led",
293
+ actorType: actorArg(args),
294
+ hostSurface: hostSurfaceArg(args),
295
+ idempotencyKey: stringArg(args, "idempotency_key") ?? `mcp:start:${selected}`,
296
+ recordedAt: stringArg(args, "recorded_at") ?? new Date().toISOString()
297
+ }), context);
298
+ }
299
+ export function showcaseStatus(args) {
300
+ const context = contextFromArgs(args, "showcase.status");
301
+ if ("envelope" in context)
302
+ return context.envelope;
303
+ const runId = stringArg(args, "run");
304
+ if (!runId)
305
+ return errorEnvelope("showcase.status", "cli_invalid_arguments", "Missing run.");
306
+ const invalidStatusId = rejectUnsafeId("showcase.status", "run", runId);
307
+ if (invalidStatusId)
308
+ return invalidStatusId;
309
+ const status = replayShowcaseRun({ context, runId });
310
+ return envelope("showcase.status", status, context, { complete: status.complete });
311
+ }
312
+ export function showcaseObservation(args) {
313
+ const context = contextFromArgs(args, "showcase.record-observation");
314
+ if ("envelope" in context)
315
+ return context.envelope;
316
+ const runId = stringArg(args, "run");
317
+ const planItemId = stringArg(args, "item");
318
+ const text = stringArg(args, "text");
319
+ if (!runId || !planItemId || !text) {
320
+ return errorEnvelope("showcase.record-observation", "cli_invalid_arguments", "Missing run, item, or text.");
321
+ }
322
+ const invalidObservationId = rejectUnsafeId("showcase.record-observation", "run", runId) ??
323
+ rejectUnsafeId("showcase.record-observation", "item", planItemId);
324
+ if (invalidObservationId)
325
+ return invalidObservationId;
326
+ return showcaseEnvelope("showcase.record-observation", appendShowcaseObservation({
327
+ context,
328
+ runId,
329
+ planItemId,
330
+ text,
331
+ actorType: actorArg(args),
332
+ hostSurface: hostSurfaceArg(args),
333
+ idempotencyKey: stringArg(args, "idempotency_key") ?? `mcp:observation:${runId}:${planItemId}:${text}`,
334
+ recordedAt: stringArg(args, "recorded_at") ?? new Date().toISOString()
335
+ }), context);
336
+ }
337
+ export function showcaseVerdict(args) {
338
+ const context = contextFromArgs(args, "showcase.record-verdict");
339
+ if ("envelope" in context)
340
+ return context.envelope;
341
+ const runId = stringArg(args, "run");
342
+ const planItemId = stringArg(args, "item");
343
+ const verdict = stringArg(args, "verdict");
344
+ if (!runId || !planItemId || !verdict) {
345
+ return errorEnvelope("showcase.record-verdict", "cli_invalid_arguments", "Missing run, item, or verdict.");
346
+ }
347
+ const invalidVerdictId = rejectUnsafeId("showcase.record-verdict", "run", runId) ??
348
+ rejectUnsafeId("showcase.record-verdict", "item", planItemId);
349
+ if (invalidVerdictId)
350
+ return invalidVerdictId;
351
+ const status = replayShowcaseRun({ context, runId });
352
+ const item = status.items.find((candidate) => candidate.plan_item_id === planItemId);
353
+ if (!item?.latest_observation_event_id) {
354
+ return errorEnvelope("showcase.record-verdict", "showcase.verdict_requires_observation", "Verdict requires a prior observation.");
355
+ }
356
+ return showcaseEnvelope("showcase.record-verdict", appendShowcaseVerdict({
357
+ context,
358
+ runId,
359
+ planItemId,
360
+ verdict: verdict,
361
+ observationEventIds: [item.latest_observation_event_id],
362
+ actorType: actorArg(args),
363
+ hostSurface: hostSurfaceArg(args),
364
+ idempotencyKey: stringArg(args, "idempotency_key") ?? `mcp:verdict:${runId}:${planItemId}:${verdict}`,
365
+ recordedAt: stringArg(args, "recorded_at") ?? new Date().toISOString()
366
+ }), context);
367
+ }
368
+ export function showcaseDecide(args) {
369
+ const context = contextFromArgs(args, "showcase.decide");
370
+ if ("envelope" in context)
371
+ return context.envelope;
372
+ const runId = stringArg(args, "run");
373
+ const verdictEventId = stringArg(args, "verdict_event");
374
+ const decision = stringArg(args, "decision");
375
+ const reason = stringArg(args, "reason");
376
+ if (!runId || !verdictEventId || !decision || !reason) {
377
+ return errorEnvelope("showcase.decide", "cli_invalid_arguments", "Missing run, verdict_event, decision, or reason.");
378
+ }
379
+ const invalidDecideId = rejectUnsafeId("showcase.decide", "run", runId);
380
+ if (invalidDecideId)
381
+ return invalidDecideId;
382
+ return showcaseEnvelope("showcase.decide", appendShowcaseFailureDecision({
383
+ context,
384
+ runId,
385
+ verdictEventId,
386
+ decision: decision,
387
+ reason,
388
+ actorType: actorArg(args),
389
+ hostSurface: hostSurfaceArg(args),
390
+ idempotencyKey: stringArg(args, "idempotency_key") ?? `mcp:decision:${runId}:${verdictEventId}:${decision}`,
391
+ recordedAt: stringArg(args, "recorded_at") ?? new Date().toISOString()
392
+ }), context);
393
+ }
394
+ export function showcaseFinish(args) {
395
+ const context = contextFromArgs(args, "showcase.finish");
396
+ if ("envelope" in context)
397
+ return context.envelope;
398
+ const runId = stringArg(args, "run");
399
+ if (!runId)
400
+ return errorEnvelope("showcase.finish", "cli_invalid_arguments", "Missing run.");
401
+ const invalidFinishId = rejectUnsafeId("showcase.finish", "run", runId);
402
+ if (invalidFinishId)
403
+ return invalidFinishId;
404
+ return showcaseEnvelope("showcase.finish", finishShowcaseRun({
405
+ context,
406
+ runId,
407
+ actorType: "agent",
408
+ hostSurface: hostSurfaceArg(args),
409
+ idempotencyKey: stringArg(args, "idempotency_key") ?? `mcp:finish:${runId}`,
410
+ recordedAt: stringArg(args, "recorded_at") ?? new Date().toISOString()
411
+ }), context);
412
+ }
413
+ export function showcaseRequestApproval(args) {
414
+ const context = contextFromArgs(args, "showcase.request-approval");
415
+ if ("envelope" in context)
416
+ return context.envelope;
417
+ const runId = stringArg(args, "run");
418
+ if (!runId)
419
+ return errorEnvelope("showcase.request-approval", "cli_invalid_arguments", "Missing run.");
420
+ const invalidApprovalId = rejectUnsafeId("showcase.request-approval", "run", runId);
421
+ if (invalidApprovalId)
422
+ return invalidApprovalId;
423
+ const status = replayShowcaseRun({ context, runId });
424
+ const events = readShowcaseEvents(context, runId).events;
425
+ const start = events.find((event) => event.event_type === "run_started");
426
+ const finish = events.slice().reverse().find((event) => event.event_type === "run_finished");
427
+ const plan = start?.payload.plan;
428
+ return envelope("showcase.request-approval", {
429
+ schema_version: 1,
430
+ decision_required: true,
431
+ trusted_confirmation_required: true,
432
+ run_id: runId,
433
+ plan_hash: plan?.plan_content_hash ?? null,
434
+ finish_event_id: finish?.event_id ?? null,
435
+ known_gaps: status.known_gaps,
436
+ suggested_cli_command: [
437
+ "uc",
438
+ "showcase",
439
+ "approve",
440
+ "--run",
441
+ runId,
442
+ "--statement",
443
+ stringArg(args, "statement") ?? "<user approval statement>",
444
+ "--json"
445
+ ],
446
+ status
447
+ }, context, { complete: status.complete });
448
+ }
449
+ export function hostDoctor(args) {
450
+ const context = contextFromArgs(args, "host.doctor");
451
+ if ("envelope" in context)
452
+ return context.envelope;
453
+ const host = stringArg(args, "host");
454
+ if (!host)
455
+ return errorEnvelope("host.doctor", "host.required", "Missing host.");
456
+ const profile = loadHostProfile({ pluginRoot: context.plugin_root, host });
457
+ if (!profile.profile) {
458
+ return errorEnvelope("host.doctor", "host.profile_unavailable", profile.diagnostics[0]?.message ?? "Host profile unavailable.");
459
+ }
460
+ return envelope("host.doctor", runHostDoctor({ context, profile: profile.profile }), context);
461
+ }
462
+ function showcaseEnvelope(command, result, context) {
463
+ return envelope(command, result, context, { complete: result.status.complete });
464
+ }
465
+ function useCaseMutationEnvelope(command, result, context) {
466
+ const ok = result.status !== "blocked";
467
+ return envelope(command, result, context, {
468
+ ok,
469
+ complete: ok,
470
+ diagnostics: result.diagnostics
471
+ });
472
+ }
473
+ function envelope(command, data, context, options = {}) {
474
+ return createCliResult(command, data, {
475
+ ok: options.ok ?? true,
476
+ complete: options.complete ?? true,
477
+ diagnostics: options.diagnostics ?? [],
478
+ workspaceRoot: context.workspace_root,
479
+ dataRoot: context.data_root,
480
+ componentId: context.component_id
481
+ });
482
+ }
483
+ function contextFromArgs(args, command) {
484
+ const repo = stringArg(args, "repo");
485
+ if (!repo) {
486
+ return { envelope: errorEnvelope(command, "mcp.repo_required", "MCP workspace tools require repo.") };
487
+ }
488
+ const workspaceRoot = resolve(process.cwd(), repo);
489
+ // Shared workspace-existence guard (core): a non-existent repo is a typo, not a
490
+ // valid empty workspace. Every MCP workspace tool funnels through here, so this
491
+ // one check covers matrix_validate/list/status and any future tool. The CLI's
492
+ // resolveContextOrError applies the SAME core guard, so both transports emit an
493
+ // identical workspace.not_found envelope.
494
+ const missing = workspaceNotFoundDiagnostic(workspaceRoot);
495
+ if (missing) {
496
+ return { envelope: errorEnvelope(command, missing.code, missing.message) };
497
+ }
498
+ const dataRootValue = stringArg(args, "data_root");
499
+ const dataRoot = dataRootValue ? resolve(workspaceRoot, dataRootValue) : undefined;
500
+ if (dataRoot) {
501
+ const rel = relative(workspaceRoot, dataRoot);
502
+ if (rel === ".." || rel.startsWith("../") || isAbsolute(rel)) {
503
+ return { envelope: errorEnvelope(command, "unsafe_data_root", "data_root must stay inside repo.") };
504
+ }
505
+ }
506
+ return resolveWorkspaceContext({
507
+ workspaceRoot,
508
+ dataRootOverride: dataRoot,
509
+ component: stringArg(args, "component") ?? undefined
510
+ });
511
+ }
512
+ export function errorEnvelope(command, code, message) {
513
+ return createCliResult(command, {}, {
514
+ ok: false,
515
+ complete: false,
516
+ diagnostics: [{
517
+ code,
518
+ severity: "error",
519
+ message,
520
+ source_path: null,
521
+ json_pointer: null,
522
+ entity_id: null,
523
+ related_ids: []
524
+ }]
525
+ });
526
+ }
527
+ // SECURITY: reject a user-supplied id that is not a canonical id before it can
528
+ // become a filesystem path segment or a ledger lookup key. Returns the stable
529
+ // UCM_INVALID_ID envelope on failure, or null when the value is safe.
530
+ function rejectUnsafeId(command, paramName, value) {
531
+ return isValidId(value)
532
+ ? null
533
+ : errorEnvelope(command, "UCM_INVALID_ID", `Invalid ${paramName} '${value}': must be a canonical id (lowercase, no path separators, no '..').`);
534
+ }
535
+ // SECURITY: bound a user-supplied file path (e.g. plan_file) to the workspace,
536
+ // symlink-safe, BEFORE it is read from disk. Returns the safe absolute path, or the
537
+ // stable UCM_PATH_ESCAPE envelope on escape.
538
+ function containedFilePath(command, workspaceRoot, candidate) {
539
+ try {
540
+ return { path: resolveContainedPath(workspaceRoot, candidate) };
541
+ }
542
+ catch (error) {
543
+ if (error instanceof Error && "code" in error && error.code === "path.escape") {
544
+ return { envelope: errorEnvelope(command, "UCM_PATH_ESCAPE", error.message) };
545
+ }
546
+ throw error;
547
+ }
548
+ }
549
+ export function isTrustedUserClaim(args) {
550
+ return stringArg(args, "actor_type") === "user" ||
551
+ stringArg(args, "approver_type") === "user" ||
552
+ stringArg(args, "trusted_confirmation") === "user";
553
+ }
554
+ export function mcpServerWriteModeEnabled() {
555
+ return process.env.UCM_MCP_WRITE === "1";
556
+ }
557
+ export function mcpServerCommandExecutionEnabled() {
558
+ return process.env.UCM_MCP_COMMAND_EXECUTION === "1";
559
+ }
560
+ function actorArg(args) {
561
+ const actor = stringArg(args, "actor_type");
562
+ return actor === "script" || actor === "system" ? actor : "agent";
563
+ }
564
+ function hostSurfaceArg(args) {
565
+ return (stringArg(args, "host_surface") ?? hostSurfaceDefault);
566
+ }
567
+ function stringArg(args, name) {
568
+ const value = args[name];
569
+ return typeof value === "string" && value.length > 0 ? value : null;
570
+ }
571
+ function objectArg(args, name) {
572
+ const value = args[name];
573
+ return typeof value === "object" && value !== null && !Array.isArray(value) ? value : null;
574
+ }
575
+ export function numberArg(args, name) {
576
+ const value = args[name];
577
+ return typeof value === "number" && Number.isFinite(value) ? value : null;
578
+ }
579
+ export function boolArg(args, name) {
580
+ return args[name] === true;
581
+ }
582
+ function stringArrayArg(args, name) {
583
+ const value = args[name];
584
+ if (Array.isArray(value)) {
585
+ return value.filter((item) => typeof item === "string");
586
+ }
587
+ if (typeof value === "string") {
588
+ return [value];
589
+ }
590
+ return [];
591
+ }
592
+ //# sourceMappingURL=toolHandlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolHandlers.js","sourceRoot":"","sources":["../src/toolHandlers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ export type JsonObject = Record<string, unknown>;
2
+ export declare function workspaceSchema(properties?: JsonObject, required?: string[]): JsonObject;
3
+ export declare const toolInputBase: JsonObject;
4
+ export declare const matrixListInputSchema: JsonObject;
5
+ export declare const useCaseUpsertInputSchema: JsonObject;
6
+ export declare const useCaseRemoveInputSchema: JsonObject;
7
+ export declare const evidenceRecordInputSchema: JsonObject;
8
+ export declare const evidenceVoidInputSchema: JsonObject;
9
+ export declare const planInputSchema: JsonObject;
10
+ export declare const capsuleRunInputSchema: JsonObject;
11
+ export declare const showcaseStartInputSchema: JsonObject;
12
+ export declare const showcaseStatusInputSchema: JsonObject;
13
+ export declare const showcaseObservationInputSchema: JsonObject;
14
+ export declare const showcaseVerdictInputSchema: JsonObject;
15
+ export declare const showcaseDecideInputSchema: JsonObject;
16
+ export declare const showcaseFinishInputSchema: JsonObject;
17
+ export declare const showcaseRequestApprovalInputSchema: JsonObject;
18
+ export declare const hostDoctorInputSchema: JsonObject;
19
+ export declare const cliEnvelopeSchema: {
20
+ type: string;
21
+ required: string[];
22
+ };
23
+ //# sourceMappingURL=toolSchemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolSchemas.d.ts","sourceRoot":"","sources":["../src/toolSchemas.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAuFjD,wBAAgB,eAAe,CAAC,UAAU,GAAE,UAAe,EAAE,QAAQ,GAAE,MAAM,EAAO,GAAG,UAAU,CAahG;AAED,eAAO,MAAM,aAAa,YAAoB,CAAC;AAE/C,eAAO,MAAM,qBAAqB,YAQhC,CAAC;AAGH,eAAO,MAAM,wBAAwB,YAMb,CAAC;AAGzB,eAAO,MAAM,wBAAwB,YAMX,CAAC;AAE3B,eAAO,MAAM,yBAAyB,YAStB,CAAC;AAEjB,eAAO,MAAM,uBAAuB,YAQO,CAAC;AAE5C,eAAO,MAAM,eAAe,YAQ1B,CAAC;AAEH,eAAO,MAAM,qBAAqB,YASnB,CAAC;AAEhB,eAAO,MAAM,wBAAwB,YAWnC,CAAC;AAEH,eAAO,MAAM,yBAAyB,YAA6C,CAAC;AAEpF,eAAO,MAAM,8BAA8B,YAShB,CAAC;AAE5B,eAAO,MAAM,0BAA0B,YAST,CAAC;AAE/B,eAAO,MAAM,yBAAyB,YAUY,CAAC;AAEnD,eAAO,MAAM,yBAAyB,YAM3B,CAAC;AAEZ,eAAO,MAAM,kCAAkC,YAGpC,CAAC;AAEZ,eAAO,MAAM,qBAAqB,YAEtB,CAAC;AAEb,eAAO,MAAM,iBAAiB;;;CAG7B,CAAC"}