Skip to content

fix: align homepage coverage and freshness semantics#93

Merged
jerdaw merged 1 commit into
mainfrom
fix/homepage-coverage-cadence-status
Jul 22, 2026
Merged

fix: align homepage coverage and freshness semantics#93
jerdaw merged 1 commit into
mainfrom
fix/homepage-coverage-cadence-status

Conversation

@jerdaw

@jerdaw jerdaw commented Jul 22, 2026

Copy link
Copy Markdown
Owner

Summary

  • server-render exact national coverage from verified, visible database rows
  • replace the static four-hour freshness claim with an hourly source-check contract and explicit scheduler/upstream caveats
  • clarify that /api/status grades distinct UTC measurement-hour completeness while /api/health reports current heartbeat freshness
  • extend production smoke coverage for SSR counts, legacy placeholders, cadence copy, and status-basis metadata

Production evidence

At 2026-07-22T02:24:54Z, all four source heartbeats were healthy at about 88 minutes, while each source had 11 of 24 distinct measurement hours. This correctly produced /api/health.healthy=true and /api/status.system_uptime_24h=0.458; recent GitHub scheduled runs were successful but irregularly spaced.

Verification

  • focused frontend tests: 28 passed
  • frontend type-check, lint, format check: passed
  • production build: passed
  • documentation/roadmap gate: passed
  • backend documentation tests: 15 passed
  • Playwright desktop hydration/refresh and Mobile Chrome coverage checks: passed in the prior local verification

Known prerequisite caveats

  • the broader frontend suite retains five existing equity tests that require the absent Ontario GeoJSON asset
  • type-check:test retains older unrelated Vitest mock-generic errors
  • Mobile Safari remains unavailable locally because the WebKit binary is not installed

Deployment boundary

The private service inventory marks this frontend deployment manual-only. The current checkout does not contain the historical workstation release helper, so this PR does not improvise or execute a production deploy.

@jerdaw
jerdaw merged commit 744fd5c into main Jul 22, 2026
11 checks passed
@jerdaw
jerdaw deleted the fix/homepage-coverage-cadence-status branch July 22, 2026 02:52
@jerdaw

jerdaw commented Jul 22, 2026

Copy link
Copy Markdown
Owner Author

Post-merge production snapshot

Canonical main commit: 744fd5c6c86bc81db0023c928383f080fd152a41

API/HTML check at 2026-07-22T02:54:03Z:

  • /api/hospitals.count=399
  • /api/hospitals.coverage=null (old deployed API)
  • /api/health.healthy=true, stale threshold 120
  • /api/status.overall_status=critical, system_uptime_24h=0.458
  • /api/status.overall_status_basis=null (old deployed API)
  • HTML still contains ...+ Hospitals and Fresh Data Every 4 Hours
  • HTML does not contain Sources Checked Hourly

Independent Chromium check at 2026-07-22T02:56:08Z:

  • SSR/no JavaScript: 4 Provinces...+ HospitalsFresh Data Every 4 Hours
  • after hydration: 4 Provinces / 223+ Hospitals / Fresh Data Every 4 Hours
  • after hard refresh: same hydrated result
  • mobile horizontal overflow: false

The 223 hydrated value is the Ontario-filtered list length, not the national API count of 399.

Production Smoke run 29887041443 failed as expected before deployment:

  • FAIL homepage coverage - missing hospital_count
  • FAIL /api/status - missing expected content: "overall_status_basis":"measurement_hour_completeness_24h"

All other legacy route/API smoke checks passed. The private service inventory marks deployment manual-only, and the current checkout lacks the retained historical workstation release helper, so no deployment was improvised.

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.

1 participant