@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
@@ -4,10 +4,10 @@
4
4
  */
5
5
  import fs from "node:fs";
6
6
  import path from "node:path";
7
- import { readBlock, writeBlock } from "@davidorex/pi-project/src/block-api.js";
8
- import { rollbackBlockFiles, snapshotBlockFiles, validateChangedBlocks, } from "@davidorex/pi-project/src/block-validation.js";
9
- import { PROJECT_DIR } from "@davidorex/pi-project/src/project-dir.js";
10
- import { validate, validateFromFile } from "@davidorex/pi-project/src/schema-validator.js";
7
+ import { readBlock, writeBlock } from "@davidorex/pi-project/block-api";
8
+ import { rollbackBlockFiles, snapshotBlockFiles, validateChangedBlocks } from "@davidorex/pi-project/block-validation";
9
+ import { PROJECT_DIR } from "@davidorex/pi-project/project-dir";
10
+ import { validate, validateFromFile } from "@davidorex/pi-project/schema-validator";
11
11
  import { truncateTail } from "@mariozechner/pi-coding-agent";
12
12
  import { resolveCompletion } from "./completion.js";
13
13
  import { buildPlanFromDeps, extractDependencies } from "./dag.js";
@@ -15,6 +15,7 @@ import { dispatch } from "./dispatch.js";
15
15
  import { evaluateCondition, resolveExpressions } from "./expression.js";
16
16
  import { buildResult, formatResult, generateRunId, getWorkflowDir, initRunDir, writeMetrics, writeState, } from "./state.js";
17
17
  import { executeAgentStep } from "./step-agent.js";
18
+ import { executeBlock } from "./step-block.js";
18
19
  import { executeCommand } from "./step-command.js";
19
20
  import { executeForEach } from "./step-foreach.js";
20
21
  import { executeGate } from "./step-gate.js";
@@ -48,7 +49,7 @@ function clearPauseRequest() {
48
49
  * DAG-inferred parallelism for steps that DO have explicit dependencies
49
50
  * (e.g., diamond patterns where two steps both depend on an earlier step).
50
51
  */
51
- function buildConservativePlan(spec) {
52
+ export function buildConservativePlan(spec) {
52
53
  const deps = extractDependencies(spec);
53
54
  const allSteps = Object.keys(spec.steps);
54
55
  // Add implicit declaration-order dependency for steps with no explicit deps.
@@ -68,7 +69,7 @@ function buildConservativePlan(spec) {
68
69
  * Command, gate, and transform are deterministic and not retryable.
69
70
  */
70
71
  function isRetryableStepType(stepSpec) {
71
- if (stepSpec.command || stepSpec.gate || stepSpec.transform || stepSpec.monitor)
72
+ if (stepSpec.command || stepSpec.gate || stepSpec.transform || stepSpec.monitor || stepSpec.block)
72
73
  return false;
73
74
  return true;
74
75
  }
@@ -395,6 +396,31 @@ async function executeStepByType(stepName, stepSpec, state, scope, options, retr
395
396
  }
396
397
  return true;
397
398
  }
399
+ // ── Block step ──
400
+ if (stepSpec.block) {
401
+ const resolvedBlockOutputPath = stepSpec.output?.path
402
+ ? String(resolveExpressions(stepSpec.output.path, scope))
403
+ : undefined;
404
+ const blockOp = "read" in stepSpec.block
405
+ ? "read"
406
+ : "readDir" in stepSpec.block
407
+ ? "readDir"
408
+ : "write" in stepSpec.block
409
+ ? "write"
410
+ : "append" in stepSpec.block
411
+ ? "append"
412
+ : "update";
413
+ widgetState.activities.set(stepName, [{ tool: "block", preview: blockOp, timestamp: Date.now() }]);
414
+ if (ctx.hasUI)
415
+ ctx.ui.setWidget(WIDGET_ID, createProgressWidget(widgetState));
416
+ const blockResult = executeBlock(stepSpec.block, stepName, scope, ctx.cwd, runDir, resolvedBlockOutputPath);
417
+ persistStep(state, stepName, blockResult, runDir, widgetState, ctx);
418
+ if (blockResult.status === "failed") {
419
+ state.status = "failed";
420
+ return false;
421
+ }
422
+ return true;
423
+ }
398
424
  // ── Transform step ──
399
425
  if (stepSpec.transform) {
400
426
  const resolvedTransformOutputPath = stepSpec.output?.path
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-executor.js","sourceRoot":"","sources":["../src/workflow-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-executor.js","sourceRoot":"","sources":["../src/workflow-executor.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { EXPRESSION_ROOTS, FILTER_NAMES } from "./expression.js";
2
2
  import type { AgentSpec, WorkflowSpec } from "./types.js";
3
3
  import type { StepTypeDescriptor } from "./workflow-spec.js";
4
4
  import { STEP_TYPES } from "./workflow-spec.js";
5
+ export { extractTemplateVariables, validateTemplateAlignment } from "./template-validation.js";
5
6
  export type { StepTypeDescriptor };
6
7
  export { EXPRESSION_ROOTS, FILTER_NAMES, STEP_TYPES };
7
8
  export declare function filterNames(): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-sdk.d.ts","sourceRoot":"","sources":["../src/workflow-sdk.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGjE,OAAO,KAAK,EAAE,SAAS,EAAY,YAAY,EAAE,MAAM,YAAY,CAAC;AAEpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,YAAY,EAAE,kBAAkB,EAAE,CAAC;AAEnC,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;AAMtD,wBAAgB,WAAW,IAAI,MAAM,EAAE,CAEtC;AACD,wBAAgB,SAAS,IAAI,kBAAkB,EAAE,CAEhD;AACD,wBAAgB,eAAe,IAAI,SAAS,MAAM,EAAE,CAEnD;AAID,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CAyB7E;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAmB7E;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAc5E;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,EAAE,CAE9D;AAID,MAAM,WAAW,aAAa;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,aAAa,EAAE,CAgCtE;AAqED,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,CAE1D;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,CAI9D;AAUD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,CAIhE;AAUD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,CAS/D;AAYD,MAAM,WAAW,eAAe;IAC/B,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,CA8IlF"}
1
+ {"version":3,"file":"workflow-sdk.d.ts","sourceRoot":"","sources":["../src/workflow-sdk.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAIjE,OAAO,KAAK,EAAE,SAAS,EAAY,YAAY,EAAE,MAAM,YAAY,CAAC;AAEpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAC/F,YAAY,EAAE,kBAAkB,EAAE,CAAC;AAEnC,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;AAMtD,wBAAgB,WAAW,IAAI,MAAM,EAAE,CAEtC;AACD,wBAAgB,SAAS,IAAI,kBAAkB,EAAE,CAEhD;AACD,wBAAgB,eAAe,IAAI,SAAS,MAAM,EAAE,CAEnD;AAID,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CAyB7E;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAmB7E;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAc5E;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,EAAE,CAE9D;AAID,MAAM,WAAW,aAAa;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,aAAa,EAAE,CAgCtE;AAqED,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,CAE1D;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,CAI9D;AAUD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,CAIhE;AAUD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,CAS/D;AAeD,MAAM,WAAW,eAAe;IAC/B,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAuJlF"}
@@ -11,8 +11,10 @@ import { AgentNotFoundError, createAgentLoader, parseAgentYaml } from "./agent-s
11
11
  import { EXPRESSION_ROOTS, FILTER_NAMES } from "./expression.js";
12
12
  import { availableMonitors } from "./step-monitor.js";
13
13
  import { resolveSchemaPath } from "./step-shared.js";
14
+ import { validateTemplateAlignment } from "./template-validation.js";
14
15
  import { discoverWorkflows } from "./workflow-discovery.js";
15
16
  import { STEP_TYPES } from "./workflow-spec.js";
17
+ export { extractTemplateVariables, validateTemplateAlignment } from "./template-validation.js";
16
18
  // Re-export for single-import convenience
17
19
  export { EXPRESSION_ROOTS, FILTER_NAMES, STEP_TYPES };
18
20
  const EXPR_PATTERN = /\$\{\{\s*(.*?)\s*\}\}/g;
@@ -241,6 +243,9 @@ function collectSchemaRefs(steps, schemas) {
241
243
  for (const step of Object.values(steps)) {
242
244
  if (step.output?.schema)
243
245
  schemas.push(step.output.schema);
246
+ if (step.block && "write" in step.block) {
247
+ schemas.push(`block:${step.block.write.name}`);
248
+ }
244
249
  if (step.loop?.steps)
245
250
  collectSchemaRefs(step.loop.steps, schemas);
246
251
  if (step.parallel)
@@ -360,6 +365,11 @@ export function validateWorkflow(spec, cwd) {
360
365
  }
361
366
  }
362
367
  }
368
+ // 4b. Runtime plan note — validation checks are based on pure dependency analysis
369
+ // (buildExecutionPlan / extractDependencies). The runtime executor uses
370
+ // buildConservativePlan which adds implicit sequential ordering for steps
371
+ // without explicit ${{ steps.X }} dependencies. The runtime execution plan
372
+ // may therefore differ from what pure DAG analysis would suggest.
363
373
  // 5. Context step references — do all names in context[] point to declared steps?
364
374
  for (const [stepName, step] of Object.entries(spec.steps)) {
365
375
  if (!step.context)
@@ -385,6 +395,8 @@ export function validateWorkflow(spec, cwd) {
385
395
  });
386
396
  }
387
397
  }
398
+ // 8. Template-input alignment — do template field references match source schemas?
399
+ issues.push(...validateTemplateAlignment(spec, cwd));
388
400
  return {
389
401
  valid: issues.filter((i) => i.severity === "error").length === 0,
390
402
  issues,
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-sdk.js","sourceRoot":"","sources":["../src/workflow-sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-sdk.js","sourceRoot":"","sources":["../src/workflow-sdk.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-spec.d.ts","sourceRoot":"","sources":["../src/workflow-spec.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAQX,YAAY,EACZ,MAAM,YAAY,CAAC;AAEpB,6EAA6E;AAC7E,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;CACxB;AAED,4FAA4F;AAC5F,eAAO,MAAM,UAAU,EAAE,kBAAkB,EAS1C,CAAC;AAEF,oEAAoE;AACpE,eAAO,MAAM,gBAAgB,aAA0C,CAAC;AAExE;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEZ,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAM5C;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,CA6I7G"}
1
+ {"version":3,"file":"workflow-spec.d.ts","sourceRoot":"","sources":["../src/workflow-spec.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAQX,YAAY,EACZ,MAAM,YAAY,CAAC;AAEpB,6EAA6E;AAC7E,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;CACxB;AAED,4FAA4F;AAC5F,eAAO,MAAM,UAAU,EAAE,kBAAkB,EAU1C,CAAC;AAEF,oEAAoE;AACpE,eAAO,MAAM,gBAAgB,aAA0C,CAAC;AAExE;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEZ,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAM5C;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,CA6I7G"}
@@ -9,6 +9,7 @@ export const STEP_TYPES = [
9
9
  { name: "pause", field: "pause", retryable: false, supportsInput: false, supportsOutput: false },
10
10
  { name: "command", field: "command", retryable: false, supportsInput: true, supportsOutput: true },
11
11
  { name: "monitor", field: "monitor", retryable: false, supportsInput: true, supportsOutput: true },
12
+ { name: "block", field: "block", retryable: false, supportsInput: true, supportsOutput: true },
12
13
  ];
13
14
  /** Set of valid step type field names — derived from STEP_TYPES. */
14
15
  export const STEP_TYPE_FIELDS = new Set(STEP_TYPES.map((t) => t.field));
@@ -166,6 +167,41 @@ export function parseWorkflowSpec(content, filePath, source) {
166
167
  }
167
168
  return spec;
168
169
  }
170
+ /**
171
+ * Parse the output spec from a raw step. Shared across agent, command, monitor, and block branches.
172
+ * @param rawStep - the raw step object
173
+ * @param stepName - step name for error messages
174
+ * @param filePath - file path for error messages
175
+ * @param opts.allowSchema - if true, the `schema` field is permitted (agent steps only)
176
+ */
177
+ function parseOutputSpec(rawStep, stepName, filePath, opts) {
178
+ if (!("output" in rawStep) || rawStep.output === undefined)
179
+ return undefined;
180
+ if (typeof rawStep.output !== "object" || rawStep.output === null || Array.isArray(rawStep.output)) {
181
+ throw new WorkflowSpecError(filePath, `step '${stepName}' output must be an object`);
182
+ }
183
+ const rawOutput = rawStep.output;
184
+ const output = {};
185
+ if ("format" in rawOutput) {
186
+ output.format = rawOutput.format;
187
+ }
188
+ if ("schema" in rawOutput) {
189
+ if (!opts?.allowSchema) {
190
+ throw new WorkflowSpecError(filePath, `step '${stepName}' output.schema is only valid on agent steps`);
191
+ }
192
+ if (typeof rawOutput.schema !== "string") {
193
+ throw new WorkflowSpecError(filePath, `step '${stepName}' output.schema must be a string`);
194
+ }
195
+ output.schema = rawOutput.schema;
196
+ }
197
+ if ("path" in rawOutput) {
198
+ if (typeof rawOutput.path !== "string") {
199
+ throw new WorkflowSpecError(filePath, `step '${stepName}' output.path must be a string`);
200
+ }
201
+ output.path = rawOutput.path;
202
+ }
203
+ return output;
204
+ }
169
205
  /**
170
206
  * Validate and parse a single step from raw YAML data.
171
207
  * Enforces that exactly one of agent, gate, transform, or loop is set.
@@ -199,6 +235,7 @@ function validateStep(stepValue, stepName, filePath) {
199
235
  const hasPause = presentTypes[0].field === "pause";
200
236
  const hasCommand = presentTypes[0].field === "command";
201
237
  const hasMonitor = presentTypes[0].field === "monitor";
238
+ const hasBlock = presentTypes[0].field === "block";
202
239
  const step = {};
203
240
  // Common optional fields
204
241
  if (rawStep.when !== undefined)
@@ -277,30 +314,106 @@ function validateStep(stepValue, stepName, filePath) {
277
314
  step.pause = rawStep.pause;
278
315
  return step;
279
316
  }
317
+ // Block step
318
+ if (hasBlock) {
319
+ if (typeof rawStep.block !== "object" || rawStep.block === null || Array.isArray(rawStep.block)) {
320
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block must be an object`);
321
+ }
322
+ const rawBlock = rawStep.block;
323
+ // Exactly one operation key
324
+ const ops = ["read", "readDir", "write", "append", "update"].filter((k) => k in rawBlock);
325
+ if (ops.length !== 1) {
326
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block must have exactly one of: read, readDir, write, append, update`);
327
+ }
328
+ // Validate each operation shape
329
+ if ("read" in rawBlock) {
330
+ const read = rawBlock.read;
331
+ if (typeof read !== "string" && !Array.isArray(read)) {
332
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.read must be a string or array of strings`);
333
+ }
334
+ if (Array.isArray(read) && !read.every((r) => typeof r === "string")) {
335
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.read array elements must be strings`);
336
+ }
337
+ if ("optional" in rawBlock && rawBlock.optional !== undefined) {
338
+ if (!Array.isArray(rawBlock.optional) || !rawBlock.optional.every((o) => typeof o === "string")) {
339
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.optional must be an array of strings`);
340
+ }
341
+ }
342
+ }
343
+ if ("readDir" in rawBlock) {
344
+ if (typeof rawBlock.readDir !== "string") {
345
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.readDir must be a string`);
346
+ }
347
+ }
348
+ if ("write" in rawBlock) {
349
+ if (typeof rawBlock.write !== "object" || rawBlock.write === null || Array.isArray(rawBlock.write)) {
350
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.write must be an object`);
351
+ }
352
+ const w = rawBlock.write;
353
+ if (typeof w.name !== "string") {
354
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.write.name must be a string`);
355
+ }
356
+ if (!("data" in w)) {
357
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.write must have a 'data' field`);
358
+ }
359
+ }
360
+ if ("append" in rawBlock) {
361
+ if (typeof rawBlock.append !== "object" || rawBlock.append === null || Array.isArray(rawBlock.append)) {
362
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.append must be an object`);
363
+ }
364
+ const a = rawBlock.append;
365
+ if (typeof a.name !== "string") {
366
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.append.name must be a string`);
367
+ }
368
+ if (typeof a.key !== "string") {
369
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.append.key must be a string`);
370
+ }
371
+ if (!("item" in a)) {
372
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.append must have an 'item' field`);
373
+ }
374
+ }
375
+ if ("update" in rawBlock) {
376
+ if (typeof rawBlock.update !== "object" || rawBlock.update === null || Array.isArray(rawBlock.update)) {
377
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.update must be an object`);
378
+ }
379
+ const u = rawBlock.update;
380
+ if (typeof u.name !== "string") {
381
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.update.name must be a string`);
382
+ }
383
+ if (typeof u.key !== "string") {
384
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.update.key must be a string`);
385
+ }
386
+ if (typeof u.match !== "object" || u.match === null || Array.isArray(u.match)) {
387
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.update.match must be an object`);
388
+ }
389
+ if (typeof u.set !== "object" || u.set === null || Array.isArray(u.set)) {
390
+ throw new WorkflowSpecError(filePath, `step '${stepName}' block.update.set must be an object`);
391
+ }
392
+ }
393
+ step.block = rawBlock;
394
+ // output spec (optional)
395
+ const blockOutput = parseOutputSpec(rawStep, stepName, filePath);
396
+ if (blockOutput)
397
+ step.output = blockOutput;
398
+ // input (optional, for expression resolution context)
399
+ if ("input" in rawStep && rawStep.input !== undefined) {
400
+ if (typeof rawStep.input !== "object" || rawStep.input === null || Array.isArray(rawStep.input)) {
401
+ throw new WorkflowSpecError(filePath, `step '${stepName}' input must be an object`);
402
+ }
403
+ step.input = rawStep.input;
404
+ }
405
+ return step;
406
+ }
280
407
  // Command step
281
408
  if (hasCommand) {
282
409
  if (typeof rawStep.command !== "string") {
283
410
  throw new WorkflowSpecError(filePath, `step '${stepName}' command must be a string`);
284
411
  }
285
412
  step.command = rawStep.command;
286
- // output spec (optional, same as agent)
287
- if ("output" in rawStep && rawStep.output !== undefined) {
288
- if (typeof rawStep.output !== "object" || rawStep.output === null || Array.isArray(rawStep.output)) {
289
- throw new WorkflowSpecError(filePath, `step '${stepName}' output must be an object`);
290
- }
291
- const rawOutput = rawStep.output;
292
- const output = {};
293
- if ("format" in rawOutput) {
294
- output.format = rawOutput.format;
295
- }
296
- if ("path" in rawOutput) {
297
- if (typeof rawOutput.path !== "string") {
298
- throw new WorkflowSpecError(filePath, `step '${stepName}' output.path must be a string`);
299
- }
300
- output.path = rawOutput.path;
301
- }
302
- step.output = output;
303
- }
413
+ // output spec (optional)
414
+ const commandOutput = parseOutputSpec(rawStep, stepName, filePath);
415
+ if (commandOutput)
416
+ step.output = commandOutput;
304
417
  // input (optional, for expression resolution context)
305
418
  if ("input" in rawStep && rawStep.input !== undefined) {
306
419
  if (typeof rawStep.input !== "object" || rawStep.input === null || Array.isArray(rawStep.input)) {
@@ -324,23 +437,9 @@ function validateStep(stepValue, stepName, filePath) {
324
437
  step.input = rawStep.input;
325
438
  }
326
439
  // output spec (optional)
327
- if ("output" in rawStep && rawStep.output !== undefined) {
328
- if (typeof rawStep.output !== "object" || rawStep.output === null || Array.isArray(rawStep.output)) {
329
- throw new WorkflowSpecError(filePath, `step '${stepName}' output must be an object`);
330
- }
331
- const rawOutput = rawStep.output;
332
- const output = {};
333
- if ("format" in rawOutput) {
334
- output.format = rawOutput.format;
335
- }
336
- if ("path" in rawOutput) {
337
- if (typeof rawOutput.path !== "string") {
338
- throw new WorkflowSpecError(filePath, `step '${stepName}' output.path must be a string`);
339
- }
340
- output.path = rawOutput.path;
341
- }
342
- step.output = output;
343
- }
440
+ const monitorOutput = parseOutputSpec(rawStep, stepName, filePath);
441
+ if (monitorOutput)
442
+ step.output = monitorOutput;
344
443
  return step;
345
444
  }
346
445
  // Agent step
@@ -375,30 +474,10 @@ function validateStep(stepValue, stepName, filePath) {
375
474
  }
376
475
  step.context = rawStep.context;
377
476
  }
378
- // output must be an object if present
379
- if ("output" in rawStep && rawStep.output !== undefined) {
380
- if (typeof rawStep.output !== "object" || rawStep.output === null || Array.isArray(rawStep.output)) {
381
- throw new WorkflowSpecError(filePath, `step '${stepName}' output must be an object`);
382
- }
383
- const rawOutput = rawStep.output;
384
- const output = {};
385
- if ("format" in rawOutput) {
386
- output.format = rawOutput.format;
387
- }
388
- if ("schema" in rawOutput) {
389
- if (typeof rawOutput.schema !== "string") {
390
- throw new WorkflowSpecError(filePath, `step '${stepName}' output.schema must be a string`);
391
- }
392
- output.schema = rawOutput.schema;
393
- }
394
- if ("path" in rawOutput) {
395
- if (typeof rawOutput.path !== "string") {
396
- throw new WorkflowSpecError(filePath, `step '${stepName}' output.path must be a string`);
397
- }
398
- output.path = rawOutput.path;
399
- }
400
- step.output = output;
401
- }
477
+ // output must be an object if present (agent steps allow schema field)
478
+ const agentOutput = parseOutputSpec(rawStep, stepName, filePath, { allowSchema: true });
479
+ if (agentOutput)
480
+ step.output = agentOutput;
402
481
  }
403
482
  // Gate step
404
483
  if (hasGate) {
@@ -457,7 +536,15 @@ function validateStep(stepValue, stepName, filePath) {
457
536
  // Recursively validate sub-steps
458
537
  const loopSteps = {};
459
538
  for (const [subName, subValue] of Object.entries(rawLoopSteps)) {
460
- loopSteps[subName] = validateStep(subValue, `${stepName}.loop.${subName}`, filePath);
539
+ const subStep = validateStep(subValue, `${stepName}.loop.${subName}`, filePath);
540
+ // Reject nested loop and parallel inside loops
541
+ if (subStep.loop) {
542
+ throw new WorkflowSpecError(filePath, `step '${subName}' in loop '${stepName}': nested loop steps are not supported inside loops`);
543
+ }
544
+ if (subStep.parallel) {
545
+ throw new WorkflowSpecError(filePath, `step '${subName}' in loop '${stepName}': nested parallel steps are not supported inside loops`);
546
+ }
547
+ loopSteps[subName] = subStep;
461
548
  }
462
549
  const loop = {
463
550
  maxAttempts: hasMaxAttemptsNum ? maxAttemptsRaw : 0,