NDO lifecycle

Ten stages, one forward chain, two escapes available from anywhere, and one stage that remembers where it came from. This table mirrors the Rust integrity zome: offering a transition the zome rejects would let a review approve a flow that cannot ship.

The table

FromAccepts
IdeationSpecificationDeprecatedEndOfLife
SpecificationDevelopmentDeprecatedEndOfLife
DevelopmentPrototypeDeprecatedEndOfLife
PrototypeStableDeprecatedEndOfLife
StableDistributedDeprecatedEndOfLife
DistributedActiveDeprecatedEndOfLife
ActiveHibernatingDeprecatedEndOfLife
HibernatingDeprecatedEndOfLife + its hibernation_origin
DeprecatedEndOfLife
EndOfLifenothing โ€” terminal

Two special cases

Deprecated needs a successor. The modal will not submit without one, because deprecating an object without naming what replaces it strands everything that depends on it.

Hibernating records its origin. A kiln pausing from Active resumes to Active, not to the top of the ladder. That origin appears as a fourth option in the modal, above the two escapes.

Open questions

  • The modal is titled "Advance lifecycle stage" while three of its options retire the object.
  • EndOfLife sits in a plain radio list beside Specification. Nothing marks it terminal, and there is no confirmation step.
  • The successor picker needs two characters before it searches, with no hint that it will.
See that NDO's identity bar