Skill: unit-planner
Goal
- •Turn a pipeline (
pipelines/*.pipeline.md) into a concreteUNITS.csvcontract for a specific workspace.
Inputs
- •
PIPELINE.lock.md(preferred) or a chosenpipelines/*.pipeline.md - •
templates/UNITS.*.csvreferenced by the pipeline front matter - •Existing workspace artifacts (to adjust scope if needed)
Outputs
- •
UNITS.csv(in the workspace root) - •Optional:
STATUS.mdupdated with next runnable units
Procedure (MUST FOLLOW)
Uses: templates/UNITS.*.csv.
- •Read
PIPELINE.lock.md(or ask to create it viapipeline-router). - •Copy the pipeline’s
units_templateinto the workspace asUNITS.csvif missing. - •If
UNITS.csvexists, only edit it to reflect:- •new scope (add rows)
- •corrected dependencies
- •clarified acceptance criteria
- •Ensure every unit has:
unit_id,skill,outputs,acceptance,checkpoint,status,owner. - •Keep checkpoints consistent with
CHECKPOINTS.md; add missing checkpoints if the pipeline uses custom checkpoints.
Acceptance criteria (MUST CHECK)
- •
UNITS.csvparses as CSV and includes all required columns. - • Every
depends_onreferences an existingU###.
Side effects
- •Allowed: edit
UNITS.csv,STATUS.md,CHECKPOINTS.md(for adding custom checkpoints). - •Not allowed: change pipeline files in
pipelines/unless requested.
Troubleshooting
Issue: PIPELINE.lock.md is missing
Fix:
- •Run
pipeline-router(Mode A) orpython scripts/pipeline.py kickoff|initto createPIPELINE.lock.mdbefore generating units.
Issue: UNITS.csv becomes invalid CSV after edits
Fix:
- •Keep semicolon-delimited
inputs/outputsand avoid unescaped commas inside fields; validate withpython scripts/validate_repo.py.