23 lines
564 B
Markdown
23 lines
564 B
Markdown
|
|
---
|
||
|
|
kind: task
|
||
|
|
slug: shared-convoy-state-machine
|
||
|
|
title: Shared convoy status enum, VALID_TRANSITIONS, and actor guards
|
||
|
|
plan_slug: automation-foundation
|
||
|
|
epic_slug: convoy-lifecycle-mcp
|
||
|
|
status: done
|
||
|
|
priority: P1
|
||
|
|
tenant_id: global
|
||
|
|
owner: unassigned
|
||
|
|
cursor_todo_id: null
|
||
|
|
updated_at: "2026-07-07"
|
||
|
|
---
|
||
|
|
|
||
|
|
# Task summary
|
||
|
|
|
||
|
|
Pure `validateConvoyTransition()` with gate actor enforcement and vitest coverage.
|
||
|
|
|
||
|
|
## Acceptance criteria
|
||
|
|
|
||
|
|
- [x] `draft → released` rejected (`INVALID_TRANSITION`)
|
||
|
|
- [x] `role-architect` cannot perform `convoy_review → ready` (`FORBIDDEN_ACTOR`)
|