---
slug: "StateTransition"
name: "StateTransition"
type: "Primitives"
layer: "Infrastructure"
ref: "StateTransition#bdc0"
sema_id: "sema:StateTransition#mh:SHA-256:bdc0c1988a26e15a4e90bb79b214e4bebe630bc53f758ca67c6e1148aa802686"
tags: ["Infrastructure","Primitives"]
updated: 2026-11-11
mindscape: "bootstrap"
index_url: https://mindscape.pages.dev/bootstrap/index.json
url: https://mindscape.pages.dev/bootstrap/StateTransition/
related: ["State","Transition","LatticeCommit","StateAudit","TaskLifecycle"]
---

# StateTransition

Explicit finite-state machine governance

Layer: Infrastructure · Category: Primitives

## Mechanism

Finite State Machine. A [Transition](https://mindscape.pages.dev/bootstrap/Transition.md) is defined as T: S x Event -> S. Only valid transitions allowed. Current [State](https://mindscape.pages.dev/bootstrap/State.md) determines available actions.

## Invariants

- Only declared transitions are permitted; an event with no transition from the current [State](https://mindscape.pages.dev/bootstrap/State.md) is refused, not improvised.
- The available actions are a function of the current [State](https://mindscape.pages.dev/bootstrap/State.md) alone.

## Failure modes

- Undeclared event: an event arrives that the machine has no transition for, and a caller treats the refusal as a failure of the event rather than of the model.
- Unreachable state: a state is declared with no transition leading to it.

## Builds on

- [State](https://mindscape.pages.dev/bootstrap/State.md) (Infrastructure; References)
- [Transition](https://mindscape.pages.dev/bootstrap/Transition.md) (Infrastructure; References)

## Used by

- [LatticeCommit](https://mindscape.pages.dev/bootstrap/LatticeCommit.md) (Society; References)
- [StateAudit](https://mindscape.pages.dev/bootstrap/StateAudit.md) (Infrastructure; References)
- [TaskLifecycle](https://mindscape.pages.dev/bootstrap/TaskLifecycle.md) (Infrastructure; Composes with)

## Identity

- Sema ID: `sema:StateTransition#mh:SHA-256:bdc0c1988a26e15a4e90bb79b214e4bebe630bc53f758ca67c6e1148aa802686`
- Ref: `StateTransition#bdc0`
- Supersedes:
  - `sema:StateTransition#mh:SHA-256:3737f955afcae13b398c1961722ee8511ea8f737aca133329938de5cfb91bb57`
  - `sema:StateTransition#mh:SHA-256:fa0a59735c22f83a00a12fd79576ebf5cf8609c6cf6206b2b01a15958911c3d2`

## Links

- [Pattern page](https://mindscape.pages.dev/bootstrap/StateTransition/)
- [View in the interactive graph](https://mindscape.pages.dev/bootstrap/#StateTransition)
- [JSON](https://mindscape.pages.dev/bootstrap/StateTransition.json)
- [Index of all patterns](https://mindscape.pages.dev/bootstrap/index.json)
