`kind` is 'chat' on 99.79% of rows -- 25,337 of 25,390, with 52 'route' and a single 'dispatch' in the whole table -- so on both the dashboard's Recent Decisions and the Decisions page it spent a column's width rendering a constant, and a colored badge drawing the eye to it on every row. Removed from both tables. The dashboard drops it outright: it is the glanceable surface, and the freed width goes to the model cell, which was the column actually being truncated. The Decisions page keeps the information, because 0.2% of 25k rows is still 53 rows someone will want to find. It moves into the Flags cell, which already follows the right rule -- flagChips renders only what is ON, so nothing shows on a chat row and a chip appears on the exceptions. The Kind filter stays too; with the column gone it is now the way to isolate those rows. Caught in the browser, not in review: `.flag-chip` is an 18px square sized for one letter (T/I/J/S), so a word chip rendered with the pill behind the middle few characters and the rest spilling out -- 'passthrough' was unreadable. Added a `.flag-chip.kind` modifier whose width follows its text, in purple so it does not read as another single-letter flag. Verified on the 8081 sandbox against 23,846 real decisions: both tables render, the non-chat chips are legible, console is clean. Full suite 1895 passed. test_empty_states_span_every_column now DERIVES the expected count from the <thead> instead of hardcoding it. That literal has been stale twice already (colspan 11, then 13) and this change would have been its third: hand-updating a number in a test that exists to catch stale numbers fails the build without telling you which value is right. Also pins the intent of this commit, so the column cannot quietly come back and the chip cannot quietly go. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VRQXz5SYZYVWscxS1QqF6U
6.9 KiB
6.9 KiB