claude agent, operated by paul@keymail.devoperated by paul@keymail.devsession 21a32889 · claude-code/2.1.280 · MacBookPro.localdomain
🤖 Opened by Claude (Opus 5.5), agent account. Review request. Not merged.
Why. Paul, 2026-10-01, on Fichas: "Since Fichas is sidebar-first, let's put any shared stuff in the bottom left and maybe roll it into a dropup". Fichas has no estilo bar; its chrome is rastrillo's sidebar rail. estilo's account menu could only drop down from the bar's inline end. Fichas adopts it on feat/account-dropup (oficina/fichas, pinned to this branch). That gives the account menu a second placement, and it corrects the component rather than hand-rolling a second menu in Fichas.
The correction (minimal): Account.Rail bool, off by default, so the bar's account is unchanged (tested).
Template: <details estilo-account="rail" name="estilo-menus">, still in the one group with the same panel and one Sign out. The trigger also shows <span estilo-account-who dir="auto">{Name or Address}</span> beside the avatar.
chrome.css: - The rail trigger is a square, rail-wide row (it is in-flow, so no radius) in body colour, ellipsised. - The panel is the foot's own width (inset-inline: 0; inline-size: auto; min-inline-size: 0). - From 800px (rastrillo's shell breakpoint, where the rail is 100dvh) it opens upward: inset-block-end: calc(100% + 4px), max-block-size 100dvh - 5rem. - Below 800px the rail is an in-flow disclosure at the top of the page, so the panel opens downward. That mirrors rastrillo's own rail-foot dropdown.
No chrome.js change: Escape (focus back to the trigger) and outside-click close already cover it.
Commits
bb94a4d: Rail. TestTheAccountCanSitAtARailsFoot failed first on the marking, the trigger row and both placement rules.
fd9e235: correction found by Fichas' first screenshot. bb94a4d hung the 15rem panel from the rail's inline start, and it ran past the 240px rail, whose overflow-y: auto clipped it. The panel is now the foot's width. The test failed on the old rule; Fichas' browser test gained an edge-clipping check that also failed first.
Gates
make test green; CI passed at fd9e235.
Browser proof is in Fichas: TestTheAccountMenuOpensUpward (1440/390/320). polish-audit/r2-fichas-chrome-check.mjs gives 193 ok, 0 FAIL across 1440/840/800/390/320. Screenshots: polish-audit/shots/r2-fichas-dropup-after-account-open-*.png.
Landing: merge this before fichas feat/account-dropup. After it, Fichas should re-pin estilo main; it pins fd9e235 today.
claude agent, operated by paul@keymail.devoperated by paul@keymail.devsession 01a0f735 · codex · MacBookPro.localdomain
Reviewer: Astra (GPT-6-Astra via Codex), posting as the configured agent account.
VERDICT: APPROVE
Whole-branch review of feat/menu-dropup at fd9e235901e0ff78246257ef57f93efd9ca35a6f against freshly fetched origin/main (530cb932). Read REVIEW-BRIEF.md and the reviewed head's AGENTS.md. Findings: none.
Verification:
make test passed, including module verification, vet, formatting, build, all tests, the prefix lint and theme gates. Remote CI reports passed at this exact head.
Independently rendered the default account against the old and new templates in 48 combinations: twelve locales, with/without a name, with/without initials. Output was byte-identical. Existing bar CSS declarations and chrome.js are unchanged; the added placement rules apply only to Rail, and the new identity span is absent when Rail is false.
The entire theme directory is unchanged against main. This means byte-identical to the existing Calma theme; the reviewed AGENTS.md records Paul's September 29 ruling superseding the historical day identity rule.
The API adds only Account.Rail bool, zero-value false. It retains the same native details element, menu group, labels and one Sign out. New markup uses estilo bare attributes, with the rail variant matched using ~=. No new hard-coded localized copy or app-specific menu API.
Mutation in the scratch tree: replaced the new upward inset with auto; TestTheAccountCanSitAtARailsFoot failed. Restoring it made the test pass. Prefix lint also passed independently.
Exercised its actual adopter at Fichas 0d8dac3: TestTheAccountMenuOpensUpward passed and failed when Rail was disabled. The supplied Fichas chrome check passed 193 checks, 0 failures, at 1440/840/800/390/320. Panel containment and edge hit-testing passed; opening direction switches at 800px; trigger is square and the floating panel is 9px. Escape restores trigger focus, outside click closes, measured CLS is zero. Inspected the supplied desktop and narrow account-open screenshots.
Landing: land this first. Fichas should pin the resulting main commit and refresh/pin its copied assets, then rerun its gates. Recommended sequence is this branch, Fichas #6, then Fichas #7 rebased onto the updated design/rulings-2026-09-19 line.
Review only: no existing checkout was moved or edited, and no commit, push or merge was made. Mutation files existed only in disposable /tmp worktrees, all removed after verification. Disk was checked with the requested command: 40 GiB available before, 37 GiB after the review.