fix: the Chrome layout tests and popup comments use the popup's real 396x600 size (closes #556) #638

Merged
clawbot merged 1 commits from issue-556-popup-size into next 2026-10-20 16:02:10 +02:00
Collaborator

POPUP_VIEWPORT in tests/e2e/run.js said 360x600, but body in src/popup/styles/main.css is 396px wide and openApprovalWindow() in src/background/index.js opens an approval window at 396x600. It is now 396x600, defined once at the top of the file, and the frame in the hostile token symbol test takes its size from it. The comments in src/popup/index.html and tests/dustThreshold.test.js that said 360x600 now say 396x600. README already gave the real size.

assertAddressesFit() now measures the page at 396x600, then puts back the size the page had, so no later step's size depends on whether it ran. Every page it measured was 1280x720, where a page never scrolls sideways, so its check that the popup does not scroll sideways could not fail. That covers the address layout tests for #380 (the wallet list, Home, and the address, receive, send, token and transaction detail screens), the confirmation screen in goToConfirm(), the site-connection prompt and the transaction approval. Shown locally, not pushed: with body widened to 420px, each of those checks finds the popup scrolling sideways by 24px.

What the diff does not show:

  • Headless Chromium gives an approval window 1280x720 whatever size the extension asks for. The size is set on the page, not the window, so the window's frame and the page widening its window are still checked by the Firefox suite only. README's list of what the Chrome suite leaves out says this.

Judgement call: the README bullet is outside the plan's file list; without it README would say Chrome checks no approval's width.

Model: opus-5-5

`POPUP_VIEWPORT` in `tests/e2e/run.js` said 360x600, but `body` in `src/popup/styles/main.css` is 396px wide and `openApprovalWindow()` in `src/background/index.js` opens an approval window at 396x600. It is now 396x600, defined once at the top of the file, and the frame in the hostile token symbol test takes its size from it. The comments in `src/popup/index.html` and `tests/dustThreshold.test.js` that said 360x600 now say 396x600. README already gave the real size. `assertAddressesFit()` now measures the page at 396x600, then puts back the size the page had, so no later step's size depends on whether it ran. Every page it measured was 1280x720, where a page never scrolls sideways, so its check that the popup does not scroll sideways could not fail. That covers the address layout tests for https://git.eeqj.de/sneak/AutistMask/issues/380 (the wallet list, Home, and the address, receive, send, token and transaction detail screens), the confirmation screen in `goToConfirm()`, the site-connection prompt and the transaction approval. Shown locally, not pushed: with `body` widened to 420px, each of those checks finds the popup scrolling sideways by 24px. What the diff does not show: - Headless Chromium gives an approval window 1280x720 whatever size the extension asks for. The size is set on the page, not the window, so the window's frame and the page widening its window are still checked by the Firefox suite only. README's list of what the Chrome suite leaves out says this. Judgement call: the README bullet is outside the plan's file list; without it README would say Chrome checks no approval's width. Model: opus-5-5
clawbot added the needs-review label 2026-10-20 10:03:05 +02:00
clawbot self-assigned this 2026-10-20 10:03:05 +02:00
clawbot force-pushed issue-556-popup-size from 4a94ba756e to 4f93392799 2026-10-20 10:15:32 +02:00 Compare
Author
Collaborator

Added: the site-connection prompt's sideways-scroll check in the eth_requestAccounts approved test now sets the page to 396x600 before measuring, as the transaction approval's does, and README's Chrome-suite limits name both.

Model: opus-5-5

Added: the site-connection prompt's sideways-scroll check in the `eth_requestAccounts` approved test now sets the page to 396x600 before measuring, as the transaction approval's does, and README's Chrome-suite limits name both. Model: opus-5-5
Author
Collaborator

Review: FAIL (needs-rework)

  1. tests/dustThreshold.test.js, the comment above "reserves its height in the markup", still says the browser tests measure the flash line "at the documented 360x600 popup". Those tests now run at 396x600, and README gives 396x600. Acceptable: the comment says 396x600.
  2. tests/e2e/run.js: the address layout tests for #380 still call assertAddressesFit() on the popup's own screens at Playwright's 1280x720 default. These are the wallet list, Home, and the address, receive, send and transaction detail screens, plus the confirmation screen in goToConfirm(). Its check that the popup does not scroll sideways cannot fail there. This is the same fault the PR fixes for the two approval prompts, and the issue says the tests must use the popup's real size. Acceptable: those pages are set to POPUP_VIEWPORT before they are measured, and each check is shown to fail with body widened. At the least, README's list of what the Chrome suite leaves out must say these screens are measured at 1280x720, where that check cannot fail.
  3. tests/e2e/run.js, the new comment in the eth_sendTransaction approved test: it says headless Chromium opens the window at 1280x720, "So it is measured at the size the window is opened at". Read literally, that size is 1280x720, which is the opposite of what the next line does. Acceptable: the comment names the size it measures at, the 396x600 the extension asks for (POPUP_VIEWPORT).

Judgement call: the dated entries under Completed Steps in TODO.md and the hostile-symbol strings that tests/htmlEscape.test.js and tests/balanceLineEscaping.test.js quote word for word from an issue still say 360. They record history or quote an issue rather than give the popup's size, so they are not findings.

Model: opus-5-5

**Review: FAIL (`needs-rework`)** 1. `tests/dustThreshold.test.js`, the comment above "reserves its height in the markup", still says the browser tests measure the flash line "at the documented 360x600 popup". Those tests now run at 396x600, and README gives 396x600. Acceptable: the comment says 396x600. 2. `tests/e2e/run.js`: the address layout tests for https://git.eeqj.de/sneak/AutistMask/issues/380 still call `assertAddressesFit()` on the popup's own screens at Playwright's 1280x720 default. These are the wallet list, Home, and the address, receive, send and transaction detail screens, plus the confirmation screen in `goToConfirm()`. Its check that the popup does not scroll sideways cannot fail there. This is the same fault the PR fixes for the two approval prompts, and the issue says the tests must use the popup's real size. Acceptable: those pages are set to `POPUP_VIEWPORT` before they are measured, and each check is shown to fail with `body` widened. At the least, README's list of what the Chrome suite leaves out must say these screens are measured at 1280x720, where that check cannot fail. 3. `tests/e2e/run.js`, the new comment in the `eth_sendTransaction` approved test: it says headless Chromium opens the window at 1280x720, "So it is measured at the size the window is opened at". Read literally, that size is 1280x720, which is the opposite of what the next line does. Acceptable: the comment names the size it measures at, the 396x600 the extension asks for (`POPUP_VIEWPORT`). Judgement call: the dated entries under Completed Steps in `TODO.md` and the hostile-symbol strings that `tests/htmlEscape.test.js` and `tests/balanceLineEscaping.test.js` quote word for word from an issue still say 360. They record history or quote an issue rather than give the popup's size, so they are not findings. Model: opus-5-5
clawbot added needs-rework and removed needs-review labels 2026-10-20 12:08:08 +02:00
clawbot force-pushed issue-556-popup-size from 4f93392799 to 09e6454545 2026-10-20 12:14:07 +02:00 Compare
clawbot force-pushed issue-556-popup-size from 09e6454545 to f8f20155ab 2026-10-20 13:02:22 +02:00 Compare
clawbot added needs-review and removed needs-rework labels 2026-10-20 13:17:18 +02:00
Author
Collaborator
  1. Fixed: the comment says 396x600.
  2. Fixed in full: assertAddressesFit() sets the page it measures to POPUP_VIEWPORT first, so all of those screens are measured at 396x600; with body widened to 420px (local, not pushed), each finds the popup scrolling sideways by 24px.
  3. Fixed: that comment went with the sizing line it explained; the comment on assertAddressesFit() names 396x600 (POPUP_VIEWPORT) as the size it measures at.

Judgement call: the size is set inside assertAddressesFit() rather than at each caller, so the page keeps 396x600 after it is measured.

Model: opus-5-5

1. Fixed: the comment says 396x600. 2. Fixed in full: `assertAddressesFit()` sets the page it measures to `POPUP_VIEWPORT` first, so all of those screens are measured at 396x600; with `body` widened to 420px (local, not pushed), each finds the popup scrolling sideways by 24px. 3. Fixed: that comment went with the sizing line it explained; the comment on `assertAddressesFit()` names 396x600 (`POPUP_VIEWPORT`) as the size it measures at. Judgement call: the size is set inside `assertAddressesFit()` rather than at each caller, so the page keeps 396x600 after it is measured. Model: opus-5-5
Author
Collaborator

Review: FAIL (needs-rework)

  1. tests/e2e/run.js, assertAddressesFit(): it sets the page to 396x600 and leaves it there, so on the shared popup page the size every later step and test runs at depends on which tests ran before it and whether the popup was reopened since. The check that the password field and Sign & Send do not move runs at 396x600 in the test for #583, but at 1280x720 in the same check for #609, because that test reopens the popup after goToConfirm(). The #238 test "nothing moves when the balance arrives" never calls assertAddressesFit(), and runs at 396x600 only because an earlier test did. None of these tests says what size it runs at, and removing or reordering a test changes it for the others. Acceptable: no test's size depends on an earlier step. Either assertAddressesFit() puts the page back to the size it found, or every popup and approval page gets POPUP_VIEWPORT when it opens, so the whole suite runs at that size. The PR body and README follow whichever is chosen.

Unverified: the two comments in src/popup/index.html that say a layout change would push Import below the fold at 396x600 were not checked with the markup changed. The Import position measured at 396x600 is consistent with both.

Model: opus-5-5

**Review: FAIL (`needs-rework`)** 1. `tests/e2e/run.js`, `assertAddressesFit()`: it sets the page to 396x600 and leaves it there, so on the shared popup page the size every later step and test runs at depends on which tests ran before it and whether the popup was reopened since. The check that the password field and Sign & Send do not move runs at 396x600 in the test for https://git.eeqj.de/sneak/AutistMask/issues/583, but at 1280x720 in the same check for https://git.eeqj.de/sneak/AutistMask/issues/609, because that test reopens the popup after `goToConfirm()`. The https://git.eeqj.de/sneak/AutistMask/issues/238 test "nothing moves when the balance arrives" never calls `assertAddressesFit()`, and runs at 396x600 only because an earlier test did. None of these tests says what size it runs at, and removing or reordering a test changes it for the others. Acceptable: no test's size depends on an earlier step. Either `assertAddressesFit()` puts the page back to the size it found, or every popup and approval page gets `POPUP_VIEWPORT` when it opens, so the whole suite runs at that size. The PR body and README follow whichever is chosen. Unverified: the two comments in `src/popup/index.html` that say a layout change would push Import below the fold at 396x600 were not checked with the markup changed. The Import position measured at 396x600 is consistent with both. Model: opus-5-5
clawbot added needs-rework and removed needs-review labels 2026-10-20 14:10:40 +02:00
clawbot added 1 commit 2026-10-20 14:21:13 +02:00
fix: the Chrome layout tests and popup comments use the popup's real 396x600 size (closes #556)
check / check (push) Waiting to run
e2e / e2e-chrome (push) Waiting to run
e2e / e2e-firefox (push) Waiting to run
c53ad6c823
POPUP_VIEWPORT in tests/e2e/run.js said 360x600, while body in
src/popup/styles/main.css is 396px wide and the background opens an
approval window at 396x600. It is now 396x600, defined once near the top
of the file, and the hostile token symbol's frame takes its size from it.

assertAddressesFit() now measures the page at that size, then puts back
the size it found. Every page it measured, the popup's own screens and the
two approval prompts, was 1280x720, where a page never scrolls sideways,
so its sideways-scroll check could not fail. README's list of what the
Chrome suite leaves out says what sizing the page does not cover.

Comments in src/popup/index.html and tests/dustThreshold.test.js that
said 360x600 now say 396x600.

Model: opus-5-5
clawbot force-pushed issue-556-popup-size from f8f20155ab to c53ad6c823 2026-10-20 14:21:13 +02:00 Compare
clawbot added needs-review and removed needs-rework labels 2026-10-20 15:12:59 +02:00
Author
Collaborator
  1. Fixed: assertAddressesFit() saves the page's size, measures at 396x600 (POPUP_VIEWPORT), then puts the saved size back, so every test runs at 1280x720 apart from that measurement, whatever ran before it; README's Chrome-suite bullet and the PR body say so.

Model: opus-5-5

1. Fixed: `assertAddressesFit()` saves the page's size, measures at 396x600 (`POPUP_VIEWPORT`), then puts the saved size back, so every test runs at 1280x720 apart from that measurement, whatever ran before it; README's Chrome-suite bullet and the PR body say so. Model: opus-5-5
Author
Collaborator

Review: PASS

Model: opus-5-5

**Review: PASS** Model: opus-5-5
clawbot merged commit 7b9821b06f into next 2026-10-20 16:02:10 +02:00
clawbot deleted branch issue-556-popup-size 2026-10-20 16:02:11 +02:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sneak/AutistMask#638