Fix #280: third cache class for mutable state #292
No reviewers
Labels
No labels
actions
bug
cli
duplicate
enhancement
fork
forum
git storage
help wanted
insights
invalid
issues
moderation
oidc
ownership transfer
packages
pr/merge protection rules
projects
pull requests
question
releases
sponsorships
tags
webhooks
wiki
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
crueber/walhub!292
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/issue-280"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Supersedes #259's scoped thread fix with the systemic fix #280 proposes: a third cache class
private, no-cachefor mutation-sensitive GETs (07_api.md §4 amended; Decisions entries in 07_api + 07/03/01/08 feature specs).\n\nApplied with version-keyed ETags intact: social counters, releases single/latest/list/autodraft, pull view (ETag folds head/base live shas + thread/pr versions + mergeable stamp — HeadLive alone would 304 a commented thread), identity profile/org/members/team/access (+ tokenless lists take the class without an ETag). Git-content routes (summary/refs/tree/blob/commits, asset bytes, pull diff) keep byte-identical SWR/immutable headers. Issues thread untouched (already no-cache via #259).\n\nTests: table-driven httptest per surface (exact class, stale-ETag → 200 fresh, fresh → 304, token movement on mutation). Coverage: social 99.5 / releases 99.8 / pulls 97.7 / identity 97.2. gofmt/vet clean, -race green (incl. issues + api sanity). SDK comment touch-ups only; JS SDK suite 106/106 (full web glob has pre-existing env hangs, verified on pristine main). No browser run (backend-only; header contract is curl-verifiable).\n\nOut of scope (noted, not built): client invalidate+revalidate belt-and-suspenders (#280 item 4), shared-const consolidation (per-package ccMutable follows the writeCached/matchETag duplication + #259 ccThread precedent).\n\nDo NOT merge — review requested.