35 lines
1.5 KiB
Markdown
35 lines
1.5 KiB
Markdown
## ADDED Requirements
|
|
|
|
### Requirement: Each critical phase has an explicit checkpoint
|
|
|
|
SM Flow SHALL require an explicit checkpoint before a critical phase can be considered complete.
|
|
|
|
#### Scenario: Phase completes normally
|
|
|
|
- **WHEN** the agent finishes a critical phase such as Phase 0, Phase 0.5, Phase 1, Phase 2, Phase 2.5, or Phase 2.9
|
|
- **THEN** it reports the current phase, the capability source used, the produced artifacts, the satisfied exit conditions, and any unresolved blockers
|
|
|
|
#### Scenario: Checkpoint is missing
|
|
|
|
- **WHEN** a critical phase has produced artifacts or conclusions but no explicit checkpoint summary
|
|
- **THEN** the phase SHALL NOT be treated as complete for purposes of entering the next phase
|
|
|
|
### Requirement: Capability declaration is part of phase completion
|
|
|
|
SM Flow SHALL treat skill or fallback declaration as part of the phase completion condition.
|
|
|
|
#### Scenario: Native skill or local protocol is used
|
|
|
|
- **WHEN** a phase depends on a named capability such as `openspec-propose`, `grill-with-docs`, `zoom-out`, or `openspec-apply-change`
|
|
- **THEN** the agent states whether it used a native skill, a local `SKILL.md`, or a fallback protocol
|
|
|
|
#### Scenario: Fallback is used
|
|
|
|
- **WHEN** a phase falls back from a named capability
|
|
- **THEN** the agent records the target capability, the reason it was unavailable, the fallback protocol name, and the downgrade risk
|
|
|
|
#### Scenario: Declaration is omitted
|
|
|
|
- **WHEN** no capability source is declared for a phase that requires one
|
|
- **THEN** that phase SHALL NOT be considered complete
|