Context
T1.5 design-system leaf of Epic #14560 (map v1.1) — the event-kind chip vocabulary the activity stream (T3) and agent detail (T4) both consume. Filed under the decomposition sprint (D#14561); consumes the token layer (#14578).
The Problem
The SSOT artifact defines four chip classes as raw CSS (.k-pr .k-a2a .k-review .k-alert — uppercase mono labels on kind-colored plates). Two consumers (stream + detail) would each hand-roll them; and the kind taxonomy itself needs one owner: tonight's live feeds (the #14572/#14573 adapters) carry MORE kinds than the mock's four (lane-claims, ticket-filed, graduation signals, lifecycle transitions) — the chip system must absorb kind-set growth without per-view edits.
The Architectural Reality
- A single EventChip primitive under the #14577-gated namespace, kind-keyed into #14578 tokens; unknown kinds degrade honestly to a neutral chip (never throw, never invisible — the degrade-honestly house rule).
- The kind taxonomy maps from the Lane-C adapter contracts (#14572 A2A · #14573 PR/lane) — this leaf CONSUMES their event-kind fields, never re-classifies upstream events (boundary per the lane seam).
- Extension shape: kind→token mapping as data (config/map), not a switch statement per view.
The Fix
The per-view triplet: (1) EventChip component + the kind→token map (four SSOT kinds + neutral fallback, growth-ready); (2) unit specs (known kinds map, unknown kind degrades to neutral, label casing/mono per artifact); (3) NL-verifiable render row of all kinds in the dev-server.
Acceptance Criteria
Out of Scope
- The ActivityStream composition (T3.11 consumes this) · adapter event classification (#14572/#14573, Lane C) · token values (#14578).
Related
Epic #14560 (parent) · #14578 (consumed, blocked-by) · #14577 (namespace gate) · #14572/#14573 (kind-source contracts) · D#14561.
Live latest-open sweep: latest 12 checked 2026-07-04T01:59Z (newest #14591); no equivalent. A2A sweep: clean. Structure-map gate: N/A — app-layer component.
Origin Session ID: a28f1415-37a4-4a5a-a3e4-b56adf6274ec
Retrieval Hint: "FM cockpit event kind chip system pr a2a review alert neutral fallback"
Context
T1.5 design-system leaf of Epic #14560 (map v1.1) — the event-kind chip vocabulary the activity stream (T3) and agent detail (T4) both consume. Filed under the decomposition sprint (D#14561); consumes the token layer (#14578).
The Problem
The SSOT artifact defines four chip classes as raw CSS (
.k-pr .k-a2a .k-review .k-alert— uppercase mono labels on kind-colored plates). Two consumers (stream + detail) would each hand-roll them; and the kind taxonomy itself needs one owner: tonight's live feeds (the #14572/#14573 adapters) carry MORE kinds than the mock's four (lane-claims, ticket-filed, graduation signals, lifecycle transitions) — the chip system must absorb kind-set growth without per-view edits.The Architectural Reality
The Fix
The per-view triplet: (1) EventChip component + the kind→token map (four SSOT kinds + neutral fallback, growth-ready); (2) unit specs (known kinds map, unknown kind degrades to neutral, label casing/mono per artifact); (3) NL-verifiable render row of all kinds in the dev-server.
Acceptance Criteria
Out of Scope
Related
Epic #14560 (parent) · #14578 (consumed, blocked-by) · #14577 (namespace gate) · #14572/#14573 (kind-source contracts) · D#14561.
Live latest-open sweep: latest 12 checked 2026-07-04T01:59Z (newest #14591); no equivalent. A2A sweep: clean. Structure-map gate: N/A — app-layer component.
Origin Session ID: a28f1415-37a4-4a5a-a3e4-b56adf6274ec Retrieval Hint: "FM cockpit event kind chip system pr a2a review alert neutral fallback"