On this page

LaneState๏ƒ

Use md.LaneState from the public package namespace.

Implementation source

class LaneState(*values)[source]๏ƒ

Lifecycle states for one research lane.

Registration:

VALUE VOCABULARY. An enum is a value a caller passes and compares, never an object Melder injects, so there is nothing to refuse at bind time.

Subsystem Context:

The lifecycle half of the lane vocabulary, beside LaneType (the policy half). State says whether a lane still accepts work; type says what kind of work it was for. They are deliberately orthogonal - an archived production lane and an open production lane differ in state, not type.

Subsystem Context Note - both exits are terminal:

joined and archived both end a lane's writable life, and neither is undone in place. Recovery runs through NetworkVersioner, which rebuilds containers wholesale rather than reopening them.

System Context:

Lane state is organization, not runtime. A lane changing state has ZERO effect on what is live - runtime residency is an orthogonal question answered by the frame, which is why archiving a lane never disturbs a running world.

Contract:

  • open: the lane accepts registrations and organization.

  • joined: the lane finished into its parent; archived-equivalent, no further work happens FROM this container (its objects live on; new lanes may still anchor at any node that remains here).

  • archived: the lane left the active view as a dead end; the organization snapshot machinery can restore views that contained it, and residence stays permanent so rediscovery still points here.

AGENT_ACCESS: public

AGENT_PURPOSE:

access: public. Lifecycle state of one research lane. Read it from lane views; MutationResearch verbs move it.

Topic reference ยท Full contents