Files
pad/web/e2e
xarmian b831e9fe09 feat(web): + badge, Decline, and an accept/decline card on invitation links (BUG-2136 U2) (#1833)
* test(web): red tests for the invitation badge, Decline, and the join-page consent card (BUG-2136 U2)

* feat(web): pending-invitation badge on +, Decline in the list, and an accept/decline card on /join (BUG-2136 U2)

* test(web): a list fetch issued before a decline cannot resurface the row; accept locks Decline (BUG-2136 U2)

* fix(web): a decline orders out list fetches already in flight (BUG-2136 U2)

* test(e2e): the + badge counts and clears, and a decline from + joins nothing (BUG-2136 U2)

* docs: invitations are pending until accepted; the CLI, + menu and join link (BUG-2136)

* test(web): stale list responses across an identity change or an accept; the 2FA sign-in lands on the card (BUG-2136 U2, codex r1)

* fix(web): list responses are fenced by identity and ordered out by an accept; 2FA button says Verify; decline routes documented (BUG-2136 U2, codex r1)

* test(web): /join accept and decline refresh the + badge; the 2FA button reads exactly Verify (BUG-2136 U2, codex r2)

* fix(web): /join accept and decline force-refresh the + badge (BUG-2136 U2, codex r2)

* test(web): the TopBar mount refresh skips the badge throttle (BUG-2136 U2, codex r3)

* fix(web): the TopBar mount refresh is forced (BUG-2136 U2, codex r3)

* test(web): /join follows a code change under the mounted page, drops a late preview, and announces results (BUG-2136 U2, codex r4)

* fix(web): /join restarts its flow per code and acts on the code it shows; results are announced; docs name the CLI (BUG-2136 U2, codex r4)

* test(web): an accept, decline or sign-in in flight across a /join code change does not land on the new code's page (BUG-2136 U2, codex r5)

* fix(web): /join fences every action continuation by flow, and a late sign-in restarts the current flow (BUG-2136 U2, codex r5)

* refactor(web): /join accept keeps one fence, at the landing; a spent proof is cleared whichever page shows (BUG-2136 U2)

* test(web): a /join code change empties the form, keeps an in-flight sign-in busy, and a late signup clears its proof (BUG-2136 U2, codex r6)

* fix(web): a /join code change empties the form and keeps an in-flight sign-in busy; a late signup clears its proof; the username check is fenced (BUG-2136 U2, codex r6)

* test(web): the + list answers the badge under a token reserved before it fetched (BUG-2136 U2, codex r7)

* fix(web): the + list and the badge refresh share one order (BUG-2136 U2, codex r7)

* test(web): the + rows follow the badge store's one order (BUG-2136 U2, codex r8)

* fix(web): the + rows render from the badge store, so one order decides both (BUG-2136 U2, codex r8)

* test(web): the TopBar store double carries the list the + surface renders (BUG-2136 U2)
2026-10-06 13:46:05 -04:00
..