Directory record pages and phone tab strips
Goal: the Directory's record pages (projects, groups, Brains accounts, profile) and their tab strips look like one product. That means one action placement, no repeated facts, nothing clipped, and nothing hidden on a phone. Consolidates drafts 7382, 7372, 7360, 7363, 7367, 7371 and 7346. Treat the items as a quality bar; decline any with a one-line reason.
Side pane and form bar
1. At rest the Cancel/Save bar sits on the pane's own ground, and takes the paper colour only while stuck. When stuck it covers the full content width, including overhangs such as the MUI Switch. The tab strip stays reachable in short windows (sticky). The tab-strip fit uses all the available width (no ~50px gap after More).
Record pages
2. Brains: a "Shows as:" preview only when the rendered text differs from the input. "Change org…" moves into the record's actions. The active tab and its actions stay on one line when they fit. The created/updated line collapses one actor. "No credentials" appears once.
3. Groups: Everyone's Delete is disabled with a reason. Every place that prints a group name uses `groupLabel`. The People filter strip has top clearance at 390px. The seed puts the owner into Everyone.
4. Nameless account: the badge shows a neutral glyph, not email initials. On a phone the name ask folds into the No access card. `/settings?orgtab=…` deep-links the org panel's tabs.
5. Projects list: the over-max ⚠ has a phone-band hung line carrying the same words as the hover, single-homed in one helper.
Phone strips (390px)
6. The Support tabs wrap or overflow into More, as the Directory strip does. An empty compact verb slot takes no space. The Playbooks lock glyph sits next to the row's name.
Out of scope: the Repositories table, the API, `lib/listDetail.ts` split arithmetic, IP allowlist rules.
Done means:
- Screenshots at 1024px, 1366px and 390px (and a 1024×420 window for the side pane) show each point above, or the reason it was declined.
- Each shipped item has a test (vitest, or a seed test for the Everyone membership).
Required checks: ./dc check full
Outcome
Shipped Directory record-page/phone-strip consistency (sticky strips, form-bar ground, Brains/Groups/nameless/Projects/Support/Playbooks fixes); 2 items declined with reasons → draft #7454. Quick gate + 2125 vitest green; PR #6022 merged (129d8088). Visual check done at 1366/1024/390/1024×420. Deploy run superseded.
Artifacts
Activity
- Created
- Run
- Runner started
- Runner ended (done)