Blocky Pipeline โ€” Which approach?

How should users compose custom stage sequences?

A

YAML Block Config

Define a custom stage sequence directly in config.yaml as an ordered list of named blocks. No UI โ€” pure text.

pipeline:
  blocks:
    - pm
    - pm_reviewer
    - architect
    - qa_planner
    - qa_write
    - engineer
    - reviewer
    - deploy_tester

Pros

  • No extra tooling
  • Git-versionable
  • Works today

Cons

  • No visual feedback
  • Easy to typo stage names
B

Web Drag-and-Drop UI

A browser-based block editor: drag stage blocks into a sequence, toggle options per block, export to config.yaml.

๐Ÿงฉ Pipeline Builder
๐Ÿ“‹ PM
โ†’
๐Ÿ—๏ธ Architect
โ†’
๐Ÿงช QA Write
โ†’
+ Add block

Pros

  • Visual, intuitive
  • Validates connections

Cons

  • Extra tool to build & maintain
  • Separate from main run flow
C

YAML blocks + named presets

Extend YAML config: define reusable named presets (like tdd, standard) AND allow a custom ordered list in the same file. Best of both worlds.

pipeline:
  mode: custom   # or: standard, tdd

  # Only used when mode: custom
  custom_stages:
    - pm
    - architect
    - qa_planner
    - qa_write      # TDD style
    - engineer
    - reviewer
    - deploy_tester

Pros

  • Presets for common flows
  • Full custom when needed
  • Backwards compatible

Cons

  • Slightly more config surface