Skip to content

docs: handoff for the Firefox/AMO work, plus the --click probe (#149) - #151

Open
smsmatt wants to merge 1 commit into
mainfrom
docs/149-firefox-handoff
Open

smsmatt wants to merge 1 commit into
mainfrom
docs/149-firefox-handoff

Conversation

@smsmatt

@smsmatt smsmatt commented Aug 4, 2026

Copy link
Copy Markdown

Closes #150. Related to #149 (the blocker) and #148 (the blocked upload).

Session handoff so tomorrow's pickup is clean, plus the probe that closes the Gecko UI gate gap.

HANDOFF_FIREFOX_AMO.md

Records the state: v1.1.2 tagged, packaged, AMO-clean, credentials verified — and blocked from submission by #149. Carries the root-cause evidence, the one open decision (single branch + port relay + src/platform.ts, with the churn numbers behind it), the unconfirmed popup fullscreen report, and the environment gotchas.

scripts/firefox-smoke.mjs --click

This is what found #149. It clicks a verdict badge and asserts a visible overlay iframe.

The gap it closes: addons-linter passed, all 8 badges rendered, Chrome e2e passed, and the production artifact installed cleanly — while the extension's primary interaction was dead. The only reason we caught it is that M clicked a badge by hand.

AUTO_SCAN=true TRUST_DEV_FIXTURES=true bun run build
bun run serve:fixtures &
node scripts/firefox-smoke.mjs --source-dir dist/firefox --min 5 --click

Expect OVERLAY VISIBLE: NO and exit 1 until #149 lands.

Docs and a test script only — no change to shipped extension code. Wiring --click into CI is deliberately left as follow-up, since the runner choice needs a decision (Firefox on ai auto-updates and could flake).

HANDOFF_FIREFOX_AMO.md records where the session ended: v1.1.2 is tagged,
packaged and AMO-clean (0 linter errors, credentials verified), but must NOT
be submitted because of #149.

Also adds `--click` to scripts/firefox-smoke.mjs, which is what found #149.
It clicks a verdict badge and asserts a visible overlay iframe, then reports
whether the extension iframe ever became visible. Without it the Firefox
build looked green: addons-linter passed and all 8 badges rendered while the
interactive UI was dead. Static validation and "does it render" are not
sufficient signals for a store submission.

Reproduce the blocker:

  AUTO_SCAN=true TRUST_DEV_FIXTURES=true bun run build
  bun run serve:fixtures &
  node scripts/firefox-smoke.mjs --source-dir dist/firefox --min 5 --click

Expect `OVERLAY VISIBLE: NO` and exit 1 until #149 lands.

The handoff also carries the open decision (single branch + port relay +
src/platform.ts, with the churn evidence behind it), the unconfirmed popup
fullscreen report, and the environment gotchas: the container build OOM, the
Firefox auto-update on ai, and the macOS panel-service wedge that made
"Load Temporary Add-on" silently do nothing.
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown

E2E Test Results

Test Command:

bun run build:e2e && bunx playwright test

The suite is a real gate: a failure here fails the check. Four specs
remain test.fixme against open issues (#24, #50, #85) and report
as skipped, not passed.

See test/e2e/README.md for details on running tests locally.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Close the Gecko UI gate gap: no test catches a broken interactive path in Firefox

1 participant