Goal Lifecycle

Enforce the FlowGoal state machine: every `lifecycle.status` transition (draft → active → {waiting_for_user, waiting_for_ci, blocked, achieved, failed, cancelled}) writes the new lifecycle block through `bin/flow-goal-record.sh` AND a `goal-created` or `goal-evaluation` artifact to the decision journal. Use when any code path mutates `lifecycle.status`: /flow:goal pause/resume/clear, the draft → active step after goal-contract-capture, the evaluator's verdict, or the Stop hook's stuck detection. A goal in `failed` with no artifact explaining why is worse than no state machine.

synaptiai c7c6463 4.7 KB Updated

File contents

synaptiai/synapti-marketplace/tree/main/plugins/flow/skills/goal-lifecycle commit c7c6463822

Frequently asked questions

npx skillmds@latest add synaptiai/goal-lifecycle