@davidorex/pi-workflows 0.6.1 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/README.md +1 -1
  2. package/agents/audit-finding-verifier.agent.yaml +40 -0
  3. package/agents/audit-results-router.agent.yaml +30 -0
  4. package/agents/gap-resolution-assessor.agent.yaml +40 -0
  5. package/dist/dag.d.ts +13 -2
  6. package/dist/dag.d.ts.map +1 -1
  7. package/dist/dag.js +43 -15
  8. package/dist/dag.js.map +1 -1
  9. package/dist/expression.d.ts.map +1 -1
  10. package/dist/expression.js +6 -0
  11. package/dist/expression.js.map +1 -1
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +10 -3
  14. package/dist/index.js.map +1 -1
  15. package/dist/state.d.ts.map +1 -1
  16. package/dist/state.js +14 -1
  17. package/dist/state.js.map +1 -1
  18. package/dist/step-agent.d.ts.map +1 -1
  19. package/dist/step-agent.js +7 -2
  20. package/dist/step-agent.js.map +1 -1
  21. package/dist/step-block.d.ts +18 -0
  22. package/dist/step-block.d.ts.map +1 -0
  23. package/dist/step-block.js +204 -0
  24. package/dist/step-block.js.map +1 -0
  25. package/dist/step-foreach.d.ts.map +1 -1
  26. package/dist/step-foreach.js +5 -0
  27. package/dist/step-foreach.js.map +1 -1
  28. package/dist/step-monitor.d.ts.map +1 -1
  29. package/dist/step-monitor.js +15 -4
  30. package/dist/step-monitor.js.map +1 -1
  31. package/dist/template-validation.d.ts +25 -0
  32. package/dist/template-validation.d.ts.map +1 -0
  33. package/dist/template-validation.js +341 -0
  34. package/dist/template-validation.js.map +1 -0
  35. package/dist/tui.d.ts.map +1 -1
  36. package/dist/tui.js +14 -0
  37. package/dist/tui.js.map +1 -1
  38. package/dist/types.d.ts +33 -0
  39. package/dist/types.d.ts.map +1 -1
  40. package/dist/workflow-discovery.js +2 -1
  41. package/dist/workflow-discovery.js.map +1 -1
  42. package/dist/workflow-executor.d.ts +12 -0
  43. package/dist/workflow-executor.d.ts.map +1 -1
  44. package/dist/workflow-executor.js +32 -6
  45. package/dist/workflow-executor.js.map +1 -1
  46. package/dist/workflow-sdk.d.ts +1 -0
  47. package/dist/workflow-sdk.d.ts.map +1 -1
  48. package/dist/workflow-sdk.js +12 -0
  49. package/dist/workflow-sdk.js.map +1 -1
  50. package/dist/workflow-spec.d.ts.map +1 -1
  51. package/dist/workflow-spec.js +147 -60
  52. package/dist/workflow-spec.js.map +1 -1
  53. package/package.json +7 -8
  54. package/schemas/audit-routing-manifest.schema.json +38 -0
  55. package/schemas/finding-verification.schema.json +34 -0
  56. package/schemas/resolution-assessment.schema.json +36 -0
  57. package/skills/pi-workflows/SKILL.md +1 -1
  58. package/skills/pi-workflows/references/bundled-resources.md +12 -3
  59. package/templates/audit-finding-verifier/task.md +59 -0
  60. package/templates/audit-results-router/task.md +37 -0
  61. package/templates/gap-resolution-assessor/task.md +48 -0
  62. package/templates/handoff-writer/task.md +16 -6
  63. package/templates/phase-author/task.md +8 -0
  64. package/workflows/create-handoff.workflow.yaml +56 -35
  65. package/workflows/create-phase.workflow.yaml +27 -32
  66. package/workflows/do-gap.workflow.yaml +47 -27
  67. package/workflows/fix-audit.workflow.yaml +89 -127
  68. package/workflows/gap-to-phase.workflow.yaml +47 -42
  69. package/workflows/plan-from-requirements.workflow.yaml +16 -27
@@ -0,0 +1,341 @@
1
+ /**
2
+ * Template-input alignment validation for workflow agent steps.
3
+ *
4
+ * Traces the full chain: workflow step → input expressions → source schemas → template field references.
5
+ * Catches field name mismatches, missing inputs, and forEach variable naming errors that cause
6
+ * Nunjucks to silently render empty strings.
7
+ */
8
+ import * as fs from "node:fs";
9
+ import * as path from "node:path";
10
+ import { createAgentLoader } from "./agent-spec.js";
11
+ import { resolveSchemaPath } from "./step-shared.js";
12
+ // Variables injected by the execution engine, not from workflow inputs
13
+ const INJECTED_VARIABLES = new Set(["output_schema", "loop"]);
14
+ /**
15
+ * Extract all Nunjucks variable references from a template string.
16
+ * Returns structured entries with full dotted paths and usage context.
17
+ */
18
+ export function extractTemplateVariables(content) {
19
+ const variables = [];
20
+ const seen = new Set();
21
+ // Track which lines are inside {% if var %} guards
22
+ const guardedRoots = new Set();
23
+ const ifStack = [];
24
+ let depth = 0;
25
+ const lines = content.split("\n");
26
+ for (const line of lines) {
27
+ // Track {% if var.field %} blocks
28
+ const ifMatch = line.match(/\{%[-\s]*if\s+([\w.]+)/);
29
+ if (ifMatch) {
30
+ depth++;
31
+ const root = ifMatch[1].split(".")[0];
32
+ ifStack.push({ root, depth });
33
+ guardedRoots.add(root);
34
+ }
35
+ const endifMatch = line.match(/\{%[-\s]*endif/);
36
+ if (endifMatch) {
37
+ while (ifStack.length > 0 && ifStack[ifStack.length - 1].depth === depth) {
38
+ const popped = ifStack.pop();
39
+ if (popped)
40
+ guardedRoots.delete(popped.root);
41
+ }
42
+ depth--;
43
+ }
44
+ // Extract {{ var.field }} output expressions
45
+ const outputPattern = /\{\{\s*([\w]+(?:\.[\w]+)*)\s*(?:\|[^}]*)?\}\}/g;
46
+ let match;
47
+ match = outputPattern.exec(line);
48
+ while (match !== null) {
49
+ const fullPath = match[1];
50
+ const root = fullPath.split(".")[0];
51
+ if (!INJECTED_VARIABLES.has(root) && fullPath.includes(".") && !seen.has(fullPath)) {
52
+ seen.add(fullPath);
53
+ variables.push({
54
+ root,
55
+ path: fullPath,
56
+ guarded: guardedRoots.has(root),
57
+ usage: "output",
58
+ });
59
+ }
60
+ match = outputPattern.exec(line);
61
+ }
62
+ // Extract {% for x in var.field %} loop sources
63
+ const forPattern = /\{%[-\s]*for\s+\w+\s+in\s+([\w]+(?:\.[\w]+)*)\s*%\}/g;
64
+ match = forPattern.exec(line);
65
+ while (match !== null) {
66
+ const fullPath = match[1];
67
+ const root = fullPath.split(".")[0];
68
+ if (!INJECTED_VARIABLES.has(root) && fullPath.includes(".") && !seen.has(fullPath)) {
69
+ seen.add(fullPath);
70
+ variables.push({
71
+ root,
72
+ path: fullPath,
73
+ guarded: guardedRoots.has(root),
74
+ usage: "loop",
75
+ });
76
+ }
77
+ match = forPattern.exec(line);
78
+ }
79
+ }
80
+ return variables;
81
+ }
82
+ /**
83
+ * Given a step's input expression and the workflow spec, trace to a source schema
84
+ * and return its field definitions. Returns null if unverifiable.
85
+ */
86
+ function traceInputSchema(inputExpr, stepSpec, spec, cwd) {
87
+ // Extract the expression content from ${{ ... }}
88
+ const exprMatch = inputExpr.match(/\$\{\{\s*(.+?)\s*\}\}/);
89
+ if (!exprMatch)
90
+ return null;
91
+ const expr = exprMatch[1];
92
+ // Case 1: forEach `as` variable — trace to the forEach source array's item schema
93
+ if (stepSpec.forEach && stepSpec.as && expr === stepSpec.as) {
94
+ return traceForEachItemSchema(stepSpec.forEach, spec, cwd);
95
+ }
96
+ // Case 2: ${{ steps.X.output }} or ${{ steps.X.output.field }}
97
+ const stepsMatch = expr.match(/^steps\.([\w-]+)\.output(?:\.([\w]+))?$/);
98
+ if (stepsMatch) {
99
+ const [, stepName, subField] = stepsMatch;
100
+ const sourceStep = spec.steps[stepName];
101
+ if (!sourceStep?.output?.schema)
102
+ return null;
103
+ return loadSchemaFields(sourceStep.output.schema, spec.filePath, cwd, subField);
104
+ }
105
+ return null;
106
+ }
107
+ /**
108
+ * Trace a forEach expression to the schema of each array item.
109
+ * E.g. ${{ steps.decompose.output.specs }} → decomposition-specs schema → specs.items.properties
110
+ */
111
+ function traceForEachItemSchema(forEachExpr, spec, cwd) {
112
+ const exprMatch = forEachExpr.match(/\$\{\{\s*(.+?)\s*\}\}/);
113
+ if (!exprMatch)
114
+ return null;
115
+ const expr = exprMatch[1];
116
+ // Match steps.X.output.arrayField
117
+ const match = expr.match(/^steps\.([\w-]+)\.output\.([\w]+)$/);
118
+ if (!match)
119
+ return null;
120
+ const [, stepName, arrayField] = match;
121
+ const sourceStep = spec.steps[stepName];
122
+ if (!sourceStep?.output?.schema)
123
+ return null;
124
+ const schemaPath = resolveSchemaPath(sourceStep.output.schema, spec.filePath, cwd);
125
+ try {
126
+ const schema = JSON.parse(fs.readFileSync(schemaPath, "utf-8"));
127
+ const arrayProp = schema.properties?.[arrayField];
128
+ if (!arrayProp)
129
+ return null;
130
+ // Navigate to items schema
131
+ const itemSchema = arrayProp.items;
132
+ if (!itemSchema?.properties)
133
+ return null;
134
+ const properties = {};
135
+ for (const [key, value] of Object.entries(itemSchema.properties)) {
136
+ properties[key] = { type: value.type };
137
+ }
138
+ return {
139
+ properties,
140
+ required: itemSchema.required ?? [],
141
+ };
142
+ }
143
+ catch {
144
+ return null;
145
+ }
146
+ }
147
+ /**
148
+ * Load a schema file and return its field definitions.
149
+ * If subField is provided, navigates into that property's sub-schema.
150
+ */
151
+ function loadSchemaFields(schemaRef, specFilePath, cwd, subField) {
152
+ const schemaPath = resolveSchemaPath(schemaRef, specFilePath, cwd);
153
+ try {
154
+ const schema = JSON.parse(fs.readFileSync(schemaPath, "utf-8"));
155
+ let target = schema;
156
+ if (subField) {
157
+ target = schema.properties?.[subField];
158
+ if (!target)
159
+ return null;
160
+ }
161
+ if (!target.properties)
162
+ return null;
163
+ const properties = {};
164
+ for (const [key, value] of Object.entries(target.properties)) {
165
+ properties[key] = { type: value.type };
166
+ }
167
+ return {
168
+ properties,
169
+ required: target.required ?? [],
170
+ };
171
+ }
172
+ catch {
173
+ return null;
174
+ }
175
+ }
176
+ /**
177
+ * Find the closest matching field name from a schema for a mismatched template reference.
178
+ */
179
+ function suggestClosest(field, schemaFields) {
180
+ // Simple heuristic: check if one contains the other or shares a stem
181
+ for (const sf of schemaFields) {
182
+ if (sf.includes(field) || field.includes(sf))
183
+ return sf;
184
+ }
185
+ // Check common renames: underscore/camelCase, pluralization
186
+ const normalized = field.toLowerCase().replace(/_/g, "");
187
+ for (const sf of schemaFields) {
188
+ const sfNorm = sf.toLowerCase().replace(/_/g, "");
189
+ if (sfNorm === normalized)
190
+ return sf;
191
+ // Check if one is a prefix of the other
192
+ if (sfNorm.startsWith(normalized) || normalized.startsWith(sfNorm))
193
+ return sf;
194
+ }
195
+ return undefined;
196
+ }
197
+ /**
198
+ * Walk all agent steps in a workflow spec, including nested loop/parallel/forEach steps.
199
+ * Yields [stepName, stepSpec, parentPrefix] tuples.
200
+ */
201
+ function* walkAgentSteps(steps, prefix = "") {
202
+ for (const [name, step] of Object.entries(steps)) {
203
+ const fullName = prefix ? `${prefix}.${name}` : name;
204
+ if (step.agent) {
205
+ yield [fullName, step, fullName];
206
+ }
207
+ if (step.loop?.steps) {
208
+ yield* walkAgentSteps(step.loop.steps, `${fullName}.loop`);
209
+ }
210
+ if (step.parallel) {
211
+ yield* walkAgentSteps(step.parallel, `${fullName}.parallel`);
212
+ }
213
+ }
214
+ }
215
+ /**
216
+ * Validate template-input alignment for all agent steps in a workflow.
217
+ * Returns validation issues for field mismatches, missing inputs, and naming errors.
218
+ */
219
+ export function validateTemplateAlignment(spec, cwd, builtinDir) {
220
+ const issues = [];
221
+ let loadAgent;
222
+ try {
223
+ loadAgent = createAgentLoader(cwd, builtinDir);
224
+ }
225
+ catch {
226
+ return issues; // can't load agents — agent resolution check already handles this
227
+ }
228
+ // Template search mirrors createTemplateEnv() — project, user, builtin
229
+ const builtinTemplateDir = builtinDir
230
+ ? path.resolve(builtinDir, "..", "templates")
231
+ : path.resolve(import.meta.dirname, "..", "templates");
232
+ const templateSearchPaths = [
233
+ path.join(cwd, ".pi", "templates"),
234
+ path.join(process.env.HOME ?? "", ".pi", "agent", "templates"),
235
+ builtinTemplateDir,
236
+ ];
237
+ for (const [stepName, stepSpec] of walkAgentSteps(spec.steps)) {
238
+ if (!stepSpec.agent)
239
+ continue;
240
+ // Load agent spec
241
+ let agentSpec;
242
+ try {
243
+ agentSpec = loadAgent(stepSpec.agent);
244
+ }
245
+ catch {
246
+ continue; // agent resolution check handles this
247
+ }
248
+ if (!agentSpec.taskTemplate)
249
+ continue;
250
+ // Resolve and read template file
251
+ let templateContent = null;
252
+ for (const searchPath of templateSearchPaths) {
253
+ const fullPath = path.join(searchPath, agentSpec.taskTemplate);
254
+ try {
255
+ templateContent = fs.readFileSync(fullPath, "utf-8");
256
+ break;
257
+ }
258
+ catch {
259
+ // try next path
260
+ }
261
+ }
262
+ if (!templateContent)
263
+ continue;
264
+ const templateVars = extractTemplateVariables(templateContent);
265
+ if (templateVars.length === 0)
266
+ continue;
267
+ const inputKeys = stepSpec.input ? new Set(Object.keys(stepSpec.input)) : new Set();
268
+ // Check 1: forEach `as` variable matches template root variables
269
+ if (stepSpec.forEach && stepSpec.as) {
270
+ const forEachRoots = new Set(templateVars.map((v) => v.root));
271
+ // The `as` name should appear as a root in the template, OR a root that IS in the input
272
+ // The common bug: template uses `spec.*` but forEach says `as: plan`
273
+ if (!forEachRoots.has(stepSpec.as) && !inputKeys.has(stepSpec.as)) {
274
+ // forEach variable is never referenced — find what the template uses instead
275
+ const nonInputRoots = [...forEachRoots].filter((r) => !inputKeys.has(r) && !INJECTED_VARIABLES.has(r));
276
+ if (nonInputRoots.length > 0) {
277
+ issues.push({
278
+ severity: "error",
279
+ message: `Template '${agentSpec.taskTemplate}' uses '${nonInputRoots[0]}.*' but forEach binds as '${stepSpec.as}'. Template variables will be undefined.`,
280
+ field: `steps.${stepName}.as`,
281
+ });
282
+ }
283
+ }
284
+ }
285
+ // Check 2: Root variables exist in step inputs (or are injected)
286
+ const uniqueRoots = new Set(templateVars.map((v) => v.root));
287
+ for (const root of uniqueRoots) {
288
+ if (INJECTED_VARIABLES.has(root))
289
+ continue;
290
+ if (inputKeys.has(root))
291
+ continue;
292
+ // forEach `as` variable counts as an input
293
+ if (stepSpec.forEach && stepSpec.as === root)
294
+ continue;
295
+ // Find if any template var with this root is guarded
296
+ const allGuarded = templateVars.filter((v) => v.root === root).every((v) => v.guarded);
297
+ issues.push({
298
+ severity: allGuarded ? "warning" : "error",
299
+ message: `Template '${agentSpec.taskTemplate}' references '${root}' but step '${stepName}' does not declare it in input.${allGuarded ? " (guarded with conditional)" : ""}`,
300
+ field: `steps.${stepName}.input`,
301
+ });
302
+ }
303
+ // Check 3: Field-level alignment against source schemas
304
+ for (const tv of templateVars) {
305
+ if (INJECTED_VARIABLES.has(tv.root))
306
+ continue;
307
+ const fieldParts = tv.path.split(".");
308
+ if (fieldParts.length < 2)
309
+ continue;
310
+ const field = fieldParts[1]; // first-level field access on the root variable
311
+ // Find the input expression for this root
312
+ const inputExpr = stepSpec.input?.[tv.root];
313
+ // Also check if this is the forEach `as` variable
314
+ const isForEachVar = stepSpec.forEach && stepSpec.as === tv.root;
315
+ let exprToTrace;
316
+ if (isForEachVar) {
317
+ exprToTrace = `\${{ ${stepSpec.as} }}`;
318
+ }
319
+ else if (typeof inputExpr === "string") {
320
+ exprToTrace = inputExpr;
321
+ }
322
+ if (!exprToTrace)
323
+ continue;
324
+ const schemaFields = traceInputSchema(exprToTrace, stepSpec, spec, cwd);
325
+ if (!schemaFields)
326
+ continue; // unverifiable
327
+ if (!(field in schemaFields.properties)) {
328
+ const closest = suggestClosest(field, Object.keys(schemaFields.properties));
329
+ const suggestion = closest ? ` Did you mean '${closest}'?` : "";
330
+ const available = Object.keys(schemaFields.properties).join(", ");
331
+ issues.push({
332
+ severity: tv.guarded ? "warning" : "error",
333
+ message: `Template '${agentSpec.taskTemplate}' references '${tv.path}' but schema has no field '${field}'.${suggestion} Available: [${available}]`,
334
+ field: `steps.${stepName}.input.${tv.root}`,
335
+ });
336
+ }
337
+ }
338
+ }
339
+ return issues;
340
+ }
341
+ //# sourceMappingURL=template-validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template-validation.js","sourceRoot":"","sources":["../src/template-validation.ts"],"names":[],"mappings":"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"}
package/dist/tui.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../src/tui.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,KAAK,EAAc,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,cAAc,EAAc,YAAY,EAAE,MAAM,YAAY,CAAC;AAE3E,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IACjC,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IACnC,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,cAAc,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,YAAY,EAAE,UAAU,CAAC,CAAC;IACnE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IACxC,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAChD,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CACvC;AAeD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CACnC,WAAW,EAAE,mBAAmB,GAC9B,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,KAAK,SAAS,GAAG;IAAE,OAAO,CAAC,IAAI,IAAI,CAAA;CAAE,CAqK9D"}
1
+ {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../src/tui.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,KAAK,EAAc,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,cAAc,EAAc,YAAY,EAAE,MAAM,YAAY,CAAC;AAE3E,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IACjC,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IACnC,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,cAAc,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,YAAY,EAAE,UAAU,CAAC,CAAC;IACnE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IACxC,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAChD,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CACvC;AAuBD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CACnC,WAAW,EAAE,mBAAmB,GAC9B,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,KAAK,SAAS,GAAG;IAAE,OAAO,CAAC,IAAI,IAAI,CAAA;CAAE,CA8K9D"}
package/dist/tui.js CHANGED
@@ -11,6 +11,13 @@ function stepColor(spec, stepName) {
11
11
  return color;
12
12
  return "accent";
13
13
  }
14
+ /**
15
+ * Track the dispose function from the most recent widget so that
16
+ * creating a new widget clears the prior interval. This prevents
17
+ * leaked setInterval timers when the executor replaces widgets
18
+ * without the framework calling dispose on the previous one.
19
+ */
20
+ let _previousDispose;
14
21
  /**
15
22
  * Create a widget factory for ctx.ui.setWidget().
16
23
  * Returns a function that pi calls to get the component.
@@ -26,6 +33,11 @@ function stepColor(spec, stepName) {
26
33
  * ─────────────────────────────────────────────
27
34
  */
28
35
  export function createProgressWidget(widgetState) {
36
+ // Dispose the previous widget's interval before creating a new one
37
+ if (_previousDispose) {
38
+ _previousDispose();
39
+ _previousDispose = undefined;
40
+ }
29
41
  return (tui, theme) => {
30
42
  const PULSE_INTERVAL_MS = 800;
31
43
  let pulseOn = true;
@@ -33,6 +45,8 @@ export function createProgressWidget(widgetState) {
33
45
  pulseOn = !pulseOn;
34
46
  tui.requestRender();
35
47
  }, PULSE_INTERVAL_MS);
48
+ // Track this widget's dispose for cleanup on replacement
49
+ _previousDispose = () => clearInterval(interval);
36
50
  return {
37
51
  render(width) {
38
52
  const lines = [];
package/dist/tui.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tui.js","sourceRoot":"","sources":["../src/tui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tui.js","sourceRoot":"","sources":["../src/tui.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -39,9 +39,11 @@ export interface StepSpec {
39
39
  pause?: string | boolean;
40
40
  monitor?: string;
41
41
  command?: string;
42
+ block?: BlockSpec;
42
43
  forEach?: string;
43
44
  as?: string;
44
45
  color?: string;
46
+ /** @deprecated Phase 6 — nested workflow invocation. Not yet implemented. Parsed but rejected at validation time. */
45
47
  workflow?: string;
46
48
  }
47
49
  export interface LoopSpec {
@@ -63,6 +65,36 @@ export interface TransformSpec {
63
65
  */
64
66
  mapping: Record<string, unknown>;
65
67
  }
68
+ export interface BlockReadSpec {
69
+ read: string | string[];
70
+ optional?: string[];
71
+ }
72
+ export interface BlockReadDirSpec {
73
+ readDir: string;
74
+ }
75
+ export interface BlockWriteSpec {
76
+ write: {
77
+ name: string;
78
+ data: unknown;
79
+ path?: string;
80
+ };
81
+ }
82
+ export interface BlockAppendSpec {
83
+ append: {
84
+ name: string;
85
+ key: string;
86
+ item: unknown;
87
+ };
88
+ }
89
+ export interface BlockUpdateSpec {
90
+ update: {
91
+ name: string;
92
+ key: string;
93
+ match: Record<string, unknown>;
94
+ set: Record<string, unknown>;
95
+ };
96
+ }
97
+ export type BlockSpec = BlockReadSpec | BlockReadDirSpec | BlockWriteSpec | BlockAppendSpec | BlockUpdateSpec;
66
98
  export interface StepOutputSpec {
67
99
  format?: "json" | "text";
68
100
  schema?: string;
@@ -140,6 +172,7 @@ export interface WorkflowResult {
140
172
  totalDurationMs: number;
141
173
  runDir: string;
142
174
  artifacts?: Record<string, string>;
175
+ warnings?: string[];
143
176
  }
144
177
  export interface CompletionSpec {
145
178
  message?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -61,7 +61,8 @@ function scanDirectory(dirPath, source) {
61
61
  try {
62
62
  entries = fs.readdirSync(dirPath);
63
63
  }
64
- catch {
64
+ catch (err) {
65
+ console.error(`[workflows] failed to scan directory ${dirPath}: ${err instanceof Error ? err.message : err}`);
65
66
  return [];
66
67
  }
67
68
  const specs = [];
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-discovery.js","sourceRoot":"","sources":["../src/workflow-discovery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-discovery.js","sourceRoot":"","sources":["../src/workflow-discovery.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { ExecutionPlan } from "./dag.js";
1
2
  import { dispatch } from "./dispatch.js";
2
3
  import { SIGKILL_GRACE_MS } from "./step-shared.js";
3
4
  import type { AgentSpec, ExecutionState, WorkflowContext, WorkflowPI, WorkflowResult, WorkflowSpec } from "./types.js";
@@ -28,6 +29,17 @@ export interface ExecuteOptions {
28
29
  state: ExecutionState;
29
30
  };
30
31
  }
32
+ /**
33
+ * Build a conservative execution plan that preserves declaration-order
34
+ * sequencing for steps without explicit `${{ steps.X }}` dependencies.
35
+ *
36
+ * Steps with no explicit dependencies implicitly depend on the previous
37
+ * step in declaration order. This ensures backward compatibility with
38
+ * workflows written for sequential execution while still allowing
39
+ * DAG-inferred parallelism for steps that DO have explicit dependencies
40
+ * (e.g., diamond patterns where two steps both depend on an earlier step).
41
+ */
42
+ export declare function buildConservativePlan(spec: WorkflowSpec): ExecutionPlan;
31
43
  /** Retry context passed to step executors on retry attempts. */
32
44
  export interface RetryContext {
33
45
  attempt: number;
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-executor.d.ts","sourceRoot":"","sources":["../src/workflow-executor.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAmBzC,OAAO,EAAkC,gBAAgB,EAAwB,MAAM,kBAAkB,CAAC;AAK1G,OAAO,KAAK,EACX,SAAS,EACT,cAAc,EAGd,eAAe,EACf,UAAU,EACV,cAAc,EACd,YAAY,EACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAK5B,iFAAiF;AACjF,wBAAgB,YAAY,IAAI,IAAI,CAEnC;AAOD,MAAM,WAAW,cAAc;IAC9B,gDAAgD;IAChD,GAAG,EAAE,eAAe,CAAC;IACrB,yCAAyC;IACzC,EAAE,EAAE,UAAU,CAAC;IACf,8DAA8D;IAC9D,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;OAIG;IACH,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC;IACvC,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,QAAQ,CAAC;IAC7B,0FAA0F;IAC1F,WAAW,CAAC,EAAE,OAAO,eAAe,EAAE,WAAW,CAAC;IAClD,+DAA+D;IAC/D,MAAM,CAAC,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,cAAc,CAAC;KACtB,CAAC;CACF;AAkTD,gEAAgE;AAChE,MAAM,WAAW,YAAY;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAgPD;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CACpC,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,cAAc,GACrB,OAAO,CAAC,cAAc,CAAC,CAiRzB"}
1
+ {"version":3,"file":"workflow-executor.d.ts","sourceRoot":"","sources":["../src/workflow-executor.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAoBzC,OAAO,EAAkC,gBAAgB,EAAwB,MAAM,kBAAkB,CAAC;AAK1G,OAAO,KAAK,EACX,SAAS,EACT,cAAc,EAGd,eAAe,EACf,UAAU,EACV,cAAc,EACd,YAAY,EACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAK5B,iFAAiF;AACjF,wBAAgB,YAAY,IAAI,IAAI,CAEnC;AAOD,MAAM,WAAW,cAAc;IAC9B,gDAAgD;IAChD,GAAG,EAAE,eAAe,CAAC;IACrB,yCAAyC;IACzC,EAAE,EAAE,UAAU,CAAC;IACf,8DAA8D;IAC9D,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;OAIG;IACH,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC;IACvC,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,QAAQ,CAAC;IAC7B,0FAA0F;IAC1F,WAAW,CAAC,EAAE,OAAO,eAAe,EAAE,WAAW,CAAC;IAClD,+DAA+D;IAC/D,MAAM,CAAC,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,cAAc,CAAC;KACtB,CAAC;CACF;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,YAAY,GAAG,aAAa,CAevE;AAuRD,gEAAgE;AAChE,MAAM,WAAW,YAAY;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AA2QD;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CACpC,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,cAAc,GACrB,OAAO,CAAC,cAAc,CAAC,CAiRzB"}