wingfoil 0.2.2 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (454) hide show
  1. package/README.md +83 -43
  2. package/dist/agent/discovery.d.ts +72 -0
  3. package/dist/agent/discovery.d.ts.map +1 -0
  4. package/dist/agent/discovery.js +210 -0
  5. package/dist/agent/discovery.js.map +1 -0
  6. package/dist/agent/execute.d.ts +206 -0
  7. package/dist/agent/execute.d.ts.map +1 -0
  8. package/dist/agent/execute.js +581 -0
  9. package/dist/agent/execute.js.map +1 -0
  10. package/dist/agent/index.d.ts +23 -0
  11. package/dist/agent/index.d.ts.map +1 -0
  12. package/dist/agent/index.js +85 -0
  13. package/dist/agent/index.js.map +1 -0
  14. package/dist/agent/launch.d.ts +133 -0
  15. package/dist/agent/launch.d.ts.map +1 -0
  16. package/dist/agent/launch.js +380 -0
  17. package/dist/agent/launch.js.map +1 -0
  18. package/dist/agent/manifest.d.ts +30 -0
  19. package/dist/agent/manifest.d.ts.map +1 -0
  20. package/dist/agent/manifest.js +93 -0
  21. package/dist/agent/manifest.js.map +1 -0
  22. package/dist/agent/placeholders.d.ts +49 -0
  23. package/dist/agent/placeholders.d.ts.map +1 -0
  24. package/dist/agent/placeholders.js +177 -0
  25. package/dist/agent/placeholders.js.map +1 -0
  26. package/dist/agent/run-log.d.ts +254 -0
  27. package/dist/agent/run-log.d.ts.map +1 -0
  28. package/dist/agent/run-log.js +612 -0
  29. package/dist/agent/run-log.js.map +1 -0
  30. package/dist/agent/schema.d.ts +100 -0
  31. package/dist/agent/schema.d.ts.map +1 -0
  32. package/dist/agent/schema.js +89 -0
  33. package/dist/agent/schema.js.map +1 -0
  34. package/dist/agent/step.d.ts +41 -0
  35. package/dist/agent/step.d.ts.map +1 -0
  36. package/dist/agent/step.js +95 -0
  37. package/dist/agent/step.js.map +1 -0
  38. package/dist/build-info.json +4 -0
  39. package/dist/cli/error.d.ts +11 -2
  40. package/dist/cli/error.d.ts.map +1 -1
  41. package/dist/cli/error.js +27 -6
  42. package/dist/cli/error.js.map +1 -1
  43. package/dist/cli/exit.d.ts +33 -3
  44. package/dist/cli/exit.d.ts.map +1 -1
  45. package/dist/cli/exit.js +54 -3
  46. package/dist/cli/exit.js.map +1 -1
  47. package/dist/cli/index.d.ts +1 -1
  48. package/dist/cli/index.d.ts.map +1 -1
  49. package/dist/cli/index.js +2 -1
  50. package/dist/cli/index.js.map +1 -1
  51. package/dist/cli/init-command.d.ts.map +1 -1
  52. package/dist/cli/init-command.js +4 -2
  53. package/dist/cli/init-command.js.map +1 -1
  54. package/dist/cli/mcp-command.d.ts +13 -4
  55. package/dist/cli/mcp-command.d.ts.map +1 -1
  56. package/dist/cli/mcp-command.js +25 -8
  57. package/dist/cli/mcp-command.js.map +1 -1
  58. package/dist/cli/output.d.ts +12 -4
  59. package/dist/cli/output.d.ts.map +1 -1
  60. package/dist/cli/output.js +15 -4
  61. package/dist/cli/output.js.map +1 -1
  62. package/dist/cli/program.d.ts +1 -1
  63. package/dist/cli/program.d.ts.map +1 -1
  64. package/dist/cli/program.js +162 -40
  65. package/dist/cli/program.js.map +1 -1
  66. package/dist/cli/registrar.d.ts +1 -1
  67. package/dist/cli/registrar.d.ts.map +1 -1
  68. package/dist/cli/registrar.js +67 -6
  69. package/dist/cli/registrar.js.map +1 -1
  70. package/dist/cli/suggest.d.ts +20 -0
  71. package/dist/cli/suggest.d.ts.map +1 -0
  72. package/dist/cli/suggest.js +49 -0
  73. package/dist/cli/suggest.js.map +1 -0
  74. package/dist/cli/warning.d.ts +26 -0
  75. package/dist/cli/warning.d.ts.map +1 -0
  76. package/dist/cli/warning.js +66 -0
  77. package/dist/cli/warning.js.map +1 -0
  78. package/dist/cli.js +11 -2
  79. package/dist/cli.js.map +1 -1
  80. package/dist/core/agent-execute.d.ts +44 -0
  81. package/dist/core/agent-execute.d.ts.map +1 -0
  82. package/dist/core/agent-execute.js +71 -0
  83. package/dist/core/agent-execute.js.map +1 -0
  84. package/dist/core/agent-list.d.ts +95 -0
  85. package/dist/core/agent-list.d.ts.map +1 -0
  86. package/dist/core/agent-list.js +207 -0
  87. package/dist/core/agent-list.js.map +1 -0
  88. package/dist/core/agent-show.d.ts +44 -0
  89. package/dist/core/agent-show.d.ts.map +1 -0
  90. package/dist/core/agent-show.js +188 -0
  91. package/dist/core/agent-show.js.map +1 -0
  92. package/dist/core/approval-authority.d.ts +17 -14
  93. package/dist/core/approval-authority.d.ts.map +1 -1
  94. package/dist/core/approval-authority.js +9 -9
  95. package/dist/core/approval-authority.js.map +1 -1
  96. package/dist/core/builtin-asset.d.ts +18 -15
  97. package/dist/core/builtin-asset.d.ts.map +1 -1
  98. package/dist/core/builtin-asset.js +17 -14
  99. package/dist/core/builtin-asset.js.map +1 -1
  100. package/dist/core/builtin-integrity.d.ts +12 -2
  101. package/dist/core/builtin-integrity.d.ts.map +1 -1
  102. package/dist/core/builtin-integrity.js +85 -9
  103. package/dist/core/builtin-integrity.js.map +1 -1
  104. package/dist/core/confinement.d.ts +3 -1
  105. package/dist/core/confinement.d.ts.map +1 -1
  106. package/dist/core/confinement.js +7 -4
  107. package/dist/core/confinement.js.map +1 -1
  108. package/dist/core/context.d.ts +150 -98
  109. package/dist/core/context.d.ts.map +1 -1
  110. package/dist/core/context.js +602 -66
  111. package/dist/core/context.js.map +1 -1
  112. package/dist/core/directive-assign.d.ts +33 -7
  113. package/dist/core/directive-assign.d.ts.map +1 -1
  114. package/dist/core/directive-assign.js +67 -27
  115. package/dist/core/directive-assign.js.map +1 -1
  116. package/dist/core/directive-scope.d.ts +36 -0
  117. package/dist/core/directive-scope.d.ts.map +1 -0
  118. package/dist/core/directive-scope.js +34 -0
  119. package/dist/core/directive-scope.js.map +1 -0
  120. package/dist/core/directives-list.d.ts +13 -3
  121. package/dist/core/directives-list.d.ts.map +1 -1
  122. package/dist/core/directives-list.js +18 -6
  123. package/dist/core/directives-list.js.map +1 -1
  124. package/dist/core/dry-run.d.ts +33 -0
  125. package/dist/core/dry-run.d.ts.map +1 -0
  126. package/dist/core/dry-run.js +45 -0
  127. package/dist/core/dry-run.js.map +1 -0
  128. package/dist/core/element-ref.d.ts +23 -0
  129. package/dist/core/element-ref.d.ts.map +1 -0
  130. package/dist/core/element-ref.js +24 -0
  131. package/dist/core/element-ref.js.map +1 -0
  132. package/dist/core/error-details.d.ts +20 -0
  133. package/dist/core/error-details.d.ts.map +1 -0
  134. package/dist/core/error-details.js +65 -0
  135. package/dist/core/error-details.js.map +1 -0
  136. package/dist/core/exit-code.d.ts.map +1 -1
  137. package/dist/core/exit-code.js +6 -7
  138. package/dist/core/exit-code.js.map +1 -1
  139. package/dist/core/git-identity.d.ts +46 -11
  140. package/dist/core/git-identity.d.ts.map +1 -1
  141. package/dist/core/git-identity.js +140 -27
  142. package/dist/core/git-identity.js.map +1 -1
  143. package/dist/core/index.d.ts +184 -10
  144. package/dist/core/index.d.ts.map +1 -1
  145. package/dist/core/index.js +1045 -185
  146. package/dist/core/index.js.map +1 -1
  147. package/dist/core/init.d.ts +45 -5
  148. package/dist/core/init.d.ts.map +1 -1
  149. package/dist/core/init.js +134 -24
  150. package/dist/core/init.js.map +1 -1
  151. package/dist/core/loaders.d.ts +170 -14
  152. package/dist/core/loaders.d.ts.map +1 -1
  153. package/dist/core/loaders.js +570 -89
  154. package/dist/core/loaders.js.map +1 -1
  155. package/dist/core/memory-add-link.d.ts +28 -0
  156. package/dist/core/memory-add-link.d.ts.map +1 -0
  157. package/dist/core/memory-add-link.js +67 -0
  158. package/dist/core/memory-add-link.js.map +1 -0
  159. package/dist/core/memory-add-type.d.ts +25 -1
  160. package/dist/core/memory-add-type.d.ts.map +1 -1
  161. package/dist/core/memory-add-type.js +59 -1
  162. package/dist/core/memory-add-type.js.map +1 -1
  163. package/dist/core/memory-amend.d.ts +80 -0
  164. package/dist/core/memory-amend.d.ts.map +1 -0
  165. package/dist/core/memory-amend.js +160 -0
  166. package/dist/core/memory-amend.js.map +1 -0
  167. package/dist/core/memory-supersede.d.ts +28 -0
  168. package/dist/core/memory-supersede.d.ts.map +1 -0
  169. package/dist/core/memory-supersede.js +79 -0
  170. package/dist/core/memory-supersede.js.map +1 -0
  171. package/dist/core/memory-transition.d.ts +190 -30
  172. package/dist/core/memory-transition.d.ts.map +1 -1
  173. package/dist/core/memory-transition.js +480 -59
  174. package/dist/core/memory-transition.js.map +1 -1
  175. package/dist/core/registry.d.ts +82 -10
  176. package/dist/core/registry.d.ts.map +1 -1
  177. package/dist/core/registry.js +50 -0
  178. package/dist/core/registry.js.map +1 -1
  179. package/dist/core/relevance.d.ts +74 -12
  180. package/dist/core/relevance.d.ts.map +1 -1
  181. package/dist/core/relevance.js +45 -27
  182. package/dist/core/relevance.js.map +1 -1
  183. package/dist/core/require-reason.d.ts.map +1 -1
  184. package/dist/core/require-reason.js +6 -5
  185. package/dist/core/require-reason.js.map +1 -1
  186. package/dist/core/required-fields.d.ts +28 -0
  187. package/dist/core/required-fields.d.ts.map +1 -0
  188. package/dist/core/required-fields.js +60 -0
  189. package/dist/core/required-fields.js.map +1 -0
  190. package/dist/core/revision.d.ts +82 -0
  191. package/dist/core/revision.d.ts.map +1 -0
  192. package/dist/core/revision.js +144 -0
  193. package/dist/core/revision.js.map +1 -0
  194. package/dist/core/types.d.ts +28 -2
  195. package/dist/core/types.d.ts.map +1 -1
  196. package/dist/core/types.js +12 -3
  197. package/dist/core/types.js.map +1 -1
  198. package/dist/core/workflow-core-checks.d.ts +34 -0
  199. package/dist/core/workflow-core-checks.d.ts.map +1 -0
  200. package/dist/core/workflow-core-checks.js +403 -0
  201. package/dist/core/workflow-core-checks.js.map +1 -0
  202. package/dist/core/workflow-create-remove.d.ts +65 -0
  203. package/dist/core/workflow-create-remove.d.ts.map +1 -0
  204. package/dist/core/workflow-create-remove.js +277 -0
  205. package/dist/core/workflow-create-remove.js.map +1 -0
  206. package/dist/core/workflow-deduction.d.ts +48 -0
  207. package/dist/core/workflow-deduction.d.ts.map +1 -0
  208. package/dist/core/workflow-deduction.js +523 -0
  209. package/dist/core/workflow-deduction.js.map +1 -0
  210. package/dist/core/workflow-diagnostics.d.ts +83 -0
  211. package/dist/core/workflow-diagnostics.d.ts.map +1 -0
  212. package/dist/core/workflow-diagnostics.js +375 -0
  213. package/dist/core/workflow-diagnostics.js.map +1 -0
  214. package/dist/core/workflow-exit-state.d.ts +125 -0
  215. package/dist/core/workflow-exit-state.d.ts.map +1 -0
  216. package/dist/core/workflow-exit-state.js +243 -0
  217. package/dist/core/workflow-exit-state.js.map +1 -0
  218. package/dist/core/workflow-finalize.d.ts +37 -0
  219. package/dist/core/workflow-finalize.d.ts.map +1 -0
  220. package/dist/core/workflow-finalize.js +153 -0
  221. package/dist/core/workflow-finalize.js.map +1 -0
  222. package/dist/core/workflow-list-show.d.ts +176 -0
  223. package/dist/core/workflow-list-show.d.ts.map +1 -0
  224. package/dist/core/workflow-list-show.js +268 -0
  225. package/dist/core/workflow-list-show.js.map +1 -0
  226. package/dist/core/workflow-next.d.ts +268 -0
  227. package/dist/core/workflow-next.d.ts.map +1 -0
  228. package/dist/core/workflow-next.js +503 -0
  229. package/dist/core/workflow-next.js.map +1 -0
  230. package/dist/core/workflow-registry.d.ts +52 -0
  231. package/dist/core/workflow-registry.d.ts.map +1 -0
  232. package/dist/core/workflow-registry.js +158 -0
  233. package/dist/core/workflow-registry.js.map +1 -0
  234. package/dist/core/workflow-start-end.d.ts +71 -0
  235. package/dist/core/workflow-start-end.d.ts.map +1 -0
  236. package/dist/core/workflow-start-end.js +298 -0
  237. package/dist/core/workflow-start-end.js.map +1 -0
  238. package/dist/core/workflow-status.d.ts +83 -0
  239. package/dist/core/workflow-status.d.ts.map +1 -0
  240. package/dist/core/workflow-status.js +125 -0
  241. package/dist/core/workflow-status.js.map +1 -0
  242. package/dist/core/write-guard.d.ts +51 -8
  243. package/dist/core/write-guard.d.ts.map +1 -1
  244. package/dist/core/write-guard.js +139 -9
  245. package/dist/core/write-guard.js.map +1 -1
  246. package/dist/directives/index.d.ts +3 -2
  247. package/dist/directives/index.d.ts.map +1 -1
  248. package/dist/directives/index.js +5 -3
  249. package/dist/directives/index.js.map +1 -1
  250. package/dist/directives/schema.d.ts +34 -29
  251. package/dist/directives/schema.d.ts.map +1 -1
  252. package/dist/directives/schema.js +35 -29
  253. package/dist/directives/schema.js.map +1 -1
  254. package/dist/directives/version.d.ts +28 -0
  255. package/dist/directives/version.d.ts.map +1 -0
  256. package/dist/directives/version.js +51 -0
  257. package/dist/directives/version.js.map +1 -0
  258. package/dist/dna/edit.d.ts +7 -6
  259. package/dist/dna/edit.d.ts.map +1 -1
  260. package/dist/dna/edit.js +96 -41
  261. package/dist/dna/edit.js.map +1 -1
  262. package/dist/dna/mutate.js +18 -3
  263. package/dist/dna/mutate.js.map +1 -1
  264. package/dist/dna/path.d.ts +2 -2
  265. package/dist/dna/roles.d.ts +1 -1
  266. package/dist/dna/schema.d.ts +61 -3
  267. package/dist/dna/schema.d.ts.map +1 -1
  268. package/dist/dna/schema.js +121 -6
  269. package/dist/dna/schema.js.map +1 -1
  270. package/dist/mcp/dna-resource.d.ts.map +1 -1
  271. package/dist/mcp/dna-resource.js +4 -4
  272. package/dist/mcp/dna-resource.js.map +1 -1
  273. package/dist/mcp/index.d.ts +8 -4
  274. package/dist/mcp/index.d.ts.map +1 -1
  275. package/dist/mcp/index.js +13 -2
  276. package/dist/mcp/index.js.map +1 -1
  277. package/dist/mcp/memory-resource.d.ts.map +1 -1
  278. package/dist/mcp/memory-resource.js +30 -19
  279. package/dist/mcp/memory-resource.js.map +1 -1
  280. package/dist/mcp/prompt.d.ts +61 -24
  281. package/dist/mcp/prompt.d.ts.map +1 -1
  282. package/dist/mcp/prompt.js +176 -47
  283. package/dist/mcp/prompt.js.map +1 -1
  284. package/dist/mcp/read-only.d.ts +39 -0
  285. package/dist/mcp/read-only.d.ts.map +1 -1
  286. package/dist/mcp/read-only.js +61 -0
  287. package/dist/mcp/read-only.js.map +1 -1
  288. package/dist/mcp/registrar.d.ts +10 -0
  289. package/dist/mcp/registrar.d.ts.map +1 -1
  290. package/dist/mcp/registrar.js +48 -12
  291. package/dist/mcp/registrar.js.map +1 -1
  292. package/dist/mcp/server.d.ts +21 -14
  293. package/dist/mcp/server.d.ts.map +1 -1
  294. package/dist/mcp/server.js +41 -15
  295. package/dist/mcp/server.js.map +1 -1
  296. package/dist/mcp/session-resource.d.ts +13 -0
  297. package/dist/mcp/session-resource.d.ts.map +1 -0
  298. package/dist/mcp/session-resource.js +65 -0
  299. package/dist/mcp/session-resource.js.map +1 -0
  300. package/dist/mcp/workflow-resource.d.ts +18 -0
  301. package/dist/mcp/workflow-resource.d.ts.map +1 -1
  302. package/dist/mcp/workflow-resource.js +37 -8
  303. package/dist/mcp/workflow-resource.js.map +1 -1
  304. package/dist/memory/add.d.ts +110 -24
  305. package/dist/memory/add.d.ts.map +1 -1
  306. package/dist/memory/add.js +251 -64
  307. package/dist/memory/add.js.map +1 -1
  308. package/dist/memory/audit.d.ts +152 -39
  309. package/dist/memory/audit.d.ts.map +1 -1
  310. package/dist/memory/audit.js +257 -103
  311. package/dist/memory/audit.js.map +1 -1
  312. package/dist/memory/commit-message.d.ts +60 -38
  313. package/dist/memory/commit-message.d.ts.map +1 -1
  314. package/dist/memory/commit-message.js +167 -21
  315. package/dist/memory/commit-message.js.map +1 -1
  316. package/dist/memory/entry.d.ts.map +1 -1
  317. package/dist/memory/entry.js +1 -2
  318. package/dist/memory/entry.js.map +1 -1
  319. package/dist/memory/frontmatter-edit.d.ts +16 -4
  320. package/dist/memory/frontmatter-edit.d.ts.map +1 -1
  321. package/dist/memory/frontmatter-edit.js +13 -1
  322. package/dist/memory/frontmatter-edit.js.map +1 -1
  323. package/dist/memory/git-log.d.ts +18 -6
  324. package/dist/memory/git-log.d.ts.map +1 -1
  325. package/dist/memory/git-log.js +40 -13
  326. package/dist/memory/git-log.js.map +1 -1
  327. package/dist/memory/history.d.ts +73 -12
  328. package/dist/memory/history.d.ts.map +1 -1
  329. package/dist/memory/history.js +128 -44
  330. package/dist/memory/history.js.map +1 -1
  331. package/dist/memory/index.d.ts +13 -11
  332. package/dist/memory/index.d.ts.map +1 -1
  333. package/dist/memory/index.js +34 -3
  334. package/dist/memory/index.js.map +1 -1
  335. package/dist/memory/query.d.ts +161 -19
  336. package/dist/memory/query.d.ts.map +1 -1
  337. package/dist/memory/query.js +435 -55
  338. package/dist/memory/query.js.map +1 -1
  339. package/dist/memory/schema.d.ts +52 -3
  340. package/dist/memory/schema.d.ts.map +1 -1
  341. package/dist/memory/schema.js +132 -8
  342. package/dist/memory/schema.js.map +1 -1
  343. package/dist/memory/state-machine.d.ts +65 -10
  344. package/dist/memory/state-machine.d.ts.map +1 -1
  345. package/dist/memory/state-machine.js +134 -46
  346. package/dist/memory/state-machine.js.map +1 -1
  347. package/dist/memory/submit.d.ts +52 -3
  348. package/dist/memory/submit.d.ts.map +1 -1
  349. package/dist/memory/submit.js +118 -11
  350. package/dist/memory/submit.js.map +1 -1
  351. package/dist/storage/build-stamp.d.ts +18 -0
  352. package/dist/storage/build-stamp.d.ts.map +1 -0
  353. package/dist/storage/build-stamp.js +68 -0
  354. package/dist/storage/build-stamp.js.map +1 -0
  355. package/dist/storage/builtin-adapters.d.ts +32 -0
  356. package/dist/storage/builtin-adapters.d.ts.map +1 -0
  357. package/dist/storage/builtin-adapters.js +100 -0
  358. package/dist/storage/builtin-adapters.js.map +1 -0
  359. package/dist/storage/builtin-directives.d.ts +0 -29
  360. package/dist/storage/builtin-directives.d.ts.map +1 -1
  361. package/dist/storage/builtin-directives.js +9 -4
  362. package/dist/storage/builtin-directives.js.map +1 -1
  363. package/dist/storage/commit.d.ts +310 -3
  364. package/dist/storage/commit.d.ts.map +1 -1
  365. package/dist/storage/commit.js +807 -33
  366. package/dist/storage/commit.js.map +1 -1
  367. package/dist/storage/document.d.ts +6 -0
  368. package/dist/storage/document.d.ts.map +1 -1
  369. package/dist/storage/document.js +10 -1
  370. package/dist/storage/document.js.map +1 -1
  371. package/dist/storage/dry-run.d.ts +65 -0
  372. package/dist/storage/dry-run.d.ts.map +1 -0
  373. package/dist/storage/dry-run.js +150 -0
  374. package/dist/storage/dry-run.js.map +1 -0
  375. package/dist/storage/errors.d.ts +26 -0
  376. package/dist/storage/errors.d.ts.map +1 -1
  377. package/dist/storage/errors.js +27 -1
  378. package/dist/storage/errors.js.map +1 -1
  379. package/dist/storage/frontmatter.d.ts +1 -1
  380. package/dist/storage/frontmatter.js +1 -1
  381. package/dist/storage/git-read.d.ts +64 -0
  382. package/dist/storage/git-read.d.ts.map +1 -0
  383. package/dist/storage/git-read.js +107 -0
  384. package/dist/storage/git-read.js.map +1 -0
  385. package/dist/storage/index.d.ts +13 -5
  386. package/dist/storage/index.d.ts.map +1 -1
  387. package/dist/storage/index.js +39 -2
  388. package/dist/storage/index.js.map +1 -1
  389. package/dist/storage/layout.d.ts +2 -2
  390. package/dist/storage/layout.d.ts.map +1 -1
  391. package/dist/storage/layout.js +2 -7
  392. package/dist/storage/layout.js.map +1 -1
  393. package/dist/storage/memory-path.d.ts +18 -5
  394. package/dist/storage/memory-path.d.ts.map +1 -1
  395. package/dist/storage/memory-path.js +41 -5
  396. package/dist/storage/memory-path.js.map +1 -1
  397. package/dist/storage/snapshot.js +1 -1
  398. package/dist/storage/templates.d.ts +33 -6
  399. package/dist/storage/templates.d.ts.map +1 -1
  400. package/dist/storage/templates.js +170 -16
  401. package/dist/storage/templates.js.map +1 -1
  402. package/dist/validation/config-version.d.ts +19 -0
  403. package/dist/validation/config-version.d.ts.map +1 -0
  404. package/dist/validation/config-version.js +53 -0
  405. package/dist/validation/config-version.js.map +1 -0
  406. package/dist/validation/diagnostic.d.ts +40 -0
  407. package/dist/validation/diagnostic.d.ts.map +1 -0
  408. package/dist/validation/diagnostic.js +41 -0
  409. package/dist/validation/diagnostic.js.map +1 -0
  410. package/dist/validation/format.d.ts +74 -0
  411. package/dist/validation/format.d.ts.map +1 -0
  412. package/dist/validation/format.js +104 -0
  413. package/dist/validation/format.js.map +1 -0
  414. package/dist/validation/id.d.ts +14 -0
  415. package/dist/validation/id.d.ts.map +1 -1
  416. package/dist/validation/id.js +35 -11
  417. package/dist/validation/id.js.map +1 -1
  418. package/dist/validation/identity.d.ts +40 -0
  419. package/dist/validation/identity.d.ts.map +1 -0
  420. package/dist/validation/identity.js +78 -0
  421. package/dist/validation/identity.js.map +1 -0
  422. package/dist/validation/index.d.ts +9 -3
  423. package/dist/validation/index.d.ts.map +1 -1
  424. package/dist/validation/index.js +30 -1
  425. package/dist/validation/index.js.map +1 -1
  426. package/dist/validation/secret-scan.d.ts +3 -2
  427. package/dist/validation/secret-scan.d.ts.map +1 -1
  428. package/dist/validation/secret-scan.js +32 -11
  429. package/dist/validation/secret-scan.js.map +1 -1
  430. package/dist/validation/warning.d.ts +30 -16
  431. package/dist/validation/warning.d.ts.map +1 -1
  432. package/dist/validation/warning.js +74 -7
  433. package/dist/validation/warning.js.map +1 -1
  434. package/dist/workflow/bindings.d.ts +152 -0
  435. package/dist/workflow/bindings.d.ts.map +1 -0
  436. package/dist/workflow/bindings.js +249 -0
  437. package/dist/workflow/bindings.js.map +1 -0
  438. package/dist/workflow/create.d.ts +13 -0
  439. package/dist/workflow/create.d.ts.map +1 -0
  440. package/dist/workflow/create.js +41 -0
  441. package/dist/workflow/create.js.map +1 -0
  442. package/dist/workflow/deduce.d.ts +400 -0
  443. package/dist/workflow/deduce.d.ts.map +1 -0
  444. package/dist/workflow/deduce.js +1109 -0
  445. package/dist/workflow/deduce.js.map +1 -0
  446. package/dist/workflow/manifest-edit.d.ts +19 -0
  447. package/dist/workflow/manifest-edit.d.ts.map +1 -0
  448. package/dist/workflow/manifest-edit.js +124 -0
  449. package/dist/workflow/manifest-edit.js.map +1 -0
  450. package/dist/workflow/schema.d.ts +158 -19
  451. package/dist/workflow/schema.d.ts.map +1 -1
  452. package/dist/workflow/schema.js +163 -15
  453. package/dist/workflow/schema.js.map +1 -1
  454. package/package.json +18 -8
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-list-show.d.ts","sourceRoot":"","sources":["../../src/core/workflow-list-show.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,268 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.unknownWorkflowMessage = exports.NO_WORKFLOWS_DEFINED = void 0;
4
+ exports.listWorkflows = listWorkflows;
5
+ exports.workflowListAtHead = workflowListAtHead;
6
+ exports.declaredEvidenceKinds = declaredEvidenceKinds;
7
+ exports.showWorkflow = showWorkflow;
8
+ exports.workflowShowAtHead = workflowShowAtHead;
9
+ const bindings_1 = require("../workflow/bindings");
10
+ const deduce_1 = require("../workflow/deduce");
11
+ const schema_1 = require("../workflow/schema");
12
+ const context_1 = require("./context");
13
+ const loaders_1 = require("./loaders");
14
+ const types_1 = require("./types");
15
+ const workflow_diagnostics_1 = require("./workflow-diagnostics");
16
+ const workflow_deduction_1 = require("./workflow-deduction");
17
+ const workflow_exit_state_1 = require("./workflow-exit-state");
18
+ /** `ListResult.message` when `HEAD` holds no manifest (BDD P4.6 sc. 4; `spec-003` Layer 1). */
19
+ exports.NO_WORKFLOWS_DEFINED = 'no workflows defined';
20
+ /** The refusal of a `<ref>` that names no workflow (`spec-017` §10, BDD P4.7 sc. 3). */
21
+ const unknownWorkflowMessage = (name) => `unknown workflow: ${name}`;
22
+ exports.unknownWorkflowMessage = unknownWorkflowMessage;
23
+ /** Code-unit order, as a comparator (`spec-017` §1.3: workflows by byte-wise ascending name). */
24
+ function compareText(a, b) {
25
+ return Number(a > b) - Number(a < b);
26
+ }
27
+ // --- list ---------------------------------------------------------------------------------------
28
+ /**
29
+ * The workflows a phase on some open instance's frontier includes: for each frontier step, every phase of its
30
+ * trail — the plain includes the deduction descends through, and the leaf itself, which is an `iterate_over`
31
+ * phase until task-202 expands it — that declares an `include`.
32
+ */
33
+ function frontierSubs(deduction, byName) {
34
+ const subs = new Set();
35
+ for (const { frontier } of deduction.instances) {
36
+ for (const step of frontier) {
37
+ for (const entry of step.trail) {
38
+ const include = byName.get(entry.workflow)?.phases.find((phase) => phase.name === entry.phase)?.include;
39
+ if (include !== undefined)
40
+ subs.add(include);
41
+ }
42
+ }
43
+ }
44
+ return subs;
45
+ }
46
+ /**
47
+ * `workflow list`'s answer from one deduction (`spec-017` §7.5): without `all`, the startable workflows and
48
+ * every includable one a frontier enters; with it, every loaded workflow. Pure.
49
+ */
50
+ function listWorkflows(workflows, deduction, all) {
51
+ const byName = new Map(workflows.map((workflow) => [workflow.name, workflow]));
52
+ const subs = frontierSubs(deduction, byName);
53
+ const entries = workflows
54
+ .map((workflow) => {
55
+ const { startable, includable } = (0, schema_1.workflowFacts)(workflow);
56
+ return {
57
+ name: workflow.name,
58
+ startable,
59
+ includable,
60
+ description: workflow.description ?? null,
61
+ executableNow: startable || (includable && subs.has(workflow.name)),
62
+ };
63
+ })
64
+ .filter((entry) => all || entry.executableNow)
65
+ .sort((a, b) => compareText(a.name, b.name));
66
+ return {
67
+ baseline: deduction.baseline,
68
+ workflows: entries,
69
+ ...(workflows.length === 0 ? { message: exports.NO_WORKFLOWS_DEFINED } : {}),
70
+ diagnostics: deduction.diagnostics,
71
+ };
72
+ }
73
+ /**
74
+ * `workflow list [--all]` at `HEAD` (`spec-017` §7.5).
75
+ *
76
+ * @throws `DiagnosticsError` (`VALIDATION`) when the registry at `HEAD` has a `spec-003` error;
77
+ * `StorageError` when git cannot answer.
78
+ */
79
+ function workflowListAtHead(root, all) {
80
+ const snapshot = (0, workflow_deduction_1.readDeductionSnapshotAtHead)(root);
81
+ return listWorkflows(snapshot.workflows, (0, deduce_1.deduceWorkflowState)(snapshot), all);
82
+ }
83
+ /** The modes a phase allows (`spec-017` §6.3): `fresh` always, plus the declared non-fresh one. */
84
+ function allowedModes(mode) {
85
+ return mode === undefined || mode === 'fresh' ? ['fresh'] : ['fresh', mode];
86
+ }
87
+ /**
88
+ * The evidence kinds `phase` declares (`spec-017` §4.3), by the rules the deduction's leaf step applies
89
+ * (`src/workflow/deduce.ts`), in its order: a plain `include` is `include` alone (§4.5); otherwise
90
+ * `include` for an `iterate_over`, `state` (`declaresState`, shared), `created`, `produces` (string
91
+ * entries with an explicit owner), `selection`, `awaits`, then `record` for an `awaits`, a phase with
92
+ * no kind but `created`, or an `approval:` whose phase holds no gate (`holdsGate: false`, §5.1, task-225).
93
+ */
94
+ function declaredEvidenceKinds(workflow, p, boundType, holdsGate) {
95
+ const phase = workflow.phases[p];
96
+ if (phase.include !== undefined && phase.iterate_over === undefined)
97
+ return ['include'];
98
+ const kinds = [];
99
+ if (phase.iterate_over !== undefined)
100
+ kinds.push('include');
101
+ if ((0, deduce_1.declaresState)(phase, boundType))
102
+ kinds.push('state');
103
+ if ((phase.actions ?? []).some((action) => (0, bindings_1.tokenName)(action) === 'memory.add'))
104
+ kinds.push('created');
105
+ if ((phase.produces ?? []).some((entry) => typeof entry === 'string' && !(0, workflow_diagnostics_1.isImplicitOwnerProduces)(workflow, p, entry)))
106
+ kinds.push('produces');
107
+ if (phase.where !== undefined && phase.iterate_over === undefined)
108
+ kinds.push('selection');
109
+ if (phase.awaits !== undefined)
110
+ kinds.push('awaits');
111
+ if (phase.awaits !== undefined || (phase.approval !== undefined && !holdsGate) || !kinds.some((kind) => kind !== 'created'))
112
+ kinds.push('record');
113
+ return kinds;
114
+ }
115
+ /** Resolves declarations against one set of inputs. */
116
+ class Resolver {
117
+ inputs;
118
+ byName;
119
+ fileOf;
120
+ constructor(inputs) {
121
+ this.inputs = inputs;
122
+ this.byName = new Map(inputs.workflows.map((workflow) => [workflow.name, workflow]));
123
+ this.fileOf = new Map(inputs.workflows.map((workflow, i) => [workflow.name, inputs.workflowFiles[i]]));
124
+ }
125
+ workflow(name) {
126
+ return this.byName.get(name);
127
+ }
128
+ /**
129
+ * The bound type of each phase (`spec-017` §4.4, as the core checks compute it): from the exit-state
130
+ * computation when `memory.yaml` is present, otherwise the declared `element` or the includer's.
131
+ */
132
+ boundTypes(workflow, start) {
133
+ const { memoryYaml } = this.inputs;
134
+ // Without `memory.yaml` no gate is known, so no approval is read as recorded by `finalize` (§5.1).
135
+ if (memoryYaml === null)
136
+ return workflow.phases.map(() => ({ type: workflow.element ?? start.boundType, holdsGate: true }));
137
+ const states = (0, workflow_exit_state_1.workflowExitStates)(workflow, memoryYaml, start, this.byName);
138
+ // A self-creating instance's element is in scope for all of its phases (§3.4).
139
+ const selfType = start.instance ? (states.find((state) => state.boundType !== null)?.boundType ?? null) : null;
140
+ // Whether the phase holds a gate (§5.1): an approval that holds none is recorded by `workflow finalize`.
141
+ return states.map((state) => ({ type: state.boundType ?? selfType, holdsGate: state.held.length > 0 }));
142
+ }
143
+ /** The start of a sub included by phase `p` of `workflow` (§4.4–§4.6; `workflow-core-checks.ts` `contextChecks`). */
144
+ includeStart(workflow, p, start, sub) {
145
+ const { memoryYaml } = this.inputs;
146
+ const phase = workflow.phases[p];
147
+ const over = phase.iterate_over;
148
+ if (over !== undefined && over.includes(':'))
149
+ return { boundType: null, state: null, instance: false };
150
+ if (over !== undefined)
151
+ return { boundType: over, state: memoryYaml === null ? null : (0, workflow_exit_state_1.iterationStartState)(memoryYaml, over, phase.where), instance: false };
152
+ if (memoryYaml === null)
153
+ return { boundType: sub.element ?? workflow.element ?? start.boundType, state: null, instance: false };
154
+ const here = (0, workflow_exit_state_1.workflowExitStates)(workflow, memoryYaml, start, this.byName)[p];
155
+ const type = sub.element ?? here.boundType;
156
+ return { boundType: type, state: type !== null && type === here.boundType ? here.entry : null, instance: false };
157
+ }
158
+ directives(role) {
159
+ if (role === undefined)
160
+ return { directives: [], directiveWarnings: [] };
161
+ if (this.inputs.rolesYaml === null) {
162
+ return { directives: [], directiveWarnings: [`roles.yaml is absent: no directive resolved for role '${role}'`] };
163
+ }
164
+ const resolution = (0, context_1.resolveRoleDirectives)(this.inputs.directiveFiles, this.inputs.rolesYaml, role);
165
+ return {
166
+ directives: resolution.directives.map((file) => ({ id: file.frontmatter.id, title: file.frontmatter.title })),
167
+ directiveWarnings: resolution.warnings,
168
+ };
169
+ }
170
+ check(token) {
171
+ return { token, binding: (0, bindings_1.resolveToken)(token, 'check', this.inputs.bindings), evaluated: false };
172
+ }
173
+ /**
174
+ * The declaration of `workflow` resolved from `start` (§7.6), its subs nested under their phases. The
175
+ * recursion is finite: the registry refuses an include cycle (`E_WORKFLOW_INCLUDE_CYCLE`).
176
+ */
177
+ view(workflow, start) {
178
+ const { startable, includable } = (0, schema_1.workflowFacts)(workflow);
179
+ const bound = this.boundTypes(workflow, start);
180
+ const phases = workflow.phases.map((phase, p) => {
181
+ const sub = phase.include === undefined ? undefined : this.byName.get(phase.include);
182
+ const approval = phase.approval; // one of the two (schema union)
183
+ const iterate = phase.iterate_over === undefined ? null : { over: phase.iterate_over, where: phase.where ?? null };
184
+ return {
185
+ name: phase.name,
186
+ description: phase.description ?? null,
187
+ role: phase.role ?? null,
188
+ optional: phase.optional,
189
+ ...this.directives(phase.role),
190
+ actions: (phase.actions ?? []).map((token) => ({ token, binding: (0, bindings_1.resolveToken)(token, 'action', this.inputs.bindings) })),
191
+ checks: { pre: (phase.checks?.pre ?? []).map((token) => this.check(token)), post: (phase.checks?.post ?? []).map((token) => this.check(token)) },
192
+ produces: (phase.produces ?? []).map((entry) => {
193
+ if (typeof entry !== 'string')
194
+ return { pattern: entry.path, owner: entry.type, evidence: false };
195
+ const implicit = (0, workflow_diagnostics_1.isImplicitOwnerProduces)(workflow, p, entry);
196
+ return { pattern: entry, owner: implicit ? null : bound[p].type, evidence: !implicit };
197
+ }),
198
+ approval: approval === undefined ? null : approval.by_role !== undefined ? { byRole: approval.by_role } : { byPerson: approval.by_person },
199
+ awaits: phase.awaits === undefined ? null : { party: phase.awaits.party, evidence: this.check(phase.awaits.evidence) },
200
+ fallback: phase.fallback === undefined ? null : { step: phase.fallback.step, setState: phase.fallback.set_state ?? null },
201
+ iterate,
202
+ selection: phase.where !== undefined && phase.iterate_over === undefined ? { where: phase.where } : null,
203
+ mode: phase.mode ?? 'fresh',
204
+ allowedModes: allowedModes(phase.mode),
205
+ distinctFrom: phase.distinct_from ?? [],
206
+ cadence: phase.cadence,
207
+ evidence: declaredEvidenceKinds(workflow, p, bound[p].type, bound[p].holdsGate),
208
+ include: phase.include ?? null,
209
+ // The include resolves: the registry refuses one naming no loaded workflow (`E_WORKFLOW_INCLUDE_UNRESOLVED`).
210
+ sub: sub === undefined ? null : this.view(sub, this.includeStart(workflow, p, start, sub)),
211
+ };
212
+ });
213
+ return {
214
+ name: workflow.name,
215
+ file: this.fileOf.get(workflow.name),
216
+ startable,
217
+ includable,
218
+ description: workflow.description ?? null,
219
+ element: workflow.element ?? null,
220
+ phases,
221
+ };
222
+ }
223
+ }
224
+ /** The start a workflow shown on its own resolves from (`workflow-core-checks.ts`'s root visit). */
225
+ function rootStart(workflow, memoryYaml) {
226
+ const element = workflow.element ?? null;
227
+ return {
228
+ boundType: element,
229
+ state: element === null || memoryYaml === null ? null : (0, workflow_exit_state_1.iterationStartState)(memoryYaml, element, undefined),
230
+ instance: (0, schema_1.workflowFacts)(workflow).startable,
231
+ };
232
+ }
233
+ /**
234
+ * `workflow show <ref>`'s answer (`spec-017` §7.6, §10): `ref` names a loaded workflow, or an open instance
235
+ * standing for its workflow; anything else is `NOT_FOUND` `unknown workflow: <ref>`. Pure.
236
+ */
237
+ function showWorkflow(inputs, deduction, ref) {
238
+ const resolver = new Resolver(inputs);
239
+ const name = resolver.workflow(ref) !== undefined ? ref : (deduction.instances.find((entry) => entry.instance.id === ref)?.instance.workflow ?? ref);
240
+ const workflow = resolver.workflow(name);
241
+ if (workflow === undefined)
242
+ return (0, types_1.coreErr)({ code: 'NOT_FOUND', message: (0, exports.unknownWorkflowMessage)(name), details: { ref } });
243
+ return (0, types_1.coreOk)({ baseline: deduction.baseline, workflow: resolver.view(workflow, rootStart(workflow, inputs.memoryYaml)), diagnostics: deduction.diagnostics });
244
+ }
245
+ /**
246
+ * `workflow show <ref>` at `HEAD` (`spec-017` §7.6): the deduction snapshot (which carries `bindings.yaml`),
247
+ * then `roles.yaml` and the directive files at the snapshot's commit.
248
+ *
249
+ * @throws `DiagnosticsError` (`VALIDATION`) when the registry at `HEAD` has a `spec-003` error; a
250
+ * `ValidationError` for an invalid `roles.yaml` or directive file at `HEAD`; `StorageError` when git
251
+ * cannot answer.
252
+ */
253
+ function workflowShowAtHead(root, ref) {
254
+ const snapshot = (0, workflow_deduction_1.readDeductionSnapshotAtHead)(root);
255
+ const deduction = (0, deduce_1.deduceWorkflowState)(snapshot);
256
+ const committed = snapshot.commit !== '';
257
+ const inputs = {
258
+ workflows: snapshot.workflows,
259
+ workflowFiles: snapshot.workflowFiles,
260
+ memoryYaml: snapshot.memoryYaml,
261
+ // The registry the snapshot loaded carries `bindings.yaml`: one registry load per call (task-216).
262
+ bindings: snapshot.bindings ?? null,
263
+ rolesYaml: committed ? (0, loaders_1.loadRolesYamlAtCommit)(root, snapshot.commit) : null,
264
+ directiveFiles: committed ? (0, loaders_1.loadDirectivesAtCommit)(root, snapshot.commit) : [],
265
+ };
266
+ return showWorkflow(inputs, deduction, ref);
267
+ }
268
+ //# sourceMappingURL=workflow-list-show.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-list-show.js","sourceRoot":"","sources":["../../src/core/workflow-list-show.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,268 @@
1
+ /**
2
+ * `wingfoil workflow next [<ref>] [--assigned-to <who>]` (task-216; `spec-017` §6.1–§6.4, §7.3, §8 `Step` /
3
+ * `NextResult`, §10, §11; BDD P4.4; REQ-PERF-03).
4
+ *
5
+ * **Baseline: `HEAD`, gating** (`spec-017` §1.1 item 1). The answer comes from one snapshot of the repository
6
+ * as committed at `HEAD` — `readDeductionSnapshotAtHead`, which also carries `bindings.yaml` and `dna.yaml` —
7
+ * and the deduction computed on it (`deduceWorkflowState`), the one `workflow list` / `show` / `status` and
8
+ * `agent execute --next` answer from. `roles.yaml` and the directive files are read at the snapshot's commit.
9
+ * The working tree only explains (`W_UNCOMMITTED_INPUTS`, §1.2).
10
+ *
11
+ * **What a step reports** (§6): its position (key, trail, scope — the deduction's), its role, the members who
12
+ * hold it and whether an agent executes as it (§6.2, §6.3), the role's directive ids and titles (never their
13
+ * content: `spec-012` §7 is `agent execute`'s; a phase names directives only through its role, `dl-066`
14
+ * option 1), each action with its interpolated text and its binding (§6.1) — a `wingfoil` argv with the step's
15
+ * operands filled, an `agent` argv `wingfoil agent execute --workflow <instance> --step <key>` (ruling R16), a
16
+ * `manual` Memory action's expected commit subject by `spec-003`'s verb rule — the checks with their binding
17
+ * and `evaluated: false`, the evidence, `awaits`, fallback and re-entry, the executor attributes and the
18
+ * cadence (`lastRun: "not-recorded"`, §6.4). Nothing is executed.
19
+ *
20
+ * **Approvals** (§5.1–§5.3, task-225): a step whose phase declares `approval:` awaits it while a carried element
21
+ * sits in a gate the phase holds, or — when the phase holds no gate — once only its `workflow finalize` record is
22
+ * missing. It is routed to the `dna.yaml` members `by_role` / `by_person` names, and a routed member without the
23
+ * `approver` role is flagged `W_APPROVAL_ROLE_WITHOUT_AUTHORITY`; nothing is recorded. The console prints a "human
24
+ * needed" line for it (§5.3). `workflow status` (`./workflow-status.ts`) builds its steps here too.
25
+ */
26
+ import type { RolesYaml } from '../directives/schema';
27
+ import type { DnaYaml } from '../dna/schema';
28
+ import type { MemoryYaml } from '../memory/schema';
29
+ import type { Diagnostic } from '../validation';
30
+ import { type BindingsYaml, type TokenBinding } from '../workflow/bindings';
31
+ import { type Baseline, type DeducedAction, type DeducedStep, type Deduction, type DeductionSnapshot, type ElementRef, type EvidenceKind, type Instance, type InstanceDeduction, type ProducesView, type ScopeRef, type TrailEntry } from '../workflow/deduce';
32
+ import type { Phase, PhaseMode, Workflow } from '../workflow/schema';
33
+ import { type DirectiveFile } from './loaders';
34
+ import { type CoreResult } from './types';
35
+ /** `NextResult.message` when no instance is open (`spec-017` §7.3). */
36
+ export declare const NO_OPEN_WORKFLOWS = "no open workflows";
37
+ /** `NextResult.message` when the selected instance's frontier is empty and it is complete (BDD P4.4 sc. 3). */
38
+ export declare const noNextStepMessage: (workflow: string) => string;
39
+ /** `W_APPROVAL_ROLE_WITHOUT_AUTHORITY` (`spec-017` §2, §5.1): an approval is routed to a member without the `approver` role. */
40
+ export declare const W_APPROVAL_ROLE_WITHOUT_AUTHORITY = "W_APPROVAL_ROLE_WITHOUT_AUTHORITY";
41
+ /** `routingError` when no member holds the approval's role (`spec-017` §5.1, BDD P4.14 sc. 3). */
42
+ export declare const noApproverMessage: (role: string) => string;
43
+ /** The `<who>` of `--assigned-to` that stands for the git identity (`spec-017` §7.3, BDD P4.4 sc. 2). */
44
+ export declare const ASSIGNED_TO_ME = "me";
45
+ /** A `team.members[]` entry as `next` reports it (`spec-017` §8); `email` is `''` when the entry has none. */
46
+ export interface Member {
47
+ readonly name: string;
48
+ readonly email: string;
49
+ }
50
+ /** An action's binding as a step reports it (`spec-017` §6.1, §8 `ActionView.binding`). */
51
+ export interface StepBinding {
52
+ readonly kind: TokenBinding['kind'];
53
+ /** The command to run, the step's operands filled: a `wingfoil`, `agent` or project `run` binding. */
54
+ readonly argv?: readonly string[];
55
+ /**
56
+ * A `manual` Memory action's expected commit subject(s), by `spec-003`'s verb rule. One subject per line
57
+ * when the targets need different brackets or types (one commit each).
58
+ */
59
+ readonly expectedCommit?: string;
60
+ }
61
+ /** One action of a step (`spec-017` §8 `ActionView`). */
62
+ export interface ActionView {
63
+ readonly token: string;
64
+ readonly text: string;
65
+ readonly unresolved: readonly string[];
66
+ readonly target: DeducedAction['target'];
67
+ readonly binding: StepBinding;
68
+ }
69
+ /** One check, listed with its binding and never evaluated in v0.3 (`spec-017` §6.1, P4.12 is v1.0). */
70
+ export interface CheckView {
71
+ readonly token: string;
72
+ readonly binding: StepBinding;
73
+ readonly evaluated: false;
74
+ }
75
+ /** What a step waits for (`spec-017` §5.1, §5.4, §8). */
76
+ export type Awaiting = {
77
+ readonly kind: 'approval';
78
+ readonly byRole?: string;
79
+ readonly byPerson?: string;
80
+ readonly elements: readonly ElementRef[];
81
+ readonly recordNeeded: boolean;
82
+ readonly routedTo: readonly Member[];
83
+ readonly routingError?: string;
84
+ } | {
85
+ readonly kind: 'party';
86
+ readonly party: string;
87
+ readonly evidence: CheckView;
88
+ };
89
+ /** A declared recurring cadence as a step reports it (`spec-017` §6.4): never computed overdue in v0.3. */
90
+ export interface CadenceView {
91
+ readonly recurring: unknown;
92
+ readonly lastRun: 'not-recorded';
93
+ }
94
+ /** A frontier step, as `workflow next` reports it (`spec-017` §8 `Step`). */
95
+ export interface Step {
96
+ readonly key: string;
97
+ readonly instance: string;
98
+ readonly trail: readonly TrailEntry[];
99
+ readonly workflow: string;
100
+ readonly phase: string;
101
+ readonly scope: ScopeRef | null;
102
+ readonly role: string | null;
103
+ /** `true` when `dna.yaml` lists the role in some `team.agents[].executes_as` (§6.3, `dl-135` point 1). */
104
+ readonly agentRole: boolean;
105
+ /** The members who hold the role, ascending `(name, email)` (§5.1 ordering). */
106
+ readonly members: readonly Member[];
107
+ /** The role's directives, role-bound and global, ascending by id (`spec-012` §5); content never inlined. */
108
+ readonly directives: readonly {
109
+ readonly id: string;
110
+ readonly title: string;
111
+ }[];
112
+ /** That resolution's warnings (§6.2), or why none was made. */
113
+ readonly directiveWarnings: readonly string[];
114
+ readonly actions: readonly ActionView[];
115
+ readonly checks: {
116
+ readonly pre: readonly CheckView[];
117
+ readonly post: readonly CheckView[];
118
+ };
119
+ readonly produces: readonly ProducesView[];
120
+ readonly created: readonly ElementRef[];
121
+ readonly evidence: {
122
+ readonly kinds: readonly EvidenceKind[];
123
+ readonly missing: readonly EvidenceKind[];
124
+ readonly finalizable: boolean;
125
+ };
126
+ readonly optional: boolean;
127
+ readonly awaiting: Awaiting | null;
128
+ readonly fallback: {
129
+ readonly step: string;
130
+ readonly setState: string | null;
131
+ } | null;
132
+ readonly reentered: boolean;
133
+ readonly reentryCommit: string | null;
134
+ /** The mode that runs: `fresh` in every v0.3 run (`--resume` / `--ref` are v0.4, §6.3). */
135
+ readonly mode: 'fresh';
136
+ readonly allowedModes: readonly PhaseMode[];
137
+ readonly distinctFrom: readonly string[];
138
+ /** A recurring cadence (§6.4), or `null` for `once`. */
139
+ readonly cadence: CadenceView | null;
140
+ }
141
+ /** `workflow next`'s payload (`spec-017` §8). */
142
+ export interface NextResult {
143
+ readonly baseline: Baseline;
144
+ readonly instance: Instance | null;
145
+ readonly complete: boolean;
146
+ /** The next step — the one `agent execute --next` consumes — or `null`. */
147
+ readonly next: Step | null;
148
+ /** The further ready steps, in frontier order. */
149
+ readonly more: readonly Step[];
150
+ readonly message?: string;
151
+ readonly diagnostics: readonly Diagnostic[];
152
+ }
153
+ /** What building the steps reads, all at the snapshot's commit. */
154
+ export interface NextInputs {
155
+ readonly workflows: readonly Workflow[];
156
+ readonly memoryYaml: MemoryYaml | null;
157
+ readonly dnaYaml: DnaYaml | null;
158
+ readonly bindings: BindingsYaml | null;
159
+ readonly rolesYaml: RolesYaml | null;
160
+ readonly directiveFiles: readonly DirectiveFile[];
161
+ /**
162
+ * The ids of the instance plans at the snapshot's commit, in any status (`spec-017` §3.1, §10): a `<ref>`
163
+ * naming one that is not open is `workflow is not open` (task-281, `bug-326`). Absent: none.
164
+ */
165
+ readonly plans?: readonly string[];
166
+ }
167
+ /** Options of {@link nextWorkflow}. */
168
+ export interface NextOptions {
169
+ /** A workflow name or an open instance id (`spec-017` §3.3); absent, the active instance. */
170
+ readonly ref?: string;
171
+ /** `me`, a member name or email, or a role name (§7.3). */
172
+ readonly assignedTo?: string;
173
+ /** The git identity's email, which `me` stands for; `''` when unresolved. */
174
+ readonly identityEmail?: string;
175
+ }
176
+ /** The members of `dna.yaml` holding `role`, ascending `(name, email)` (`spec-017` §1.3, §5.1). */
177
+ export declare function membersHoldingRole(dnaYaml: DnaYaml | null, role: string): Member[];
178
+ /**
179
+ * Who an approval is routed to (`spec-017` §5.1, BDD P4.14, `dl-033`): `by_role: R` → every member holding `R`,
180
+ * ascending `(name, email)`, or `routedTo: []` with `routingError` when none does; `by_person: P` → the member whose
181
+ * name or email is `P` (the registry refuses one naming nobody, `E_PHASE_APPROVER_UNKNOWN`). Reported only.
182
+ */
183
+ export declare function routeApproval(approval: NonNullable<Phase['approval']>, dnaYaml: DnaYaml | null): {
184
+ byRole: string;
185
+ routedTo: Member[];
186
+ routingError?: string;
187
+ } | {
188
+ byPerson: string;
189
+ routedTo: Member[];
190
+ routingError?: string;
191
+ };
192
+ /**
193
+ * `W_APPROVAL_ROLE_WITHOUT_AUTHORITY` for every member a step's approval is routed to who does not hold the
194
+ * `approver` role (`spec-017` §2, §5.1; REQ-SEC-03: routing never changes who may decide), in step order then
195
+ * routing order (§1.3), each against the member's `dna.yaml` entry.
196
+ */
197
+ export declare function approvalDiagnostics(steps: readonly Step[], dnaYaml: DnaYaml | null): Diagnostic[];
198
+ /**
199
+ * Build the reported step from a deduced frontier step (`spec-017` §6, §8 `Step`). Pure: it reads the
200
+ * deduced step and `inputs` only.
201
+ */
202
+ export declare function buildStep(step: DeducedStep, inputs: NextInputs): Step;
203
+ /**
204
+ * The roles `who` stands for (`spec-017` §7.3, BDD P4.4 sc. 2): `me` — the members whose email is the git
205
+ * identity's; otherwise the member whose name or email is `who`; otherwise the role named `who`. Emails
206
+ * compare case-insensitively. An empty set keeps no step.
207
+ */
208
+ export declare function assigneeRoles(dnaYaml: DnaYaml | null, who: string, identityEmail: string): Set<string>;
209
+ /** What a `<ref>` may name besides an open instance (`spec-017` §10): a loaded workflow, or an instance plan's id. */
210
+ export interface KnownRefs {
211
+ readonly workflows: readonly Workflow[];
212
+ /** The instance plans' ids at `HEAD`, any status (§3.1: type `plan`, `parent` empty). */
213
+ readonly plans?: readonly string[];
214
+ }
215
+ /**
216
+ * The refusal of a `<ref>` that selects no open instance (`spec-017` §10, task-216 review fix 1, task-281
217
+ * `bug-326`): a loaded workflow with no open instance, or an instance plan that is not open, is
218
+ * `workflow is not open: <ref>`; any other `<ref>` — a phase plan's id included (approver ruling D4) — names
219
+ * nothing, `unknown workflow: <ref>`. Both `NOT_FOUND`. The one answer of `next`, `status`, `finalize`, `end`
220
+ * and `memory add --workflow`.
221
+ */
222
+ export declare function unresolvedRef<T>(known: KnownRefs, ref: string): CoreResult<T>;
223
+ /**
224
+ * Why an instance whose frontier is empty has no next step (`spec-017` §7.3): complete, abandoned (§4.11)
225
+ * or its workflow not loaded. Shared by `next` and `finalize` (task-226).
226
+ */
227
+ export declare function emptyFrontierMessage(selected: InstanceDeduction): string;
228
+ /**
229
+ * `workflow next`'s answer from one deduction (`spec-017` §7.3, §10). Pure. Exit `0` in every deduced
230
+ * case — `no open workflows`; `no next step: workflow '<name>' is complete`; a filter that keeps nothing — and
231
+ * `NOT_FOUND` for a `ref` naming no open instance — `workflow is not open: <ref>` or `unknown workflow: <ref>`
232
+ * ({@link unresolvedRef}).
233
+ */
234
+ export declare function nextWorkflow(inputs: NextInputs, deduction: Deduction, options: NextOptions): CoreResult<NextResult>;
235
+ /**
236
+ * What building steps reads besides the deduction (`spec-017` §6), all at the snapshot's commit: the
237
+ * snapshot's workflows, `memory.yaml`, `dna.yaml` and `bindings.yaml`, and — only when some instance has a
238
+ * frontier step to report — `roles.yaml` and the directive files.
239
+ *
240
+ * @throws a `ValidationError` for an invalid `roles.yaml` or directive file at the snapshot's commit.
241
+ */
242
+ export declare function readNextInputs(root: string, snapshot: DeductionSnapshot, deduction: Deduction): NextInputs;
243
+ /**
244
+ * `workflow next [<ref>] [--assigned-to <who>]` at `HEAD` (`spec-017` §7.3): the deduction snapshot (with
245
+ * `bindings.yaml` and `dna.yaml`), then `roles.yaml` and the directive files at the snapshot's commit — read
246
+ * only when a step is reported — and, for `--assigned-to me`, the git identity.
247
+ *
248
+ * @throws `DiagnosticsError` (`VALIDATION`) when the registry at `HEAD` has a `spec-003` error; a
249
+ * `ValidationError` for an invalid `roles.yaml` or directive file at `HEAD`; `StorageError` when git
250
+ * cannot answer.
251
+ */
252
+ export declare function workflowNextAtHead(root: string, ref?: string, assignedTo?: string): CoreResult<NextResult>;
253
+ /** Members as `Name <email>, …`, or `fallback` when there is none. */
254
+ export declare function describeMembers(members: readonly Member[], fallback: string): string;
255
+ /**
256
+ * The "human needed" line of a pending approval (`spec-017` §5.3, X1.1, X1.2): the action (`approve or reject`, or
257
+ * `finalize` for an approval record), the element ids or, for a record, the step key, and the routed members.
258
+ */
259
+ export declare function approvalLine(awaiting: Extract<Awaiting, {
260
+ kind: 'approval';
261
+ }>, stepKey: string): string;
262
+ /** The "human needed" line of a step that awaits a decision (`spec-017` §5.3), or `null`. */
263
+ export declare function humanNeededLine(step: Step): string | null;
264
+ /** The console lines of one step (`spec-017` §8: key, trail, role, scope, actions with bindings, directive ids, human needed). */
265
+ export declare function stepLines(step: Step, heading: string): string[];
266
+ /** `workflow next`'s `--format console` rendering (`spec-017` §8). Pure. */
267
+ export declare function renderNextConsole(result: NextResult): string;
268
+ //# sourceMappingURL=workflow-next.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-next.d.ts","sourceRoot":"","sources":["../../src/core/workflow-next.ts"],"names":[],"mappings":"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"}