Enum Class WorkflowState
- All Implemented Interfaces:
Serializable, Comparable<WorkflowState>, Constable
Eight-state workflow lifecycle for experiments (and forthcoming
PreboardedExperiments).
Transition table is lifted verbatim from HANDOFF_WORKFLOW_STATE_STORAGE.md
ยง"State-machine reference" (which itself mirrors the UI canonical spec in
gemma-curation-ui/apps/curation/WORKFLOW_MANAGEMENT.md):
Discovery -> Candidate, Preboarded Candidate -> Preboarded, Discovery Preboarded -> Loaded, Candidate Loaded -> Curate Curate -> Process, Audit Process -> Audit, Curate Audit -> Curate, Public Public -> Curate
An idempotent re-assert (target == current) is permitted but
recorded by the service layer as a no-op (no audit event emitted); the
machine itself only enumerates strict transitions.
String form of the enum is stored verbatim in
INVESTIGATION.WORKFLOW_STATE (VARCHAR(32)). Renaming a constant
is therefore a schema migration.
-
Nested Class Summary
Nested classes/interfaces inherited from class Enum
Enum.EnumDesc<E> -
Enum Constant Summary
Enum Constants -
Method Summary
Modifier and TypeMethodDescriptionbooleancanTransitionTo(WorkflowState target) static WorkflowStateReturns the enum constant of this class with the specified name.static WorkflowState[]values()Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
Discovery
-
Candidate
-
Preboarded
-
Loaded
-
Curate
-
Process
-
Audit
-
Public
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum class has no constant with the specified nameNullPointerException- if the argument is null
-
allowedNextStates
- Returns:
- the set of states this state can advance to (strict, excludes self). Never null.
-
canTransitionTo
- Returns:
trueiftargetis a strict allowed successor ofthis. A self-transition returnsfalse; the service layer treats idempotent re-assert as a no-op rather than as a transition.
-