@schnick371/devsteps-shared 1.1.0-next.4 → 2.0.0-next.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1156) hide show
  1. package/LICENSE.md +115 -0
  2. package/README.md +12 -30
  3. package/dist/constants/index.d.ts +40 -56
  4. package/dist/constants/index.d.ts.map +1 -1
  5. package/dist/constants/index.js +7 -23
  6. package/dist/constants/index.js.map +1 -1
  7. package/dist/core/add-batch-input.d.ts +28 -0
  8. package/dist/core/add-batch-input.d.ts.map +1 -0
  9. package/dist/core/add-batch-input.js +106 -0
  10. package/dist/core/add-batch-input.js.map +1 -0
  11. package/dist/core/add-batch.d.ts +37 -0
  12. package/dist/core/add-batch.d.ts.map +1 -0
  13. package/dist/core/add-batch.js +219 -0
  14. package/dist/core/add-batch.js.map +1 -0
  15. package/dist/core/add-preparation.d.ts +40 -0
  16. package/dist/core/add-preparation.d.ts.map +1 -0
  17. package/dist/core/add-preparation.js +208 -0
  18. package/dist/core/add-preparation.js.map +1 -0
  19. package/dist/core/add.d.ts +29 -6
  20. package/dist/core/add.d.ts.map +1 -1
  21. package/dist/core/add.js +54 -64
  22. package/dist/core/add.js.map +1 -1
  23. package/dist/core/archive.d.ts +18 -3
  24. package/dist/core/archive.d.ts.map +1 -1
  25. package/dist/core/archive.js +80 -35
  26. package/dist/core/archive.js.map +1 -1
  27. package/dist/core/auto-migrate-detect.d.ts +51 -16
  28. package/dist/core/auto-migrate-detect.d.ts.map +1 -1
  29. package/dist/core/auto-migrate-detect.js +128 -29
  30. package/dist/core/auto-migrate-detect.js.map +1 -1
  31. package/dist/core/auto-migrate-folders.d.ts +35 -0
  32. package/dist/core/auto-migrate-folders.d.ts.map +1 -0
  33. package/dist/core/auto-migrate-folders.js +104 -0
  34. package/dist/core/auto-migrate-folders.js.map +1 -0
  35. package/dist/core/auto-migrate-impl.d.ts +12 -10
  36. package/dist/core/auto-migrate-impl.d.ts.map +1 -1
  37. package/dist/core/auto-migrate-impl.js +79 -64
  38. package/dist/core/auto-migrate-impl.js.map +1 -1
  39. package/dist/core/auto-migrate.d.ts +16 -20
  40. package/dist/core/auto-migrate.d.ts.map +1 -1
  41. package/dist/core/auto-migrate.js +65 -56
  42. package/dist/core/auto-migrate.js.map +1 -1
  43. package/dist/core/board.d.ts +34 -0
  44. package/dist/core/board.d.ts.map +1 -0
  45. package/dist/core/board.js +64 -0
  46. package/dist/core/board.js.map +1 -0
  47. package/dist/core/bulk-update.d.ts +2 -0
  48. package/dist/core/bulk-update.d.ts.map +1 -1
  49. package/dist/core/bulk-update.js +45 -76
  50. package/dist/core/bulk-update.js.map +1 -1
  51. package/dist/core/child-relations.d.ts +26 -0
  52. package/dist/core/child-relations.d.ts.map +1 -0
  53. package/dist/core/child-relations.js +50 -0
  54. package/dist/core/child-relations.js.map +1 -0
  55. package/dist/core/classification-defaults.d.ts +20 -0
  56. package/dist/core/classification-defaults.d.ts.map +1 -0
  57. package/dist/core/classification-defaults.js +253 -0
  58. package/dist/core/classification-defaults.js.map +1 -0
  59. package/dist/core/classification-exports.d.ts +16 -0
  60. package/dist/core/classification-exports.d.ts.map +1 -0
  61. package/dist/core/classification-exports.js +16 -0
  62. package/dist/core/classification-exports.js.map +1 -0
  63. package/dist/core/classification-gate.d.ts +86 -0
  64. package/dist/core/classification-gate.d.ts.map +1 -0
  65. package/dist/core/classification-gate.js +250 -0
  66. package/dist/core/classification-gate.js.map +1 -0
  67. package/dist/core/classification-leaf.d.ts +50 -0
  68. package/dist/core/classification-leaf.d.ts.map +1 -0
  69. package/dist/core/classification-leaf.js +134 -0
  70. package/dist/core/classification-leaf.js.map +1 -0
  71. package/dist/core/classification-registry-action.d.ts +34 -0
  72. package/dist/core/classification-registry-action.d.ts.map +1 -0
  73. package/dist/core/classification-registry-action.js +71 -0
  74. package/dist/core/classification-registry-action.js.map +1 -0
  75. package/dist/core/classification-registry-ops.d.ts +30 -0
  76. package/dist/core/classification-registry-ops.d.ts.map +1 -0
  77. package/dist/core/classification-registry-ops.js +122 -0
  78. package/dist/core/classification-registry-ops.js.map +1 -0
  79. package/dist/core/classification-registry.d.ts +132 -0
  80. package/dist/core/classification-registry.d.ts.map +1 -0
  81. package/dist/core/classification-registry.js +141 -0
  82. package/dist/core/classification-registry.js.map +1 -0
  83. package/dist/core/classification-resolve.d.ts +31 -0
  84. package/dist/core/classification-resolve.d.ts.map +1 -0
  85. package/dist/core/classification-resolve.js +69 -0
  86. package/dist/core/classification-resolve.js.map +1 -0
  87. package/dist/core/classification-score.d.ts +50 -0
  88. package/dist/core/classification-score.d.ts.map +1 -0
  89. package/dist/core/classification-score.js +107 -0
  90. package/dist/core/classification-score.js.map +1 -0
  91. package/dist/core/classification-snapshot.d.ts +55 -0
  92. package/dist/core/classification-snapshot.d.ts.map +1 -0
  93. package/dist/core/classification-snapshot.js +85 -0
  94. package/dist/core/classification-snapshot.js.map +1 -0
  95. package/dist/core/closeout-branch-record.d.ts +56 -0
  96. package/dist/core/closeout-branch-record.d.ts.map +1 -0
  97. package/dist/core/closeout-branch-record.js +201 -0
  98. package/dist/core/closeout-branch-record.js.map +1 -0
  99. package/dist/core/closeout-classify.d.ts +25 -0
  100. package/dist/core/closeout-classify.d.ts.map +1 -0
  101. package/dist/core/closeout-classify.js +271 -0
  102. package/dist/core/closeout-classify.js.map +1 -0
  103. package/dist/core/closeout-git.d.ts +52 -0
  104. package/dist/core/closeout-git.d.ts.map +1 -0
  105. package/dist/core/closeout-git.js +94 -0
  106. package/dist/core/closeout-git.js.map +1 -0
  107. package/dist/core/closeout-handover-draft.d.ts +19 -0
  108. package/dist/core/closeout-handover-draft.d.ts.map +1 -0
  109. package/dist/core/closeout-handover-draft.js +144 -0
  110. package/dist/core/closeout-handover-draft.js.map +1 -0
  111. package/dist/core/closeout-inventory.d.ts +18 -0
  112. package/dist/core/closeout-inventory.d.ts.map +1 -0
  113. package/dist/core/closeout-inventory.js +251 -0
  114. package/dist/core/closeout-inventory.js.map +1 -0
  115. package/dist/core/closeout-preserve.d.ts +23 -0
  116. package/dist/core/closeout-preserve.d.ts.map +1 -0
  117. package/dist/core/closeout-preserve.js +123 -0
  118. package/dist/core/closeout-preserve.js.map +1 -0
  119. package/dist/core/closeout-record-write.d.ts +29 -0
  120. package/dist/core/closeout-record-write.d.ts.map +1 -0
  121. package/dist/core/closeout-record-write.js +69 -0
  122. package/dist/core/closeout-record-write.js.map +1 -0
  123. package/dist/core/closeout-repository.d.ts +16 -0
  124. package/dist/core/closeout-repository.d.ts.map +1 -0
  125. package/dist/core/closeout-repository.js +84 -0
  126. package/dist/core/closeout-repository.js.map +1 -0
  127. package/dist/core/closeout-rescue-refs.d.ts +18 -0
  128. package/dist/core/closeout-rescue-refs.d.ts.map +1 -0
  129. package/dist/core/closeout-rescue-refs.js +90 -0
  130. package/dist/core/closeout-rescue-refs.js.map +1 -0
  131. package/dist/core/closeout-rescue-run.d.ts +29 -0
  132. package/dist/core/closeout-rescue-run.d.ts.map +1 -0
  133. package/dist/core/closeout-rescue-run.js +66 -0
  134. package/dist/core/closeout-rescue-run.js.map +1 -0
  135. package/dist/core/closeout-rescue.d.ts +66 -0
  136. package/dist/core/closeout-rescue.d.ts.map +1 -0
  137. package/dist/core/closeout-rescue.js +302 -0
  138. package/dist/core/closeout-rescue.js.map +1 -0
  139. package/dist/core/closeout-rows.d.ts +10 -0
  140. package/dist/core/closeout-rows.d.ts.map +1 -0
  141. package/dist/core/closeout-rows.js +103 -0
  142. package/dist/core/closeout-rows.js.map +1 -0
  143. package/dist/core/closeout-secrets.d.ts +20 -0
  144. package/dist/core/closeout-secrets.d.ts.map +1 -0
  145. package/dist/core/closeout-secrets.js +119 -0
  146. package/dist/core/closeout-secrets.js.map +1 -0
  147. package/dist/core/closeout-types.d.ts +140 -0
  148. package/dist/core/closeout-types.d.ts.map +1 -0
  149. package/dist/core/closeout-types.js +9 -0
  150. package/dist/core/closeout-types.js.map +1 -0
  151. package/dist/core/closeout-worktree-links.d.ts +27 -0
  152. package/dist/core/closeout-worktree-links.d.ts.map +1 -0
  153. package/dist/core/closeout-worktree-links.js +112 -0
  154. package/dist/core/closeout-worktree-links.js.map +1 -0
  155. package/dist/core/closeout-worktrees.d.ts +54 -0
  156. package/dist/core/closeout-worktrees.d.ts.map +1 -0
  157. package/dist/core/closeout-worktrees.js +250 -0
  158. package/dist/core/closeout-worktrees.js.map +1 -0
  159. package/dist/core/commit-hint.d.ts +30 -0
  160. package/dist/core/commit-hint.d.ts.map +1 -0
  161. package/dist/core/commit-hint.js +34 -0
  162. package/dist/core/commit-hint.js.map +1 -0
  163. package/dist/core/compass-chain.d.ts +32 -0
  164. package/dist/core/compass-chain.d.ts.map +1 -0
  165. package/dist/core/compass-chain.js +90 -0
  166. package/dist/core/compass-chain.js.map +1 -0
  167. package/dist/core/compass-render.d.ts +16 -0
  168. package/dist/core/compass-render.d.ts.map +1 -0
  169. package/dist/core/compass-render.js +87 -0
  170. package/dist/core/compass-render.js.map +1 -0
  171. package/dist/core/compass-types.d.ts +93 -0
  172. package/dist/core/compass-types.d.ts.map +1 -0
  173. package/dist/core/compass-types.js +12 -0
  174. package/dist/core/compass-types.js.map +1 -0
  175. package/dist/core/compass.d.ts +31 -0
  176. package/dist/core/compass.d.ts.map +1 -0
  177. package/dist/core/compass.js +207 -0
  178. package/dist/core/compass.js.map +1 -0
  179. package/dist/core/config.d.ts +11 -0
  180. package/dist/core/config.d.ts.map +1 -1
  181. package/dist/core/config.js +33 -0
  182. package/dist/core/config.js.map +1 -1
  183. package/dist/core/context-items.d.ts +61 -0
  184. package/dist/core/context-items.d.ts.map +1 -0
  185. package/dist/core/context-items.js +111 -0
  186. package/dist/core/context-items.js.map +1 -0
  187. package/dist/core/context-render.d.ts +23 -0
  188. package/dist/core/context-render.d.ts.map +1 -0
  189. package/dist/core/context-render.js +228 -0
  190. package/dist/core/context-render.js.map +1 -0
  191. package/dist/core/context.d.ts +5 -35
  192. package/dist/core/context.d.ts.map +1 -1
  193. package/dist/core/context.js +11 -316
  194. package/dist/core/context.js.map +1 -1
  195. package/dist/core/coord-handover-notice.d.ts +32 -0
  196. package/dist/core/coord-handover-notice.d.ts.map +1 -0
  197. package/dist/core/coord-handover-notice.js +66 -0
  198. package/dist/core/coord-handover-notice.js.map +1 -0
  199. package/dist/core/coord-input.d.ts +106 -0
  200. package/dist/core/coord-input.d.ts.map +1 -0
  201. package/dist/core/coord-input.js +142 -0
  202. package/dist/core/coord-input.js.map +1 -0
  203. package/dist/core/coord-journal.d.ts +28 -0
  204. package/dist/core/coord-journal.d.ts.map +1 -0
  205. package/dist/core/coord-journal.js +51 -0
  206. package/dist/core/coord-journal.js.map +1 -0
  207. package/dist/core/coord-paths.d.ts +30 -0
  208. package/dist/core/coord-paths.d.ts.map +1 -0
  209. package/dist/core/coord-paths.js +65 -0
  210. package/dist/core/coord-paths.js.map +1 -0
  211. package/dist/core/coord-read.d.ts +135 -0
  212. package/dist/core/coord-read.d.ts.map +1 -0
  213. package/dist/core/coord-read.js +154 -0
  214. package/dist/core/coord-read.js.map +1 -0
  215. package/dist/core/coord-store.d.ts +51 -0
  216. package/dist/core/coord-store.d.ts.map +1 -0
  217. package/dist/core/coord-store.js +188 -0
  218. package/dist/core/coord-store.js.map +1 -0
  219. package/dist/core/coord-summary.d.ts +23 -0
  220. package/dist/core/coord-summary.d.ts.map +1 -0
  221. package/dist/core/coord-summary.js +70 -0
  222. package/dist/core/coord-summary.js.map +1 -0
  223. package/dist/core/coord-sweep.d.ts +20 -0
  224. package/dist/core/coord-sweep.d.ts.map +1 -0
  225. package/dist/core/coord-sweep.js +60 -0
  226. package/dist/core/coord-sweep.js.map +1 -0
  227. package/dist/core/coord-target.d.ts +13 -0
  228. package/dist/core/coord-target.d.ts.map +1 -0
  229. package/dist/core/coord-target.js +20 -0
  230. package/dist/core/coord-target.js.map +1 -0
  231. package/dist/core/coord-write.d.ts +43 -0
  232. package/dist/core/coord-write.d.ts.map +1 -0
  233. package/dist/core/coord-write.js +210 -0
  234. package/dist/core/coord-write.js.map +1 -0
  235. package/dist/core/coordination-text.d.ts +49 -0
  236. package/dist/core/coordination-text.d.ts.map +1 -0
  237. package/dist/core/coordination-text.js +159 -0
  238. package/dist/core/coordination-text.js.map +1 -0
  239. package/dist/core/counter-lock-owner.d.ts +33 -0
  240. package/dist/core/counter-lock-owner.d.ts.map +1 -0
  241. package/dist/core/counter-lock-owner.js +129 -0
  242. package/dist/core/counter-lock-owner.js.map +1 -0
  243. package/dist/core/counter-lock-types.d.ts +39 -0
  244. package/dist/core/counter-lock-types.d.ts.map +1 -0
  245. package/dist/core/counter-lock-types.js +21 -0
  246. package/dist/core/counter-lock-types.js.map +1 -0
  247. package/dist/core/counter-lock.d.ts +33 -0
  248. package/dist/core/counter-lock.d.ts.map +1 -0
  249. package/dist/core/counter-lock.js +295 -0
  250. package/dist/core/counter-lock.js.map +1 -0
  251. package/dist/core/counters.d.ts +58 -0
  252. package/dist/core/counters.d.ts.map +1 -0
  253. package/dist/core/counters.js +244 -0
  254. package/dist/core/counters.js.map +1 -0
  255. package/dist/core/dashboard-insights.d.ts +101 -0
  256. package/dist/core/dashboard-insights.d.ts.map +1 -0
  257. package/dist/core/dashboard-insights.js +175 -0
  258. package/dist/core/dashboard-insights.js.map +1 -0
  259. package/dist/core/dashboard-model.d.ts +106 -0
  260. package/dist/core/dashboard-model.d.ts.map +1 -0
  261. package/dist/core/dashboard-model.js +176 -0
  262. package/dist/core/dashboard-model.js.map +1 -0
  263. package/dist/core/decision-count.d.ts +18 -0
  264. package/dist/core/decision-count.d.ts.map +1 -0
  265. package/dist/core/decision-count.js +74 -0
  266. package/dist/core/decision-count.js.map +1 -0
  267. package/dist/core/decision-question-status.d.ts +36 -0
  268. package/dist/core/decision-question-status.d.ts.map +1 -0
  269. package/dist/core/decision-question-status.js +106 -0
  270. package/dist/core/decision-question-status.js.map +1 -0
  271. package/dist/core/decision-question.d.ts +73 -0
  272. package/dist/core/decision-question.d.ts.map +1 -0
  273. package/dist/core/decision-question.js +203 -0
  274. package/dist/core/decision-question.js.map +1 -0
  275. package/dist/core/decision-round-actions.d.ts +49 -0
  276. package/dist/core/decision-round-actions.d.ts.map +1 -0
  277. package/dist/core/decision-round-actions.js +114 -0
  278. package/dist/core/decision-round-actions.js.map +1 -0
  279. package/dist/core/decision-round-owner.d.ts +29 -0
  280. package/dist/core/decision-round-owner.d.ts.map +1 -0
  281. package/dist/core/decision-round-owner.js +130 -0
  282. package/dist/core/decision-round-owner.js.map +1 -0
  283. package/dist/core/decision-round-text.d.ts +43 -0
  284. package/dist/core/decision-round-text.d.ts.map +1 -0
  285. package/dist/core/decision-round-text.js +146 -0
  286. package/dist/core/decision-round-text.js.map +1 -0
  287. package/dist/core/decision-round-types.d.ts +108 -0
  288. package/dist/core/decision-round-types.d.ts.map +1 -0
  289. package/dist/core/decision-round-types.js +11 -0
  290. package/dist/core/decision-round-types.js.map +1 -0
  291. package/dist/core/decision-round.d.ts +19 -0
  292. package/dist/core/decision-round.d.ts.map +1 -0
  293. package/dist/core/decision-round.js +166 -0
  294. package/dist/core/decision-round.js.map +1 -0
  295. package/dist/core/description-patch.d.ts +39 -0
  296. package/dist/core/description-patch.d.ts.map +1 -0
  297. package/dist/core/description-patch.js +107 -0
  298. package/dist/core/description-patch.js.map +1 -0
  299. package/dist/core/docs-assemble.d.ts +91 -0
  300. package/dist/core/docs-assemble.d.ts.map +1 -0
  301. package/dist/core/docs-assemble.js +210 -0
  302. package/dist/core/docs-assemble.js.map +1 -0
  303. package/dist/core/docs-map.d.ts +74 -0
  304. package/dist/core/docs-map.d.ts.map +1 -0
  305. package/dist/core/docs-map.js +247 -0
  306. package/dist/core/docs-map.js.map +1 -0
  307. package/dist/core/doctor-attachments.d.ts +29 -0
  308. package/dist/core/doctor-attachments.d.ts.map +1 -0
  309. package/dist/core/doctor-attachments.js +95 -0
  310. package/dist/core/doctor-attachments.js.map +1 -0
  311. package/dist/core/doctor-classification.d.ts +14 -0
  312. package/dist/core/doctor-classification.d.ts.map +1 -0
  313. package/dist/core/doctor-classification.js +55 -0
  314. package/dist/core/doctor-classification.js.map +1 -0
  315. package/dist/core/doctor-commit-evidence-git.d.ts +19 -0
  316. package/dist/core/doctor-commit-evidence-git.d.ts.map +1 -0
  317. package/dist/core/doctor-commit-evidence-git.js +278 -0
  318. package/dist/core/doctor-commit-evidence-git.js.map +1 -0
  319. package/dist/core/doctor-commit-evidence.d.ts +11 -0
  320. package/dist/core/doctor-commit-evidence.d.ts.map +1 -0
  321. package/dist/core/doctor-commit-evidence.js +139 -0
  322. package/dist/core/doctor-commit-evidence.js.map +1 -0
  323. package/dist/core/doctor-coordination.d.ts +20 -0
  324. package/dist/core/doctor-coordination.d.ts.map +1 -0
  325. package/dist/core/doctor-coordination.js +88 -0
  326. package/dist/core/doctor-coordination.js.map +1 -0
  327. package/dist/core/doctor-counters.d.ts +13 -0
  328. package/dist/core/doctor-counters.d.ts.map +1 -0
  329. package/dist/core/doctor-counters.js +46 -0
  330. package/dist/core/doctor-counters.js.map +1 -0
  331. package/dist/core/doctor-generated-files.d.ts +32 -0
  332. package/dist/core/doctor-generated-files.d.ts.map +1 -0
  333. package/dist/core/doctor-generated-files.js +178 -0
  334. package/dist/core/doctor-generated-files.js.map +1 -0
  335. package/dist/core/doctor-placeholders.d.ts +10 -0
  336. package/dist/core/doctor-placeholders.d.ts.map +1 -0
  337. package/dist/core/doctor-placeholders.js +49 -0
  338. package/dist/core/doctor-placeholders.js.map +1 -0
  339. package/dist/core/doctor-relations.d.ts +27 -0
  340. package/dist/core/doctor-relations.d.ts.map +1 -0
  341. package/dist/core/doctor-relations.js +179 -0
  342. package/dist/core/doctor-relations.js.map +1 -0
  343. package/dist/core/doctor-schema-normalize.d.ts +16 -0
  344. package/dist/core/doctor-schema-normalize.d.ts.map +1 -0
  345. package/dist/core/doctor-schema-normalize.js +63 -0
  346. package/dist/core/doctor-schema-normalize.js.map +1 -0
  347. package/dist/core/doctor-schema-repair-types.d.ts +37 -0
  348. package/dist/core/doctor-schema-repair-types.d.ts.map +1 -0
  349. package/dist/core/doctor-schema-repair-types.js +8 -0
  350. package/dist/core/doctor-schema-repair-types.js.map +1 -0
  351. package/dist/core/doctor-schema-repair.d.ts +17 -0
  352. package/dist/core/doctor-schema-repair.d.ts.map +1 -0
  353. package/dist/core/doctor-schema-repair.js +113 -0
  354. package/dist/core/doctor-schema-repair.js.map +1 -0
  355. package/dist/core/doctor-schema-set.d.ts +11 -0
  356. package/dist/core/doctor-schema-set.d.ts.map +1 -0
  357. package/dist/core/doctor-schema-set.js +57 -0
  358. package/dist/core/doctor-schema-set.js.map +1 -0
  359. package/dist/core/doctor-schema-tokens.d.ts +21 -0
  360. package/dist/core/doctor-schema-tokens.d.ts.map +1 -0
  361. package/dist/core/doctor-schema-tokens.js +88 -0
  362. package/dist/core/doctor-schema-tokens.js.map +1 -0
  363. package/dist/core/doctor-schema.d.ts +16 -0
  364. package/dist/core/doctor-schema.d.ts.map +1 -0
  365. package/dist/core/doctor-schema.js +59 -0
  366. package/dist/core/doctor-schema.js.map +1 -0
  367. package/dist/core/doctor-types.d.ts +23 -0
  368. package/dist/core/doctor-types.d.ts.map +1 -0
  369. package/dist/core/doctor-types.js +14 -0
  370. package/dist/core/doctor-types.js.map +1 -0
  371. package/dist/core/doctor.d.ts +17 -0
  372. package/dist/core/doctor.d.ts.map +1 -0
  373. package/dist/core/doctor.js +132 -0
  374. package/dist/core/doctor.js.map +1 -0
  375. package/dist/core/epic-sections.d.ts +39 -0
  376. package/dist/core/epic-sections.d.ts.map +1 -0
  377. package/dist/core/epic-sections.js +147 -0
  378. package/dist/core/epic-sections.js.map +1 -0
  379. package/dist/core/expedition-metadata.d.ts +42 -0
  380. package/dist/core/expedition-metadata.d.ts.map +1 -0
  381. package/dist/core/expedition-metadata.js +54 -0
  382. package/dist/core/expedition-metadata.js.map +1 -0
  383. package/dist/core/expedition-paths.d.ts +31 -0
  384. package/dist/core/expedition-paths.d.ts.map +1 -0
  385. package/dist/core/expedition-paths.js +52 -0
  386. package/dist/core/expedition-paths.js.map +1 -0
  387. package/dist/core/export-render.d.ts +29 -0
  388. package/dist/core/export-render.d.ts.map +1 -0
  389. package/dist/core/export-render.js +105 -0
  390. package/dist/core/export-render.js.map +1 -0
  391. package/dist/core/export.d.ts +24 -0
  392. package/dist/core/export.d.ts.map +1 -0
  393. package/dist/core/export.js +61 -0
  394. package/dist/core/export.js.map +1 -0
  395. package/dist/core/focus-work.d.ts +13 -0
  396. package/dist/core/focus-work.d.ts.map +1 -0
  397. package/dist/core/focus-work.js +13 -0
  398. package/dist/core/focus-work.js.map +1 -0
  399. package/dist/core/focus.d.ts +35 -0
  400. package/dist/core/focus.d.ts.map +1 -0
  401. package/dist/core/focus.js +60 -0
  402. package/dist/core/focus.js.map +1 -0
  403. package/dist/core/frontmatter.d.ts +58 -0
  404. package/dist/core/frontmatter.d.ts.map +1 -0
  405. package/dist/core/frontmatter.js +178 -0
  406. package/dist/core/frontmatter.js.map +1 -0
  407. package/dist/core/get-fields.d.ts +27 -0
  408. package/dist/core/get-fields.d.ts.map +1 -0
  409. package/dist/core/get-fields.js +60 -0
  410. package/dist/core/get-fields.js.map +1 -0
  411. package/dist/core/get.d.ts +36 -2
  412. package/dist/core/get.d.ts.map +1 -1
  413. package/dist/core/get.js +54 -12
  414. package/dist/core/get.js.map +1 -1
  415. package/dist/core/guide-acceptance.d.ts +21 -0
  416. package/dist/core/guide-acceptance.d.ts.map +1 -0
  417. package/dist/core/guide-acceptance.js +311 -0
  418. package/dist/core/guide-acceptance.js.map +1 -0
  419. package/dist/core/guide-step-list.d.ts +25 -0
  420. package/dist/core/guide-step-list.d.ts.map +1 -0
  421. package/dist/core/guide-step-list.js +91 -0
  422. package/dist/core/guide-step-list.js.map +1 -0
  423. package/dist/core/heuristic-classify.d.ts +44 -0
  424. package/dist/core/heuristic-classify.d.ts.map +1 -0
  425. package/dist/core/heuristic-classify.js +147 -0
  426. package/dist/core/heuristic-classify.js.map +1 -0
  427. package/dist/core/host-config.d.ts +80 -0
  428. package/dist/core/host-config.d.ts.map +1 -0
  429. package/dist/core/host-config.js +121 -0
  430. package/dist/core/host-config.js.map +1 -0
  431. package/dist/core/host-setup.d.ts +146 -0
  432. package/dist/core/host-setup.d.ts.map +1 -0
  433. package/dist/core/host-setup.js +277 -0
  434. package/dist/core/host-setup.js.map +1 -0
  435. package/dist/core/import-excerpt.d.ts +9 -0
  436. package/dist/core/import-excerpt.d.ts.map +1 -0
  437. package/dist/core/import-excerpt.js +17 -0
  438. package/dist/core/import-excerpt.js.map +1 -0
  439. package/dist/core/import-materialize.d.ts +66 -0
  440. package/dist/core/import-materialize.d.ts.map +1 -0
  441. package/dist/core/import-materialize.js +217 -0
  442. package/dist/core/import-materialize.js.map +1 -0
  443. package/dist/core/import-session.d.ts +85 -0
  444. package/dist/core/import-session.d.ts.map +1 -0
  445. package/dist/core/import-session.js +192 -0
  446. package/dist/core/import-session.js.map +1 -0
  447. package/dist/core/import-source.d.ts +15 -0
  448. package/dist/core/import-source.d.ts.map +1 -0
  449. package/dist/core/import-source.js +57 -0
  450. package/dist/core/import-source.js.map +1 -0
  451. package/dist/core/index-rebuild.js.map +1 -1
  452. package/dist/core/index-refs-core.d.ts +23 -0
  453. package/dist/core/index-refs-core.d.ts.map +1 -1
  454. package/dist/core/index-refs-core.js +54 -7
  455. package/dist/core/index-refs-core.js.map +1 -1
  456. package/dist/core/index-refs.d.ts +13 -0
  457. package/dist/core/index-refs.d.ts.map +1 -1
  458. package/dist/core/index-refs.js +42 -1
  459. package/dist/core/index-refs.js.map +1 -1
  460. package/dist/core/index.d.ts +90 -8
  461. package/dist/core/index.d.ts.map +1 -1
  462. package/dist/core/index.js +90 -10
  463. package/dist/core/index.js.map +1 -1
  464. package/dist/core/init-project.d.ts +69 -0
  465. package/dist/core/init-project.d.ts.map +1 -0
  466. package/dist/core/init-project.js +177 -0
  467. package/dist/core/init-project.js.map +1 -0
  468. package/dist/core/item-attachments-error.d.ts +22 -0
  469. package/dist/core/item-attachments-error.d.ts.map +1 -0
  470. package/dist/core/item-attachments-error.js +23 -0
  471. package/dist/core/item-attachments-error.js.map +1 -0
  472. package/dist/core/item-attachments-io.d.ts +37 -0
  473. package/dist/core/item-attachments-io.d.ts.map +1 -0
  474. package/dist/core/item-attachments-io.js +156 -0
  475. package/dist/core/item-attachments-io.js.map +1 -0
  476. package/dist/core/item-attachments-storage.d.ts +15 -0
  477. package/dist/core/item-attachments-storage.d.ts.map +1 -0
  478. package/dist/core/item-attachments-storage.js +81 -0
  479. package/dist/core/item-attachments-storage.js.map +1 -0
  480. package/dist/core/item-attachments.d.ts +58 -0
  481. package/dist/core/item-attachments.d.ts.map +1 -0
  482. package/dist/core/item-attachments.js +317 -0
  483. package/dist/core/item-attachments.js.map +1 -0
  484. package/dist/core/item-paths.d.ts +70 -0
  485. package/dist/core/item-paths.d.ts.map +1 -0
  486. package/dist/core/item-paths.js +135 -0
  487. package/dist/core/item-paths.js.map +1 -0
  488. package/dist/core/item-raw.d.ts +36 -0
  489. package/dist/core/item-raw.d.ts.map +1 -0
  490. package/dist/core/item-raw.js +98 -0
  491. package/dist/core/item-raw.js.map +1 -0
  492. package/dist/core/item-store.d.ts +120 -0
  493. package/dist/core/item-store.d.ts.map +1 -0
  494. package/dist/core/item-store.js +269 -0
  495. package/dist/core/item-store.js.map +1 -0
  496. package/dist/core/item-type-availability.d.ts +9 -0
  497. package/dist/core/item-type-availability.d.ts.map +1 -0
  498. package/dist/core/item-type-availability.js +29 -0
  499. package/dist/core/item-type-availability.js.map +1 -0
  500. package/dist/core/item-validation.d.ts +35 -0
  501. package/dist/core/item-validation.d.ts.map +1 -0
  502. package/dist/core/item-validation.js +99 -0
  503. package/dist/core/item-validation.js.map +1 -0
  504. package/dist/core/item-write-pair.d.ts +25 -0
  505. package/dist/core/item-write-pair.d.ts.map +1 -0
  506. package/dist/core/item-write-pair.js +71 -0
  507. package/dist/core/item-write-pair.js.map +1 -0
  508. package/dist/core/link-conflicts.d.ts +11 -0
  509. package/dist/core/link-conflicts.d.ts.map +1 -0
  510. package/dist/core/link-conflicts.js +45 -0
  511. package/dist/core/link-conflicts.js.map +1 -0
  512. package/dist/core/link-write.d.ts +15 -0
  513. package/dist/core/link-write.d.ts.map +1 -0
  514. package/dist/core/link-write.js +63 -0
  515. package/dist/core/link-write.js.map +1 -0
  516. package/dist/core/link.d.ts +10 -0
  517. package/dist/core/link.d.ts.map +1 -1
  518. package/dist/core/link.js +52 -65
  519. package/dist/core/link.js.map +1 -1
  520. package/dist/core/list-page.d.ts +42 -0
  521. package/dist/core/list-page.d.ts.map +1 -0
  522. package/dist/core/list-page.js +70 -0
  523. package/dist/core/list-page.js.map +1 -0
  524. package/dist/core/list.d.ts +36 -3
  525. package/dist/core/list.d.ts.map +1 -1
  526. package/dist/core/list.js +67 -107
  527. package/dist/core/list.js.map +1 -1
  528. package/dist/core/markdown-heading-ranges.d.ts +23 -0
  529. package/dist/core/markdown-heading-ranges.d.ts.map +1 -0
  530. package/dist/core/markdown-heading-ranges.js +163 -0
  531. package/dist/core/markdown-heading-ranges.js.map +1 -0
  532. package/dist/core/path-guard.d.ts +48 -0
  533. package/dist/core/path-guard.d.ts.map +1 -0
  534. package/dist/core/path-guard.js +120 -0
  535. package/dist/core/path-guard.js.map +1 -0
  536. package/dist/core/process-definition-hint.d.ts +16 -0
  537. package/dist/core/process-definition-hint.d.ts.map +1 -0
  538. package/dist/core/process-definition-hint.js +37 -0
  539. package/dist/core/process-definition-hint.js.map +1 -0
  540. package/dist/core/project-status.d.ts +56 -0
  541. package/dist/core/project-status.d.ts.map +1 -0
  542. package/dist/core/project-status.js +94 -0
  543. package/dist/core/project-status.js.map +1 -0
  544. package/dist/core/promote.d.ts +26 -0
  545. package/dist/core/promote.d.ts.map +1 -0
  546. package/dist/core/promote.js +62 -0
  547. package/dist/core/promote.js.map +1 -0
  548. package/dist/core/relationship-completeness.d.ts +32 -0
  549. package/dist/core/relationship-completeness.d.ts.map +1 -0
  550. package/dist/core/relationship-completeness.js +82 -0
  551. package/dist/core/relationship-completeness.js.map +1 -0
  552. package/dist/core/relationship-lock.d.ts +2 -0
  553. package/dist/core/relationship-lock.d.ts.map +1 -0
  554. package/dist/core/relationship-lock.js +32 -0
  555. package/dist/core/relationship-lock.js.map +1 -0
  556. package/dist/core/relationship-map.d.ts +10 -0
  557. package/dist/core/relationship-map.d.ts.map +1 -0
  558. package/dist/core/relationship-map.js +25 -0
  559. package/dist/core/relationship-map.js.map +1 -0
  560. package/dist/core/search.d.ts +53 -0
  561. package/dist/core/search.d.ts.map +1 -0
  562. package/dist/core/search.js +122 -0
  563. package/dist/core/search.js.map +1 -0
  564. package/dist/core/task-workflow-loader.d.ts +37 -0
  565. package/dist/core/task-workflow-loader.d.ts.map +1 -0
  566. package/dist/core/task-workflow-loader.js +162 -0
  567. package/dist/core/task-workflow-loader.js.map +1 -0
  568. package/dist/core/test-workflow-loader.d.ts +32 -0
  569. package/dist/core/test-workflow-loader.d.ts.map +1 -0
  570. package/dist/core/test-workflow-loader.js +98 -0
  571. package/dist/core/test-workflow-loader.js.map +1 -0
  572. package/dist/core/trace.d.ts +51 -0
  573. package/dist/core/trace.d.ts.map +1 -0
  574. package/dist/core/trace.js +193 -0
  575. package/dist/core/trace.js.map +1 -0
  576. package/dist/core/traceability-narrative.d.ts +67 -0
  577. package/dist/core/traceability-narrative.d.ts.map +1 -0
  578. package/dist/core/traceability-narrative.js +149 -0
  579. package/dist/core/traceability-narrative.js.map +1 -0
  580. package/dist/core/unlink.d.ts +4 -0
  581. package/dist/core/unlink.d.ts.map +1 -1
  582. package/dist/core/unlink.js +62 -56
  583. package/dist/core/unlink.js.map +1 -1
  584. package/dist/core/update-category-receipt.d.ts +19 -0
  585. package/dist/core/update-category-receipt.d.ts.map +1 -0
  586. package/dist/core/update-category-receipt.js +25 -0
  587. package/dist/core/update-category-receipt.js.map +1 -0
  588. package/dist/core/update-category.d.ts +12 -0
  589. package/dist/core/update-category.d.ts.map +1 -0
  590. package/dist/core/update-category.js +59 -0
  591. package/dist/core/update-category.js.map +1 -0
  592. package/dist/core/update-reminders.d.ts +30 -0
  593. package/dist/core/update-reminders.d.ts.map +1 -0
  594. package/dist/core/update-reminders.js +48 -0
  595. package/dist/core/update-reminders.js.map +1 -0
  596. package/dist/core/update.d.ts +46 -2
  597. package/dist/core/update.d.ts.map +1 -1
  598. package/dist/core/update.js +182 -28
  599. package/dist/core/update.js.map +1 -1
  600. package/dist/core/validation.d.ts +4 -2
  601. package/dist/core/validation.d.ts.map +1 -1
  602. package/dist/core/validation.js +61 -29
  603. package/dist/core/validation.js.map +1 -1
  604. package/dist/core/workflow-compiler-host-rules.d.ts +32 -0
  605. package/dist/core/workflow-compiler-host-rules.d.ts.map +1 -0
  606. package/dist/core/workflow-compiler-host-rules.js +266 -0
  607. package/dist/core/workflow-compiler-host-rules.js.map +1 -0
  608. package/dist/core/workflow-compiler-loop-rules.d.ts +13 -0
  609. package/dist/core/workflow-compiler-loop-rules.d.ts.map +1 -0
  610. package/dist/core/workflow-compiler-loop-rules.js +31 -0
  611. package/dist/core/workflow-compiler-loop-rules.js.map +1 -0
  612. package/dist/core/workflow-compiler-optional-rules.d.ts +14 -0
  613. package/dist/core/workflow-compiler-optional-rules.d.ts.map +1 -0
  614. package/dist/core/workflow-compiler-optional-rules.js +76 -0
  615. package/dist/core/workflow-compiler-optional-rules.js.map +1 -0
  616. package/dist/core/workflow-compiler-party-rules.d.ts +22 -0
  617. package/dist/core/workflow-compiler-party-rules.d.ts.map +1 -0
  618. package/dist/core/workflow-compiler-party-rules.js +146 -0
  619. package/dist/core/workflow-compiler-party-rules.js.map +1 -0
  620. package/dist/core/workflow-compiler-rules.d.ts +27 -0
  621. package/dist/core/workflow-compiler-rules.d.ts.map +1 -0
  622. package/dist/core/workflow-compiler-rules.js +284 -0
  623. package/dist/core/workflow-compiler-rules.js.map +1 -0
  624. package/dist/core/workflow-compiler-section-rules.d.ts +13 -0
  625. package/dist/core/workflow-compiler-section-rules.d.ts.map +1 -0
  626. package/dist/core/workflow-compiler-section-rules.js +57 -0
  627. package/dist/core/workflow-compiler-section-rules.js.map +1 -0
  628. package/dist/core/workflow-compiler-text-rules.d.ts +18 -0
  629. package/dist/core/workflow-compiler-text-rules.d.ts.map +1 -0
  630. package/dist/core/workflow-compiler-text-rules.js +82 -0
  631. package/dist/core/workflow-compiler-text-rules.js.map +1 -0
  632. package/dist/core/workflow-compiler.d.ts +52 -0
  633. package/dist/core/workflow-compiler.d.ts.map +1 -0
  634. package/dist/core/workflow-compiler.js +130 -0
  635. package/dist/core/workflow-compiler.js.map +1 -0
  636. package/dist/core/workflow-definition-facts.d.ts +32 -0
  637. package/dist/core/workflow-definition-facts.d.ts.map +1 -0
  638. package/dist/core/workflow-definition-facts.js +48 -0
  639. package/dist/core/workflow-definition-facts.js.map +1 -0
  640. package/dist/core/workflow-exports.d.ts +17 -0
  641. package/dist/core/workflow-exports.d.ts.map +1 -0
  642. package/dist/core/workflow-exports.js +17 -0
  643. package/dist/core/workflow-exports.js.map +1 -0
  644. package/dist/core/workflow-host-profiles.d.ts +44 -0
  645. package/dist/core/workflow-host-profiles.d.ts.map +1 -0
  646. package/dist/core/workflow-host-profiles.js +147 -0
  647. package/dist/core/workflow-host-profiles.js.map +1 -0
  648. package/dist/core/workflow-v2-authoring.d.ts +22 -0
  649. package/dist/core/workflow-v2-authoring.d.ts.map +1 -0
  650. package/dist/core/workflow-v2-authoring.js +88 -0
  651. package/dist/core/workflow-v2-authoring.js.map +1 -0
  652. package/dist/core/workflow-v2-loader.d.ts +26 -0
  653. package/dist/core/workflow-v2-loader.d.ts.map +1 -0
  654. package/dist/core/workflow-v2-loader.js +50 -0
  655. package/dist/core/workflow-v2-loader.js.map +1 -0
  656. package/dist/core/write-diagnostics.d.ts +69 -0
  657. package/dist/core/write-diagnostics.d.ts.map +1 -0
  658. package/dist/core/write-diagnostics.js +126 -0
  659. package/dist/core/write-diagnostics.js.map +1 -0
  660. package/dist/index.d.ts +7 -1
  661. package/dist/index.d.ts.map +1 -1
  662. package/dist/index.js +7 -1
  663. package/dist/index.js.map +1 -1
  664. package/dist/runtime/controls.d.ts +26 -0
  665. package/dist/runtime/controls.d.ts.map +1 -0
  666. package/dist/runtime/controls.js +54 -0
  667. package/dist/runtime/controls.js.map +1 -0
  668. package/dist/runtime/dispatcher.d.ts +73 -0
  669. package/dist/runtime/dispatcher.d.ts.map +1 -0
  670. package/dist/runtime/dispatcher.js +178 -0
  671. package/dist/runtime/dispatcher.js.map +1 -0
  672. package/dist/runtime/event-log.d.ts +65 -0
  673. package/dist/runtime/event-log.d.ts.map +1 -0
  674. package/dist/runtime/event-log.js +189 -0
  675. package/dist/runtime/event-log.js.map +1 -0
  676. package/dist/runtime/evidence.d.ts +72 -0
  677. package/dist/runtime/evidence.d.ts.map +1 -0
  678. package/dist/runtime/evidence.js +80 -0
  679. package/dist/runtime/evidence.js.map +1 -0
  680. package/dist/runtime/guide-catalog.d.ts +70 -0
  681. package/dist/runtime/guide-catalog.d.ts.map +1 -0
  682. package/dist/runtime/guide-catalog.js +132 -0
  683. package/dist/runtime/guide-catalog.js.map +1 -0
  684. package/dist/runtime/human-checkpoint.d.ts +45 -0
  685. package/dist/runtime/human-checkpoint.d.ts.map +1 -0
  686. package/dist/runtime/human-checkpoint.js +73 -0
  687. package/dist/runtime/human-checkpoint.js.map +1 -0
  688. package/dist/runtime/index.d.ts +201 -0
  689. package/dist/runtime/index.d.ts.map +1 -0
  690. package/dist/runtime/index.js +171 -0
  691. package/dist/runtime/index.js.map +1 -0
  692. package/dist/runtime/json-path.d.ts +31 -0
  693. package/dist/runtime/json-path.d.ts.map +1 -0
  694. package/dist/runtime/json-path.js +120 -0
  695. package/dist/runtime/json-path.js.map +1 -0
  696. package/dist/runtime/predicates.d.ts +37 -0
  697. package/dist/runtime/predicates.d.ts.map +1 -0
  698. package/dist/runtime/predicates.js +185 -0
  699. package/dist/runtime/predicates.js.map +1 -0
  700. package/dist/runtime/process-report-render.d.ts +10 -0
  701. package/dist/runtime/process-report-render.d.ts.map +1 -0
  702. package/dist/runtime/process-report-render.js +93 -0
  703. package/dist/runtime/process-report-render.js.map +1 -0
  704. package/dist/runtime/process-report.d.ts +78 -0
  705. package/dist/runtime/process-report.d.ts.map +1 -0
  706. package/dist/runtime/process-report.js +228 -0
  707. package/dist/runtime/process-report.js.map +1 -0
  708. package/dist/runtime/reconciliation.d.ts +31 -0
  709. package/dist/runtime/reconciliation.d.ts.map +1 -0
  710. package/dist/runtime/reconciliation.js +42 -0
  711. package/dist/runtime/reconciliation.js.map +1 -0
  712. package/dist/runtime/redaction.d.ts +19 -0
  713. package/dist/runtime/redaction.d.ts.map +1 -0
  714. package/dist/runtime/redaction.js +80 -0
  715. package/dist/runtime/redaction.js.map +1 -0
  716. package/dist/runtime/run-catalog.d.ts +65 -0
  717. package/dist/runtime/run-catalog.d.ts.map +1 -0
  718. package/dist/runtime/run-catalog.js +218 -0
  719. package/dist/runtime/run-catalog.js.map +1 -0
  720. package/dist/runtime/run-event-payload.d.ts +52 -0
  721. package/dist/runtime/run-event-payload.d.ts.map +1 -0
  722. package/dist/runtime/run-event-payload.js +60 -0
  723. package/dist/runtime/run-event-payload.js.map +1 -0
  724. package/dist/runtime/run-history.d.ts +80 -0
  725. package/dist/runtime/run-history.d.ts.map +1 -0
  726. package/dist/runtime/run-history.js +222 -0
  727. package/dist/runtime/run-history.js.map +1 -0
  728. package/dist/runtime/run-store.d.ts +60 -0
  729. package/dist/runtime/run-store.d.ts.map +1 -0
  730. package/dist/runtime/run-store.js +233 -0
  731. package/dist/runtime/run-store.js.map +1 -0
  732. package/dist/runtime/run-trail.d.ts +112 -0
  733. package/dist/runtime/run-trail.d.ts.map +1 -0
  734. package/dist/runtime/run-trail.js +187 -0
  735. package/dist/runtime/run-trail.js.map +1 -0
  736. package/dist/runtime/state-machine.d.ts +30 -0
  737. package/dist/runtime/state-machine.d.ts.map +1 -0
  738. package/dist/runtime/state-machine.js +170 -0
  739. package/dist/runtime/state-machine.js.map +1 -0
  740. package/dist/runtime/workflow-contract.d.ts +60 -0
  741. package/dist/runtime/workflow-contract.d.ts.map +1 -0
  742. package/dist/runtime/workflow-contract.js +142 -0
  743. package/dist/runtime/workflow-contract.js.map +1 -0
  744. package/dist/runtime/workflow-response.d.ts +27 -0
  745. package/dist/runtime/workflow-response.d.ts.map +1 -0
  746. package/dist/runtime/workflow-response.js +41 -0
  747. package/dist/runtime/workflow-response.js.map +1 -0
  748. package/dist/runtime/workflow-template.d.ts +18 -0
  749. package/dist/runtime/workflow-template.d.ts.map +1 -0
  750. package/dist/runtime/workflow-template.js +65 -0
  751. package/dist/runtime/workflow-template.js.map +1 -0
  752. package/dist/runtime/workflow-v1-cancel.d.ts +30 -0
  753. package/dist/runtime/workflow-v1-cancel.d.ts.map +1 -0
  754. package/dist/runtime/workflow-v1-cancel.js +89 -0
  755. package/dist/runtime/workflow-v1-cancel.js.map +1 -0
  756. package/dist/runtime/workflow-v2-context.d.ts +27 -0
  757. package/dist/runtime/workflow-v2-context.d.ts.map +1 -0
  758. package/dist/runtime/workflow-v2-context.js +62 -0
  759. package/dist/runtime/workflow-v2-context.js.map +1 -0
  760. package/dist/runtime/workflow-v2-continuation.d.ts +23 -0
  761. package/dist/runtime/workflow-v2-continuation.d.ts.map +1 -0
  762. package/dist/runtime/workflow-v2-continuation.js +36 -0
  763. package/dist/runtime/workflow-v2-continuation.js.map +1 -0
  764. package/dist/runtime/workflow-v2-dispatch.d.ts +58 -0
  765. package/dist/runtime/workflow-v2-dispatch.d.ts.map +1 -0
  766. package/dist/runtime/workflow-v2-dispatch.js +125 -0
  767. package/dist/runtime/workflow-v2-dispatch.js.map +1 -0
  768. package/dist/runtime/workflow-v2-engine.d.ts +28 -0
  769. package/dist/runtime/workflow-v2-engine.d.ts.map +1 -0
  770. package/dist/runtime/workflow-v2-engine.js +166 -0
  771. package/dist/runtime/workflow-v2-engine.js.map +1 -0
  772. package/dist/runtime/workflow-v2-failure-route.d.ts +28 -0
  773. package/dist/runtime/workflow-v2-failure-route.d.ts.map +1 -0
  774. package/dist/runtime/workflow-v2-failure-route.js +101 -0
  775. package/dist/runtime/workflow-v2-failure-route.js.map +1 -0
  776. package/dist/runtime/workflow-v2-fields.d.ts +40 -0
  777. package/dist/runtime/workflow-v2-fields.d.ts.map +1 -0
  778. package/dist/runtime/workflow-v2-fields.js +112 -0
  779. package/dist/runtime/workflow-v2-fields.js.map +1 -0
  780. package/dist/runtime/workflow-v2-finalize.d.ts +29 -0
  781. package/dist/runtime/workflow-v2-finalize.d.ts.map +1 -0
  782. package/dist/runtime/workflow-v2-finalize.js +167 -0
  783. package/dist/runtime/workflow-v2-finalize.js.map +1 -0
  784. package/dist/runtime/workflow-v2-handover.d.ts +43 -0
  785. package/dist/runtime/workflow-v2-handover.d.ts.map +1 -0
  786. package/dist/runtime/workflow-v2-handover.js +124 -0
  787. package/dist/runtime/workflow-v2-handover.js.map +1 -0
  788. package/dist/runtime/workflow-v2-human-response.d.ts +17 -0
  789. package/dist/runtime/workflow-v2-human-response.d.ts.map +1 -0
  790. package/dist/runtime/workflow-v2-human-response.js +133 -0
  791. package/dist/runtime/workflow-v2-human-response.js.map +1 -0
  792. package/dist/runtime/workflow-v2-human.d.ts +46 -0
  793. package/dist/runtime/workflow-v2-human.d.ts.map +1 -0
  794. package/dist/runtime/workflow-v2-human.js +132 -0
  795. package/dist/runtime/workflow-v2-human.js.map +1 -0
  796. package/dist/runtime/workflow-v2-labels.d.ts +26 -0
  797. package/dist/runtime/workflow-v2-labels.d.ts.map +1 -0
  798. package/dist/runtime/workflow-v2-labels.js +75 -0
  799. package/dist/runtime/workflow-v2-labels.js.map +1 -0
  800. package/dist/runtime/workflow-v2-notes.d.ts +58 -0
  801. package/dist/runtime/workflow-v2-notes.d.ts.map +1 -0
  802. package/dist/runtime/workflow-v2-notes.js +124 -0
  803. package/dist/runtime/workflow-v2-notes.js.map +1 -0
  804. package/dist/runtime/workflow-v2-observation.d.ts +22 -0
  805. package/dist/runtime/workflow-v2-observation.d.ts.map +1 -0
  806. package/dist/runtime/workflow-v2-observation.js +163 -0
  807. package/dist/runtime/workflow-v2-observation.js.map +1 -0
  808. package/dist/runtime/workflow-v2-operator-words.d.ts +50 -0
  809. package/dist/runtime/workflow-v2-operator-words.d.ts.map +1 -0
  810. package/dist/runtime/workflow-v2-operator-words.js +93 -0
  811. package/dist/runtime/workflow-v2-operator-words.js.map +1 -0
  812. package/dist/runtime/workflow-v2-parties.d.ts +60 -0
  813. package/dist/runtime/workflow-v2-parties.d.ts.map +1 -0
  814. package/dist/runtime/workflow-v2-parties.js +115 -0
  815. package/dist/runtime/workflow-v2-parties.js.map +1 -0
  816. package/dist/runtime/workflow-v2-party-state.d.ts +75 -0
  817. package/dist/runtime/workflow-v2-party-state.d.ts.map +1 -0
  818. package/dist/runtime/workflow-v2-party-state.js +98 -0
  819. package/dist/runtime/workflow-v2-party-state.js.map +1 -0
  820. package/dist/runtime/workflow-v2-receipt.d.ts +54 -0
  821. package/dist/runtime/workflow-v2-receipt.d.ts.map +1 -0
  822. package/dist/runtime/workflow-v2-receipt.js +252 -0
  823. package/dist/runtime/workflow-v2-receipt.js.map +1 -0
  824. package/dist/runtime/workflow-v2-reply.d.ts +30 -0
  825. package/dist/runtime/workflow-v2-reply.d.ts.map +1 -0
  826. package/dist/runtime/workflow-v2-reply.js +52 -0
  827. package/dist/runtime/workflow-v2-reply.js.map +1 -0
  828. package/dist/runtime/workflow-v2-report-events.d.ts +70 -0
  829. package/dist/runtime/workflow-v2-report-events.d.ts.map +1 -0
  830. package/dist/runtime/workflow-v2-report-events.js +97 -0
  831. package/dist/runtime/workflow-v2-report-events.js.map +1 -0
  832. package/dist/runtime/workflow-v2-report-render.d.ts +18 -0
  833. package/dist/runtime/workflow-v2-report-render.d.ts.map +1 -0
  834. package/dist/runtime/workflow-v2-report-render.js +248 -0
  835. package/dist/runtime/workflow-v2-report-render.js.map +1 -0
  836. package/dist/runtime/workflow-v2-report.d.ts +134 -0
  837. package/dist/runtime/workflow-v2-report.d.ts.map +1 -0
  838. package/dist/runtime/workflow-v2-report.js +206 -0
  839. package/dist/runtime/workflow-v2-report.js.map +1 -0
  840. package/dist/runtime/workflow-v2-revise-open.d.ts +27 -0
  841. package/dist/runtime/workflow-v2-revise-open.d.ts.map +1 -0
  842. package/dist/runtime/workflow-v2-revise-open.js +79 -0
  843. package/dist/runtime/workflow-v2-revise-open.js.map +1 -0
  844. package/dist/runtime/workflow-v2-revise.d.ts +24 -0
  845. package/dist/runtime/workflow-v2-revise.d.ts.map +1 -0
  846. package/dist/runtime/workflow-v2-revise.js +192 -0
  847. package/dist/runtime/workflow-v2-revise.js.map +1 -0
  848. package/dist/runtime/workflow-v2-routing.d.ts +43 -0
  849. package/dist/runtime/workflow-v2-routing.d.ts.map +1 -0
  850. package/dist/runtime/workflow-v2-routing.js +123 -0
  851. package/dist/runtime/workflow-v2-routing.js.map +1 -0
  852. package/dist/runtime/workflow-v2-run-events.d.ts +49 -0
  853. package/dist/runtime/workflow-v2-run-events.d.ts.map +1 -0
  854. package/dist/runtime/workflow-v2-run-events.js +85 -0
  855. package/dist/runtime/workflow-v2-run-events.js.map +1 -0
  856. package/dist/runtime/workflow-v2-run.d.ts +80 -0
  857. package/dist/runtime/workflow-v2-run.d.ts.map +1 -0
  858. package/dist/runtime/workflow-v2-run.js +137 -0
  859. package/dist/runtime/workflow-v2-run.js.map +1 -0
  860. package/dist/runtime/workflow-v2-runtime-steps.d.ts +35 -0
  861. package/dist/runtime/workflow-v2-runtime-steps.d.ts.map +1 -0
  862. package/dist/runtime/workflow-v2-runtime-steps.js +138 -0
  863. package/dist/runtime/workflow-v2-runtime-steps.js.map +1 -0
  864. package/dist/runtime/workflow-v2-skip.d.ts +20 -0
  865. package/dist/runtime/workflow-v2-skip.d.ts.map +1 -0
  866. package/dist/runtime/workflow-v2-skip.js +77 -0
  867. package/dist/runtime/workflow-v2-skip.js.map +1 -0
  868. package/dist/runtime/workflow-v2-step-text.d.ts +23 -0
  869. package/dist/runtime/workflow-v2-step-text.d.ts.map +1 -0
  870. package/dist/runtime/workflow-v2-step-text.js +34 -0
  871. package/dist/runtime/workflow-v2-step-text.js.map +1 -0
  872. package/dist/runtime/workflow-v2-submission.d.ts +64 -0
  873. package/dist/runtime/workflow-v2-submission.d.ts.map +1 -0
  874. package/dist/runtime/workflow-v2-submission.js +99 -0
  875. package/dist/runtime/workflow-v2-submission.js.map +1 -0
  876. package/dist/runtime/workflow-v2-types.d.ts +208 -0
  877. package/dist/runtime/workflow-v2-types.d.ts.map +1 -0
  878. package/dist/runtime/workflow-v2-types.js +140 -0
  879. package/dist/runtime/workflow-v2-types.js.map +1 -0
  880. package/dist/runtime/workflow-v2-variables.d.ts +11 -0
  881. package/dist/runtime/workflow-v2-variables.d.ts.map +1 -0
  882. package/dist/runtime/workflow-v2-variables.js +63 -0
  883. package/dist/runtime/workflow-v2-variables.js.map +1 -0
  884. package/dist/runtime/workflow-v2-wait.d.ts +34 -0
  885. package/dist/runtime/workflow-v2-wait.d.ts.map +1 -0
  886. package/dist/runtime/workflow-v2-wait.js +53 -0
  887. package/dist/runtime/workflow-v2-wait.js.map +1 -0
  888. package/dist/runtime/workspace-fingerprint.d.ts +15 -0
  889. package/dist/runtime/workspace-fingerprint.d.ts.map +1 -0
  890. package/dist/runtime/workspace-fingerprint.js +36 -0
  891. package/dist/runtime/workspace-fingerprint.js.map +1 -0
  892. package/dist/schemas/coord.d.ts +246 -0
  893. package/dist/schemas/coord.d.ts.map +1 -0
  894. package/dist/schemas/coord.js +122 -0
  895. package/dist/schemas/coord.js.map +1 -0
  896. package/dist/schemas/counters.schema.d.ts +10 -0
  897. package/dist/schemas/counters.schema.d.ts.map +1 -0
  898. package/dist/schemas/counters.schema.js +13 -0
  899. package/dist/schemas/counters.schema.js.map +1 -0
  900. package/dist/schemas/expedition.d.ts +52 -0
  901. package/dist/schemas/expedition.d.ts.map +1 -0
  902. package/dist/schemas/expedition.js +45 -0
  903. package/dist/schemas/expedition.js.map +1 -0
  904. package/dist/schemas/guide-acceptance.d.ts +170 -0
  905. package/dist/schemas/guide-acceptance.d.ts.map +1 -0
  906. package/dist/schemas/guide-acceptance.js +93 -0
  907. package/dist/schemas/guide-acceptance.js.map +1 -0
  908. package/dist/schemas/index-refs.schema.d.ts +12 -11
  909. package/dist/schemas/index-refs.schema.d.ts.map +1 -1
  910. package/dist/schemas/index-refs.schema.js +13 -6
  911. package/dist/schemas/index-refs.schema.js.map +1 -1
  912. package/dist/schemas/index.d.ts +118 -81
  913. package/dist/schemas/index.d.ts.map +1 -1
  914. package/dist/schemas/index.js +83 -27
  915. package/dist/schemas/index.js.map +1 -1
  916. package/dist/schemas/item-id.d.ts +15 -0
  917. package/dist/schemas/item-id.d.ts.map +1 -0
  918. package/dist/schemas/item-id.js +29 -0
  919. package/dist/schemas/item-id.js.map +1 -0
  920. package/dist/schemas/relationships.d.ts +6 -7
  921. package/dist/schemas/relationships.d.ts.map +1 -1
  922. package/dist/schemas/relationships.js +11 -11
  923. package/dist/schemas/relationships.js.map +1 -1
  924. package/dist/schemas/task-workflow.d.ts +206 -0
  925. package/dist/schemas/task-workflow.d.ts.map +1 -0
  926. package/dist/schemas/task-workflow.js +102 -0
  927. package/dist/schemas/task-workflow.js.map +1 -0
  928. package/dist/schemas/test-profile.d.ts +13 -0
  929. package/dist/schemas/test-profile.d.ts.map +1 -0
  930. package/dist/schemas/test-profile.js +9 -0
  931. package/dist/schemas/test-profile.js.map +1 -0
  932. package/dist/schemas/test-workflow.d.ts +117 -0
  933. package/dist/schemas/test-workflow.d.ts.map +1 -0
  934. package/dist/schemas/test-workflow.js +69 -0
  935. package/dist/schemas/test-workflow.js.map +1 -0
  936. package/dist/schemas/workflow-definition-v2.d.ts +554 -0
  937. package/dist/schemas/workflow-definition-v2.d.ts.map +1 -0
  938. package/dist/schemas/workflow-definition-v2.js +161 -0
  939. package/dist/schemas/workflow-definition-v2.js.map +1 -0
  940. package/dist/schemas/workflow-graph.d.ts +29 -0
  941. package/dist/schemas/workflow-graph.d.ts.map +1 -0
  942. package/dist/schemas/workflow-graph.js +83 -0
  943. package/dist/schemas/workflow-graph.js.map +1 -0
  944. package/dist/schemas/workflow-v2-contracts.d.ts +248 -0
  945. package/dist/schemas/workflow-v2-contracts.d.ts.map +1 -0
  946. package/dist/schemas/workflow-v2-contracts.js +236 -0
  947. package/dist/schemas/workflow-v2-contracts.js.map +1 -0
  948. package/dist/schemas/workflow-v2-vocabulary.d.ts +93 -0
  949. package/dist/schemas/workflow-v2-vocabulary.d.ts.map +1 -0
  950. package/dist/schemas/workflow-v2-vocabulary.js +89 -0
  951. package/dist/schemas/workflow-v2-vocabulary.js.map +1 -0
  952. package/dist/templates/diataxis.d.ts +20 -0
  953. package/dist/templates/diataxis.d.ts.map +1 -0
  954. package/dist/templates/diataxis.js +176 -0
  955. package/dist/templates/diataxis.js.map +1 -0
  956. package/dist/templates/epic.d.ts +27 -0
  957. package/dist/templates/epic.d.ts.map +1 -0
  958. package/dist/templates/epic.js +67 -0
  959. package/dist/templates/epic.js.map +1 -0
  960. package/dist/templates/madr.d.ts +17 -0
  961. package/dist/templates/madr.d.ts.map +1 -0
  962. package/dist/templates/madr.js +61 -0
  963. package/dist/templates/madr.js.map +1 -0
  964. package/dist/templates/reminders.d.ts +28 -0
  965. package/dist/templates/reminders.d.ts.map +1 -0
  966. package/dist/templates/reminders.js +54 -0
  967. package/dist/templates/reminders.js.map +1 -0
  968. package/dist/templates/story.d.ts +24 -0
  969. package/dist/templates/story.d.ts.map +1 -0
  970. package/dist/templates/story.js +36 -0
  971. package/dist/templates/story.js.map +1 -0
  972. package/dist/templates/task-workflow.d.ts +9 -0
  973. package/dist/templates/task-workflow.d.ts.map +1 -0
  974. package/dist/templates/task-workflow.js +39 -0
  975. package/dist/templates/task-workflow.js.map +1 -0
  976. package/dist/templates/test-workflow.d.ts +9 -0
  977. package/dist/templates/test-workflow.d.ts.map +1 -0
  978. package/dist/templates/test-workflow.js +36 -0
  979. package/dist/templates/test-workflow.js.map +1 -0
  980. package/dist/types/commands.d.ts +1 -0
  981. package/dist/types/commands.d.ts.map +1 -1
  982. package/dist/types/commands.js +3 -0
  983. package/dist/types/commands.js.map +1 -1
  984. package/dist/types/docs-map.d.ts +110 -0
  985. package/dist/types/docs-map.d.ts.map +1 -0
  986. package/dist/types/docs-map.js +15 -0
  987. package/dist/types/docs-map.js.map +1 -0
  988. package/dist/types/index-refs.types.d.ts.map +1 -1
  989. package/dist/types/index-refs.types.js +1 -0
  990. package/dist/types/index-refs.types.js.map +1 -1
  991. package/dist/types/index.d.ts +2 -3
  992. package/dist/types/index.d.ts.map +1 -1
  993. package/dist/types/index.js +1 -1
  994. package/dist/types/index.js.map +1 -1
  995. package/dist/utils/agent-files-payload.d.ts +66 -0
  996. package/dist/utils/agent-files-payload.d.ts.map +1 -0
  997. package/dist/utils/agent-files-payload.js +153 -0
  998. package/dist/utils/agent-files-payload.js.map +1 -0
  999. package/dist/utils/agent-files-prune.d.ts +49 -0
  1000. package/dist/utils/agent-files-prune.d.ts.map +1 -0
  1001. package/dist/utils/agent-files-prune.js +164 -0
  1002. package/dist/utils/agent-files-prune.js.map +1 -0
  1003. package/dist/utils/agent-files-snapshot.d.ts +31 -0
  1004. package/dist/utils/agent-files-snapshot.d.ts.map +1 -0
  1005. package/dist/utils/agent-files-snapshot.js +128 -0
  1006. package/dist/utils/agent-files-snapshot.js.map +1 -0
  1007. package/dist/utils/atomic-write.d.ts +56 -0
  1008. package/dist/utils/atomic-write.d.ts.map +1 -0
  1009. package/dist/utils/atomic-write.js +129 -0
  1010. package/dist/utils/atomic-write.js.map +1 -0
  1011. package/dist/utils/backup-github-files.d.ts +7 -26
  1012. package/dist/utils/backup-github-files.d.ts.map +1 -1
  1013. package/dist/utils/backup-github-files.js +36 -113
  1014. package/dist/utils/backup-github-files.js.map +1 -1
  1015. package/dist/utils/cache.d.ts.map +1 -1
  1016. package/dist/utils/claude-host.d.ts +48 -0
  1017. package/dist/utils/claude-host.d.ts.map +1 -0
  1018. package/dist/utils/claude-host.js +72 -0
  1019. package/dist/utils/claude-host.js.map +1 -0
  1020. package/dist/utils/codex-config.d.ts +14 -0
  1021. package/dist/utils/codex-config.d.ts.map +1 -0
  1022. package/dist/utils/codex-config.js +93 -0
  1023. package/dist/utils/codex-config.js.map +1 -0
  1024. package/dist/utils/codex-ignore.d.ts +19 -0
  1025. package/dist/utils/codex-ignore.d.ts.map +1 -0
  1026. package/dist/utils/codex-ignore.js +92 -0
  1027. package/dist/utils/codex-ignore.js.map +1 -0
  1028. package/dist/utils/codex-manifest.d.ts +72 -0
  1029. package/dist/utils/codex-manifest.d.ts.map +1 -0
  1030. package/dist/utils/codex-manifest.js +63 -0
  1031. package/dist/utils/codex-manifest.js.map +1 -0
  1032. package/dist/utils/codex-mcp-input.d.ts +7 -0
  1033. package/dist/utils/codex-mcp-input.d.ts.map +1 -0
  1034. package/dist/utils/codex-mcp-input.js +14 -0
  1035. package/dist/utils/codex-mcp-input.js.map +1 -0
  1036. package/dist/utils/codex-payload.d.ts +19 -0
  1037. package/dist/utils/codex-payload.d.ts.map +1 -0
  1038. package/dist/utils/codex-payload.js +133 -0
  1039. package/dist/utils/codex-payload.js.map +1 -0
  1040. package/dist/utils/codex-plan.d.ts +8 -0
  1041. package/dist/utils/codex-plan.d.ts.map +1 -0
  1042. package/dist/utils/codex-plan.js +137 -0
  1043. package/dist/utils/codex-plan.js.map +1 -0
  1044. package/dist/utils/codex-setup.d.ts +12 -0
  1045. package/dist/utils/codex-setup.d.ts.map +1 -0
  1046. package/dist/utils/codex-setup.js +130 -0
  1047. package/dist/utils/codex-setup.js.map +1 -0
  1048. package/dist/utils/codex-spans.d.ts +27 -0
  1049. package/dist/utils/codex-spans.d.ts.map +1 -0
  1050. package/dist/utils/codex-spans.js +69 -0
  1051. package/dist/utils/codex-spans.js.map +1 -0
  1052. package/dist/utils/codex-state.d.ts +14 -0
  1053. package/dist/utils/codex-state.d.ts.map +1 -0
  1054. package/dist/utils/codex-state.js +64 -0
  1055. package/dist/utils/codex-state.js.map +1 -0
  1056. package/dist/utils/codex-types.d.ts +49 -0
  1057. package/dist/utils/codex-types.d.ts.map +1 -0
  1058. package/dist/utils/codex-types.js +46 -0
  1059. package/dist/utils/codex-types.js.map +1 -0
  1060. package/dist/utils/contract-block.d.ts +79 -0
  1061. package/dist/utils/contract-block.d.ts.map +1 -0
  1062. package/dist/utils/contract-block.js +153 -0
  1063. package/dist/utils/contract-block.js.map +1 -0
  1064. package/dist/utils/contract-staleness.d.ts +22 -0
  1065. package/dist/utils/contract-staleness.d.ts.map +1 -0
  1066. package/dist/utils/contract-staleness.js +67 -0
  1067. package/dist/utils/contract-staleness.js.map +1 -0
  1068. package/dist/utils/index.d.ts +14 -37
  1069. package/dist/utils/index.d.ts.map +1 -1
  1070. package/dist/utils/index.js +68 -120
  1071. package/dist/utils/index.js.map +1 -1
  1072. package/dist/utils/init-helpers.d.ts +8 -6
  1073. package/dist/utils/init-helpers.d.ts.map +1 -1
  1074. package/dist/utils/init-helpers.js +54 -102
  1075. package/dist/utils/init-helpers.js.map +1 -1
  1076. package/dist/utils/mcp-tool-groups.d.ts +101 -0
  1077. package/dist/utils/mcp-tool-groups.d.ts.map +1 -0
  1078. package/dist/utils/mcp-tool-groups.js +117 -0
  1079. package/dist/utils/mcp-tool-groups.js.map +1 -0
  1080. package/dist/utils/packaged-github.d.ts +23 -0
  1081. package/dist/utils/packaged-github.d.ts.map +1 -0
  1082. package/dist/utils/packaged-github.js +38 -0
  1083. package/dist/utils/packaged-github.js.map +1 -0
  1084. package/dist/utils/setup-guide.d.ts +7 -0
  1085. package/dist/utils/setup-guide.d.ts.map +1 -0
  1086. package/dist/utils/setup-guide.js +87 -0
  1087. package/dist/utils/setup-guide.js.map +1 -0
  1088. package/dist/utils/snapshot-manifest.d.ts +36 -0
  1089. package/dist/utils/snapshot-manifest.d.ts.map +1 -0
  1090. package/dist/utils/snapshot-manifest.js +116 -0
  1091. package/dist/utils/snapshot-manifest.js.map +1 -0
  1092. package/dist/utils/snapshot-paths.d.ts +21 -0
  1093. package/dist/utils/snapshot-paths.d.ts.map +1 -0
  1094. package/dist/utils/snapshot-paths.js +111 -0
  1095. package/dist/utils/snapshot-paths.js.map +1 -0
  1096. package/dist/utils/snapshot-retention.d.ts +12 -0
  1097. package/dist/utils/snapshot-retention.d.ts.map +1 -0
  1098. package/dist/utils/snapshot-retention.js +71 -0
  1099. package/dist/utils/snapshot-retention.js.map +1 -0
  1100. package/dist/utils/text-file.d.ts +13 -0
  1101. package/dist/utils/text-file.d.ts.map +1 -0
  1102. package/dist/utils/text-file.js +19 -0
  1103. package/dist/utils/text-file.js.map +1 -0
  1104. package/dist/utils/update-agent-files.d.ts +63 -0
  1105. package/dist/utils/update-agent-files.d.ts.map +1 -0
  1106. package/dist/utils/update-agent-files.js +248 -0
  1107. package/dist/utils/update-agent-files.js.map +1 -0
  1108. package/dist/utils/update-copilot-files.d.ts +4 -2
  1109. package/dist/utils/update-copilot-files.d.ts.map +1 -1
  1110. package/dist/utils/update-copilot-files.js +52 -12
  1111. package/dist/utils/update-copilot-files.js.map +1 -1
  1112. package/package.json +14 -10
  1113. package/dist/agents.test.d.ts +0 -18
  1114. package/dist/agents.test.d.ts.map +0 -1
  1115. package/dist/agents.test.js +0 -96
  1116. package/dist/agents.test.js.map +0 -1
  1117. package/dist/core/auto-migrate.test.d.ts +0 -7
  1118. package/dist/core/auto-migrate.test.d.ts.map +0 -1
  1119. package/dist/core/auto-migrate.test.js +0 -368
  1120. package/dist/core/auto-migrate.test.js.map +0 -1
  1121. package/dist/core/context.test.d.ts +0 -10
  1122. package/dist/core/context.test.d.ts.map +0 -1
  1123. package/dist/core/context.test.js +0 -239
  1124. package/dist/core/context.test.js.map +0 -1
  1125. package/dist/core/index-rebuild.test.d.ts +0 -8
  1126. package/dist/core/index-rebuild.test.d.ts.map +0 -1
  1127. package/dist/core/index-rebuild.test.js +0 -563
  1128. package/dist/core/index-rebuild.test.js.map +0 -1
  1129. package/dist/core/index-refs.test.d.ts +0 -7
  1130. package/dist/core/index-refs.test.d.ts.map +0 -1
  1131. package/dist/core/index-refs.test.js +0 -367
  1132. package/dist/core/index-refs.test.js.map +0 -1
  1133. package/dist/schemas/analysis.d.ts +0 -206
  1134. package/dist/schemas/analysis.d.ts.map +0 -1
  1135. package/dist/schemas/analysis.js +0 -138
  1136. package/dist/schemas/analysis.js.map +0 -1
  1137. package/dist/schemas/cbp-loops.d.ts +0 -154
  1138. package/dist/schemas/cbp-loops.d.ts.map +0 -1
  1139. package/dist/schemas/cbp-loops.js +0 -160
  1140. package/dist/schemas/cbp-loops.js.map +0 -1
  1141. package/dist/schemas/cbp-loops.test.d.ts +0 -10
  1142. package/dist/schemas/cbp-loops.test.d.ts.map +0 -1
  1143. package/dist/schemas/cbp-loops.test.js +0 -268
  1144. package/dist/schemas/cbp-loops.test.js.map +0 -1
  1145. package/dist/schemas/cbp-mandate.d.ts +0 -242
  1146. package/dist/schemas/cbp-mandate.d.ts.map +0 -1
  1147. package/dist/schemas/cbp-mandate.js +0 -210
  1148. package/dist/schemas/cbp-mandate.js.map +0 -1
  1149. package/dist/schemas/cbp-mandate.test.d.ts +0 -11
  1150. package/dist/schemas/cbp-mandate.test.d.ts.map +0 -1
  1151. package/dist/schemas/cbp-mandate.test.js +0 -312
  1152. package/dist/schemas/cbp-mandate.test.js.map +0 -1
  1153. package/dist/utils/normalize.test.d.ts +0 -15
  1154. package/dist/utils/normalize.test.d.ts.map +0 -1
  1155. package/dist/utils/normalize.test.js +0 -101
  1156. package/dist/utils/normalize.test.js.map +0 -1
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Copyright © 2026 Thomas Hertel (the@devsteps.dev)
3
+ * Licensed under the Apache License, Version 2.0
4
+ *
5
+ * What each party of a v2 run needs to know next: the run's mode, who carries out the current
6
+ * step, which problems and questions are still open, and — while the run waits on the operator —
7
+ * how an agent waits for it without being told (DEC-022). The wait recipe travels in band with
8
+ * every answer, so no tool text has to carry it.
9
+ * @see STORY-463
10
+ */
11
+ import type { WorkflowExecutionManifest } from '../core/workflow-compiler.js';
12
+ import type { ProcessEvent, ProcessRun } from './index.js';
13
+ import { type WorkflowV2StepNoteView } from './workflow-v2-notes.js';
14
+ import type { WorkflowParty, WorkflowRunMode } from './workflow-v2-types.js';
15
+ /** The text a waiting agent matches in the run's event log. */
16
+ export declare const AGENT_WAKE_MATCH = "\"notify\":\"agent\"";
17
+ /** How often the poll recipe looks, and how long it waits before it returns empty-handed. */
18
+ export declare const AGENT_POLL_INTERVAL_SECONDS = 5;
19
+ export declare const AGENT_POLL_TIMEOUT_SECONDS = 540;
20
+ /**
21
+ * A wait for hosts without a streaming monitor (BUG-189): one command that reads only the lines
22
+ * after `after_line` every `interval_seconds` and returns as soon as one is addressed to the agent
23
+ * and the writer is done (exit 0), or after `timeout_seconds` (exit 1). A pipe from `tail -F`
24
+ * would return only at its timeout, because tail lives on until it writes again.
25
+ */
26
+ export type WorkflowV2Poll = Readonly<{
27
+ interval_seconds: number;
28
+ timeout_seconds: number;
29
+ /** Lines of the event log when the answer was given; only later lines can wake the agent. */
30
+ after_line: number;
31
+ sh: string;
32
+ powershell: string;
33
+ }>;
34
+ /** The wait as one tool call: workflow_run_get with these arguments (BUG-210). */
35
+ export type WorkflowV2WaitCall = Readonly<{
36
+ tool: 'workflow_run_get';
37
+ wait_seconds: number;
38
+ after_version: number;
39
+ }>;
40
+ export type WorkflowV2Wait = Readonly<{
41
+ /** Who the run waits on: the operator for a step or for the verdict. */
42
+ for: 'operator';
43
+ call?: WorkflowV2WaitCall;
44
+ events_file: string;
45
+ match: string;
46
+ how: string;
47
+ poll: WorkflowV2Poll;
48
+ }>;
49
+ export type WorkflowV2PartyState = Readonly<{
50
+ mode: WorkflowRunMode;
51
+ /** Who carries out the current step; absent once no step is current. */
52
+ current_assignee?: WorkflowParty;
53
+ assignments: Readonly<Record<string, WorkflowParty>>;
54
+ open_notes: readonly WorkflowV2StepNoteView[];
55
+ wait?: WorkflowV2Wait;
56
+ }>;
57
+ /** The poll commands for an event log; `timing` exists for tests, answers use the defaults. */
58
+ export declare function agentPoll(eventsFile: string, afterLine: number, timing?: {
59
+ interval: number;
60
+ timeout: number;
61
+ }): WorkflowV2Poll;
62
+ /**
63
+ * The recipe for an agent that waits on the operator. First the wait as one tool call, which
64
+ * returns with the operator's events (BUG-210); then, for a host that cuts long tool calls, a
65
+ * watch on the run's own event log for the next line addressed to the agent, read through the
66
+ * tools once the writer is done. No wait opens run.json, because on Windows an open reader can
67
+ * make the writer's rename fail.
68
+ */
69
+ export declare function agentWaitRecipe(eventsFile: string, afterLine?: number, afterVersion?: number): WorkflowV2Wait;
70
+ /**
71
+ * `eventLines` is the event log's physical line count (`RunStore.eventLineCount`); without it the
72
+ * events are counted, which is the same for a log no repair touched.
73
+ */
74
+ export declare function workflowV2PartyState(manifest: WorkflowExecutionManifest, run: ProcessRun, events: readonly ProcessEvent[], eventsFile: string, eventLines?: number): WorkflowV2PartyState;
75
+ //# sourceMappingURL=workflow-v2-party-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-v2-party-state.d.ts","sourceRoot":"","sources":["../../src/runtime/workflow-v2-party-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,KAAK,sBAAsB,EAAuB,MAAM,wBAAwB,CAAC;AAE1F,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG7E,+DAA+D;AAC/D,eAAO,MAAM,gBAAgB,yBAAqB,CAAC;AAEnD,6FAA6F;AAC7F,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAC7C,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,CAAC;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,6FAA6F;IAC7F,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC,CAAC;AAEH,kFAAkF;AAClF,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IACxC,IAAI,EAAE,kBAAkB,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,QAAQ,CAAC;IACpC,wEAAwE;IACxE,GAAG,EAAE,UAAU,CAAC;IAChB,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,cAAc,CAAC;CACtB,CAAC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAC1C,IAAI,EAAE,eAAe,CAAC;IACtB,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,aAAa,CAAC;IACjC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;IACrD,UAAU,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAC9C,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB,CAAC,CAAC;AAKH,+FAA+F;AAC/F,wBAAgB,SAAS,CACvB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,MAAM;;;CAAiF,GACtF,cAAc,CAuBhB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,MAAM,EAClB,SAAS,SAAI,EACb,YAAY,CAAC,EAAE,MAAM,GACpB,cAAc,CA4BhB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,yBAAyB,EACnC,GAAG,EAAE,UAAU,EACf,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,UAAU,EAAE,MAAM,EAClB,UAAU,SAAgB,GACzB,oBAAoB,CAetB"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Copyright © 2026 Thomas Hertel (the@devsteps.dev)
3
+ * Licensed under the Apache License, Version 2.0
4
+ *
5
+ * What each party of a v2 run needs to know next: the run's mode, who carries out the current
6
+ * step, which problems and questions are still open, and — while the run waits on the operator —
7
+ * how an agent waits for it without being told (DEC-022). The wait recipe travels in band with
8
+ * every answer, so no tool text has to carry it.
9
+ * @see STORY-463
10
+ */
11
+ import { workflowV2StepNotes } from './workflow-v2-notes.js';
12
+ import { awaitedParty, workflowRunMode } from './workflow-v2-parties.js';
13
+ import { AGENT_WAIT_MAX_SECONDS } from './workflow-v2-wait.js';
14
+ /** The text a waiting agent matches in the run's event log. */
15
+ export const AGENT_WAKE_MATCH = '"notify":"agent"';
16
+ /** How often the poll recipe looks, and how long it waits before it returns empty-handed. */
17
+ export const AGENT_POLL_INTERVAL_SECONDS = 5;
18
+ export const AGENT_POLL_TIMEOUT_SECONDS = 540;
19
+ const shQuote = (value) => `'${value.replaceAll("'", "'\\''")}'`;
20
+ const psQuote = (value) => `'${value.replaceAll("'", "''")}'`;
21
+ /** The poll commands for an event log; `timing` exists for tests, answers use the defaults. */
22
+ export function agentPoll(eventsFile, afterLine, timing = { interval: AGENT_POLL_INTERVAL_SECONDS, timeout: AGENT_POLL_TIMEOUT_SECONDS }) {
23
+ const directory = eventsFile.replace(/[\\/][^\\/]+$/, '');
24
+ const rounds = Math.ceil(timing.timeout / timing.interval);
25
+ const sh = `f=${shQuote(eventsFile)}; d=${shQuote(directory)}; i=0; while [ $i -lt ${rounds} ]; do ` +
26
+ `if tail -n +${afterLine + 1} "$f" | grep -qF '${AGENT_WAKE_MATCH}' && ` +
27
+ `[ ! -e "$d/run.lock" ] && [ ! -e "$d/pending-transition.json" ]; then break; fi; ` +
28
+ `sleep ${timing.interval}; i=$((i+1)); done; [ $i -lt ${rounds} ]`;
29
+ const powershell = `$f=${psQuote(eventsFile)}; $d=${psQuote(directory)}; $hit=$false; ` +
30
+ `for ($i=0; $i -lt ${rounds}; $i++) { ` +
31
+ `if ((Get-Content -LiteralPath $f | Select-Object -Skip ${afterLine} | ` +
32
+ `Select-String -SimpleMatch '${AGENT_WAKE_MATCH}' -Quiet) -and ` +
33
+ `-not (Test-Path -LiteralPath "$d/run.lock") -and ` +
34
+ `-not (Test-Path -LiteralPath "$d/pending-transition.json")) { $hit=$true; break }; ` +
35
+ `Start-Sleep -Seconds ${timing.interval} }; if (-not $hit) { exit 1 }`;
36
+ return {
37
+ interval_seconds: timing.interval,
38
+ timeout_seconds: timing.timeout,
39
+ after_line: afterLine,
40
+ sh,
41
+ powershell,
42
+ };
43
+ }
44
+ /**
45
+ * The recipe for an agent that waits on the operator. First the wait as one tool call, which
46
+ * returns with the operator's events (BUG-210); then, for a host that cuts long tool calls, a
47
+ * watch on the run's own event log for the next line addressed to the agent, read through the
48
+ * tools once the writer is done. No wait opens run.json, because on Windows an open reader can
49
+ * make the writer's rename fail.
50
+ */
51
+ export function agentWaitRecipe(eventsFile, afterLine = 0, afterVersion) {
52
+ const directory = eventsFile.replace(/[\\/][^\\/]+$/, '');
53
+ const timeout = AGENT_POLL_TIMEOUT_SECONDS;
54
+ const call = afterVersion === undefined
55
+ ? undefined
56
+ : {
57
+ tool: 'workflow_run_get',
58
+ wait_seconds: AGENT_WAIT_MAX_SECONDS,
59
+ after_version: afterVersion,
60
+ };
61
+ const first = call
62
+ ? `The run waits on the operator. Call workflow_run_get with wait_seconds ${call.wait_seconds} and after_version ${call.after_version} (wait.call): it answers woke: true with the events as soon as the operator reports, answers or writes a note, else woke: false; then call it again with the run.version it answered. Claude Code runs a long call in the background and resumes you when it returns. Without a long tool call: `
63
+ : 'The run waits on the operator. ';
64
+ return {
65
+ for: 'operator',
66
+ ...(call ? { call } : {}),
67
+ events_file: eventsFile,
68
+ match: AGENT_WAKE_MATCH,
69
+ how: `${first}Claude Code: Monitor with tail -n0 -F "${eventsFile}" | grep --line-buffered '${AGENT_WAKE_MATCH}'. ` +
70
+ `When a line arrives and neither "${directory}/run.lock" nor "${directory}/pending-transition.json" exists, call workflow_dispatch_get (or workflow_run_get for open_notes). ` +
71
+ `A host without a monitor runs poll.sh or poll.powershell as one shell command from the workspace root, with a tool timeout above ${timeout} s: ` +
72
+ `it looks every ${AGENT_POLL_INTERVAL_SECONDS} s and ends with exit 0 once such a line has arrived and the writer is done, or with exit 1 after ${timeout} s; then call workflow_run_get and wait again with its new poll. ` +
73
+ // BUG-224: a Done or an answer can carry the operator's own words; they are no note.
74
+ "A report or answer of the operator can carry their words (operator_said in the wait call, executor_report.observation or human_answer in the line): compare them with the step's expected observation, and answer a deviation, a remark or a question with workflow_run_record note before you go on.",
75
+ poll: agentPoll(eventsFile, afterLine),
76
+ };
77
+ }
78
+ /**
79
+ * `eventLines` is the event log's physical line count (`RunStore.eventLineCount`); without it the
80
+ * events are counted, which is the same for a log no repair touched.
81
+ */
82
+ export function workflowV2PartyState(manifest, run, events, eventsFile, eventLines = events.length) {
83
+ const mode = workflowRunMode(run);
84
+ const awaited = awaitedParty(manifest, run);
85
+ const open = workflowV2StepNotes(events).filter((note) => note.open);
86
+ const waitsOnOperator = awaited === 'operator' || (awaited === 'finalize' && mode !== 'agent');
87
+ return {
88
+ mode,
89
+ ...(awaited === 'operator' || awaited === 'agent' ? { current_assignee: awaited } : {}),
90
+ assignments: run.assignments ?? {},
91
+ open_notes: open,
92
+ // Open notes from the operator are the agent's to answer first; then it waits.
93
+ ...(waitsOnOperator && !open.some((note) => note.actor !== 'agent')
94
+ ? { wait: agentWaitRecipe(eventsFile, eventLines, run.version) }
95
+ : {}),
96
+ };
97
+ }
98
+ //# sourceMappingURL=workflow-v2-party-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-v2-party-state.js","sourceRoot":"","sources":["../../src/runtime/workflow-v2-party-state.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Copyright © 2026 Thomas Hertel (the@devsteps.dev)
3
+ * Licensed under the Apache License, Version 2.0
4
+ *
5
+ * Step receipts of compiled workflow runs.
6
+ * Verifies a host receipt against the dispatch, maps it into step outputs, judges the declared
7
+ * predicates, routes, and builds the event. Nothing here touches the filesystem.
8
+ */
9
+ import { type WorkflowExecutionManifest } from '../core/workflow-compiler.js';
10
+ import type { WorkflowStep } from '../schemas/workflow-definition-v2.js';
11
+ import { type EvidenceFile } from './evidence.js';
12
+ import type { ProcessEvent, ProcessRun, RuntimeActor } from './index.js';
13
+ import { type WorkflowPredicateResult } from './predicates.js';
14
+ import type { WorkflowRunDispatch } from './workflow-v2-dispatch.js';
15
+ import { type WorkflowRoute } from './workflow-v2-routing.js';
16
+ import { type WorkflowStepOutput, type WorkflowStepReceipt } from './workflow-v2-types.js';
17
+ export declare const CAPTURE_PREVIEW_LIMIT = 2000;
18
+ export type StepApplicationInput = Readonly<{
19
+ actor: RuntimeActor;
20
+ /** The actor's name, carried onto the event so the record says who discharged the step. */
21
+ actorName?: string;
22
+ occurredAt: string;
23
+ idempotencyKey?: string;
24
+ requestDigest: string;
25
+ }>;
26
+ export type StepApplication = Readonly<{
27
+ run: ProcessRun;
28
+ event: ProcessEvent;
29
+ route: WorkflowRoute;
30
+ /** Redacted captures above the preview limit, written under the run directory before commit. */
31
+ evidenceFiles: readonly EvidenceFile[];
32
+ }>;
33
+ export declare function capturePreview(text: string, limit?: number): string;
34
+ /** Digest of what a caller submitted, over redacted content, used to recognise a retried request. */
35
+ export declare function requestDigest(kind: string, content: unknown): string;
36
+ export declare function verifyReceiptAgainstDispatch(dispatch: WorkflowRunDispatch, receipt: WorkflowStepReceipt): void;
37
+ /** How much of stdout the extracts read, and how long one value may be (BUG-216). */
38
+ export declare const EXTRACT_INPUT_LIMIT = 262144;
39
+ export declare const EXTRACT_VALUE_LIMIT = 2000;
40
+ /**
41
+ * The script's declared extracts read from stdout (BUG-216): group 1 of each multiline pattern,
42
+ * else its whole match, trimmed and bounded; a pattern that matches nothing is named in
43
+ * `missing`. CRLF lines are read as LF, so `$` ends a Windows line too; only the first
44
+ * `EXTRACT_INPUT_LIMIT` characters are searched, which bounds an authored pattern's cost.
45
+ */
46
+ export declare function extractValues(step: WorkflowStep, stdout: string | undefined): {
47
+ declared: boolean;
48
+ values: Record<string, string>;
49
+ missing: string[];
50
+ };
51
+ export declare function evaluateStepPredicates(manifest: WorkflowExecutionManifest, step: WorkflowStep, run: ProcessRun, stepOutput: WorkflowStepOutput | undefined, receipt?: unknown, predicateIds?: readonly string[]): WorkflowPredicateResult[];
52
+ /** Apply a verified tool, script, artifact, or cleanup receipt to the run. */
53
+ export declare function applyStepReceipt(manifest: WorkflowExecutionManifest, run: ProcessRun, dispatch: WorkflowRunDispatch, step: WorkflowStep, receipt: WorkflowStepReceipt, input: StepApplicationInput): StepApplication;
54
+ //# sourceMappingURL=workflow-v2-receipt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-v2-receipt.d.ts","sourceRoot":"","sources":["../../src/runtime/workflow-v2-receipt.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,yBAAyB,EAAkB,MAAM,8BAA8B,CAAC;AAC9F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,EAEL,KAAK,YAAY,EAGlB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACzE,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAGL,KAAK,aAAa,EAEnB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACzB,MAAM,wBAAwB,CAAC;AAEhC,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAE1C,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAC1C,KAAK,EAAE,YAAY,CAAC;IACpB,2FAA2F;IAC3F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC;IACrC,GAAG,EAAE,UAAU,CAAC;IAChB,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,EAAE,aAAa,CAAC;IACrB,gGAAgG;IAChG,aAAa,EAAE,SAAS,YAAY,EAAE,CAAC;CACxC,CAAC,CAAC;AAuCH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,SAAwB,GAAG,MAAM,CAMlF;AAED,qGAAqG;AACrG,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAEpE;AAED,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,mBAAmB,EAC7B,OAAO,EAAE,mBAAmB,GAC3B,IAAI,CA2BN;AAWD,qFAAqF;AACrF,eAAO,MAAM,mBAAmB,SAAU,CAAC;AAC3C,eAAO,MAAM,mBAAmB,OAAQ,CAAC;AAEzC;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS;;;;EAW3E;AAmDD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,yBAAyB,EACnC,IAAI,EAAE,YAAY,EAClB,GAAG,EAAE,UAAU,EACf,UAAU,EAAE,kBAAkB,GAAG,SAAS,EAC1C,OAAO,CAAC,EAAE,OAAO,EACjB,YAAY,GAAE,SAAS,MAAM,EAA0B,GACtD,uBAAuB,EAAE,CAU3B;AAqDD,8EAA8E;AAC9E,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,yBAAyB,EACnC,GAAG,EAAE,UAAU,EACf,QAAQ,EAAE,mBAAmB,EAC7B,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,mBAAmB,EAC5B,KAAK,EAAE,oBAAoB,GAC1B,eAAe,CA2DjB"}
@@ -0,0 +1,252 @@
1
+ /**
2
+ * Copyright © 2026 Thomas Hertel (the@devsteps.dev)
3
+ * Licensed under the Apache License, Version 2.0
4
+ *
5
+ * Step receipts of compiled workflow runs.
6
+ * Verifies a host receipt against the dispatch, maps it into step outputs, judges the declared
7
+ * predicates, routes, and builds the event. Nothing here touches the filesystem.
8
+ */
9
+ import { workflowDigest } from '../core/workflow-compiler.js';
10
+ import { stableJson } from './dispatcher.js';
11
+ import { captureEvidence, normalizeEvidence, } from './evidence.js';
12
+ import { evaluateSemanticJudgment, evaluateWorkflowPredicateInContext, } from './predicates.js';
13
+ import { redactText, redactValue } from './redaction.js';
14
+ import { advanceWorkflowCursor, resolveWorkflowRoute, } from './workflow-v2-routing.js';
15
+ import { workflowV2Event } from './workflow-v2-run.js';
16
+ import { WorkflowRunV2Error, } from './workflow-v2-types.js';
17
+ export const CAPTURE_PREVIEW_LIMIT = 2000;
18
+ function receiptEvidence(step, dispatch, receipt, sequence, capturedAt) {
19
+ const evidence = [];
20
+ const files = [];
21
+ const captured = {
22
+ stdout: receipt.captures.stdout,
23
+ stderr: receipt.captures.stderr,
24
+ response: receipt.captures.response === undefined
25
+ ? undefined
26
+ : JSON.stringify(receipt.captures.response),
27
+ };
28
+ for (const [type, text] of Object.entries(captured)) {
29
+ if (text === undefined)
30
+ continue;
31
+ const { entry, file } = captureEvidence({
32
+ stepId: step.id,
33
+ attempt: dispatch.attempt,
34
+ sequence,
35
+ type: type,
36
+ text,
37
+ capturedAt,
38
+ });
39
+ evidence.push(entry);
40
+ if (file)
41
+ files.push(file);
42
+ }
43
+ const prefix = `${step.id}-${dispatch.attempt}`;
44
+ return {
45
+ evidence: [...evidence, ...normalizeEvidence(receipt.artifacts, prefix, capturedAt)],
46
+ files,
47
+ };
48
+ }
49
+ export function capturePreview(text, limit = CAPTURE_PREVIEW_LIMIT) {
50
+ const redacted = redactText(text);
51
+ if (redacted.length <= limit)
52
+ return redacted;
53
+ const head = Math.ceil(limit / 2);
54
+ const tail = Math.floor(limit / 2);
55
+ return `${redacted.slice(0, head)}... [${redacted.length - head - tail} chars omitted] ...${redacted.slice(-tail)}`;
56
+ }
57
+ /** Digest of what a caller submitted, over redacted content, used to recognise a retried request. */
58
+ export function requestDigest(kind, content) {
59
+ return workflowDigest({ kind, content: redactValue(content) });
60
+ }
61
+ export function verifyReceiptAgainstDispatch(dispatch, receipt) {
62
+ if (receipt.step_id !== dispatch.step_id) {
63
+ throw new WorkflowRunV2Error('PROTOCOL_ERROR', `Receipt is for step ${receipt.step_id} but the run dispatched ${dispatch.step_id}`);
64
+ }
65
+ if (dispatch.kind === 'human') {
66
+ throw new WorkflowRunV2Error('PROTOCOL_ERROR', `Step ${dispatch.step_id} is a human step; record it with human_response, not receipt`);
67
+ }
68
+ const mutated = [];
69
+ if (receipt.dispatch_digest !== dispatch.dispatch_digest)
70
+ mutated.push('dispatch_digest');
71
+ if (receipt.host_tool_name !== dispatch.host_tool_name)
72
+ mutated.push('host_tool_name');
73
+ if (stableJson(receipt.arguments) !== stableJson(dispatch.arguments))
74
+ mutated.push('arguments');
75
+ if (dispatch.idempotency_key && receipt.idempotency_key !== dispatch.idempotency_key) {
76
+ mutated.push('idempotency_key');
77
+ }
78
+ if (mutated.length > 0) {
79
+ throw new WorkflowRunV2Error('PARAMETER_MUTATION', `Receipt for step ${dispatch.step_id} differs from the dispatch in ${mutated.join(', ')}; execute exactly the dispatched tool with the dispatched arguments and echo dispatch_digest`, { mismatched: mutated });
80
+ }
81
+ }
82
+ function parseJsonCapture(step, stdout) {
83
+ if (!step.script?.expect_json)
84
+ return {};
85
+ try {
86
+ return { json: JSON.parse(stdout ?? '') };
87
+ }
88
+ catch {
89
+ return { error_code: 'ARTIFACT_INVALID' };
90
+ }
91
+ }
92
+ /** How much of stdout the extracts read, and how long one value may be (BUG-216). */
93
+ export const EXTRACT_INPUT_LIMIT = 262_144;
94
+ export const EXTRACT_VALUE_LIMIT = 2_000;
95
+ /**
96
+ * The script's declared extracts read from stdout (BUG-216): group 1 of each multiline pattern,
97
+ * else its whole match, trimmed and bounded; a pattern that matches nothing is named in
98
+ * `missing`. CRLF lines are read as LF, so `$` ends a Windows line too; only the first
99
+ * `EXTRACT_INPUT_LIMIT` characters are searched, which bounds an authored pattern's cost.
100
+ */
101
+ export function extractValues(step, stdout) {
102
+ const declared = Object.entries(step.script?.extract ?? {});
103
+ const values = {};
104
+ const missing = [];
105
+ const text = stdout?.slice(0, EXTRACT_INPUT_LIMIT).replace(/\r\n/g, '\n');
106
+ for (const [name, pattern] of declared) {
107
+ const match = text === undefined ? null : new RegExp(pattern, 'm').exec(text);
108
+ if (match)
109
+ values[name] = (match[1] ?? match[0]).trim().slice(0, EXTRACT_VALUE_LIMIT);
110
+ else
111
+ missing.push(name);
112
+ }
113
+ return { declared: declared.length > 0, values, missing };
114
+ }
115
+ function outputOf(step, receipt, attempt) {
116
+ const parsed = parseJsonCapture(step, receipt.captures.stdout);
117
+ const extracted = extractValues(step, receipt.captures.stdout);
118
+ // Only a run that succeeded owes its values; a failed one already says why.
119
+ const missingText = extracted.missing.length > 0 && receipt.status === 'succeeded' && !receipt.error_code
120
+ ? `No match in stdout for extract ${extracted.missing.map((name) => `${name} (${step.script?.extract?.[name]})`).join(', ')}`
121
+ : undefined;
122
+ const errorCode = receipt.error_code ?? parsed.error_code;
123
+ const full = {
124
+ attempt,
125
+ status: receipt.status,
126
+ ...(receipt.exit_code !== undefined ? { exit_code: receipt.exit_code } : {}),
127
+ ...(errorCode ? { error_code: errorCode } : {}),
128
+ ...(receipt.captures.stdout !== undefined ? { stdout: receipt.captures.stdout } : {}),
129
+ ...(receipt.captures.stderr !== undefined ? { stderr: receipt.captures.stderr } : {}),
130
+ ...(receipt.captures.response !== undefined ? { response: receipt.captures.response } : {}),
131
+ ...('json' in parsed ? { json: parsed.json } : {}),
132
+ ...(extracted.declared ? { values: extracted.values } : {}),
133
+ ...(missingText ? { error_text: missingText } : {}),
134
+ ...(receipt.artifacts.length > 0 ? { artifacts: receipt.artifacts } : {}),
135
+ };
136
+ const stored = {
137
+ ...redactValue(full),
138
+ ...(full.stdout !== undefined ? { stdout: capturePreview(full.stdout) } : {}),
139
+ ...(full.stderr !== undefined ? { stderr: capturePreview(full.stderr) } : {}),
140
+ };
141
+ return { full, stored };
142
+ }
143
+ function slotOf(step, output, predicates, receipt) {
144
+ if (output.error_code || output.status === 'blocked' || output.status === 'inconclusive') {
145
+ return 'error';
146
+ }
147
+ if (output.status === 'failed')
148
+ return 'fail';
149
+ // BUG-216: a declared extract that found nothing fails the step; error_text names it.
150
+ const extracts = Object.keys(step.script?.extract ?? {});
151
+ if (extracts.some((name) => !Object.hasOwn(output.values ?? {}, name)))
152
+ return 'fail';
153
+ if (predicates.some((result) => result.verdict !== 'PASS'))
154
+ return 'fail';
155
+ if (step.expected_results.length === 0 && (output.exit_code ?? 0) !== 0)
156
+ return 'fail';
157
+ if (receipt.judgment)
158
+ return receipt.judgment.verdict === 'PASS' ? 'pass' : 'fail';
159
+ return 'pass';
160
+ }
161
+ export function evaluateStepPredicates(manifest, step, run, stepOutput, receipt, predicateIds = step.expected_results) {
162
+ const outputs = stepOutput ? { ...(run.outputs ?? {}), [step.id]: stepOutput } : run.outputs;
163
+ const context = { variables: run.variables ?? {}, outputs: outputs ?? {}, receipt };
164
+ return predicateIds.map((id) => {
165
+ const predicate = manifest.definition.predicates.find((candidate) => candidate.id === id);
166
+ if (!predicate) {
167
+ return { predicate_id: id, verdict: 'FAIL', detail: 'predicate is not declared' };
168
+ }
169
+ return evaluateWorkflowPredicateInContext(predicate, context, stepOutput?.status);
170
+ });
171
+ }
172
+ function outcomeOf(slot, status) {
173
+ if (slot === 'pass')
174
+ return 'recorded';
175
+ if (slot === 'fail')
176
+ return 'failed';
177
+ return status === 'inconclusive' ? 'inconclusive' : 'blocked';
178
+ }
179
+ function receiptPayload(step, dispatch, receipt, input, outcome) {
180
+ const { full, stored, predicates, route, nextRun } = outcome;
181
+ const slot = route.slot;
182
+ return {
183
+ protocol: 'workflow-v2',
184
+ step_id: step.id,
185
+ kind: step.kind,
186
+ attempt: dispatch.attempt,
187
+ host_tool_name: dispatch.host_tool_name,
188
+ arguments: dispatch.arguments,
189
+ side_effect: step.side_effect,
190
+ dispatch_digest: dispatch.dispatch_digest,
191
+ request_digest: input.requestDigest,
192
+ status: receipt.status,
193
+ outcome: outcomeOf(slot, receipt.status),
194
+ ...(full.exit_code !== undefined ? { exit_code: full.exit_code } : {}),
195
+ ...(full.error_code ? { error_code: full.error_code } : {}),
196
+ predicates,
197
+ route,
198
+ pending_verdict: nextRun.pending_verdict ?? null,
199
+ ...(stored.stdout !== undefined ? { stdout_preview: stored.stdout } : {}),
200
+ ...(stored.stderr !== undefined ? { stderr_preview: stored.stderr } : {}),
201
+ ...(stored.response !== undefined ? { response: stored.response } : {}),
202
+ artifacts: receipt.artifacts,
203
+ ...(dispatch.idempotency_key ? { step_idempotency_key: dispatch.idempotency_key } : {}),
204
+ ...(receipt.judgment ? { judgment: receipt.judgment } : {}),
205
+ ...(receipt.started_at ? { started_at: receipt.started_at } : {}),
206
+ ...(receipt.finished_at ? { finished_at: receipt.finished_at } : {}),
207
+ };
208
+ }
209
+ /** Apply a verified tool, script, artifact, or cleanup receipt to the run. */
210
+ export function applyStepReceipt(manifest, run, dispatch, step, receipt, input) {
211
+ verifyReceiptAgainstDispatch(dispatch, receipt);
212
+ const { full, stored } = outputOf(step, receipt, dispatch.attempt);
213
+ if (receipt.judgment && step.semantic_judgment) {
214
+ const judged = evaluateSemanticJudgment(step.semantic_judgment, receipt.judgment);
215
+ if (judged.verdict === 'INCONCLUSIVE')
216
+ full.error_code = 'SEMANTIC_INCONCLUSIVE';
217
+ stored.error_code = full.error_code;
218
+ }
219
+ const predicates = evaluateStepPredicates(manifest, step, run, full, receipt);
220
+ const slot = slotOf(step, full, predicates, receipt);
221
+ const route = resolveWorkflowRoute(manifest.definition, step, slot, dispatch.attempt, full.error_code, run.step_attempts ?? {});
222
+ const advanced = advanceWorkflowCursor(manifest.definition, run, step, { ...stored, slot }, route);
223
+ const nextRun = {
224
+ ...advanced,
225
+ version: run.version + 1,
226
+ updated_at: input.occurredAt,
227
+ };
228
+ const payload = receiptPayload(step, dispatch, receipt, input, {
229
+ full,
230
+ stored,
231
+ predicates,
232
+ route,
233
+ nextRun,
234
+ });
235
+ const { evidence, files } = receiptEvidence(step, dispatch, receipt, run.version, input.occurredAt);
236
+ payload.evidence = evidence;
237
+ return {
238
+ run: nextRun,
239
+ event: workflowV2Event(run, {
240
+ type: step.id,
241
+ actor: input.actor,
242
+ actorName: input.actorName,
243
+ toState: nextRun.state,
244
+ payload: redactValue(payload),
245
+ idempotencyKey: input.idempotencyKey,
246
+ occurredAt: input.occurredAt,
247
+ }),
248
+ route,
249
+ evidenceFiles: files,
250
+ };
251
+ }
252
+ //# sourceMappingURL=workflow-v2-receipt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-v2-receipt.js","sourceRoot":"","sources":["../../src/runtime/workflow-v2-receipt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Copyright © 2026 Thomas Hertel (the@devsteps.dev)
3
+ * Licensed under the Apache License, Version 2.0
4
+ *
5
+ * What a v2 step expects back (TASK-968, SPIKE-074). Several rules govern meaning, not shape:
6
+ * a wrong but valid receipt status is accepted and judged wrongly. So the rules for the
7
+ * dispatched step travel with the dispatch as `reply`, before the step is reported, and the same
8
+ * text returns as `hint` when a report is refused for the wrong step or a changed dispatch.
9
+ * One constant per channel; no example values a model could copy.
10
+ */
11
+ export type WorkflowReplyChannel = 'receipt' | 'human_response' | 'observation';
12
+ export declare const WORKFLOW_REPLY_RULES: Readonly<Record<WorkflowReplyChannel, string>>;
13
+ /** The channel a dispatched step is reported through. */
14
+ export declare function replyChannel(dispatch: Readonly<{
15
+ kind: string;
16
+ host_tool_name: string | null;
17
+ }>): WorkflowReplyChannel;
18
+ export declare function replyRules(dispatch: Readonly<{
19
+ kind: string;
20
+ host_tool_name: string | null;
21
+ }>): string;
22
+ /**
23
+ * Attach the reply rules of the current dispatch to a refusal for the wrong step or a changed
24
+ * dispatch; any other error passes unchanged.
25
+ */
26
+ export declare function withReplyHint(error: unknown, dispatch: Readonly<{
27
+ kind: string;
28
+ host_tool_name: string | null;
29
+ }> | undefined): unknown;
30
+ //# sourceMappingURL=workflow-v2-reply.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-v2-reply.d.ts","sourceRoot":"","sources":["../../src/runtime/workflow-v2-reply.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,gBAAgB,GAAG,aAAa,CAAC;AAEhF,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAqB/E,CAAC;AAEF,yDAAyD;AACzD,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,GAClE,oBAAoB,CAGtB;AAED,wBAAgB,UAAU,CACxB,QAAQ,EAAE,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,GAClE,MAAM,CAER;AAID;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,GAAG,SAAS,GAC9E,OAAO,CAKT"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Copyright © 2026 Thomas Hertel (the@devsteps.dev)
3
+ * Licensed under the Apache License, Version 2.0
4
+ *
5
+ * What a v2 step expects back (TASK-968, SPIKE-074). Several rules govern meaning, not shape:
6
+ * a wrong but valid receipt status is accepted and judged wrongly. So the rules for the
7
+ * dispatched step travel with the dispatch as `reply`, before the step is reported, and the same
8
+ * text returns as `hint` when a report is refused for the wrong step or a changed dispatch.
9
+ * One constant per channel; no example values a model could copy.
10
+ */
11
+ import { OPERATOR_HOST_TOOL } from '../core/workflow-host-profiles.js';
12
+ import { WorkflowRunV2Error } from './workflow-v2-types.js';
13
+ export const WORKFLOW_REPLY_RULES = {
14
+ receipt: 'Reply with receipt: echo step_id, dispatch_digest, host_tool_name, arguments (unchanged; ' +
15
+ 'secret references stay references) and idempotency_key from this dispatch, and set status: ' +
16
+ 'succeeded = the tool ran, whatever its exit code (the expected_results judge it); failed = ' +
17
+ 'the tool reported a failure; blocked = it could not run; inconclusive. exit_code and ' +
18
+ 'captures (stdout, stderr, response) feed outputs.<step> and the predicates; with ' +
19
+ 'script.expect_json, stdout must be JSON (else ARTIFACT_INVALID). error_code selects ' +
20
+ 'error_routes and retries. Secret-shaped text is redacted; captures above 2000 characters ' +
21
+ 'are stored as evidence files.',
22
+ human_response: 'Reply with human_response: echo step_id and dispatch_digest; option is one of human.options ' +
23
+ '(matched case- and whitespace-insensitively); freeform only when human.allow_freeform, ' +
24
+ 'mapped through response_mapping.freeform; observation and evidence (notes or artifact ' +
25
+ 'references) as given. A FAIL answer to a non-approval step needs evidence; a declined ' +
26
+ 'required step is HUMAN_DECLINED.',
27
+ observation: 'Reply with observation: echo step_id and dispatch_digest; observation is the report of what ' +
28
+ 'was done by hand, status succeeded, failed, blocked or inconclusive, error_text any ' +
29
+ 'verbatim error, plus error_code and artifacts when there are any. The report reaches ' +
30
+ 'outputs.<step>.observation for later predicates.',
31
+ };
32
+ /** The channel a dispatched step is reported through. */
33
+ export function replyChannel(dispatch) {
34
+ if (dispatch.kind === 'human')
35
+ return 'human_response';
36
+ return dispatch.host_tool_name === OPERATOR_HOST_TOOL ? 'observation' : 'receipt';
37
+ }
38
+ export function replyRules(dispatch) {
39
+ return WORKFLOW_REPLY_RULES[replyChannel(dispatch)];
40
+ }
41
+ const HINTED_CODES = new Set(['PROTOCOL_ERROR', 'PARAMETER_MUTATION']);
42
+ /**
43
+ * Attach the reply rules of the current dispatch to a refusal for the wrong step or a changed
44
+ * dispatch; any other error passes unchanged.
45
+ */
46
+ export function withReplyHint(error, dispatch) {
47
+ if (error instanceof WorkflowRunV2Error && dispatch && HINTED_CODES.has(error.code)) {
48
+ error.hint = replyRules(dispatch);
49
+ }
50
+ return error;
51
+ }
52
+ //# sourceMappingURL=workflow-v2-reply.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-v2-reply.js","sourceRoot":"","sources":["../../src/runtime/workflow-v2-reply.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAI5D,MAAM,CAAC,MAAM,oBAAoB,GAAmD;IAClF,OAAO,EACL,2FAA2F;QAC3F,6FAA6F;QAC7F,6FAA6F;QAC7F,uFAAuF;QACvF,mFAAmF;QACnF,sFAAsF;QACtF,2FAA2F;QAC3F,+BAA+B;IACjC,cAAc,EACZ,8FAA8F;QAC9F,yFAAyF;QACzF,wFAAwF;QACxF,wFAAwF;QACxF,kCAAkC;IACpC,WAAW,EACT,8FAA8F;QAC9F,sFAAsF;QACtF,uFAAuF;QACvF,kDAAkD;CACrD,CAAC;AAEF,yDAAyD;AACzD,MAAM,UAAU,YAAY,CAC1B,QAAmE;IAEnE,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,gBAAgB,CAAC;IACvD,OAAO,QAAQ,CAAC,cAAc,KAAK,kBAAkB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;AACpF,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,QAAmE;IAEnE,OAAO,oBAAoB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,CAAC,CAAC;AAEvE;;;GAGG;AACH,MAAM,UAAU,aAAa,CAC3B,KAAc,EACd,QAA+E;IAE/E,IAAI,KAAK,YAAY,kBAAkB,IAAI,QAAQ,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACpF,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}