pipeline:
  name: a2d-default
  description: "A2D default pipeline — 9-step Architecture-to-Delivery flow with governance"
  governance_root: ".harness"
  context: CONTEXT.md
  defaults:
    prd: ".harness/version-intents/{REQ-ID}/step-1-PRD.md"
    features: "docs/features.md"
    nfr: "docs/nfr.md"
    constraints: "docs/constraints.md"
    pipeline_state: ".harness/.pipeline/state.json"
  dependencies:
    step-2-code-scan: ["step-1-req-clarify"]
    step-3-envelope: ["step-2-code-scan"]
    step-4-gate-derive: ["step-3-envelope"]
    step-5-slice: ["step-3-envelope"]
    step-6-implement: ["step-4-gate-derive", "step-5-slice"]
    step-7-reconcile: ["step-6-implement"]
    step-8-baseline: ["step-7-reconcile"]
    step-9-release: ["step-8-baseline"]
  stages:
    - name: step-1-req-clarify
      mode: direct
      skill: step-1-req-clarify
      outputs: ["step-1-raw-intent.yaml", "step-1-version-requirements.yaml"]
      checkpoint:
        type: human
        id: H0
        description: "Confirm clarified requirements"

    - name: step-2-code-scan
      mode: auto
      skill: step-2-code-scan
      outputs: ["step-2-code-scan-evidence.yaml"]

    - name: step-3-envelope
      mode: direct
      skill: step-3-envelope
      outputs: ["step-3-architecture-envelope.yaml", "step-3-review-packet.yaml"]
      checkpoint:
        type: human
        id: H1
        description: "Confirm development boundary"

    - name: step-4-gate-derive
      mode: auto
      skill: step-4-gate-derive
      outputs: ["step-4-gate-derivation.yaml"]

    - name: step-5-slice
      mode: direct
      skill: step-5-slice
      outputs: ["step-5-delivery-projection.yaml"]
      checkpoint:
        type: human
        id: H2
        description: "Review 4+1 architecture packet and delivery projection"

    - name: step-6-implement
      mode: team
      skill: step-6-implement
      outputs: ["step-6-implementation-evidence.yaml"]
      params:
        max_rejections: 3

    - name: step-7-reconcile
      mode: auto
      skill: step-7-reconcile
      outputs: ["step-7-post-projection-check.yaml"]
      checkpoint:
        type: human
        id: H3
        description: "Review reconciliation"

    - name: step-8-baseline
      mode: direct
      skill: step-8-baseline
      outputs: ["step-8-baseline-decision.yaml"]

    - name: step-9-release
      mode: auto
      skill: step-9-release
      outputs: ["step-9-release-notes.md"]
      optional: true
