Skip to content

Harvest: workflow engine — YAML DSL to auto-chain spec→plan→tasks→implement #70

Description

@jbaruch

Status: Next up (Tier 1)

Upstream spec-kit shipped a workflow engine in v0.7.0 (commit a00e6799, PR #2158) — a YAML DSL with 10 step types (command, shell, gate, prompt, switch, if_then, while, do_while, fan_out, fan_in), an expression engine ({{ inputs.x }}, {{ steps.foo.output.bar }}, {{ context.run_id }}), resumable state (PAUSED/FAILED/ABORTED), interactive approve/reject gates, and a bundled speckit workflow that chains the whole pipeline.

What we'd build

Let users run a single iikit workflow that auto-chains 00-constitution01-specify02-plan03-checklist04-testify05-tasks06-analyze07-implement, with gates pausing for human review and context.run_id joining IIKit features to telemetry/CI artifacts.

Why it matters

Composes very well with our existing .specify/context.json state. Today users invoke each phase manually — a workflow engine would let them say "run iikit" and get the whole BDD-verified pipeline auto-chained.

Evidence

  • Engine: src/specify_cli/workflows/{engine,catalog,expressions,steps/*}.py
  • Bundled workflow: workflows/speckit/workflow.yml
  • Run-id exposure: c6afe4cd
  • Loop bug fix: 616eba6a

Cost

Large — new iikit-core/workflows/ subsystem, YAML schema, engine, dispatcher per agent. ~2000 LOC plus tests.

Sequencing

Tier 1, next up alongside #(extension/hook system). Not for grabs — needs design work.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions