Operator finding (2026-07-22, riding the loop): 'why is #testing italic?' — it isn't a state; it's identity entropy. Group::for_name hashes the channel name into a palette entry PLUS style bits (agent-identity's deliberate secondary axes for identity-space width), so some channels render italic/bold purely by hash accident.
The finding: the operator's own question is the evidence. Style bits carry conventional MEANING to humans (italic = draft/inactive/unavailable; bold = active/unread), so hash-assigned styles provoke false semantic inference — attention spent decoding noise.
Proposal: channels keep color + glyph as the identity axes (both read as arbitrary, so neither invites inference); style bits get RESERVED for real states where their conventional reading helps — e.g. italic = registered-but-not-joined, bold = foreground tab / unread activity. Agent nicknames may warrant the same review (bold/italic combos exist there too, same hash mechanism), with the same principle: entropy in axes that don't look meaningful, semantics in axes that do.
Note the palette.rs philosophy comment already half-knows this ('italic renders inconsistently across terminals... use it sparingly') — this issue extends the caution from rendering reliability to semantic misfire.
Operator finding (2026-07-22, riding the loop): 'why is #testing italic?' — it isn't a state; it's identity entropy. Group::for_name hashes the channel name into a palette entry PLUS style bits (agent-identity's deliberate secondary axes for identity-space width), so some channels render italic/bold purely by hash accident.
The finding: the operator's own question is the evidence. Style bits carry conventional MEANING to humans (italic = draft/inactive/unavailable; bold = active/unread), so hash-assigned styles provoke false semantic inference — attention spent decoding noise.
Proposal: channels keep color + glyph as the identity axes (both read as arbitrary, so neither invites inference); style bits get RESERVED for real states where their conventional reading helps — e.g. italic = registered-but-not-joined, bold = foreground tab / unread activity. Agent nicknames may warrant the same review (bold/italic combos exist there too, same hash mechanism), with the same principle: entropy in axes that don't look meaningful, semantics in axes that do.
Note the palette.rs philosophy comment already half-knows this ('italic renders inconsistently across terminals... use it sparingly') — this issue extends the caution from rendering reliability to semantic misfire.