Skip to content

Commit 0ec8c45

Browse files
workflow/meta: Correctly update status description (#129)
1 parent b108f3a commit 0ec8c45

File tree

5 files changed

+13
-4
lines changed

5 files changed

+13
-4
lines changed

delete.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ func runDelete(
7171
store,
7272
record,
7373
RunStateRequestedDataDeleted,
74+
record.Meta.StatusDescription,
7475
)
7576
}
7677
}

runstate.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ func (rsc *runStateControllerImpl) update(ctx context.Context, rs RunState, reas
126126
previousRunState := rsc.record.RunState
127127
rsc.record.RunState = rs
128128
rsc.record.Meta.RunStateReason = reason
129-
return updateRecord(ctx, rsc.store, rsc.record, previousRunState)
129+
return updateRecord(ctx, rsc.store, rsc.record, previousRunState, rsc.record.Meta.StatusDescription)
130130
}
131131

132132
var runStateTransitions = map[RunState]map[RunState]bool{

trigger.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ func trigger[Type any, Status StatusType](
9797
Meta: meta,
9898
}
9999

100-
err = updateRecord(ctx, store, wr, RunStateUnknown)
100+
err = updateRecord(ctx, store, wr, RunStateUnknown, startingStatus.String())
101101
if err != nil {
102102
return "", err
103103
}

update.go

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ func newUpdater[Type any, Status StatusType](
6363
return err
6464
}
6565

66-
return updateRecord(ctx, store, updatedRecord, record.RunState)
66+
return updateRecord(ctx, store, updatedRecord, record.RunState, next.String())
6767
}
6868
}
6969

@@ -91,11 +91,18 @@ func validateTransition[Status StatusType](current, next Status, graph *graph.Gr
9191
return nil
9292
}
9393

94-
func updateRecord(ctx context.Context, store storeFunc, record *Record, previousRunState RunState) error {
94+
func updateRecord(
95+
ctx context.Context,
96+
store storeFunc,
97+
record *Record,
98+
previousRunState RunState,
99+
statusDescription string,
100+
) error {
95101
// Push run state changes for observability
96102
metrics.RunStateChanges.WithLabelValues(record.WorkflowName, previousRunState.String(), record.RunState.String()).
97103
Inc()
98104

105+
record.Meta.StatusDescription = statusDescription
99106
// Increment the version by 1.
100107
record.Meta.Version++
101108

workflow_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,7 @@ func TestWorkflowAcceptanceTest(t *testing.T) {
151151
r, err := recordStore.Latest(ctx, wf.Name(), fid)
152152
require.Nil(t, err)
153153
require.Equal(t, int(expectedFinalStatus), r.Status)
154+
require.Equal(t, "Completed", r.Meta.StatusDescription)
154155

155156
var actual MyType
156157
err = workflow.Unmarshal(r.Object, &actual)

0 commit comments

Comments
 (0)