Feat v0.9.6 deprecate stage_type, collapse stage_mode

stage_type no longer validated — starlark_hook presence determines
automation. stage_mode collapsed from 4→3 values (form/delegated/
automated); "review" mapped to "form" on input for backward compat.
Migration 018 converts existing rows. Review surface removed (~110
lines). 4 package manifests updated.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-03 17:41:55 +00:00
parent 75d7abc089
commit 446edb8333
25 changed files with 121 additions and 224 deletions

View File

@@ -194,7 +194,7 @@ func TestStageCRUD(t *testing.T) {
WorkflowID: wf.ID,
Ordinal: 1,
Name: "Review",
StageMode: "review",
StageMode: "form",
}
s.CreateStage(ctx, stage2)
@@ -208,7 +208,7 @@ func TestStageCRUD(t *testing.T) {
if stages[0].Name != "Intake" || stages[0].StageMode != "form" {
t.Fatalf("stage 0: got %s/%s", stages[0].Name, stages[0].StageMode)
}
if stages[1].Name != "Review" || stages[1].StageMode != "review" {
if stages[1].Name != "Review" || stages[1].StageMode != "form" {
t.Fatalf("stage 1: got %s/%s", stages[1].Name, stages[1].StageMode)
}
@@ -243,7 +243,7 @@ func TestStageReorder(t *testing.T) {
s.Create(ctx, wf)
s1 := &models.WorkflowStage{WorkflowID: wf.ID, Ordinal: 0, Name: "First", StageMode: "form"}
s2 := &models.WorkflowStage{WorkflowID: wf.ID, Ordinal: 1, Name: "Second", StageMode: "review"}
s2 := &models.WorkflowStage{WorkflowID: wf.ID, Ordinal: 1, Name: "Second", StageMode: "form"}
s.CreateStage(ctx, s1)
s.CreateStage(ctx, s2)