Skip to content

Generated from corpus/lines/product/workflows/delivery.yml. Do not edit by hand — run python scripts/generate-corpus-docs.py.

corpus/lines/product/workflows/delivery.yml

Title / id: workflow.product

id: workflow.product
status: active
line: product
stages:
- id: discover
  entry:
  - Portfolio activated a Product workstream with a defined opportunity.
  bindings:
  - inv.product.profile
  roles:
  - role.product-manager
  artifacts:
  - product.discovery-brief
  evidence:
  - Problem
  - audience
  - desired outcome
  - known constraints
  exit:
  - A testable opportunity statement and evidence plan exist.
  next_stages:
  - explore
  validation:
    mode: judgment
    checks:
    - problem and audience are specific
    - uncertainties are named
    on_gap: gap.stage.product.discover
  recovery:
    action: remain_at_stage
    preserve:
    - artifacts
    - evidence
    - decision_log
- id: explore
  entry:
  - Discovery questions and evidence depth are selected.
  bindings:
  - inv.product.evidence-depth
  roles:
  - role.product-manager
  - role.market-researcher
  artifacts:
  - product.evidence-set
  evidence:
  - Research sources
  - interviews or observations
  - competing explanations
  exit:
  - Evidence is sufficient for the selected scorecard or gaps are explicit.
  next_stages:
  - score
  validation:
    mode: judgment
    checks:
    - evidence matches selected depth
    - contrary evidence is retained
    on_gap: gap.stage.product.explore
  recovery:
    action: return_to_previous_stage
    preserve:
    - artifacts
    - evidence
    - decision_log
- id: score
  entry:
  - Required scorecard inputs and attributable evidence are present.
  bindings:
  - inv.product.scorecard
  roles:
  - role.product-manager
  - role.scorecard-analyst
  artifacts:
  - product.scorecard-result
  evidence:
  - Dimension scores
  - calculations
  - penalties
  - source references
  exit:
  - Score, band, and prescribed disposition are reproducible.
  next_stages:
  - build-gate
  validation:
    mode: deterministic
    checks:
    - all required dimensions scored
    - arithmetic and thresholds reproduce
    on_gap: gap.stage.product.score
  recovery:
    action: return_to_previous_stage
    preserve:
    - artifacts
    - evidence
    - decision_log
- id: build-gate
  entry:
  - A passing score or explicit President exception exists.
  bindings:
  - inv.product.build-vs-buy
  roles:
  - role.product-manager
  artifacts:
  - product.build-gate-decision
  evidence:
  - Score result
  - build-vs-buy choice
  - WIP availability
  - approval
  exit:
  - Build, buy, defer, or reject is authorized without requiring a GitHub issue.
  next_stages:
  - ship-signal
  validation:
    mode: deterministic
    checks:
    - score or exception valid
    - WIP slot available
    - decision owner recorded
    on_gap: gap.stage.product.build-gate
  recovery:
    action: remain_at_stage
    preserve:
    - artifacts
    - evidence
    - decision_log
- id: ship-signal
  entry:
  - A deliverable or market test produced observable results.
  bindings: []
  roles:
  - role.product-manager
  artifacts:
  - product.ship-signal
  evidence:
  - Usage
  - revenue
  - buyer feedback
  - or validated learning
  exit:
  - Signal is interpreted and the next Product decision is recorded.
  next_stages:
  - archive
  validation:
    mode: judgment
    checks:
    - signal source is attributable
    - interpretation distinguishes fact from judgment
    on_gap: gap.stage.product.ship-signal
  recovery:
    action: return_to_previous_stage
    preserve:
    - artifacts
    - evidence
    - decision_log
- id: archive
  entry:
  - The Product workstream has a terminal disposition.
  bindings:
  - inv.product.graduation
  roles:
  - role.product-manager
  artifacts:
  - product.archive-record
  evidence:
  - Disposition
  - rationale
  - retained evidence
  - successor links
  exit:
  - The workstream is closed while Initiative history remains recoverable.
  next_stages: []
  validation:
    mode: deterministic
    checks:
    - terminal decision exists
    - retained evidence and successor links resolve
    on_gap: gap.stage.product.archive
  recovery:
    action: remain_at_stage
    preserve:
    - artifacts
    - evidence
    - decision_log
gates:
- no_software_implement_before_score_for_commercial: true
- shared_build_cap_with_software: 2
- bootstrap_to_build:
    score_gt: 60
    first_revenue_months_lt: 6
    buyers_willing_to_pay_min: 2
notes:
- Product state is a Notion workstream linked by initiative_id; Discover follows Portfolio classification.
- A build-gate pass may activate a concurrent Software workstream; a GitHub issue is optional repository
  evidence.
- Executing agents write approved state transitions; Conductor remains supervisory for routine state.
schema_version: corpus-unit.v2
kind: workflow
version: 1.0.0
layer: organization
depends_on:
- id: core.stage-contract
  version: ^1.0.0
- id: org.roles
  version: ^1.0.0