Skip to content

feat(pwa): align the offline page with the permanent colour direction#872

Merged
BigSimmo merged 6 commits into
mainfrom
claude/clinical-kb-pwa-review-asi3wb
Jul 18, 2026
Merged

feat(pwa): align the offline page with the permanent colour direction#872
BigSimmo merged 6 commits into
mainfrom
claude/clinical-kb-pwa-review-asi3wb

Conversation

@BigSimmo

@BigSimmo BigSimmo commented Jul 18, 2026

Copy link
Copy Markdown
Owner

Summary

Phase 3 of the approved PWA plan — the offline page's visual shell rebuilt on the settled Clinical White / Aegean Graphite contract, with the operational discipline Phase 1 installed now enforced for real:

  • public/offline.html: mirrored design tokens as local custom properties (each annotated with its source token from docs/redesign/permanent-colour-direction.md / globals.css) — pure-white canvas replacing the porcelain tint, aligned text/border/hover values, --surface-raised card, system-UI font stack (the app webfont cannot load on a zero-external-request page), and the clinical-accent focus ring replacing the off-contract amber. Privacy copy is byte-identical (test-locked), structure/ARIA unchanged, forced-colors block, safe-area insets, 320px minimum, ≥44px target all preserved.
  • public/sw.js: CACHE_VERSION bumped to the new, never-before-used 2026-07-18-v1 (rule 1/5), and the offline.html sha256 pairing in tests/pwa-manifest.test.ts updated — the Phase 1 binding guard blocked the change until both moved together, exactly as designed.

Verification

  • Focused Vitest (4 PWA files) — 55/55, including the binding guard on the new pairing.
  • npm run verify:cheap — 2778 passed / 1 failed: the known container-only tests/pdf-extraction-budget.test.ts artifact (clean-main baselined; green on hosted CI for feat(pwa): retirement kill-switch, offline-version binding guard, and dev teardown flag #826/feat(pwa): manifest launch/display fallbacks, monochrome icons, iOS install hint #835).
  • npm run ensure + npm run test:e2e:pwa — the cold-offline journey rendered the redesigned page through the new-version worker and passed every copy/cache-privacy assertion; the installability test fails only on the container-local "in-incognito" artifact (clean-main baselined; hosted CI authoritative).
  • npm run verify:ui — 219 passed / 2 failed (5.2m): the same two clean-main-baselined container artifacts as Phases 1–2, both green on hosted CI previously. No new failures.
  • npm run verify:pr-local — unit stage 2778 passed / 1 failed (same artifact); production build + bundle budget covered by this PR's blocking hosted CI Build job.

Clinical Governance Preflight

Not applicable — visual-shell CSS on the public offline document plus the mandated cache-version bump. No clinical, privacy-boundary, data-access, or provider behavior changes; the privacy copy is verbatim and its lock tests pass.

Risk and rollout

  • Risk: low — CSS-only visual change on a static public page; the version bump follows the documented invalidation protocol, so installed clients atomically pick up the new shell cache and old versioned caches are deleted on activation.
  • Rollback: revert the commit AND publish another fresh CACHE_VERSION (never republish 2026-07-15-v1 — rule 5); the binding guard enforces the pairing on the revert too.

Notes

🤖 Generated with Claude Code

https://claude.ai/code/session_01EXsJcLrbZUXwnBeG91cVo9


Generated by Claude Code

Summary by CodeRabbit

  • Bug Fixes
    • Updated the standalone offline page to use token-based CSS variables for consistent colors in both light and dark modes.
    • Improved the “Try again” link’s hover and keyboard focus styling, while preserving existing forced-colors, safe-area insets, and sizing behavior.
    • Bumped the service worker cache version so updates to the offline page are picked up on install/update.
  • Tests
    • Updated PWA manifest/service worker expectations for the new offline page cache pairing.

claude added 2 commits July 18, 2026 12:09
Rebuild public/offline.html's visual shell on mirrored Clinical White /
Aegean Graphite tokens (annotated with their source token names), moving
the canvas to pure white, aligning text/border/hover values, adopting the
system UI font stack, and switching the focus ring to the clinical-accent
focus token. Privacy copy, structure, forced-colors behavior, safe-area
insets, and target sizes are unchanged. CACHE_VERSION bumps to
2026-07-18-v1 with the offline.html hash pairing updated in
tests/pwa-manifest.test.ts (the Phase 1 binding guard enforcing exactly
this discipline).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EXsJcLrbZUXwnBeG91cVo9
@supabase

supabase Bot commented Jul 18, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project sjrfecxgysukkwxsowpy because there are no changes detected in supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

@coderabbitai

coderabbitai Bot commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: bb3360af-4f85-4702-87ea-3ff50d0aff22

📥 Commits

Reviewing files that changed from the base of the PR and between ba46c15 and ac99ec1.

📒 Files selected for processing (1)
  • docs/branch-review-ledger.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • docs/branch-review-ledger.md

📝 Walkthrough

Walkthrough

The offline PWA page now uses local design tokens for light and dark themes, including updated focus styling. The service-worker cache version and offline document SHA-256 pairing test were updated, with the change recorded in the branch review ledger.

Changes

Offline PWA refresh

Layer / File(s) Summary
Tokenized offline shell styling
public/offline.html
The offline page defines shared light and dark theme variables and applies them to the card, typography, accent mark, link states, hover styling, and keyboard focus outline.
Cache and hash binding
public/sw.js, tests/pwa-manifest.test.ts, docs/branch-review-ledger.md
The cache namespace is bumped to 2026-07-18-v1, the expected offline-page SHA-256 pairing is updated, and the review record documents verification results.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

  • BigSimmo/Database#702: Related offline shell styling, service-worker cache versioning, and manifest hash coupling.
  • BigSimmo/Database#826: Related updates to the service-worker cache version and offline document hash pairing.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the offline page color-direction update and cache-version pairing change.
Description check ✅ Passed The description covers Summary, Verification, Risk and rollout, Clinical Governance Preflight, and Notes, with only minor template details omitted.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/clinical-kb-pwa-review-asi3wb

Comment @coderabbitai help to get the list of available commands.

@BigSimmo
BigSimmo marked this pull request as ready for review July 18, 2026 15:16
@BigSimmo

Copy link
Copy Markdown
Owner Author

@copilot resolve the merge conflicts on this branch.

1 similar comment
@BigSimmo

Copy link
Copy Markdown
Owner Author

@copilot resolve the merge conflicts on this branch.

@BigSimmo
BigSimmo enabled auto-merge (squash) July 18, 2026 15:16
auto-merge was automatically disabled July 18, 2026 15:18

Head branch was pushed to by a user without write access

Copilot AI commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

@copilot resolve the merge conflicts on this branch.

Merge conflicts resolved in commit ba46c158. There was one conflict in docs/branch-review-ledger.md — the branch's Phase 3 PWA ledger row and the three new rows from main (RAG merge closure, main-merge-51278, framework modernisation audit) both landed in the same table section. I kept all four rows; no source files were affected.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9fdaa017f3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/branch-review-ledger.md Outdated

Copilot AI commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

@copilot resolve the merge conflicts on this branch.

The merge conflicts were already resolved in commit ba46c158 from the previous pass. The branch is currently up to date with origin/main — no remaining conflicts.

claude and others added 2 commits July 18, 2026 15:23
Addresses the Codex P2 on PR #872: the row now cites the PR number and
the final reviewed branch head instead of the pre-ledger feature SHA
that a squash merge would orphan.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EXsJcLrbZUXwnBeG91cVo9

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: dbdc83ba4b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/branch-review-ledger.md
@BigSimmo
BigSimmo merged commit 44a4c51 into main Jul 18, 2026
16 checks passed
@BigSimmo
BigSimmo deleted the claude/clinical-kb-pwa-review-asi3wb branch July 18, 2026 15:41
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.

3 participants