@xoxoai/checkmate 0.6.7 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (382) hide show
  1. package/dist/checkmate.js +13375 -0
  2. package/package.json +14 -100
  3. package/plugin/.claude-plugin/plugin.json +10 -0
  4. package/plugin/bin/checkmate.ts +3 -0
  5. package/plugin/contracts/finding.schema.json +78 -0
  6. package/plugin/contracts/gap.schema.json +56 -0
  7. package/plugin/contracts/plan-candidate.schema.json +103 -0
  8. package/plugin/contracts/plan-delta.schema.json +63 -0
  9. package/plugin/contracts/plan-patch.schema.json +116 -0
  10. package/plugin/contracts/plan-request.schema.json +108 -0
  11. package/plugin/contracts/plan.schema.json +313 -0
  12. package/plugin/contracts/profile.schema.json +154 -0
  13. package/plugin/contracts/response.schema.json +25 -0
  14. package/plugin/contracts/result.schema.json +410 -0
  15. package/plugin/dist/checkmate.js +13012 -0
  16. package/plugin/package.json +4 -0
  17. package/plugin/references/browser.md +35 -0
  18. package/plugin/references/http.md +30 -0
  19. package/plugin/references/workflow.md +122 -0
  20. package/plugin/skills/execute/SKILL.md +92 -0
  21. package/plugin/skills/plan/SKILL.md +94 -0
  22. package/plugin/skills/report/SKILL.md +28 -0
  23. package/plugin/skills/revise/SKILL.md +43 -0
  24. package/plugin/skills/setup/SKILL.md +82 -0
  25. package/plugin/skills/status/SKILL.md +20 -0
  26. package/plugin/skills/ui/SKILL.md +26 -0
  27. package/plugin/src/actor.ts +21 -0
  28. package/plugin/src/cli.ts +1133 -0
  29. package/plugin/src/contracts.ts +342 -0
  30. package/plugin/src/index.ts +52 -0
  31. package/plugin/src/plans.ts +1028 -0
  32. package/plugin/src/render.ts +544 -0
  33. package/plugin/src/runs.ts +868 -0
  34. package/plugin/src/store.ts +384 -0
  35. package/plugin/src/targets.ts +205 -0
  36. package/plugin/src/types.ts +319 -0
  37. package/plugin/src/ui/assets/client.js +501 -0
  38. package/plugin/src/ui/assets/favicon.svg +1 -0
  39. package/plugin/src/ui/assets/fonts/inter-OFL.txt +93 -0
  40. package/plugin/src/ui/assets/fonts/inter.woff2 +0 -0
  41. package/plugin/src/ui/assets/fonts/jetbrains-mono-OFL.txt +93 -0
  42. package/plugin/src/ui/assets/fonts/jetbrains-mono.woff2 +0 -0
  43. package/plugin/src/ui/assets/fonts/space-grotesk-OFL.txt +93 -0
  44. package/plugin/src/ui/assets/fonts/space-grotesk.woff2 +0 -0
  45. package/plugin/src/ui/assets/style.css +1926 -0
  46. package/plugin/src/ui/edit.ts +305 -0
  47. package/plugin/src/ui/forms.ts +209 -0
  48. package/plugin/src/ui/html.ts +130 -0
  49. package/plugin/src/ui/layout.ts +198 -0
  50. package/plugin/src/ui/lists.ts +645 -0
  51. package/plugin/src/ui/plan.ts +577 -0
  52. package/plugin/src/ui/run.ts +489 -0
  53. package/plugin/src/ui/server.ts +684 -0
  54. package/plugin/src/validators.d.ts +13 -0
  55. package/plugin/src/validators.js +1 -0
  56. package/plugin/src/views.ts +839 -0
  57. package/LICENSE +0 -21
  58. package/README.md +0 -294
  59. package/bin/checkmate.js +0 -13
  60. package/dist/ai/client.d.ts +0 -64
  61. package/dist/ai/client.d.ts.map +0 -1
  62. package/dist/ai/client.js +0 -313
  63. package/dist/ai/client.js.map +0 -1
  64. package/dist/ai/message-handler.d.ts +0 -9
  65. package/dist/ai/message-handler.d.ts.map +0 -1
  66. package/dist/ai/message-handler.js +0 -50
  67. package/dist/ai/message-handler.js.map +0 -1
  68. package/dist/ai/message-history.d.ts +0 -17
  69. package/dist/ai/message-history.d.ts.map +0 -1
  70. package/dist/ai/message-history.js +0 -45
  71. package/dist/ai/message-history.js.map +0 -1
  72. package/dist/ai/prompts.d.ts +0 -4
  73. package/dist/ai/prompts.d.ts.map +0 -1
  74. package/dist/ai/prompts.js +0 -24
  75. package/dist/ai/prompts.js.map +0 -1
  76. package/dist/ai/rate-limit-policy.d.ts +0 -9
  77. package/dist/ai/rate-limit-policy.d.ts.map +0 -1
  78. package/dist/ai/rate-limit-policy.js +0 -34
  79. package/dist/ai/rate-limit-policy.js.map +0 -1
  80. package/dist/ai/tool-response-handler.d.ts +0 -16
  81. package/dist/ai/tool-response-handler.d.ts.map +0 -1
  82. package/dist/ai/tool-response-handler.js +0 -85
  83. package/dist/ai/tool-response-handler.js.map +0 -1
  84. package/dist/ai/turn-processor.d.ts +0 -34
  85. package/dist/ai/turn-processor.d.ts.map +0 -1
  86. package/dist/ai/turn-processor.js +0 -107
  87. package/dist/ai/turn-processor.js.map +0 -1
  88. package/dist/api/allocate-run-identity.d.ts +0 -8
  89. package/dist/api/allocate-run-identity.d.ts.map +0 -1
  90. package/dist/api/allocate-run-identity.js +0 -10
  91. package/dist/api/allocate-run-identity.js.map +0 -1
  92. package/dist/api/execute-prepared-run.d.ts +0 -22
  93. package/dist/api/execute-prepared-run.d.ts.map +0 -1
  94. package/dist/api/execute-prepared-run.js +0 -184
  95. package/dist/api/execute-prepared-run.js.map +0 -1
  96. package/dist/api/index.d.ts +0 -25
  97. package/dist/api/index.d.ts.map +0 -1
  98. package/dist/api/index.js +0 -69
  99. package/dist/api/index.js.map +0 -1
  100. package/dist/api/prepare-run.d.ts +0 -44
  101. package/dist/api/prepare-run.d.ts.map +0 -1
  102. package/dist/api/prepare-run.js +0 -261
  103. package/dist/api/prepare-run.js.map +0 -1
  104. package/dist/cli/diagnostic-relay.d.ts +0 -6
  105. package/dist/cli/diagnostic-relay.d.ts.map +0 -1
  106. package/dist/cli/diagnostic-relay.js +0 -6
  107. package/dist/cli/diagnostic-relay.js.map +0 -1
  108. package/dist/cli/main.d.ts +0 -21
  109. package/dist/cli/main.d.ts.map +0 -1
  110. package/dist/cli/main.js +0 -166
  111. package/dist/cli/main.js.map +0 -1
  112. package/dist/cli/protocol.d.ts +0 -57
  113. package/dist/cli/protocol.d.ts.map +0 -1
  114. package/dist/cli/protocol.js +0 -116
  115. package/dist/cli/protocol.js.map +0 -1
  116. package/dist/cli/reconcile-result.d.ts +0 -13
  117. package/dist/cli/reconcile-result.d.ts.map +0 -1
  118. package/dist/cli/reconcile-result.js +0 -300
  119. package/dist/cli/reconcile-result.js.map +0 -1
  120. package/dist/cli/run-parent.d.ts +0 -37
  121. package/dist/cli/run-parent.d.ts.map +0 -1
  122. package/dist/cli/run-parent.js +0 -491
  123. package/dist/cli/run-parent.js.map +0 -1
  124. package/dist/cli/signals.d.ts +0 -36
  125. package/dist/cli/signals.d.ts.map +0 -1
  126. package/dist/cli/signals.js +0 -85
  127. package/dist/cli/signals.js.map +0 -1
  128. package/dist/cli/static-commands.d.ts +0 -11
  129. package/dist/cli/static-commands.d.ts.map +0 -1
  130. package/dist/cli/static-commands.js +0 -83
  131. package/dist/cli/static-commands.js.map +0 -1
  132. package/dist/cli/worker-stream-guard.d.ts +0 -20
  133. package/dist/cli/worker-stream-guard.d.ts.map +0 -1
  134. package/dist/cli/worker-stream-guard.js +0 -41
  135. package/dist/cli/worker-stream-guard.js.map +0 -1
  136. package/dist/cli/worker.d.ts +0 -3
  137. package/dist/cli/worker.d.ts.map +0 -1
  138. package/dist/cli/worker.js +0 -111
  139. package/dist/cli/worker.js.map +0 -1
  140. package/dist/config/ingestion.d.ts +0 -58
  141. package/dist/config/ingestion.d.ts.map +0 -1
  142. package/dist/config/ingestion.js +0 -283
  143. package/dist/config/ingestion.js.map +0 -1
  144. package/dist/config/manifest.d.ts +0 -20
  145. package/dist/config/manifest.d.ts.map +0 -1
  146. package/dist/config/manifest.js +0 -91
  147. package/dist/config/manifest.js.map +0 -1
  148. package/dist/config/model-egress.d.ts +0 -10
  149. package/dist/config/model-egress.d.ts.map +0 -1
  150. package/dist/config/model-egress.js +0 -62
  151. package/dist/config/model-egress.js.map +0 -1
  152. package/dist/config/package-resolution.d.ts +0 -4
  153. package/dist/config/package-resolution.d.ts.map +0 -1
  154. package/dist/config/package-resolution.js +0 -24
  155. package/dist/config/package-resolution.js.map +0 -1
  156. package/dist/config/policy.d.ts +0 -44
  157. package/dist/config/policy.d.ts.map +0 -1
  158. package/dist/config/policy.js +0 -141
  159. package/dist/config/policy.js.map +0 -1
  160. package/dist/config/record.d.ts +0 -4
  161. package/dist/config/record.d.ts.map +0 -1
  162. package/dist/config/record.js +0 -10
  163. package/dist/config/record.js.map +0 -1
  164. package/dist/config/secrets.d.ts +0 -11
  165. package/dist/config/secrets.d.ts.map +0 -1
  166. package/dist/config/secrets.js +0 -42
  167. package/dist/config/secrets.js.map +0 -1
  168. package/dist/contracts/diagnostics.d.ts +0 -4
  169. package/dist/contracts/diagnostics.d.ts.map +0 -1
  170. package/dist/contracts/diagnostics.js +0 -31
  171. package/dist/contracts/diagnostics.js.map +0 -1
  172. package/dist/contracts/serialize.d.ts +0 -2
  173. package/dist/contracts/serialize.d.ts.map +0 -1
  174. package/dist/contracts/serialize.js +0 -90
  175. package/dist/contracts/serialize.js.map +0 -1
  176. package/dist/contracts/types.d.ts +0 -316
  177. package/dist/contracts/types.d.ts.map +0 -1
  178. package/dist/contracts/types.js +0 -74
  179. package/dist/contracts/types.js.map +0 -1
  180. package/dist/contracts/validator.d.ts +0 -8
  181. package/dist/contracts/validator.d.ts.map +0 -1
  182. package/dist/contracts/validator.js +0 -71
  183. package/dist/contracts/validator.js.map +0 -1
  184. package/dist/driver.d.ts +0 -97
  185. package/dist/driver.d.ts.map +0 -1
  186. package/dist/driver.js +0 -24
  187. package/dist/driver.js.map +0 -1
  188. package/dist/drivers/descriptor.d.ts +0 -15
  189. package/dist/drivers/descriptor.d.ts.map +0 -1
  190. package/dist/drivers/descriptor.js +0 -122
  191. package/dist/drivers/descriptor.js.map +0 -1
  192. package/dist/drivers/loader.d.ts +0 -18
  193. package/dist/drivers/loader.d.ts.map +0 -1
  194. package/dist/drivers/loader.js +0 -97
  195. package/dist/drivers/loader.js.map +0 -1
  196. package/dist/drivers/web/checkmate-driver.json +0 -47
  197. package/dist/drivers/web/index.d.ts +0 -6
  198. package/dist/drivers/web/index.d.ts.map +0 -1
  199. package/dist/drivers/web/index.js +0 -27
  200. package/dist/drivers/web/index.js.map +0 -1
  201. package/dist/drivers/web/session.d.ts +0 -25
  202. package/dist/drivers/web/session.d.ts.map +0 -1
  203. package/dist/drivers/web/session.js +0 -132
  204. package/dist/drivers/web/session.js.map +0 -1
  205. package/dist/drivers/web/tools/network-request-recorder.d.ts +0 -46
  206. package/dist/drivers/web/tools/network-request-recorder.d.ts.map +0 -1
  207. package/dist/drivers/web/tools/network-request-recorder.js +0 -164
  208. package/dist/drivers/web/tools/network-request-recorder.js.map +0 -1
  209. package/dist/drivers/web/tools/screenshot-service.d.ts +0 -10
  210. package/dist/drivers/web/tools/screenshot-service.d.ts.map +0 -1
  211. package/dist/drivers/web/tools/screenshot-service.js +0 -23
  212. package/dist/drivers/web/tools/screenshot-service.js.map +0 -1
  213. package/dist/drivers/web/tools/snapshot-filter/index.d.ts +0 -4
  214. package/dist/drivers/web/tools/snapshot-filter/index.d.ts.map +0 -1
  215. package/dist/drivers/web/tools/snapshot-filter/index.js +0 -4
  216. package/dist/drivers/web/tools/snapshot-filter/index.js.map +0 -1
  217. package/dist/drivers/web/tools/snapshot-filter/semantic-scorer.d.ts +0 -15
  218. package/dist/drivers/web/tools/snapshot-filter/semantic-scorer.d.ts.map +0 -1
  219. package/dist/drivers/web/tools/snapshot-filter/semantic-scorer.js +0 -99
  220. package/dist/drivers/web/tools/snapshot-filter/semantic-scorer.js.map +0 -1
  221. package/dist/drivers/web/tools/snapshot-filter/snapshot-filter.d.ts +0 -5
  222. package/dist/drivers/web/tools/snapshot-filter/snapshot-filter.d.ts.map +0 -1
  223. package/dist/drivers/web/tools/snapshot-filter/snapshot-filter.js +0 -56
  224. package/dist/drivers/web/tools/snapshot-filter/snapshot-filter.js.map +0 -1
  225. package/dist/drivers/web/tools/snapshot-filter/tree-reconstructor.d.ts +0 -3
  226. package/dist/drivers/web/tools/snapshot-filter/tree-reconstructor.d.ts.map +0 -1
  227. package/dist/drivers/web/tools/snapshot-filter/tree-reconstructor.js +0 -85
  228. package/dist/drivers/web/tools/snapshot-filter/tree-reconstructor.js.map +0 -1
  229. package/dist/drivers/web/tools/snapshot-service.d.ts +0 -31
  230. package/dist/drivers/web/tools/snapshot-service.d.ts.map +0 -1
  231. package/dist/drivers/web/tools/snapshot-service.js +0 -96
  232. package/dist/drivers/web/tools/snapshot-service.js.map +0 -1
  233. package/dist/drivers/web/tools/tool.d.ts +0 -76
  234. package/dist/drivers/web/tools/tool.d.ts.map +0 -1
  235. package/dist/drivers/web/tools/tool.js +0 -562
  236. package/dist/drivers/web/tools/tool.js.map +0 -1
  237. package/dist/drivers/web/tools/transient-state-tracker.d.ts +0 -26
  238. package/dist/drivers/web/tools/transient-state-tracker.d.ts.map +0 -1
  239. package/dist/drivers/web/tools/transient-state-tracker.js +0 -301
  240. package/dist/drivers/web/tools/transient-state-tracker.js.map +0 -1
  241. package/dist/drivers/web/tools/types.d.ts +0 -11
  242. package/dist/drivers/web/tools/types.d.ts.map +0 -1
  243. package/dist/drivers/web/tools/types.js +0 -2
  244. package/dist/drivers/web/tools/types.js.map +0 -1
  245. package/dist/evidence/atomic-file.d.ts +0 -23
  246. package/dist/evidence/atomic-file.d.ts.map +0 -1
  247. package/dist/evidence/atomic-file.js +0 -104
  248. package/dist/evidence/atomic-file.js.map +0 -1
  249. package/dist/evidence/layout.d.ts +0 -30
  250. package/dist/evidence/layout.d.ts.map +0 -1
  251. package/dist/evidence/layout.js +0 -152
  252. package/dist/evidence/layout.js.map +0 -1
  253. package/dist/evidence/retention.d.ts +0 -5
  254. package/dist/evidence/retention.d.ts.map +0 -1
  255. package/dist/evidence/retention.js +0 -10
  256. package/dist/evidence/retention.js.map +0 -1
  257. package/dist/evidence/store.d.ts +0 -101
  258. package/dist/evidence/store.d.ts.map +0 -1
  259. package/dist/evidence/store.js +0 -375
  260. package/dist/evidence/store.js.map +0 -1
  261. package/dist/evidence/terminal-finalizer.d.ts +0 -19
  262. package/dist/evidence/terminal-finalizer.d.ts.map +0 -1
  263. package/dist/evidence/terminal-finalizer.js +0 -56
  264. package/dist/evidence/terminal-finalizer.js.map +0 -1
  265. package/dist/index.d.ts +0 -9
  266. package/dist/index.d.ts.map +0 -1
  267. package/dist/index.js +0 -12
  268. package/dist/index.js.map +0 -1
  269. package/dist/logging/invocation-logger.d.ts +0 -4
  270. package/dist/logging/invocation-logger.d.ts.map +0 -1
  271. package/dist/logging/invocation-logger.js +0 -25
  272. package/dist/logging/invocation-logger.js.map +0 -1
  273. package/dist/logging/level-logger.d.ts +0 -11
  274. package/dist/logging/level-logger.d.ts.map +0 -1
  275. package/dist/logging/level-logger.js +0 -82
  276. package/dist/logging/level-logger.js.map +0 -1
  277. package/dist/logging/types.d.ts +0 -8
  278. package/dist/logging/types.d.ts.map +0 -1
  279. package/dist/logging/types.js +0 -7
  280. package/dist/logging/types.js.map +0 -1
  281. package/dist/redaction/diagnostic-sanitizer.d.ts +0 -7
  282. package/dist/redaction/diagnostic-sanitizer.d.ts.map +0 -1
  283. package/dist/redaction/diagnostic-sanitizer.js +0 -42
  284. package/dist/redaction/diagnostic-sanitizer.js.map +0 -1
  285. package/dist/redaction/redactor.d.ts +0 -40
  286. package/dist/redaction/redactor.d.ts.map +0 -1
  287. package/dist/redaction/redactor.js +0 -176
  288. package/dist/redaction/redactor.js.map +0 -1
  289. package/dist/redaction/scrub.d.ts +0 -29
  290. package/dist/redaction/scrub.d.ts.map +0 -1
  291. package/dist/redaction/scrub.js +0 -54
  292. package/dist/redaction/scrub.js.map +0 -1
  293. package/dist/runtime/config.d.ts +0 -16
  294. package/dist/runtime/config.d.ts.map +0 -1
  295. package/dist/runtime/config.js +0 -2
  296. package/dist/runtime/config.js.map +0 -1
  297. package/dist/runtime/driver-boundary.d.ts +0 -16
  298. package/dist/runtime/driver-boundary.d.ts.map +0 -1
  299. package/dist/runtime/driver-boundary.js +0 -71
  300. package/dist/runtime/driver-boundary.js.map +0 -1
  301. package/dist/runtime/driver-session.d.ts +0 -9
  302. package/dist/runtime/driver-session.d.ts.map +0 -1
  303. package/dist/runtime/driver-session.js +0 -64
  304. package/dist/runtime/driver-session.js.map +0 -1
  305. package/dist/runtime/internal-step-evidence.d.ts +0 -30
  306. package/dist/runtime/internal-step-evidence.d.ts.map +0 -1
  307. package/dist/runtime/internal-step-evidence.js +0 -82
  308. package/dist/runtime/internal-step-evidence.js.map +0 -1
  309. package/dist/runtime/result-adapter.d.ts +0 -9
  310. package/dist/runtime/result-adapter.d.ts.map +0 -1
  311. package/dist/runtime/result-adapter.js +0 -77
  312. package/dist/runtime/result-adapter.js.map +0 -1
  313. package/dist/runtime/runner.d.ts +0 -43
  314. package/dist/runtime/runner.d.ts.map +0 -1
  315. package/dist/runtime/runner.js +0 -72
  316. package/dist/runtime/runner.js.map +0 -1
  317. package/dist/runtime/scenario-control.d.ts +0 -40
  318. package/dist/runtime/scenario-control.d.ts.map +0 -1
  319. package/dist/runtime/scenario-control.js +0 -94
  320. package/dist/runtime/scenario-control.js.map +0 -1
  321. package/dist/runtime/scenario-runner.d.ts +0 -41
  322. package/dist/runtime/scenario-runner.d.ts.map +0 -1
  323. package/dist/runtime/scenario-runner.js +0 -274
  324. package/dist/runtime/scenario-runner.js.map +0 -1
  325. package/dist/runtime/scenario-state.d.ts +0 -55
  326. package/dist/runtime/scenario-state.d.ts.map +0 -1
  327. package/dist/runtime/scenario-state.js +0 -128
  328. package/dist/runtime/scenario-state.js.map +0 -1
  329. package/dist/runtime/step-execution.d.ts +0 -27
  330. package/dist/runtime/step-execution.d.ts.map +0 -1
  331. package/dist/runtime/step-execution.js +0 -143
  332. package/dist/runtime/step-execution.js.map +0 -1
  333. package/dist/runtime/text.d.ts +0 -10
  334. package/dist/runtime/text.d.ts.map +0 -1
  335. package/dist/runtime/text.js +0 -25
  336. package/dist/runtime/text.js.map +0 -1
  337. package/dist/runtime/types.d.ts +0 -53
  338. package/dist/runtime/types.d.ts.map +0 -1
  339. package/dist/runtime/types.js +0 -2
  340. package/dist/runtime/types.js.map +0 -1
  341. package/dist/runtime/usage-tracker.d.ts +0 -37
  342. package/dist/runtime/usage-tracker.d.ts.map +0 -1
  343. package/dist/runtime/usage-tracker.js +0 -110
  344. package/dist/runtime/usage-tracker.js.map +0 -1
  345. package/dist/tools/define-agent-tool.d.ts +0 -20
  346. package/dist/tools/define-agent-tool.d.ts.map +0 -1
  347. package/dist/tools/define-agent-tool.js +0 -30
  348. package/dist/tools/define-agent-tool.js.map +0 -1
  349. package/dist/tools/dispatcher.d.ts +0 -19
  350. package/dist/tools/dispatcher.d.ts.map +0 -1
  351. package/dist/tools/dispatcher.js +0 -91
  352. package/dist/tools/dispatcher.js.map +0 -1
  353. package/dist/tools/loop-detector.d.ts +0 -27
  354. package/dist/tools/loop-detector.d.ts.map +0 -1
  355. package/dist/tools/loop-detector.js +0 -76
  356. package/dist/tools/loop-detector.js.map +0 -1
  357. package/dist/tools/registry.d.ts +0 -19
  358. package/dist/tools/registry.d.ts.map +0 -1
  359. package/dist/tools/registry.js +0 -54
  360. package/dist/tools/registry.js.map +0 -1
  361. package/dist/tools/step/result-tool.d.ts +0 -7
  362. package/dist/tools/step/result-tool.d.ts.map +0 -1
  363. package/dist/tools/step/result-tool.js +0 -34
  364. package/dist/tools/step/result-tool.js.map +0 -1
  365. package/dist/tools/tool-contract.d.ts +0 -3
  366. package/dist/tools/tool-contract.d.ts.map +0 -1
  367. package/dist/tools/tool-contract.js +0 -2
  368. package/dist/tools/tool-contract.js.map +0 -1
  369. package/dist/tools/types.d.ts +0 -210
  370. package/dist/tools/types.d.ts.map +0 -1
  371. package/dist/tools/types.js +0 -4
  372. package/dist/tools/types.js.map +0 -1
  373. package/docs/CLI.md +0 -59
  374. package/docs/CONFIGURATION.md +0 -105
  375. package/docs/DRIVERS.md +0 -79
  376. package/docs/EVIDENCE.md +0 -64
  377. package/schemas/checkmate-config.v1.json +0 -176
  378. package/schemas/describe-result.v1.json +0 -414
  379. package/schemas/driver-descriptor.v1.json +0 -66
  380. package/schemas/run-request.v1.json +0 -67
  381. package/schemas/run-result.v1.json +0 -333
  382. package/schemas/validation-result.v1.json +0 -86
package/package.json CHANGED
@@ -1,111 +1,25 @@
1
1
  {
2
2
  "name": "@xoxoai/checkmate",
3
- "version": "0.6.7",
4
- "description": "Agent-first test automation harness with versioned requests, bounded execution, and durable evidence",
5
- "homepage": "https://github.com/dawiddiwad/checkmate",
6
- "repository": {
7
- "type": "git",
8
- "url": "git+https://github.com/dawiddiwad/checkmate.git"
3
+ "version": "0.7.0",
4
+ "description": "Run Checkmate QA workflows from the command line with Claude Code",
5
+ "type": "module",
6
+ "bin": {
7
+ "checkmate": "dist/checkmate.js"
9
8
  },
10
- "keywords": [
11
- "test-automation",
12
- "e2e-testing",
13
- "ai-testing",
14
- "agents",
15
- "test-harness",
16
- "cli",
17
- "playwright"
18
- ],
19
9
  "files": [
20
- "bin",
21
10
  "dist",
22
- "schemas",
23
- "docs/CLI.md",
24
- "docs/CONFIGURATION.md",
25
- "docs/DRIVERS.md",
26
- "docs/EVIDENCE.md",
27
- "README.md",
28
- "LICENSE"
11
+ "plugin"
29
12
  ],
30
- "bin": {
31
- "checkmate": "bin/checkmate.js"
32
- },
33
- "publishConfig": {
34
- "access": "public"
35
- },
36
- "main": "dist/index.js",
37
- "types": "dist/index.d.ts",
38
- "type": "module",
39
- "exports": {
40
- ".": {
41
- "types": "./dist/index.d.ts",
42
- "default": "./dist/index.js"
43
- },
44
- "./driver": {
45
- "types": "./dist/driver.d.ts",
46
- "default": "./dist/driver.js"
47
- },
48
- "./driver-web": {
49
- "types": "./dist/drivers/web/index.d.ts",
50
- "default": "./dist/drivers/web/index.js"
51
- },
52
- "./driver-web/checkmate-driver.json": "./dist/drivers/web/checkmate-driver.json",
53
- "./schemas/*": "./schemas/*"
13
+ "engines": {
14
+ "node": ">=24.12.0"
54
15
  },
55
16
  "scripts": {
56
- "checkmate:install": "npm install && npx playwright install",
57
- "build": "npm run validation:check && npm run build:package",
58
- "build:dist": "tsc -p tsconfig.build.json",
59
- "build:package": "npm run clean && npm run build:dist && node scripts/copy-package-assets.mjs",
60
- "clean": "rm -rf dist schemas",
61
- "prepack": "npm run build:package",
62
- "phase:verify": "node test/package/lifecycle.mjs",
63
- "test:package:active": "node test/package/active-exports.mjs",
64
- "test:acceptance:agent": "node test/acceptance/agent-workflow.mjs",
65
- "test:e2e:ollama": "node test/acceptance/ollama-cli.mjs",
66
- "validation:check": "npm run compile:check && npm run lint:check && npm run format:check && npm run test:unit:run",
67
- "compile:check": "npx tsc --noEmit",
68
- "lint:check": "eslint .",
69
- "lint:fix": "eslint . --fix",
70
- "format:check": "prettier . --check",
71
- "format:fix": "prettier . --write",
72
- "test:unit": "vitest --config src/test/vitest.config.ts",
73
- "test:unit:ui": "vitest --ui --config src/test/vitest.config.ts",
74
- "test:unit:coverage": "vitest --coverage --config src/test/vitest.config.ts",
75
- "test:unit:run": "vitest run --config src/test/vitest.config.ts",
76
- "test:package:final": "node test/package/final-surface.mjs"
77
- },
78
- "author": "Dawid Dobrowolski SoftQA",
79
- "license": "MIT",
80
- "dependencies": {
81
- "@huggingface/transformers": "^4.2.0",
82
- "ajv": "^8.20.0",
83
- "ajv-formats": "^3.0.1",
84
- "openai": "^7.10.0",
85
- "playwright": "^1.63.0",
86
- "sharp": "^0.35.4",
87
- "yaml": "^2.9.0",
88
- "zod": "^4.5.4"
17
+ "prepack": "node ../scripts/build-cli.ts"
89
18
  },
90
- "devDependencies": {
91
- "@eslint/js": "^10.0.1",
92
- "@types/node": "^26.5.0",
93
- "@vitest/coverage-v8": "^5.0.0",
94
- "@vitest/ui": "^5.0.0",
95
- "dotenv": "^18.0.3",
96
- "eslint": "^10.10.0",
97
- "eslint-config-prettier": "^10.1.8",
98
- "prettier": "^3.9.6",
99
- "tsx": "^4.23.13",
100
- "typescript": "^6.0.3",
101
- "typescript-eslint": "^8.70.0",
102
- "vitest": "^5.0.0"
103
- },
104
- "directories": {
105
- "doc": "docs",
106
- "test": "test"
19
+ "repository": {
20
+ "type": "git",
21
+ "url": "git+https://github.com/dawiddiwad/checkmate.git",
22
+ "directory": "cli"
107
23
  },
108
- "bugs": {
109
- "url": "https://github.com/dawiddiwad/checkmate/issues"
110
- }
24
+ "license": "MIT"
111
25
  }
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "checkmate",
3
+ "version": "0.7.0",
4
+ "description": "Plan tests, resolve gaps, and collect evidence.",
5
+ "author": {
6
+ "name": "Dawid Dobrowolski"
7
+ },
8
+ "repository": "https://github.com/dawiddiwad/checkmate",
9
+ "license": "MIT"
10
+ }
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ import { main } from '../src/cli.ts'
3
+ await main(process.argv.slice(2))
@@ -0,0 +1,78 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "finding.schema.json",
4
+ "type": "object",
5
+ "properties": {
6
+ "id": {
7
+ "type": "string",
8
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
9
+ },
10
+ "type": {
11
+ "enum": ["defect", "potential_issue"]
12
+ },
13
+ "severity": {
14
+ "enum": ["low", "medium", "high", "critical"]
15
+ },
16
+ "assertionIds": {
17
+ "type": "array",
18
+ "items": {
19
+ "type": "string",
20
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}\\.[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
21
+ },
22
+ "minItems": 1,
23
+ "uniqueItems": true
24
+ },
25
+ "requirementIds": {
26
+ "type": "array",
27
+ "items": {
28
+ "type": "string",
29
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
30
+ },
31
+ "minItems": 1,
32
+ "uniqueItems": true
33
+ },
34
+ "title": {
35
+ "type": "string",
36
+ "minLength": 1
37
+ },
38
+ "expected": {
39
+ "type": "string",
40
+ "minLength": 1
41
+ },
42
+ "observed": {
43
+ "type": "string",
44
+ "minLength": 1
45
+ },
46
+ "reproduction": {
47
+ "type": "array",
48
+ "items": {
49
+ "type": "string",
50
+ "minLength": 1
51
+ },
52
+ "minItems": 1,
53
+ "uniqueItems": true
54
+ },
55
+ "evidenceIds": {
56
+ "type": "array",
57
+ "items": {
58
+ "type": "string",
59
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
60
+ },
61
+ "minItems": 1,
62
+ "uniqueItems": true
63
+ }
64
+ },
65
+ "required": [
66
+ "id",
67
+ "type",
68
+ "severity",
69
+ "assertionIds",
70
+ "requirementIds",
71
+ "title",
72
+ "expected",
73
+ "observed",
74
+ "reproduction",
75
+ "evidenceIds"
76
+ ],
77
+ "additionalProperties": false
78
+ }
@@ -0,0 +1,56 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "gap.schema.json",
4
+ "type": "object",
5
+ "properties": {
6
+ "id": {
7
+ "type": "string",
8
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
9
+ },
10
+ "severity": {
11
+ "enum": ["blocking", "non_blocking"]
12
+ },
13
+ "status": {
14
+ "enum": ["open", "resolved", "deferred"]
15
+ },
16
+ "requirementIds": {
17
+ "type": "array",
18
+ "items": {
19
+ "type": "string",
20
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
21
+ },
22
+ "minItems": 0,
23
+ "uniqueItems": true
24
+ },
25
+ "testIds": {
26
+ "type": "array",
27
+ "items": {
28
+ "type": "string",
29
+ "pattern": "^([A-Za-z0-9][A-Za-z0-9_-]{0,95}:)?[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
30
+ },
31
+ "minItems": 0,
32
+ "uniqueItems": true
33
+ },
34
+ "question": {
35
+ "type": "string",
36
+ "minLength": 1
37
+ },
38
+ "consequence": {
39
+ "type": "string",
40
+ "minLength": 1
41
+ },
42
+ "decisionId": {
43
+ "anyOf": [
44
+ {
45
+ "type": "string",
46
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
47
+ },
48
+ {
49
+ "type": "null"
50
+ }
51
+ ]
52
+ }
53
+ },
54
+ "required": ["id", "severity", "status", "requirementIds", "testIds", "question", "consequence", "decisionId"],
55
+ "additionalProperties": false
56
+ }
@@ -0,0 +1,103 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "plan-candidate.schema.json",
4
+ "type": "object",
5
+ "properties": {
6
+ "requirements": {
7
+ "$ref": "plan.schema.json#/properties/requirements"
8
+ },
9
+ "tests": {
10
+ "type": "array",
11
+ "items": {
12
+ "type": "object",
13
+ "properties": {
14
+ "id": {
15
+ "type": "string",
16
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
17
+ },
18
+ "title": {
19
+ "type": "string",
20
+ "minLength": 1,
21
+ "maxLength": 200
22
+ },
23
+ "requirementIds": {
24
+ "type": "array",
25
+ "items": {
26
+ "type": "string",
27
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
28
+ },
29
+ "minItems": 1,
30
+ "uniqueItems": true
31
+ },
32
+ "capability": {
33
+ "type": "string",
34
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
35
+ },
36
+ "operations": {
37
+ "type": "array",
38
+ "items": {
39
+ "type": "string",
40
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
41
+ },
42
+ "minItems": 1,
43
+ "uniqueItems": true
44
+ },
45
+ "dependsOn": {
46
+ "type": "array",
47
+ "items": {
48
+ "type": "string",
49
+ "pattern": "^([A-Za-z0-9][A-Za-z0-9_-]{0,95}:)?[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
50
+ },
51
+ "minItems": 0,
52
+ "uniqueItems": true
53
+ },
54
+ "preconditions": {
55
+ "type": "array",
56
+ "items": {
57
+ "type": "string",
58
+ "minLength": 1
59
+ },
60
+ "minItems": 0,
61
+ "uniqueItems": true
62
+ },
63
+ "action": {
64
+ "type": "string",
65
+ "minLength": 1
66
+ },
67
+ "assertions": {
68
+ "type": "array",
69
+ "items": {
70
+ "$ref": "plan.schema.json#/definitions/assertion"
71
+ },
72
+ "minItems": 0,
73
+ "uniqueItems": true
74
+ }
75
+ },
76
+ "required": [
77
+ "id",
78
+ "title",
79
+ "requirementIds",
80
+ "capability",
81
+ "operations",
82
+ "dependsOn",
83
+ "preconditions",
84
+ "action",
85
+ "assertions"
86
+ ],
87
+ "additionalProperties": false
88
+ },
89
+ "minItems": 0,
90
+ "uniqueItems": true
91
+ },
92
+ "gaps": {
93
+ "type": "array",
94
+ "items": {
95
+ "$ref": "gap.schema.json"
96
+ },
97
+ "minItems": 0,
98
+ "uniqueItems": true
99
+ }
100
+ },
101
+ "required": ["tests", "gaps"],
102
+ "additionalProperties": false
103
+ }
@@ -0,0 +1,63 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "plan-delta.schema.json",
4
+ "type": "object",
5
+ "properties": {
6
+ "tests": {
7
+ "type": "object",
8
+ "propertyNames": {
9
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
10
+ },
11
+ "additionalProperties": {
12
+ "type": "object",
13
+ "properties": {
14
+ "action": {
15
+ "type": "string",
16
+ "minLength": 1
17
+ },
18
+ "preconditions": {
19
+ "type": "array",
20
+ "items": {
21
+ "type": "string",
22
+ "minLength": 1
23
+ },
24
+ "minItems": 0,
25
+ "uniqueItems": true
26
+ },
27
+ "assertions": {
28
+ "type": "object",
29
+ "propertyNames": {
30
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
31
+ },
32
+ "additionalProperties": {
33
+ "anyOf": [
34
+ {
35
+ "type": "object",
36
+ "properties": {
37
+ "check": {
38
+ "type": "string",
39
+ "minLength": 1
40
+ },
41
+ "checkKind": {
42
+ "enum": ["deterministic", "agent_observation"]
43
+ }
44
+ },
45
+ "additionalProperties": false,
46
+ "minProperties": 1
47
+ },
48
+ {
49
+ "type": "null"
50
+ }
51
+ ]
52
+ },
53
+ "minProperties": 1
54
+ }
55
+ },
56
+ "additionalProperties": false,
57
+ "minProperties": 1
58
+ }
59
+ }
60
+ },
61
+ "required": ["tests"],
62
+ "additionalProperties": false
63
+ }
@@ -0,0 +1,116 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "plan-patch.schema.json",
4
+ "type": "object",
5
+ "properties": {
6
+ "requirements": {
7
+ "type": "object",
8
+ "propertyNames": {
9
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
10
+ },
11
+ "additionalProperties": {
12
+ "anyOf": [
13
+ {
14
+ "type": "object",
15
+ "properties": {
16
+ "text": {
17
+ "type": "string",
18
+ "minLength": 1
19
+ },
20
+ "source": {
21
+ "type": "string",
22
+ "minLength": 1
23
+ }
24
+ },
25
+ "additionalProperties": false,
26
+ "minProperties": 1
27
+ },
28
+ {
29
+ "type": "null"
30
+ }
31
+ ]
32
+ }
33
+ },
34
+ "tests": {
35
+ "type": "object",
36
+ "propertyNames": {
37
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
38
+ },
39
+ "additionalProperties": {
40
+ "anyOf": [
41
+ {
42
+ "type": "object",
43
+ "properties": {
44
+ "title": {
45
+ "$ref": "plan-candidate.schema.json#/properties/tests/items/properties/title"
46
+ },
47
+ "requirementIds": {
48
+ "$ref": "plan-candidate.schema.json#/properties/tests/items/properties/requirementIds"
49
+ },
50
+ "capability": {
51
+ "$ref": "plan-candidate.schema.json#/properties/tests/items/properties/capability"
52
+ },
53
+ "operations": {
54
+ "$ref": "plan-candidate.schema.json#/properties/tests/items/properties/operations"
55
+ },
56
+ "dependsOn": {
57
+ "$ref": "plan-candidate.schema.json#/properties/tests/items/properties/dependsOn"
58
+ },
59
+ "preconditions": {
60
+ "$ref": "plan-candidate.schema.json#/properties/tests/items/properties/preconditions"
61
+ },
62
+ "action": {
63
+ "$ref": "plan-candidate.schema.json#/properties/tests/items/properties/action"
64
+ },
65
+ "assertions": {
66
+ "$ref": "plan-delta.schema.json#/properties/tests/additionalProperties/properties/assertions"
67
+ }
68
+ },
69
+ "additionalProperties": false,
70
+ "minProperties": 1
71
+ },
72
+ {
73
+ "type": "null"
74
+ }
75
+ ]
76
+ }
77
+ },
78
+ "gaps": {
79
+ "type": "object",
80
+ "propertyNames": {
81
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
82
+ },
83
+ "additionalProperties": {
84
+ "anyOf": [
85
+ {
86
+ "type": "object",
87
+ "properties": {
88
+ "severity": {
89
+ "$ref": "gap.schema.json#/properties/severity"
90
+ },
91
+ "requirementIds": {
92
+ "$ref": "gap.schema.json#/properties/requirementIds"
93
+ },
94
+ "testIds": {
95
+ "$ref": "gap.schema.json#/properties/testIds"
96
+ },
97
+ "question": {
98
+ "$ref": "gap.schema.json#/properties/question"
99
+ },
100
+ "consequence": {
101
+ "$ref": "gap.schema.json#/properties/consequence"
102
+ }
103
+ },
104
+ "additionalProperties": false,
105
+ "minProperties": 1
106
+ },
107
+ {
108
+ "type": "null"
109
+ }
110
+ ]
111
+ }
112
+ }
113
+ },
114
+ "additionalProperties": false,
115
+ "minProperties": 1
116
+ }
@@ -0,0 +1,108 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "plan-request.schema.json",
4
+ "type": "object",
5
+ "properties": {
6
+ "objective": {
7
+ "type": "string",
8
+ "minLength": 1
9
+ },
10
+ "requirements": {
11
+ "type": "array",
12
+ "items": {
13
+ "type": "object",
14
+ "properties": {
15
+ "id": {
16
+ "type": "string",
17
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$"
18
+ },
19
+ "text": {
20
+ "type": "string",
21
+ "minLength": 1
22
+ },
23
+ "source": {
24
+ "type": "string",
25
+ "minLength": 1
26
+ }
27
+ },
28
+ "required": ["id", "text", "source"],
29
+ "additionalProperties": false
30
+ },
31
+ "minItems": 1,
32
+ "uniqueItems": true
33
+ },
34
+ "sourceContext": {
35
+ "type": "array",
36
+ "items": {
37
+ "type": "object",
38
+ "properties": {
39
+ "uri": {
40
+ "type": "string",
41
+ "minLength": 1
42
+ },
43
+ "content": {
44
+ "type": "string",
45
+ "minLength": 1
46
+ }
47
+ },
48
+ "required": ["uri", "content"],
49
+ "additionalProperties": false
50
+ },
51
+ "minItems": 0,
52
+ "uniqueItems": true
53
+ },
54
+ "context": {
55
+ "type": "object",
56
+ "properties": {
57
+ "sources": {
58
+ "type": "array",
59
+ "items": {
60
+ "type": "string",
61
+ "minLength": 1
62
+ },
63
+ "minItems": 0,
64
+ "uniqueItems": true
65
+ },
66
+ "instructions": {
67
+ "type": "string",
68
+ "minLength": 1
69
+ }
70
+ },
71
+ "required": ["sources"],
72
+ "additionalProperties": false
73
+ },
74
+ "tools": {
75
+ "type": "array",
76
+ "items": {
77
+ "anyOf": [
78
+ {
79
+ "type": "string",
80
+ "minLength": 1
81
+ },
82
+ {
83
+ "type": "object",
84
+ "properties": {
85
+ "name": {
86
+ "type": "string",
87
+ "minLength": 1
88
+ },
89
+ "kind": {
90
+ "enum": ["cli", "mcp", "skill"]
91
+ },
92
+ "purpose": {
93
+ "type": "string",
94
+ "minLength": 1
95
+ }
96
+ },
97
+ "required": ["name", "kind", "purpose"],
98
+ "additionalProperties": false
99
+ }
100
+ ]
101
+ },
102
+ "minItems": 0,
103
+ "uniqueItems": true
104
+ }
105
+ },
106
+ "required": ["objective"],
107
+ "additionalProperties": false
108
+ }