executable Node VM service-worker lifecycle/fetch tests
headless Chromium at 320×568 and 390×844: offline reload succeeded, Drafts remained reachable, accessible status rendered, and document width matched viewport with no horizontal overflow
Closes #226
## Delivered
- atomically precache the subpath-scoped HTML, manifest, icons, and all first-party modules
- use network-first navigation with an offline shell fallback while never caching API or cross-origin traffic
- preserve unrelated origin caches during worker upgrades
- announce offline mode accessibly and refresh live data after reconnection
- document the exact shell-only offline guarantee
## Verification
- `PYTHONDONTWRITEBYTECODE=1 python3 -m pytest tests/ -q -p no:cacheprovider` — 365 passed
- executable Node VM service-worker lifecycle/fetch tests
- headless Chromium at 320×568 and 390×844: offline reload succeeded, Drafts remained reachable, accessible status rendered, and document width matched viewport with no horizontal overflow
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Closes #226
Delivered
Verification
PYTHONDONTWRITEBYTECODE=1 python3 -m pytest tests/ -q -p no:cacheprovider— 365 passed