poly-weaver 0.8.1 → 0.9.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 (288) hide show
  1. package/README.md +7 -64
  2. package/dist/agents/errors.d.ts +20 -0
  3. package/dist/agents/errors.d.ts.map +1 -0
  4. package/dist/agents/errors.js +26 -0
  5. package/dist/agents/errors.js.map +1 -0
  6. package/dist/agents/implementors/adapter.d.ts +1 -1
  7. package/dist/agents/implementors/adapter.d.ts.map +1 -1
  8. package/dist/agents/implementors/adapter.js +2 -2
  9. package/dist/agents/implementors/adapter.js.map +1 -1
  10. package/dist/agents/implementors/handler.d.ts.map +1 -1
  11. package/dist/agents/implementors/handler.js +2 -1
  12. package/dist/agents/implementors/handler.js.map +1 -1
  13. package/dist/agents/implementors/index.d.ts.map +1 -1
  14. package/dist/agents/implementors/index.js +3 -9
  15. package/dist/agents/implementors/index.js.map +1 -1
  16. package/dist/agents/implementors/prompts.d.ts +4 -9
  17. package/dist/agents/implementors/prompts.d.ts.map +1 -1
  18. package/dist/agents/implementors/prompts.js +10 -16
  19. package/dist/agents/implementors/prompts.js.map +1 -1
  20. package/dist/agents/index.d.ts +2 -0
  21. package/dist/agents/index.d.ts.map +1 -1
  22. package/dist/agents/index.js +4 -0
  23. package/dist/agents/index.js.map +1 -1
  24. package/dist/agents/interviewers/adapter.d.ts +17 -0
  25. package/dist/agents/interviewers/adapter.d.ts.map +1 -0
  26. package/dist/agents/interviewers/adapter.js +111 -0
  27. package/dist/agents/interviewers/adapter.js.map +1 -0
  28. package/dist/agents/interviewers/dsl.d.ts +13 -0
  29. package/dist/agents/interviewers/dsl.d.ts.map +1 -0
  30. package/dist/agents/interviewers/dsl.js +14 -0
  31. package/dist/agents/interviewers/dsl.js.map +1 -0
  32. package/dist/agents/interviewers/handler.d.ts +21 -0
  33. package/dist/agents/interviewers/handler.d.ts.map +1 -0
  34. package/dist/agents/interviewers/handler.js +217 -0
  35. package/dist/agents/interviewers/handler.js.map +1 -0
  36. package/dist/agents/interviewers/index.d.ts +11 -0
  37. package/dist/agents/interviewers/index.d.ts.map +1 -0
  38. package/dist/agents/interviewers/index.js +16 -0
  39. package/dist/agents/interviewers/index.js.map +1 -0
  40. package/dist/agents/interviewers/prompts.d.ts +3 -0
  41. package/dist/agents/interviewers/prompts.d.ts.map +1 -0
  42. package/dist/agents/interviewers/prompts.js +73 -0
  43. package/dist/agents/interviewers/prompts.js.map +1 -0
  44. package/dist/agents/interviewers/types.d.ts +53 -0
  45. package/dist/agents/interviewers/types.d.ts.map +1 -0
  46. package/dist/agents/interviewers/types.js +2 -0
  47. package/dist/agents/interviewers/types.js.map +1 -0
  48. package/dist/agents/planners/adapter.d.ts +1 -1
  49. package/dist/agents/planners/adapter.d.ts.map +1 -1
  50. package/dist/agents/planners/adapter.js +2 -2
  51. package/dist/agents/planners/adapter.js.map +1 -1
  52. package/dist/agents/planners/dsl.d.ts +5 -1
  53. package/dist/agents/planners/dsl.d.ts.map +1 -1
  54. package/dist/agents/planners/handler.d.ts.map +1 -1
  55. package/dist/agents/planners/handler.js +44 -25
  56. package/dist/agents/planners/handler.js.map +1 -1
  57. package/dist/agents/planners/index.d.ts.map +1 -1
  58. package/dist/agents/planners/index.js +3 -9
  59. package/dist/agents/planners/index.js.map +1 -1
  60. package/dist/agents/planners/prompts.d.ts +5 -11
  61. package/dist/agents/planners/prompts.d.ts.map +1 -1
  62. package/dist/agents/planners/prompts.js +15 -22
  63. package/dist/agents/planners/prompts.js.map +1 -1
  64. package/dist/agents/registry.d.ts +2 -1
  65. package/dist/agents/registry.d.ts.map +1 -1
  66. package/dist/agents/registry.js.map +1 -1
  67. package/dist/agents/reviewers/adapter.d.ts +2 -2
  68. package/dist/agents/reviewers/adapter.d.ts.map +1 -1
  69. package/dist/agents/reviewers/adapter.js +4 -4
  70. package/dist/agents/reviewers/adapter.js.map +1 -1
  71. package/dist/agents/reviewers/dsl.d.ts +6 -1
  72. package/dist/agents/reviewers/dsl.d.ts.map +1 -1
  73. package/dist/agents/reviewers/dsl.js.map +1 -1
  74. package/dist/agents/reviewers/handler.d.ts.map +1 -1
  75. package/dist/agents/reviewers/handler.js +24 -6
  76. package/dist/agents/reviewers/handler.js.map +1 -1
  77. package/dist/agents/reviewers/index.d.ts.map +1 -1
  78. package/dist/agents/reviewers/index.js +7 -9
  79. package/dist/agents/reviewers/index.js.map +1 -1
  80. package/dist/agents/reviewers/prompts.d.ts +5 -11
  81. package/dist/agents/reviewers/prompts.d.ts.map +1 -1
  82. package/dist/agents/reviewers/prompts.js +22 -21
  83. package/dist/agents/reviewers/prompts.js.map +1 -1
  84. package/dist/agents/reviewers/types.d.ts +5 -2
  85. package/dist/agents/reviewers/types.d.ts.map +1 -1
  86. package/dist/agents/reviewers/types.js.map +1 -1
  87. package/dist/agents/runner.d.ts +28 -1
  88. package/dist/agents/runner.d.ts.map +1 -1
  89. package/dist/agents/runner.js +140 -22
  90. package/dist/agents/runner.js.map +1 -1
  91. package/dist/agents/simplifiers/adapter.d.ts +1 -1
  92. package/dist/agents/simplifiers/adapter.d.ts.map +1 -1
  93. package/dist/agents/simplifiers/adapter.js +2 -2
  94. package/dist/agents/simplifiers/adapter.js.map +1 -1
  95. package/dist/agents/simplifiers/handler.d.ts.map +1 -1
  96. package/dist/agents/simplifiers/handler.js +2 -1
  97. package/dist/agents/simplifiers/handler.js.map +1 -1
  98. package/dist/agents/simplifiers/index.d.ts.map +1 -1
  99. package/dist/agents/simplifiers/index.js +1 -1
  100. package/dist/agents/simplifiers/index.js.map +1 -1
  101. package/dist/ansi.d.ts.map +1 -1
  102. package/dist/ansi.js +2 -3
  103. package/dist/ansi.js.map +1 -1
  104. package/dist/cli.js +84 -187
  105. package/dist/cli.js.map +1 -1
  106. package/dist/config.d.ts +14 -9
  107. package/dist/config.d.ts.map +1 -1
  108. package/dist/config.js +24 -5
  109. package/dist/config.js.map +1 -1
  110. package/dist/dsl.d.ts +4 -1
  111. package/dist/dsl.d.ts.map +1 -1
  112. package/dist/dsl.js +4 -3
  113. package/dist/dsl.js.map +1 -1
  114. package/dist/dump/collector.d.ts.map +1 -1
  115. package/dist/dump/collector.js +22 -1
  116. package/dist/dump/collector.js.map +1 -1
  117. package/dist/dump/service.d.ts.map +1 -1
  118. package/dist/dump/service.js +1 -0
  119. package/dist/dump/service.js.map +1 -1
  120. package/dist/dump/types.d.ts +38 -0
  121. package/dist/dump/types.d.ts.map +1 -1
  122. package/dist/dump/types.js.map +1 -1
  123. package/dist/flow/built-in/default-factory.d.ts.map +1 -1
  124. package/dist/flow/built-in/default-factory.js +70 -66
  125. package/dist/flow/built-in/default-factory.js.map +1 -1
  126. package/dist/flow/built-in/default.d.ts +1 -1
  127. package/dist/flow/built-in/default.d.ts.map +1 -1
  128. package/dist/flow/built-in/default.js +3 -3
  129. package/dist/flow/built-in/default.js.map +1 -1
  130. package/dist/flow/built-in/default.ts +4 -4
  131. package/dist/flow/custom/AUTHORING.md +54 -54
  132. package/dist/flow/custom/load.d.ts.map +1 -1
  133. package/dist/flow/custom/load.js +0 -1
  134. package/dist/flow/custom/load.js.map +1 -1
  135. package/dist/flow/dsl.d.ts +2 -0
  136. package/dist/flow/dsl.d.ts.map +1 -1
  137. package/dist/flow/dsl.js +2 -0
  138. package/dist/flow/dsl.js.map +1 -1
  139. package/dist/flow/executor.d.ts +2 -1
  140. package/dist/flow/executor.d.ts.map +1 -1
  141. package/dist/flow/executor.js +31 -14
  142. package/dist/flow/executor.js.map +1 -1
  143. package/dist/flow/index.d.ts +1 -2
  144. package/dist/flow/index.d.ts.map +1 -1
  145. package/dist/flow/index.js +1 -2
  146. package/dist/flow/index.js.map +1 -1
  147. package/dist/flow/params.d.ts +19 -2
  148. package/dist/flow/params.d.ts.map +1 -1
  149. package/dist/flow/params.js +70 -1
  150. package/dist/flow/params.js.map +1 -1
  151. package/dist/flow/types.d.ts +33 -3
  152. package/dist/flow/types.d.ts.map +1 -1
  153. package/dist/flow/types.js +6 -0
  154. package/dist/flow/types.js.map +1 -1
  155. package/dist/flow-editor/tui.d.ts.map +1 -1
  156. package/dist/flow-editor/tui.js +10 -8
  157. package/dist/flow-editor/tui.js.map +1 -1
  158. package/dist/flow-editor/validate.d.ts.map +1 -1
  159. package/dist/flow-editor/validate.js +2 -1
  160. package/dist/flow-editor/validate.js.map +1 -1
  161. package/dist/markdown.d.ts +5 -0
  162. package/dist/markdown.d.ts.map +1 -1
  163. package/dist/markdown.js +48 -1
  164. package/dist/markdown.js.map +1 -1
  165. package/dist/orchestrator.d.ts +16 -5
  166. package/dist/orchestrator.d.ts.map +1 -1
  167. package/dist/orchestrator.js +106 -25
  168. package/dist/orchestrator.js.map +1 -1
  169. package/dist/preflight.d.ts +11 -0
  170. package/dist/preflight.d.ts.map +1 -1
  171. package/dist/preflight.js +49 -16
  172. package/dist/preflight.js.map +1 -1
  173. package/dist/preview-panel.d.ts +30 -5
  174. package/dist/preview-panel.d.ts.map +1 -1
  175. package/dist/preview-panel.js +332 -15
  176. package/dist/preview-panel.js.map +1 -1
  177. package/dist/providers/base-completion.d.ts +5 -1
  178. package/dist/providers/base-completion.d.ts.map +1 -1
  179. package/dist/providers/base-completion.js +65 -5
  180. package/dist/providers/base-completion.js.map +1 -1
  181. package/dist/providers/claude/completion-plan-mode.d.ts +1 -1
  182. package/dist/providers/claude/completion-plan-mode.d.ts.map +1 -1
  183. package/dist/providers/claude/completion-plan-mode.js +2 -2
  184. package/dist/providers/claude/completion-plan-mode.js.map +1 -1
  185. package/dist/providers/claude/completion.d.ts +1 -1
  186. package/dist/providers/claude/completion.d.ts.map +1 -1
  187. package/dist/providers/claude/completion.js +2 -2
  188. package/dist/providers/claude/completion.js.map +1 -1
  189. package/dist/providers/claude/strategy.d.ts +2 -4
  190. package/dist/providers/claude/strategy.d.ts.map +1 -1
  191. package/dist/providers/claude/strategy.js +6 -2
  192. package/dist/providers/claude/strategy.js.map +1 -1
  193. package/dist/providers/codex/completion.d.ts +1 -1
  194. package/dist/providers/codex/completion.d.ts.map +1 -1
  195. package/dist/providers/codex/completion.js +2 -2
  196. package/dist/providers/codex/completion.js.map +1 -1
  197. package/dist/providers/codex/strategy.d.ts +2 -4
  198. package/dist/providers/codex/strategy.d.ts.map +1 -1
  199. package/dist/providers/codex/strategy.js +11 -6
  200. package/dist/providers/codex/strategy.js.map +1 -1
  201. package/dist/providers/copilot/completion.d.ts +1 -1
  202. package/dist/providers/copilot/completion.d.ts.map +1 -1
  203. package/dist/providers/copilot/completion.js +2 -2
  204. package/dist/providers/copilot/completion.js.map +1 -1
  205. package/dist/providers/copilot/strategy.d.ts +2 -3
  206. package/dist/providers/copilot/strategy.d.ts.map +1 -1
  207. package/dist/providers/copilot/strategy.js +13 -6
  208. package/dist/providers/copilot/strategy.js.map +1 -1
  209. package/dist/providers/option-catalog.d.ts +8 -0
  210. package/dist/providers/option-catalog.d.ts.map +1 -0
  211. package/dist/providers/option-catalog.js +33 -0
  212. package/dist/providers/option-catalog.js.map +1 -0
  213. package/dist/providers/types.d.ts +8 -3
  214. package/dist/providers/types.d.ts.map +1 -1
  215. package/dist/providers/types.js.map +1 -1
  216. package/dist/providers/version.d.ts.map +1 -1
  217. package/dist/providers/version.js +6 -2
  218. package/dist/providers/version.js.map +1 -1
  219. package/dist/pty/exit.js +1 -1
  220. package/dist/pty/exit.js.map +1 -1
  221. package/dist/pty/spawn.d.ts +1 -0
  222. package/dist/pty/spawn.d.ts.map +1 -1
  223. package/dist/pty/spawn.js +13 -9
  224. package/dist/pty/spawn.js.map +1 -1
  225. package/dist/pty/types.d.ts +5 -1
  226. package/dist/pty/types.d.ts.map +1 -1
  227. package/dist/resume-tui.d.ts +6 -0
  228. package/dist/resume-tui.d.ts.map +1 -1
  229. package/dist/resume-tui.js +27 -12
  230. package/dist/resume-tui.js.map +1 -1
  231. package/dist/session/manifest.d.ts +12 -5
  232. package/dist/session/manifest.d.ts.map +1 -1
  233. package/dist/session/resume.d.ts.map +1 -1
  234. package/dist/session/resume.js +4 -2
  235. package/dist/session/resume.js.map +1 -1
  236. package/dist/startup-tui.d.ts +19 -5
  237. package/dist/startup-tui.d.ts.map +1 -1
  238. package/dist/startup-tui.js +134 -46
  239. package/dist/startup-tui.js.map +1 -1
  240. package/dist/terminal/win32-key-translator.d.ts.map +1 -1
  241. package/dist/terminal/win32-key-translator.js +5 -2
  242. package/dist/terminal/win32-key-translator.js.map +1 -1
  243. package/dist/terminal-input.d.ts.map +1 -1
  244. package/dist/terminal-input.js +9 -6
  245. package/dist/terminal-input.js.map +1 -1
  246. package/dist/user/curate-handler.d.ts.map +1 -1
  247. package/dist/user/curate-handler.js +25 -32
  248. package/dist/user/curate-handler.js.map +1 -1
  249. package/dist/user/curate-prompt.d.ts +1 -1
  250. package/dist/user/dsl.d.ts +1 -0
  251. package/dist/user/dsl.d.ts.map +1 -1
  252. package/dist/user/dsl.js +1 -0
  253. package/dist/user/dsl.js.map +1 -1
  254. package/dist/user/handler.d.ts.map +1 -1
  255. package/dist/user/handler.js +2 -1
  256. package/dist/user/handler.js.map +1 -1
  257. package/dist/user/host-curate-prompt.d.ts.map +1 -1
  258. package/dist/user/host-curate-prompt.js +105 -15
  259. package/dist/user/host-curate-prompt.js.map +1 -1
  260. package/dist/user/host-prompt.d.ts.map +1 -1
  261. package/dist/user/host-prompt.js +13 -5
  262. package/dist/user/host-prompt.js.map +1 -1
  263. package/dist/user/index.d.ts +1 -2
  264. package/dist/user/index.d.ts.map +1 -1
  265. package/dist/user/index.js +1 -2
  266. package/dist/user/index.js.map +1 -1
  267. package/dist/user/plan-pane.d.ts +32 -1
  268. package/dist/user/plan-pane.d.ts.map +1 -1
  269. package/dist/user/plan-pane.js +158 -5
  270. package/dist/user/plan-pane.js.map +1 -1
  271. package/dist/user/prompt.d.ts +9 -6
  272. package/dist/user/prompt.d.ts.map +1 -1
  273. package/dist/user/prompt.js +3 -8
  274. package/dist/user/prompt.js.map +1 -1
  275. package/package.json +1 -1
  276. package/schemas/review-verdict.json +13 -0
  277. package/dist/flow/built-in/why-so-serious-factory.d.ts +0 -16
  278. package/dist/flow/built-in/why-so-serious-factory.d.ts.map +0 -1
  279. package/dist/flow/built-in/why-so-serious-factory.js +0 -187
  280. package/dist/flow/built-in/why-so-serious-factory.js.map +0 -1
  281. package/dist/flow/built-in/why-so-serious.d.ts +0 -17
  282. package/dist/flow/built-in/why-so-serious.d.ts.map +0 -1
  283. package/dist/flow/built-in/why-so-serious.js +0 -23
  284. package/dist/flow/built-in/why-so-serious.js.map +0 -1
  285. package/dist/user/auto-curate-prompt.d.ts +0 -17
  286. package/dist/user/auto-curate-prompt.d.ts.map +0 -1
  287. package/dist/user/auto-curate-prompt.js +0 -22
  288. package/dist/user/auto-curate-prompt.js.map +0 -1
@@ -1,187 +0,0 @@
1
- // @ts-check
2
- // IMPORTANT: This file is snapshotted verbatim into session directories
3
- // (`flow-source.mjs`) and re-imported on resume. It must therefore be valid
4
- // plain ESM JavaScript — no TypeScript-only syntax (no `import type`, no
5
- // type annotations on parameters/returns). Use JSDoc comments for type info
6
- // so the TypeScript compiler still checks the file but the source content
7
- // is loadable by Node/vite as ESM.
8
- import { fileURLToPath } from "node:url";
9
- /** @typedef {import("../../dsl.js").FlowDSL} FlowDSL */
10
- /** @typedef {import("../types.js").FlowTemplate} FlowTemplate */
11
- /** @typedef {import("../types.js").FlowDefinition} FlowDefinition */
12
- /** @typedef {import("../types.js").FlowParam} FlowParam */
13
- /** @typedef {import("../types.js").FlowParamValues} FlowParamValues */
14
- /** @typedef {import("../types.js").StepContext} StepContext */
15
- /** @typedef {import("../../agents/reviewers/types.js").ReviewVerdict} ReviewVerdict */
16
- const implVerdict = "impl-verdict";
17
- const revisePlan = "revise-plan";
18
- /** @type {readonly FlowParam[]} */
19
- export const whySoSeriousParams = [
20
- { key: "planner", type: "driver", role: "planner", label: "Planner", default: "claude",
21
- description: "Which CLI plans" },
22
- { key: "reviewer", type: "driver", role: "reviewer", label: "Reviewer", default: "codex",
23
- description: "Which CLI reviews" },
24
- { key: "implementor", type: "driver", role: "implementor", label: "Implementor", default: "claude",
25
- description: "Which CLI implements" },
26
- { key: "simplifier", type: "driver", role: "simplifier", label: "Simplifier", default: "claude",
27
- description: "Which CLI simplifies" },
28
- { key: "maxIterations", type: "number", label: "Max Planning Iterations",
29
- default: 5, min: 1, max: 50 },
30
- { key: "maxImplIterations", type: "number", label: "Max Impl Iterations",
31
- default: 5, min: 1, max: 50 },
32
- { key: "auto", type: "boolean", label: "Auto Mode", default: false,
33
- description: "Skip user review phases" },
34
- { key: "planOnly", type: "boolean", label: "Plan Only", default: false,
35
- description: "Skip implementation phase" },
36
- { key: "curateAllVerdicts", type: "boolean", label: "Curate All Verdicts", default: true,
37
- description: "Curate every plan-review verdict (off = first verdict only)" },
38
- ];
39
- /**
40
- * @param {FlowDSL} dsl
41
- * @returns {FlowTemplate}
42
- */
43
- export default function createWhySoSeriousFlow(dsl) {
44
- const { defineFlow, loop, artifactData, ctxField, cyclePhase, plan, review, implement, simplify, user, TASK } = dsl;
45
- /**
46
- * @param {StepContext} ctx
47
- * @returns {boolean}
48
- */
49
- const implIssuesExceedThreshold = (ctx) => {
50
- const data = /** @type {{ issues?: unknown[] } | undefined} */ (ctx.artifacts.getData(implVerdict));
51
- const exceeds = data != null && Array.isArray(data.issues) && data.issues.length > 2;
52
- if (!exceeds) {
53
- ctx.artifacts.set(revisePlan, {});
54
- }
55
- return exceeds;
56
- };
57
- return {
58
- name: "why-so-serious",
59
- params: whySoSeriousParams,
60
- /**
61
- * @param {FlowParamValues} values
62
- * @returns {FlowDefinition}
63
- */
64
- build(values) {
65
- const maxPlan = /** @type {number} */ (values.maxIterations);
66
- const maxImpl = /** @type {number} */ (values.maxImplIterations);
67
- const isPlanOnly = /** @type {boolean} */ (values.planOnly);
68
- const isAuto = /** @type {boolean} */ (values.auto);
69
- const curateAll = /** @type {boolean} */ (values.curateAllVerdicts);
70
- const plannerDriver = /** @type {string} */ (values.planner);
71
- const reviewerDriver = /** @type {string} */ (values.reviewer);
72
- const implementorDriver = /** @type {string} */ (values.implementor);
73
- const simplifierDriver = /** @type {string} */ (values.simplifier);
74
- const steps = [];
75
- if (isAuto) {
76
- steps.push(loop(maxPlan, artifactData("verdict", "approved"), [
77
- plan({
78
- driver: plannerDriver,
79
- phaseLabel: cyclePhase("📝 Planning...", "✏️ Revising Plan..."),
80
- reads: { task: TASK, verdict: "verdict" },
81
- writes: { plan: "plan" },
82
- }),
83
- review({
84
- driver: reviewerDriver,
85
- variant: "plan",
86
- reads: { task: TASK, plan: "plan" },
87
- writes: { verdict: "verdict" },
88
- }),
89
- ]));
90
- }
91
- else {
92
- steps.push(loop(Infinity, () => false, [
93
- plan({
94
- driver: plannerDriver,
95
- phaseLabel: cyclePhase("📝 Planning...", "✏️ Addressing Feedback..."),
96
- reads: { task: TASK, verdict: "verdict" },
97
- writes: { plan: "plan" },
98
- }),
99
- user("user:feedback", { writes: { verdict: "verdict" } }),
100
- loop(maxPlan, artifactData("verdict", "approved"), [
101
- plan({
102
- driver: plannerDriver,
103
- when: ctxField("iteration", "!=", 1),
104
- phaseLabel: "✏️ Revising Plan...",
105
- reads: { task: TASK, verdict: "verdict" },
106
- writes: { plan: "plan" },
107
- }),
108
- review({
109
- driver: reviewerDriver,
110
- variant: "plan",
111
- sessionShareKey: "reviewer-plan",
112
- reads: { task: TASK, plan: "plan" },
113
- writes: { verdict: "verdict" },
114
- sessionBoundary: ctxField("iteration", "==", 1),
115
- }),
116
- loop(Infinity, (ctx) => {
117
- const v = /** @type {ReviewVerdict | undefined} */ (ctx.artifacts.getData("verdict"));
118
- if (!v || v.approved || (v.issues?.length ?? 0) === 0)
119
- return true;
120
- const decisions = /** @type {{decisions: Array<{decision: string}>} | undefined} */ (ctx.artifacts.getData("user-decisions"))?.decisions;
121
- return !decisions?.some((d) => d.decision === "revise");
122
- }, [
123
- review({
124
- driver: reviewerDriver,
125
- variant: "plan",
126
- sessionShareKey: "reviewer-plan",
127
- when: ctxField("iteration", "!=", 1),
128
- reads: { task: TASK, plan: "plan", userDecisions: "user-decisions" },
129
- writes: { verdict: "verdict" },
130
- }),
131
- user("user:curate-verdict", {
132
- variant: "curate-verdict",
133
- when: (ctx) => {
134
- const v = /** @type {ReviewVerdict | undefined} */ (ctx.artifacts.getData("verdict"));
135
- return !!v && (v.issues?.length ?? 0) > 0;
136
- },
137
- reads: { verdict: "verdict", plan: "plan" },
138
- writes: { verdict: "verdict", userDecisions: "user-decisions" },
139
- feedbackToTask: false,
140
- }),
141
- ], {
142
- when: curateAll ? () => true : ctxField("iteration", "==", 1),
143
- untilLabel: "no revise comments",
144
- }),
145
- ]),
146
- user("user:approval", {
147
- breakOnAccept: true,
148
- writes: { verdict: "verdict" },
149
- }),
150
- ]));
151
- }
152
- if (!isPlanOnly) {
153
- steps.push(loop(maxImpl, artifactData("impl-verdict", "approved"), [
154
- plan({
155
- when: implIssuesExceedThreshold,
156
- whenLabel: "impl-verdict.issues>2",
157
- driver: plannerDriver,
158
- reads: { task: "plan", verdict: implVerdict },
159
- writes: { plan: revisePlan },
160
- phaseLabel: "📋 Planning Fixes...",
161
- }),
162
- implement({
163
- driver: implementorDriver,
164
- reads: { plan: "plan", revisePlan, verdict: implVerdict },
165
- phaseLabel: cyclePhase("🔨 Implementing...", "✏️ Revising Impl..."),
166
- }),
167
- review({
168
- driver: reviewerDriver,
169
- variant: "impl",
170
- reads: { task: TASK, plan: "plan" },
171
- writes: { verdict: implVerdict },
172
- }),
173
- ]), simplify({
174
- driver: simplifierDriver,
175
- writes: { plan: "simplify-plan" },
176
- }), implement({
177
- driver: implementorDriver,
178
- reads: { plan: "simplify-plan" },
179
- phaseLabel: "🔨 Applying Simplifications...",
180
- }));
181
- }
182
- return defineFlow("why-so-serious", steps);
183
- },
184
- };
185
- }
186
- export const SOURCE_FILE = fileURLToPath(import.meta.url);
187
- //# sourceMappingURL=why-so-serious-factory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"why-so-serious-factory.js","sourceRoot":"","sources":["../../../src/flow/built-in/why-so-serious-factory.js"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- import createWhySoSeriousFlow, { SOURCE_FILE } from "./why-so-serious-factory.js";
2
- import type { FlowDefinition, FlowTemplate } from "../types.js";
3
- export { SOURCE_FILE };
4
- export default createWhySoSeriousFlow;
5
- export declare const whySoSeriousFlowTemplate: FlowTemplate;
6
- /**
7
- * Convenience wrapper used by tests to build a why-so-serious flow definition.
8
- */
9
- export declare function buildWhySoSeriousFlow(opts?: {
10
- maxPlanIterations?: number;
11
- maxImplIterations?: number;
12
- includeImplementation?: boolean;
13
- auto?: boolean;
14
- simplifier?: string;
15
- curateAllVerdicts?: boolean;
16
- }): FlowDefinition;
17
- //# sourceMappingURL=why-so-serious.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"why-so-serious.d.ts","sourceRoot":"","sources":["../../../src/flow/built-in/why-so-serious.ts"],"names":[],"mappings":"AACA,OAAO,sBAAsB,EAAE,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,eAAe,sBAAsB,CAAC;AAGtC,eAAO,MAAM,wBAAwB,EAAE,YAA8C,CAAC;AAEtF;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE;IAC3C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,GAAG,cAAc,CAYjB"}
@@ -1,23 +0,0 @@
1
- import { flowDSL } from "../../dsl.js";
2
- import createWhySoSeriousFlow, { SOURCE_FILE } from "./why-so-serious-factory.js";
3
- export { SOURCE_FILE };
4
- export default createWhySoSeriousFlow;
5
- // Static convenience (tests, backward compat)
6
- export const whySoSeriousFlowTemplate = createWhySoSeriousFlow(flowDSL);
7
- /**
8
- * Convenience wrapper used by tests to build a why-so-serious flow definition.
9
- */
10
- export function buildWhySoSeriousFlow(opts) {
11
- return whySoSeriousFlowTemplate.build({
12
- maxIterations: opts?.maxPlanIterations ?? 5,
13
- maxImplIterations: opts?.maxImplIterations ?? (opts?.maxPlanIterations ?? 5),
14
- planOnly: !(opts?.includeImplementation ?? false),
15
- auto: opts?.auto ?? false,
16
- curateAllVerdicts: opts?.curateAllVerdicts ?? true,
17
- planner: "claude",
18
- reviewer: "codex",
19
- implementor: "claude",
20
- simplifier: opts?.simplifier ?? "claude",
21
- });
22
- }
23
- //# sourceMappingURL=why-so-serious.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"why-so-serious.js","sourceRoot":"","sources":["../../../src/flow/built-in/why-so-serious.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,sBAAsB,EAAE,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAGlF,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,eAAe,sBAAsB,CAAC;AAEtC,8CAA8C;AAC9C,MAAM,CAAC,MAAM,wBAAwB,GAAiB,sBAAsB,CAAC,OAAO,CAAC,CAAC;AAEtF;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAOrC;IACC,OAAO,wBAAwB,CAAC,KAAK,CAAC;QACpC,aAAa,EAAE,IAAI,EAAE,iBAAiB,IAAI,CAAC;QAC3C,iBAAiB,EAAE,IAAI,EAAE,iBAAiB,IAAI,CAAC,IAAI,EAAE,iBAAiB,IAAI,CAAC,CAAC;QAC5E,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,qBAAqB,IAAI,KAAK,CAAC;QACjD,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK;QACzB,iBAAiB,EAAE,IAAI,EAAE,iBAAiB,IAAI,IAAI;QAClD,OAAO,EAAE,QAAQ;QACjB,QAAQ,EAAE,OAAO;QACjB,WAAW,EAAE,QAAQ;QACrB,UAAU,EAAE,IAAI,EAAE,UAAU,IAAI,QAAQ;KACzC,CAAC,CAAC;AACL,CAAC"}
@@ -1,17 +0,0 @@
1
- import type { CuratePromptHandler, CurateResult } from "./curate-prompt.js";
2
- import type { ReviewVerdict } from "../agents/reviewers/types.js";
3
- /**
4
- * Non-interactive curate handler: keep every reviewer issue unchanged.
5
- *
6
- * Returns one `{ index, decision: "keep" }` record per input issue, in input
7
- * order. `buildCuratedVerdict` iterates these decisions to construct the
8
- * curated verdict — an empty array would silently drop every issue, so this
9
- * handler must always emit a record per issue.
10
- *
11
- * Used in `auto=true` flow runs and matches the no-TTY guard inside
12
- * `CurateVerdictRoleHandler` exactly.
13
- */
14
- export declare class AutoCuratePrompt implements CuratePromptHandler {
15
- prompt(verdict: ReviewVerdict): Promise<CurateResult>;
16
- }
17
- //# sourceMappingURL=auto-curate-prompt.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auto-curate-prompt.d.ts","sourceRoot":"","sources":["../../src/user/auto-curate-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,YAAY,EACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAElE;;;;;;;;;;GAUG;AACH,qBAAa,gBAAiB,YAAW,mBAAmB;IACpD,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;CAQ5D"}
@@ -1,22 +0,0 @@
1
- /**
2
- * Non-interactive curate handler: keep every reviewer issue unchanged.
3
- *
4
- * Returns one `{ index, decision: "keep" }` record per input issue, in input
5
- * order. `buildCuratedVerdict` iterates these decisions to construct the
6
- * curated verdict — an empty array would silently drop every issue, so this
7
- * handler must always emit a record per issue.
8
- *
9
- * Used in `auto=true` flow runs and matches the no-TTY guard inside
10
- * `CurateVerdictRoleHandler` exactly.
11
- */
12
- export class AutoCuratePrompt {
13
- async prompt(verdict) {
14
- return {
15
- decisions: verdict.issues.map((_, index) => ({
16
- index,
17
- decision: "keep",
18
- })),
19
- };
20
- }
21
- }
22
- //# sourceMappingURL=auto-curate-prompt.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auto-curate-prompt.js","sourceRoot":"","sources":["../../src/user/auto-curate-prompt.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;GAUG;AACH,MAAM,OAAO,gBAAgB;IAC3B,KAAK,CAAC,MAAM,CAAC,OAAsB;QACjC,OAAO;YACL,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC3C,KAAK;gBACL,QAAQ,EAAE,MAAe;aAC1B,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC;CACF"}