Expand description
Validation state machine governing tier transitions and UI filtering.
This module implements:
ValidationStateMachine— enforces legal transitions between validation tiers (Validated ↔ Candidate, Candidate ↔ Experimental, any → Blocked).ValidationEntry— pairs a component ID with its current tier, defaulting toCandidatefor new components.- [
TierFilter] — determines visibility and preselection for UI rendering.
§Legal Transitions
Validated ←→ Candidate ←→ Experimental
↓ ↓ ↓
Blocked (terminal)Illegal transitions:
Experimental → Validated(must go through Candidate first)Blocked → anything(Blocked is terminal)
§UI Filtering Rules
| Tier | Visible | Preselected |
|---|---|---|
| Validated | Yes | Yes |
| Candidate | Yes | No |
| Experimental | No* | No |
| Blocked | No | No |
* Experimental components are visible only with an explicit flag.
Structs§
- Filtered
Entries - Result of applying tier filtering to a list of entries.
- Transition
Error - Error returned when an illegal tier transition is attempted.
- Validation
Entry - A component paired with its current validation tier.
- Validation
State Machine - State machine governing transitions between validation tiers.
- Visible
Entry - A visible entry with its preselection state.
Functions§
- filter_
entries - Apply tier filtering to a list of validation entries.
- filter_
entries_ with_ experimental - Apply tier filtering with
include_experimentalflag.