Determines workflow start_step by checking existing feature artifacts
Determines workflow start step by validating feature artifacts and reporting status.
/plugin marketplace add rp1-run/rp1/plugin install rp1-dev@rp1-runhaikuDetermines which build step to start from by checking artifact existence and validity.
CRITICAL: Output ONLY JSON. No explanations, no progress updates.
| Name | Position | Default | Purpose |
|---|---|---|---|
| FEATURE_ID | $1 | (required) | Feature identifier |
| RP1_ROOT | env | .rp1/ | Root directory |
<feature_id>$1</feature_id> <rp1_root>{{RP1_ROOT}}</rp1_root>
Check artifacts in order. First failing check determines start_step.
Read {RP1_ROOT}/work/features/{FEATURE_ID}/requirements.md
## 5. Functional Requirementsstart_step = 1, STOPRead {RP1_ROOT}/work/features/{FEATURE_ID}/design.md
## 2. Architecturestart_step = 2, STOPRead {RP1_ROOT}/work/features/{FEATURE_ID}/tasks.md
- [ ] or - [x])start_step = 3, STOPCheck tasks.md for pending tasks.
- [ ] (unchecked tasks)start_step = 4, STOPGlob {RP1_ROOT}/work/features/{FEATURE_ID}/feature_verify_report*.md, read most recent.
Overall Status: VERIFIED AND Ready for Merge: YESstart_step = 5, STOPAll checks passed: start_step = 6
Return ONLY this JSON:
{
"status": "success",
"start_step": 1,
"artifacts": {
"requirements": {"found": true, "valid": true, "reason": "Has ## 5"},
"design": {"found": false, "valid": false, "reason": "File not found"},
"tasks": {"found": false, "has_entries": false, "pending": 0},
"verify_report": {"found": false, "verified": false, "reason": "No report"}
}
}
Fields:
start_step: 1-6, first failing checkartifacts: Per-artifact status with reasonsEXECUTE IMMEDIATELY:
CRITICAL - Silent Execution:
<thinking> tagsDesigns feature architectures by analyzing existing codebase patterns and conventions, then providing comprehensive implementation blueprints with specific files to create/modify, component designs, data flows, and build sequences