Files
open-design/apps/web/tests/styles
Ray XiandGitHub b419463f9e fix(web): switcher menu survives transcript scroll, no selected-card ring, queue drop bar between cards (OPEND-3283/3284/3203) (#8223)
* fix(web): keep the switcher row menu open under transcript scroll, drop the selected-card ring, draw the queue drop bar between cards

OPEND-3283: the project switcher's row ⋮ menu closed on ANY captured document
scroll, so the chat transcript auto-scrolling under a running turn dismissed it
before it could be used. A scroll now only dismisses the menu when it moves the
trigger (the document, or a scroll container that contains the ⋮ button).

OPEND-3284: a selected project card in multi-select mode no longer draws the
hairline ring around the whole card (grid and list). The check badge is the
selected state.

OPEND-3203: the drag-reorder insertion bar was a pseudo-element on the row
inside the card, clipped by the row's overflow: hidden; only its halo leaked
back inside the card. QueuedSendStack now draws one bar in the column, in the
gap between the two cards.

* fix(web): keep the Test campaign modal open across a language switch

The Test runtime republishes with no decision while it reloads for a new
locale, and ProductionCampaignModal dropped the open presentation's claim in
that window. Once the activity had been recorded as displayed, the decision
that came back for the new locale read as a new offer of a recorded activity
and stayed closed — every language switch turned into a permanent close.

The claim now survives a reload of the same deployment (locale swap, lease
renewal) and is released by a dismissal, the runtime going away, or a
different deployment, so a redeployment of a recorded activity still stays
closed as before.

TestCampaignHosts "switches all Test placements together when the client
language changes" flaked on CI on exactly this: whether the visibility frame
had recorded the modal before the switch depended on runner speed. The spec
now waits for that frame so it covers the recorded case deterministically.

* fix(web): scope campaign claims to deployments and use chat theme tokens

Generated-By: looper 0.13.0 (runner=fixer, agent=codex)
2026-09-18 04:09:38 +00:00
..