Fix #381: summary off SWR stale-serve #383

Merged
crueber merged 1 commit from fix/issue-381 into main 2026-09-12 15:34:51 +00:00
Owner

Recommended fix (a): the repo summary leaves ccSWR for the #280 mutable-collab class (private, no-cache, new per-package ccMutable — bare no-cache would drop the private directive the visibility-filtered reads need). ~d/~m/~c/~v ETag suffixes unchanged, so unchanged summaries still 304 (law-6 economics kept; path is off the push/sync/checkpoint budgets). Settings select paints the PUT echo on save so badge and select never disagree one screen (5s prefill TTL kept — ttl=0 would refetch-loop; access:{full} invalidation keys verified to match). Tests: new TestSummaryMutableClassAndETagEconomics (exact composed ETag, no stale-while-revalidate directive, 304 then flip-to-200 then 304); updated summary/319/handlers class pins. Docs: 07_api §4 + §9.1 + Decisions (#280 scope closed with summary listed), 06 §3 table, Apidocs string, 12_web_ui entry. No new deps. Verification: internal/api -race green, 95.2% coverage (gate 95%), node unit 750 pass (2 smoke failures are the foreign live instance on :8080, skip cleanly with no server). No browser (shared-daemon loopback guard per task).

Recommended fix (a): the repo summary leaves ccSWR for the #280 mutable-collab class (private, no-cache, new per-package ccMutable — bare no-cache would drop the private directive the visibility-filtered reads need). ~d/~m/~c/~v ETag suffixes unchanged, so unchanged summaries still 304 (law-6 economics kept; path is off the push/sync/checkpoint budgets). Settings select paints the PUT echo on save so badge and select never disagree one screen (5s prefill TTL kept — ttl=0 would refetch-loop; access:{full} invalidation keys verified to match). Tests: new TestSummaryMutableClassAndETagEconomics (exact composed ETag, no stale-while-revalidate directive, 304 then flip-to-200 then 304); updated summary/319/handlers class pins. Docs: 07_api §4 + §9.1 + Decisions (#280 scope closed with summary listed), 06 §3 table, Apidocs string, 12_web_ui entry. No new deps. Verification: internal/api -race green, 95.2% coverage (gate 95%), node unit 750 pass (2 smoke failures are the foreign live instance on :8080, skip cleanly with no server). No browser (shared-daemon loopback guard per task).
Sign in to join this conversation.
No description provided.