{
  "id": "ship-feature",
  "name": "Ship feature (lane pipeline)",
  "nodes": [
    {
      "id": "intake",
      "label": "intake",
      "icon": "📝",
      "gate": false,
      "aliases": [
        "assigned",
        "claimed",
        "start",
        "bootstrapping"
      ],
      "detect": [
        {
          "tool": "Skill",
          "match": "brainstorming"
        },
        {
          "tool": "Bash",
          "match": "\\bccam\\b[^;&|]*\\bfeature activate\\b"
        }
      ]
    },
    {
      "id": "plan",
      "label": "plan",
      "icon": "🧭",
      "gate": false,
      "aliases": [
        "planning",
        "brainstorm",
        "design"
      ],
      "detect": [
        {
          "tool": "Skill",
          "match": "writing-plans"
        },
        {
          "tool": "Write",
          "match": "docs/superpowers/specs/lane-.*\\.md"
        }
      ]
    },
    {
      "id": "implementing",
      "label": "implement (TDD)",
      "icon": "🛠",
      "gate": false,
      "aliases": [
        "implement",
        "coding",
        "build"
      ],
      "detect": [
        {
          "tool": "Skill",
          "match": "test-driven-development|executing-plans|subagent-driven-development|systematic-debugging"
        },
        {
          "tool": "Edit",
          "match": "^(?!.*docs/superpowers/specs/)"
        },
        {
          "tool": "Write",
          "match": "^(?!.*(?:^|/)docs/)"
        }
      ]
    },
    {
      "id": "gates",
      "label": "CI gates + preflight",
      "icon": "🧪",
      "gate": true,
      "aliases": [
        "pre-push-gate",
        "tests",
        "migration-collision",
        "sync-conflict"
      ],
      "detect": [
        {
          "tool": "Bash",
          "match": "\\bccam\\b[^;&|]*(\\bhook ci-gate\\b|\\bsync-base --check\\b)"
        }
      ]
    },
    {
      "id": "e2e-feature",
      "label": "e2e on feature branch",
      "icon": "🧪",
      "gate": false,
      "aliases": [
        "e2e",
        "e2e-scoped",
        "booting",
        "live"
      ],
      "detect": [
        {
          "tool": "Bash",
          "match": "\\bccam\\b[^;&|]*(\\bup --qc\\b|\\bhook e2e\\b)"
        }
      ]
    },
    {
      "id": "e2e-feature-passed",
      "label": "e2e passed",
      "icon": "🧪",
      "gate": true,
      "aliases": [
        "e2e-passed"
      ]
    },
    {
      "id": "review",
      "label": "code review",
      "icon": "👀",
      "gate": true,
      "aliases": [
        "reviewing",
        "code-review",
        "self-review"
      ],
      "detect": [
        {
          "tool": "Skill",
          "match": "code-review|requesting-code-review|receiving-code-review"
        }
      ]
    },
    {
      "id": "qc-plan",
      "label": "QC plan",
      "icon": "📋",
      "gate": false,
      "aliases": []
    },
    {
      "id": "qc",
      "label": "browser QC",
      "icon": "🔍",
      "gate": true,
      "aliases": [],
      "detect": [
        {
          "tool": "Agent",
          "match": "qc-local"
        },
        {
          "tool": "Bash",
          "match": "\\bccam\\b[^;&|]*\\blanes proof-link\\b"
        }
      ]
    },
    {
      "id": "gate",
      "label": "senior GO/NO-GO gate",
      "icon": "🚦",
      "gate": true,
      "aliases": [
        "sr-gate",
        "verify",
        "verification",
        "gate-blocked"
      ],
      "detect": [
        {
          "tool": "Agent",
          "match": "senior-gate-reviewer"
        },
        {
          "tool": "Skill",
          "match": "verification-before-completion"
        }
      ]
    },
    {
      "id": "publishing",
      "label": "publish PR",
      "icon": "🔀",
      "gate": false,
      "aliases": [
        "push"
      ],
      "detect": [
        {
          "tool": "Skill",
          "match": "finishing-a-development-branch"
        },
        {
          "tool": "Bash",
          "match": "\\bgit\\b(?:\\s+-c\\s+[\\w.-]+=(?:'[^']*'|\\\"[^\\\"]*\\\"|\\S+)|\\s+-{1,2}[\\w.-]+(?:=(?:'[^']*'|\\\"[^\\\"]*\\\"|\\S+))?)*\\s+push\\b"
        }
      ]
    },
    {
      "id": "pr-open",
      "label": "PR open",
      "icon": "🔀",
      "gate": false,
      "aliases": [
        "ship",
        "pr",
        "push-conflict",
        "push-revalidate"
      ],
      "detect": [
        {
          "tool": "Bash",
          "match": "\\bgh\\b[^;&|]*\\bpr create\\b"
        }
      ]
    },
    {
      "id": "reported",
      "label": "reported",
      "icon": "📣",
      "gate": false,
      "aliases": []
    },
    {
      "id": "watching-pr",
      "label": "watching PR",
      "icon": "👁",
      "gate": false,
      "aliases": [
        "pr-comment-fix"
      ],
      "detect": [
        {
          "tool": "Bash",
          "match": "\\bgh\\b[^;&|]*\\bpr view\\b"
        }
      ]
    },
    {
      "id": "merged",
      "label": "merged — post-verify",
      "icon": "🔗",
      "gate": false,
      "aliases": []
    },
    {
      "id": "done",
      "label": "done",
      "icon": "✅",
      "gate": false,
      "aliases": [
        "complete",
        "completed"
      ]
    }
  ]
}
