# Canonical manifest template for /refactor command.
# Source of truth for manifest schema — do not duplicate elsewhere.
# Placeholders: {name}, {description}, {date}
# Written to: .forge/work/refactor/{name}/manifest.yaml

schema_version: "6"
name: {name}
type: refactor
description: "{description}"
status: in-progress  # in-progress | paused | completed | escalated
created: "{date}"
command: refactor
coverage-baseline: null  # recorded in Step 0
escalated_from: null
successor_path: null

# Refactors skip the prototype-driven phases by default — they operate on an
# existing codified system. The plan covers discover/plan/build/quality steps.
# Allowed values: active | active-light | active-commit-only | skipped |
# as-discovered | complete-inline.
phase_plan:
  discover-codebase: active
  brainstorm: active
  task-decompose: active
  production-build: active
  test-execution: active
  assessment: active
  deliver: active
  gotchas: as-discovered

# Gate state. slice_graph is added at task-decompose when work is sliced.
phases:
  discover:
    codebase-analysis: { status: pending, gate-passed: false }
  plan:
    brainstorm: { status: pending, gate-passed: false }
    task-decompose: { status: pending, gate-passed: false }
  quality:
    test-execution: { status: pending, gate-passed: false }
    assessment: { status: pending, gate-passed: false }
  deliver:
    pr-created: false
  support:
    gotchas-recorded: false
