# Spec 346 Lane Classification Status: implemented Created: 2026-06-02 Scope: page-local, derived lane mapping for `/admin/governance/inbox` ## Rule Spec 346 does not add a new persisted inbox-item state machine. Lane assignment is derived from existing source-family entries returned by `GovernanceInboxSectionBuilder`. Each visible item appears in exactly one primary lane on the inbox first screen. ## Active Lane Mapping | Source family / state | Lane | Why | | --- | --- | --- | | `intake_findings` | `Needs triage` | These findings are still unassigned and need a first operator path. | | `assigned_findings` with `evidence_state = missing` | `Evidence required` | The operator already owns the item, but linked proof is still missing. | | `assigned_findings` with linked evidence | `Requires decision` | The item still needs operator follow-through and is no longer blocked on missing proof. | | `finding_exceptions` | `Risk / exception review` | Accepted-risk and exception records already have their own review semantics and should not be diluted into generic evidence or decision lanes. | | `review_follow_up` | `Requires decision` | The existing repo truth signals follow-up or changed-since-review state, not a clean review-ready state. | | `stale_operations` | `Blocked` | Existing operation truth already represents stale or terminal technical follow-up. | | `alert_delivery_failures` | `Blocked` | Delivery failures are technical blockers that need operational follow-through. | ## Secondary / Supporting States | Topic | Treatment | | --- | --- | | Recently resolved | Derived from `GovernanceDecisionRegisterBuilder` and rendered as a secondary collapsed disclosure, not as a primary active lane. | | Diagnostics | Kept collapsed and source-owned. | | Source-family context | Kept available in the secondary `Source detail` disclosure. | ## Intentionally Omitted Lanes | Suggested lane | Why omitted | | --- | --- | | `Review-ready` | No honest repo-backed inbox-ready state is currently derivable on this page without inventing new workflow truth. | ## Why Page-Local Mapping Was Enough - The source builder already returns repo-backed entries with status, reason, impact, evidence, and action URLs. - The lane transform is presentational and does not need to spread into models, enums, migrations, or shared infrastructure. - Keeping the mapper local to `GovernanceInbox` avoids creating a new governance engine or taxonomy layer.