Skip to content
Checklist

Design

Architecture quality gate — design completeness

Checks

CheckDescriptionTypeBlocking
plan_producedArchitecture plan existsFile existsYes
has_context_sectionPlan includes context and constraintsPattern matchYes
has_decisions_sectionPlan documents key architectural decisionsPattern matchYes
has_components_sectionPlan breaks down into componentsPattern matchYes
has_data_model_sectionPlan defines data model (or explicitly states N/A)Pattern matchNo
references_prdPlan references the approved PRDPattern matchNo
open_questionsNo unresolved open questions remainCustomNo

Raw Definition

38 lines
yaml
name: design
description: Architecture quality gate — design completeness

checks:
  - id: plan_produced
    description: Architecture plan exists
    check: file:.sniper/artifacts/{protocol_id}/plan.md
    blocking: true

  - id: has_context_section
    description: Plan includes context and constraints
    check: grep:.sniper/artifacts/{protocol_id}/plan.md:"## Context"
    blocking: true

  - id: has_decisions_section
    description: Plan documents key architectural decisions
    check: grep:.sniper/artifacts/{protocol_id}/plan.md:"## Decisions"
    blocking: true

  - id: has_components_section
    description: Plan breaks down into components
    check: grep:.sniper/artifacts/{protocol_id}/plan.md:"## Components"
    blocking: true

  - id: has_data_model_section
    description: Plan defines data model (or explicitly states N/A)
    check: grep:.sniper/artifacts/{protocol_id}/plan.md:"## Data Model"
    blocking: false  # Not every feature requires a data model

  - id: references_prd
    description: Plan references the approved PRD
    check: grep:.sniper/artifacts/{protocol_id}/plan.md:"prd.md"
    blocking: false

  - id: open_questions
    description: No unresolved open questions remain
    check: "!grep:.sniper/artifacts/{protocol_id}/plan.md:\\*\\*TBD\\*\\*|\\*\\*TODO\\*\\*|\\*\\*OPEN\\*\\*"
    blocking: false