You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The extension builds into an unpacked Manifest V3 package and runs on github.com. On the current Files changed page it injects the toolbar control next to GitHub's file filter. On every other page, including the classic Files changed page, it does nothing.
Both test seams from the spec exist: end-to-end tests that load the built extension in Chromium and serve the fixtures for github.com, and unit tests for pure modules.
Acceptance criteria
One command builds the unpacked extension. The manifest requests only storage and https://github.com/*.
On /pull/<number>/changes, and on its single-commit and commit-range views, the Hide files control appears in the toolbar and follows GitHub's themes through GitHub's CSS custom properties.
The control appears when GitHub navigates to the Files changed page without a full page load, and goes away when the user leaves it.
Nothing is injected on the classic Files changed page or on other GitHub pages.
The extension derives the pull request key (owner/repo#number, lowercase) from the route.
End-to-end tests (Playwright with fixture routing) and unit tests (Vitest) each run with one command. pnpm check and the type check pass.
Update: the implementation was reverted in a619cac. This issue is reopened and its acceptance criteria are unchecked.
Built the Manifest V3 extension skeleton, route detection, theme-aware toolbar control, and fixture-routed Chromium test harness. Validation: pnpm check, pnpm typecheck, 7 unit tests, 5 end-to-end tests, and pnpm build passed. Commit: 4d9984d. No acceptance criteria deferred. The browser policy blocked opening the local prototype; its source and handoff were reviewed.
Built the Manifest V3 skeleton: one content script detects the Files changed page (including /changes/<sha> and /changes/<from>..<to>), follows navigation without a full page load, and injects the Hide files control at the end of the toolbar's start group. It injects nothing on the classic /files page or other pages. The pull request key comes from the route in lowercase.
The in-page styles are ported from design/prototype/index.html value for value. Colors read GitHub's Primer custom properties with the prototype's light and dark values as fallbacks; Mona Sans (SIL OFL 1.1) ships with the extension and loads under GitHub's content security policy.
Tests:
pnpm test:unit: route and pull request key tables (12 tests).
pnpm test:e2e: 6 Chromium tests with the unpacked build and fixture routing (toolbar control, commit and range views, theme custom properties, font under CSP, navigation in and out, classic page untouched).
pnpm test:visual: 6 comparisons of the control (rest, hover with tooltip, keyboard focus; light and dark) against baselines captured from the prototype by pnpm visual:baseline, at zero different pixels.
Activity
ribeirogab commentedon Oct 2, 2026
Update: the implementation was reverted in a619cac. This issue is reopened and its acceptance criteria are unchecked.
Built the Manifest V3 extension skeleton, route detection, theme-aware toolbar control, and fixture-routed Chromium test harness. Validation: pnpm check, pnpm typecheck, 7 unit tests, 5 end-to-end tests, and pnpm build passed. Commit: 4d9984d. No acceptance criteria deferred. The browser policy blocked opening the local prototype; its source and handoff were reviewed.
ribeirogab commentedon Oct 2, 2026
Built the Manifest V3 skeleton: one content script detects the Files changed page (including
/changes/<sha>and/changes/<from>..<to>), follows navigation without a full page load, and injects theHide filescontrol at the end of the toolbar's start group. It injects nothing on the classic/filespage or other pages. The pull request key comes from the route in lowercase.The in-page styles are ported from
design/prototype/index.htmlvalue for value. Colors read GitHub's Primer custom properties with the prototype's light and dark values as fallbacks; Mona Sans (SIL OFL 1.1) ships with the extension and loads under GitHub's content security policy.Tests:
pnpm test:unit: route and pull request key tables (12 tests).pnpm test:e2e: 6 Chromium tests with the unpacked build and fixture routing (toolbar control, commit and range views, theme custom properties, font under CSP, navigation in and out, classic page untouched).pnpm test:visual: 6 comparisons of the control (rest, hover with tooltip, keyboard focus; light and dark) against baselines captured from the prototype bypnpm visual:baseline, at zero different pixels.Commits: e68f909, 306e661. Nothing deferred.