Repository navigation
Keep deferred dashboard summaries honest about snapshot confidence - #143
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The PR141 expanded dashboard summary still says “Moving well / Median wait now” for synthetic 120-minute-old or future retrievals, even when the top-level stale warning is present. Reproduced in the served app in EN/ES desktop/mobile; this does not claim the live feed is failing.
Pass the existing fetch timestamp into the deferred summary and reuse walkDriveFreshness's unchanged 45/90-minute and future/unknown policy. Evaluate the current render clock after a slow import/new response, reevaluate each minute and track browser offline/online events. Keep reported numbers, dates, map selection and filters; use neutral reference labels/ticks/metrics/descriptions when current conditions cannot be verified. A stable polite status announces confidence transitions while the minute-age line remains quiet. Preserve the upstream empty-source validator and genuine zero recovery.
Validation: fresh build and 130 standalone unit tests PASS; complete npm test PASS with 420 navigations for the local data-derived inventory. New independent-clock EN/ES desktop/mobile fixtures cover expiry during held chunk load, mounted expiry without successful response, offline/online, stale/missing/invalid/future timestamps, retained readings/dates, rejected-source empty state and zero recovery. Existing chunk failure/reload recovery, keyboard/menu/focus, filters, storage, sharing/feedback, metadata and previous data-confidence regressions pass. Before/after light/dark captures saved outside source.
Entry remains 61.69 KiB under the unchanged 62 KiB cap. A paired build measures every initial JS dependency: 280,511 → 280,514 gzip bytes (+3). The optional summary own chunk grows 5,861 → 6,520 bytes and imports the existing tiny retrieval guard when opened; no new vendor or initial payload is hidden. Cold simulated samples show opening about 0.30–1.32s, not a production speed/conversion claim. No dependency/lock, feed, threshold, loader, build/audit/budget configuration, security/account setting, credential, ad, paid service or monitor changes.
The historical navigation regression also waits for the target canonical before asserting no inherited card, rather than matching the prior crossing's h1 during a React transition. Its absence assertion and all scenarios remain required. Final local suite passed again with 420 navigations; all six owned owner/fixture pages passed at 4x CPU throttle. Final push CI 39730765971 and PR CI 39730769822 both passed on 84da4c8.
Eight previous worktrees and the original 18 modified paths are preserved. Release only after exact-head CI and concurrent-source readback; use the existing publication workflow once, then verify the served app. Rollback is a scoped src/script inverse via a tested PR, preserving newer collector inputs, PR141's Router mitigation and release history. These checks do not certify all accessibility/security or underlying CBP observations.