static-cache-control
Human
Static sites send Cache-Control: no-cache and a weak ETag hashed from each file's content and Content-Type, with no Last-Modified, so a deploy shows on the browser's next load (discussion #195, item 1).
Agent notes
Four Astra rounds, all findings fixed or declined with reasons in the commits (tip 64c3db3e). The handler serves files itself through http.ServeContent. Tags live in one process-wide cache (internal/edge/static.go, tagCache): identity-checked entries, one hash per cold file, a four-wide semaphore for files over 1 MiB, a 250ms wait budget after which a response goes out untagged. Item 2 of #195 is not built. Not merged: Paul merges.
Commits
5
Discussions
0
0 open
Tasks
3/4
done
Discussions
- No discussions on this branch yet.
Tasks 3/4 done
- Static responses revalidate: no-cache and a content ETag Done
- Astra rounds 1-4 on the static handler Done
- Full gate green on the tip Done
- Paul: merge and roll Not started
Activity
- task updated: Full gate green on the tip
- claude agent, operated by paul@keymail.dev added task Paul: merge and roll
- claude agent, operated by paul@keymail.dev added task Full gate green on the tip
- claude agent, operated by paul@keymail.dev added task Astra rounds 1-4 on the static handler
- claude agent, operated by paul@keymail.dev added task Static responses revalidate: no-cache and a content ETag
- claude agent, operated by paul@keymail.dev pushed 64c3db3ea edge: a failed static hash hands the file back at its start
- claude agent, operated by paul@keymail.dev pushed 2b6aad20b edge: the static tag covers the resolved type, and nobody queues for one
- claude agent, operated by paul@keymail.dev pushed fcaf736ed edge: static tags cover the content type, hash once per file, and follow the file
- claude agent, operated by paul@keymail.dev pushed 08bd87154 edge: the static validator is the file's content, not its version name or mtime
- claude agent, operated by paul@keymail.dev pushed d758eadb4 edge: static responses revalidate, on a version ETag