From srnnkls-tropos
Promote spec from draft to active stage. Use after spec review passes or when ready to begin implementation.
npx claudepluginhub joshuarweaver/cascade-code-general-misc-2 --plugin srnnkls-troposThis skill uses the workspace's default tool permissions.
Promote validated specs from draft to active stage for implementation.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
Promote validated specs from draft to active stage for implementation.
Promote a spec when:
Don't promote when:
Parse spec name from command argument:
# User provides: add-temporal-joins
# Look for: ./specs/draft/add-temporal-joins/
If not found, list available draft specs and ask which to promote.
Before promoting, check:
Read validation.yaml (if exists):
status: openstatus: failedRead spec.md:
If validation.yaml doesn't exist (e.g., Task issue type), proceed without marker checks.
mkdir -p ./specs/active/
mv ./specs/draft/{spec-name} ./specs/active/{spec-name}
Update spec.md frontmatter:
Change:
status: Draft
stage: draft
To:
status: Active
stage: active
promoted: {TODAY'S DATE}
If stage field doesn't exist, add it. Preserve all other frontmatter fields.
Report to user:
Promoted: {spec-name}
From: ./specs/draft/{spec-name}/
To: ./specs/active/{spec-name}/
Status: Active
Promoted: {DATE}
[If open markers were overridden]:
Warning: {N} open markers remain unresolved
Next steps:
- Run /implement to begin task execution
- Or use task-dispatch skill for parallel work
# In validation.yaml
markers:
- id: M001
status: open # WARN: ask user to proceed
- id: M002
status: resolved # OK
Open markers indicate unresolved ambiguities. Warn but allow override.
# In validation.yaml
gates:
simplicity:
status: failed # BLOCK: cannot promote
anti_abstraction:
status: passed # OK
Failed gates block promotion. User must resolve before promoting.
| Condition | Action |
|---|---|
| Spec not found in draft | List available drafts, ask user |
| Open markers | Warn, ask to proceed (y/n) |
| Failed gates | Block, explain which gates failed |
| Missing spec.md | Error: "Invalid spec directory" |
| Already in active | Error: "Spec already active" |
Workflow:
spec-validate -> spec-create (creates in draft/)/clarifytask-dispatch or /implementspec-archive (active/ -> archive/)Related:
/spec.promotespec-create (creates drafts), spec-archive (archives active)clarify (resolve open markers before promoting)