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
@@ -1,30 +1,39 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Workflow = exports.Phase = exports.WorkflowsYaml = void 0;
3
+ exports.Workflow = exports.RESERVED_PHASE_NAMES = exports.WORKFLOW_NAME_RE = exports.Phase = exports.PATH_PATTERN_RE = exports.Produces = exports.Cadence = exports.CADENCE_SHAPE_MESSAGE = exports.CADENCE_EVENT_RE = exports.CRON_EXPRESSION_RE = exports.INDEPENDENT_ROLES = exports.PHASE_MODES = exports.WorkflowsYaml = void 0;
4
+ exports.cadenceShapeMessage = cadenceShapeMessage;
5
+ exports.producesPath = producesPath;
6
+ exports.invalidKindMessage = invalidKindMessage;
7
+ exports.workflowFacts = workflowFacts;
4
8
  /**
5
9
  * `workflows.yaml` manifest (Layer 1) + Workflow DSL (Layer 2) schemas
6
10
  * (spec-003-workflows-yaml-schema, P4.1). This is one of the three independent per-pillar schemas
7
11
  * task-004-decoupled-pillars keeps decoupled (REQ-SYS-02): neither layer depends on `memory.yaml`'s
8
- * or `dna.yaml`'s schema. Cross-file concerns spec-003 itself calls out — resolving each `include`
9
- * path against the filesystem, and requiring at least one loaded workflow to be `kind: main` — need
10
- * the caller to have actually loaded the referenced files, so per spec-009-validation-strategy §1
11
- * ("Cross-file ... these require the caller to have already loaded ... so they run as a list of
12
- * caller-supplied SemanticCheck functions") those two checks live in the loader
13
- * (`src/core/loaders.ts`), not in this schema module.
12
+ * or `dna.yaml`'s schema. This module holds the **structural** (Zod) shape only, plus the name class
13
+ * and the startable/includable reading the loader's checks share ({@link WORKFLOW_NAME_RE},
14
+ * {@link workflowFacts}). Every check spec-003 § "Diagnostics" runs *in the loader* — names, the
15
+ * startable/includable rules, phase `include` resolution, element compatibility, include cycles,
16
+ * `fallback.step` — needs the other loaded files or emits a named code, so per
17
+ * spec-009-validation-strategy §1 it lives in `src/core/loaders.ts`, not here. The one structural
18
+ * refusal with a named code is an unknown `kind` (`E_WORKFLOW_INVALID_KIND`, BDD P4.1 sc. 3), whose
19
+ * message this schema carries.
14
20
  *
15
- * Every object node is `.passthrough()` per spec-009 §2.
21
+ * Every object node is `.passthrough()` per spec-009 §2, except a phase `cadence`, a closed union whose
22
+ * objects are `.strict()` (spec-003 § "Recurring phases": exactly one trigger, no unknown key; task-185).
16
23
  */
17
24
  const zod_1 = require("zod");
25
+ const format_1 = require("../validation/format");
18
26
  const id_1 = require("../validation/id");
19
27
  /**
20
28
  * Layer 1 — the main manifest (`.wingfoil/workflows.yaml`). `include` (singular) is the canonical
21
29
  * key per spec-003's required rename from the legacy plural `includes:`; a document that still uses
22
30
  * `includes:` fails Pass 1 here (missing required `include`) and `includes` itself is preserved only
23
- * as an unknown, passed-through key.
31
+ * as an unknown, passed-through key. `format` is the manifest's format (`dl-149`, task-251: absent = 1).
24
32
  */
25
33
  exports.WorkflowsYaml = zod_1.z
26
34
  .object({
27
35
  version: zod_1.z.number().positive().optional(),
36
+ format: (0, format_1.formatField)(format_1.WORKFLOWS_YAML_FORMAT),
28
37
  include: zod_1.z.array(zod_1.z.string()).min(1),
29
38
  })
30
39
  .passthrough();
@@ -61,10 +70,109 @@ const Actions = zod_1.z.array(zod_1.z.string()).superRefine((actions, ctx) => {
61
70
  }
62
71
  });
63
72
  });
73
+ // ---- task-185: executor attributes (`mode`, `distinct_from`) and phase `cadence` -------------------
74
+ // spec-003 § "Execution independence" (`dl-134` §4 (c), `dl-135` points 3–4) and § "Recurring phases"
75
+ // (`dl-105` R1). The loader rules on the raw declaration (`E_PHASE_DISTINCT_FROM_UNKNOWN`,
76
+ // `E_PHASE_DISTINCT_FROM_SELF`, `E_PHASE_MODE_NOT_INDEPENDENT`, `E_PHASE_EXECUTOR_WITHOUT_ROLE`) live in
77
+ // `src/core/workflow-diagnostics.ts`; here is only the structural shape.
78
+ /**
79
+ * The execution modes a phase may allow (spec-003 § "Execution independence"). One value per phase
80
+ * (spec-003 open question 5); an absent `mode` reads as `fresh` but stays absent in the parsed phase,
81
+ * so the loader's checks see the raw declaration (open question 4).
82
+ */
83
+ exports.PHASE_MODES = ['fresh', 'resume', 'reference'];
84
+ /** Roles whose phases judge independently, so `fresh` is mandatory there (`dl-135` point 3). */
85
+ exports.INDEPENDENT_ROLES = ['reviewer', 'qa'];
86
+ /**
87
+ * One five-field cron expression, the string a GitHub Actions `on: schedule` trigger takes
88
+ * (spec-003 § "Recurring phases"): five fields of digits, names, `*`, `,`, `-` and `/`, separated by
89
+ * spaces or tabs (a line break or other whitespace is refused: the expression is one line). The
90
+ * field values themselves are not range-checked.
91
+ */
92
+ exports.CRON_EXPRESSION_RE = /^[0-9A-Za-z*,/-]+([ \t]+[0-9A-Za-z*,/-]+){4}$/;
93
+ /**
94
+ * The shape of a cadence event, `<memory-type>-<state>` (spec-003 open question 3): lower-case
95
+ * segments joined by single hyphens, at least two of them. Both the type and the state may contain
96
+ * hyphens (`release-line-in-progress`), so where the type ends is decided against `memory.yaml` by
97
+ * the core check of task-194, not here.
98
+ */
99
+ exports.CADENCE_EVENT_RE = /^[a-z][a-z0-9]*(-[a-z0-9]+)+$/;
100
+ /** `{ recurring: { cron } | { on } }`: exactly one trigger, no other key at either level. */
101
+ const RecurringCadence = zod_1.z
102
+ .object({
103
+ recurring: zod_1.z
104
+ .object({
105
+ cron: zod_1.z
106
+ .string()
107
+ .regex(exports.CRON_EXPRESSION_RE, { message: 'cron must be a five-field cron expression (e.g. "0 6 * * 1")' })
108
+ .optional(),
109
+ on: zod_1.z
110
+ .string()
111
+ .regex(exports.CADENCE_EVENT_RE, { message: 'on must be an event named <memory-type>-<state> (e.g. release-released)' })
112
+ .optional(),
113
+ })
114
+ .strict()
115
+ .superRefine((trigger, ctx) => {
116
+ if ((trigger.cron === undefined) === (trigger.on === undefined)) {
117
+ ctx.addIssue({ code: 'custom', message: 'recurring cadence takes exactly one trigger: cron or on' });
118
+ }
119
+ }),
120
+ })
121
+ .strict();
122
+ /** The refusal of a `cadence` that matches neither shape, as spec-003 § "Recurring phases" words it. */
123
+ exports.CADENCE_SHAPE_MESSAGE = 'cadence must be once or { recurring: { cron } | { on } } with no other key';
124
+ function isMap(value) {
125
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
126
+ }
127
+ /**
128
+ * The message of a `cadence` that matches neither shape: {@link CADENCE_SHAPE_MESSAGE}, naming the
129
+ * first unknown key in declared order — beside `recurring` first, then inside it — when there is one.
130
+ */
131
+ function cadenceShapeMessage(input) {
132
+ if (!isMap(input))
133
+ return exports.CADENCE_SHAPE_MESSAGE;
134
+ const outer = Object.keys(input).find((key) => key !== 'recurring');
135
+ if (outer !== undefined)
136
+ return `${exports.CADENCE_SHAPE_MESSAGE} (unknown key '${outer}')`;
137
+ const recurring = input['recurring'];
138
+ const inner = isMap(recurring) ? Object.keys(recurring).find((key) => key !== 'cron' && key !== 'on') : undefined;
139
+ return inner === undefined ? exports.CADENCE_SHAPE_MESSAGE : `${exports.CADENCE_SHAPE_MESSAGE} (unknown key 'recurring.${inner}')`;
140
+ }
141
+ /**
142
+ * A phase's cadence (`dl-105` R1): `once` (the default) or recurring on one trigger. A value that
143
+ * matches neither branch is refused at the `cadence` path with {@link cadenceShapeMessage}; a bad
144
+ * `cron` / `on` value or a trigger count other than one keeps its own, deeper path and message.
145
+ */
146
+ exports.Cadence = zod_1.z.union([zod_1.z.literal('once'), RecurringCadence], { error: (issue) => cadenceShapeMessage(issue.input) });
147
+ // ---- end task-185 -----------------------------------------------------------------------------------
148
+ // --- task-175: phase evidence (dl-104 D3, D4; spec-003 § "Evidence") ---
149
+ /**
150
+ * One `produces` entry (`dl-104` D3): a path pattern owned by the workflow's `element` (a string), or
151
+ * `{ type: T, path }`, owned by the elements of type `T` the phase creates. Whether each path is a
152
+ * path pattern, and whether the phase creates `T`, are loader checks (`E_PHASE_PRODUCES_NOT_A_PATH`,
153
+ * `E_PHASE_PRODUCES_OWNER_NOT_CREATED`), so the rest of the file is still checked.
154
+ */
155
+ exports.Produces = zod_1.z.union([zod_1.z.string(), zod_1.z.object({ type: zod_1.z.string(), path: zod_1.z.string() }).strict()]);
156
+ /**
157
+ * `awaits` (`dl-104` D4): the phase waits on an actor outside the project — `party` names it,
158
+ * `evidence` is a check token (Layer 3) that observes the outcome. Evaluated from v1.0 (P4.12).
159
+ */
160
+ const Awaits = zod_1.z.object({ party: zod_1.z.string().min(1), evidence: Check }).strict();
161
+ /**
162
+ * A path pattern (spec-003 § "Evidence"): the characters `[A-Za-z0-9._/{}-]`, no whitespace — a
163
+ * repository-relative file or directory path, either with `{…}` tokens. Anything else is prose.
164
+ */
165
+ exports.PATH_PATTERN_RE = /^[A-Za-z0-9._/{}-]+$/;
166
+ /** The path of one `produces` entry, whichever form it takes. */
167
+ function producesPath(entry) {
168
+ return typeof entry === 'string' ? entry : entry.path;
169
+ }
170
+ // --- end task-175 ---
64
171
  /**
65
172
  * One `phases[]` entry of a Layer-2 workflow definition (spec-003) — a named step with its optional
66
- * `role`, `actions`, `include`, `iterate_over`/`where`, `produces`, `checks`, `approval`, and
67
- * `fallback`. `.passthrough()` per spec-009 §2.
173
+ * `role`, `actions`, `include`, `iterate_over`/`where`, `produces`, `awaits` (task-175), `checks`,
174
+ * `approval`, `fallback`, the executor attributes `mode` / `distinct_from` and the `cadence`
175
+ * (task-185). `.passthrough()` per spec-009 §2, except the closed `cadence` union.
68
176
  */
69
177
  exports.Phase = zod_1.z
70
178
  .object({
@@ -76,24 +184,64 @@ exports.Phase = zod_1.z
76
184
  include: zod_1.z.string().optional(),
77
185
  iterate_over: zod_1.z.string().optional(),
78
186
  where: zod_1.z.record(zod_1.z.string(), WhereValue).optional(),
79
- produces: zod_1.z.array(zod_1.z.string()).optional(),
187
+ produces: zod_1.z.array(exports.Produces).optional(), // task-175: string | { type, path } (dl-104 D3)
188
+ awaits: Awaits.optional(), // task-175: dl-104 D4
80
189
  checks: zod_1.z
81
190
  .object({ pre: zod_1.z.array(Check).optional(), post: zod_1.z.array(Check).optional() })
82
191
  .passthrough()
83
192
  .optional(),
84
- approval: zod_1.z.object({ by_role: zod_1.z.string() }).passthrough().optional(),
193
+ // task-194: exactly one of `by_role` / `by_person` (spec-003 Layer 2 `approval`, BDD P4.14 sc. 2); the
194
+ // core checks resolve each against `dna.yaml` (E_PHASE_ROLE_UNKNOWN, E_PHASE_APPROVER_UNKNOWN).
195
+ approval: zod_1.z.union([zod_1.z.object({ by_role: zod_1.z.string() }).strict(), zod_1.z.object({ by_person: zod_1.z.string() }).strict()]).optional(),
85
196
  fallback: zod_1.z.object({ step: zod_1.z.string(), set_state: zod_1.z.string().optional() }).passthrough().optional(),
197
+ // task-185 (spec-003 § "Execution independence", § "Recurring phases"):
198
+ mode: zod_1.z.enum(exports.PHASE_MODES).optional(),
199
+ distinct_from: zod_1.z.array(zod_1.z.string()).optional(),
200
+ cadence: exports.Cadence.default('once'),
86
201
  })
87
202
  .passthrough();
88
- /** Layer 2 — one workflow-definition file (`.wingfoil/workflows/**\/*.yaml`). */
203
+ /**
204
+ * The name class of workflows and phases (spec-003 § "Names"): `[a-z][a-z0-9-]*`, so
205
+ * `<workflow>.<phase>` splits at its first `.` and a phase name is a legal run-id segment
206
+ * (`spec-016`). Checked by the loader (`E_WORKFLOW_NAME_INVALID`, `E_PHASE_NAME_INVALID`), not by
207
+ * Zod, so a bad name gets its own code and the rest of the file is still checked.
208
+ */
209
+ exports.WORKFLOW_NAME_RE = /^[a-z][a-z0-9-]*$/;
210
+ /** Phase names no workflow may declare: `adhoc` names a run without a step (`spec-016`). */
211
+ exports.RESERVED_PHASE_NAMES = ['adhoc'];
212
+ /** The message of BDD `P4.1-workflow-config.feature` sc. 3, verbatim (`E_WORKFLOW_INVALID_KIND`). */
213
+ function invalidKindMessage(kind) {
214
+ return `invalid workflow kind '${String(kind)}' (allowed: main, sub)`;
215
+ }
216
+ /**
217
+ * Layer 2 — one workflow-definition file (`.wingfoil/workflows/**\/*.yaml`). `version` is the file's
218
+ * content revision; `format` its format (`dl-149`, task-251: absent = 1).
219
+ */
89
220
  exports.Workflow = zod_1.z
90
221
  .object({
91
222
  name: zod_1.z.string(),
92
- kind: zod_1.z.enum(['main', 'sub']),
223
+ /** Alias kept readable during v0.3 (`dl-109` K1 (a)): see {@link workflowFacts}. */
224
+ kind: zod_1.z.enum(['main', 'sub'], { error: (issue) => invalidKindMessage(issue.input) }).optional(),
225
+ startable: zod_1.z.boolean().optional(),
226
+ includable: zod_1.z.boolean().optional(),
93
227
  description: zod_1.z.string().optional(),
94
228
  version: zod_1.z.number().positive().optional(),
229
+ format: (0, format_1.formatField)(format_1.WORKFLOW_FORMAT),
95
230
  element: zod_1.z.string().optional(),
96
231
  phases: zod_1.z.array(exports.Phase).min(1),
97
232
  })
98
233
  .passthrough();
234
+ /**
235
+ * Read a workflow's two facts (spec-003 Layer 2, `dl-109` K1 (a)): `kind: main` is startable only,
236
+ * `kind: sub` includable only; otherwise each boolean as declared, an absent one reading `false`.
237
+ * A workflow that declares `kind` together with a boolean is refused by the loader
238
+ * (`E_WORKFLOW_KIND_CONFLICT`); here `kind` wins, so the reading stays total.
239
+ */
240
+ function workflowFacts(workflow) {
241
+ if (workflow.kind === 'main')
242
+ return { startable: true, includable: false };
243
+ if (workflow.kind === 'sub')
244
+ return { startable: false, includable: true };
245
+ return { startable: workflow.startable === true, includable: workflow.includable === true };
246
+ }
99
247
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/workflow/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/workflow/schema.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wingfoil",
3
- "version": "0.2.2",
3
+ "version": "0.3.0",
4
4
  "description": "WingFoil — the repo-native intent layer for AI-native software engineering",
5
5
  "license": "MIT",
6
6
  "author": "Roberto Pompermaier <robypomper@gmail.com>",
@@ -8,7 +8,7 @@
8
8
  "type": "git",
9
9
  "url": "git+https://github.com/wingfoil/wingfoil.git"
10
10
  },
11
- "homepage": "https://github.com/wingfoil/wingfoil#readme",
11
+ "homepage": "https://wingfoil.github.io/wingfoil/",
12
12
  "bugs": {
13
13
  "url": "https://github.com/wingfoil/wingfoil/issues"
14
14
  },
@@ -30,17 +30,26 @@
30
30
  "provenance": true
31
31
  },
32
32
  "scripts": {
33
- "build": "tsc -p tsconfig.build.json",
33
+ "build": "tsc -p tsconfig.build.json && node scripts/write-build-info.cjs",
34
34
  "prepack": "npm run build",
35
35
  "prepublishOnly": "npm run build && npm test && npm run lint",
36
36
  "publish:staging": "node scripts/publish-staging.cjs",
37
37
  "check:lockfile": "node scripts/check-lockfile-pins.cjs",
38
+ "check:audit": "npm audit --omit=dev --audit-level=high",
39
+ "check:audit:all": "npm audit --audit-level=high",
38
40
  "lint": "eslint .",
41
+ "typecheck": "tsc --noEmit -p tsconfig.json && tsc --noEmit -p tsconfig.build.json",
39
42
  "docs:api": "typedoc --options typedoc.json",
40
- "test": "jest",
43
+ "test": "node scripts/run-tests.cjs",
41
44
  "test:coverage": "jest --coverage",
45
+ "test:report": "jest --coverage --json --outputFile=coverage/jest-results.json",
46
+ "test:latency": "jest -c jest.latency.config.js",
47
+ "test:no-identity": "node scripts/test-no-identity.cjs",
42
48
  "wingfoil": "node node_modules/wingfoil-released/dist/cli.js",
43
- "check:mcp": "node scripts/check-mcp-registration.cjs"
49
+ "check:mcp": "node scripts/check-mcp-registration.cjs",
50
+ "check:governance": "node scripts/check-governance.cjs",
51
+ "check:role-directives": "node scripts/check-role-directives.cjs",
52
+ "lint:claims": "node scripts/lint-claims.cjs"
44
53
  },
45
54
  "keywords": [
46
55
  "wingfoil",
@@ -68,18 +77,19 @@
68
77
  "@types/jest": "^30.0.0",
69
78
  "@types/js-yaml": "^4.0.9",
70
79
  "@types/node": "^22.20.4",
80
+ "ajv": "^8.20.0",
71
81
  "eslint": "^10.6.0",
72
82
  "jest": "^30.4.2",
73
83
  "ts-jest": "^29.4.11",
74
84
  "typedoc": "^0.28.20",
75
85
  "typescript": "^6.0.3",
76
86
  "typescript-eslint": "^8.62.1",
77
- "wingfoil-released": "npm:wingfoil@0.2.1"
87
+ "wingfoil-released": "npm:wingfoil@0.2.2"
78
88
  },
79
89
  "dependencies": {
80
- "@modelcontextprotocol/sdk": "^1.29.0",
90
+ "@modelcontextprotocol/sdk": "^1.32.0",
81
91
  "commander": "^15.0.0",
82
- "js-yaml": "^4.3.0",
92
+ "js-yaml": "^4.3.2",
83
93
  "zod": "^4.4.3"
84
94
  },
85
95
  "//overrides": "task-080 / bug-056 / dl-069 option (b). @napi-rs/wasm-runtime (dev, optional, reached through eslint -> @unrs/resolver) declares @emnapi/core and @emnapi/runtime as REQUIRED peers, and npm recorded no hoisted entry for either - so npm resolved them from the registry on every install and `npm ci` then rejected the lock for missing what it had just resolved. That is invisible under npm 11.x and fatal under the npm 10.9.0 that the pipeline's pinned Node 22.12.0 bundles, which is why it surfaced only in the release gate. These exact pins make both peers resolve from package-lock.json instead of the registry. Scoped to @napi-rs/wasm-runtime on purpose: the nested @emnapi/core@1.10.0 under @unrs/resolver-binding-wasm32-wasi is a different edge and stays where it is. Revisit on any eslint / @unrs/resolver bump; test/cli/lockfile-peer-overrides.test.ts fails if the lock stops carrying these. task-104 amends this: the overrides block alone did NOT keep the entries in the lock - see the //devDependencies:@emnapi note above.",