release: v0.1.1213 — unbreak hosted assets and the anti-flash script - #3462
Conversation
#3455 serves the platform CSP floor report-only until a project declares security.csp. #3417 shipped it enforced and it blocked assets on ~100 hosted projects at once -- stock photography, video, object storage, embeds -- including veryfront's own site. Only codersociety and tomcode had declared anything, and the remedy needed a republish, since a hosted project serves config from its deployed release. #3456 stops installing a window global during SSR. next-themes renders its anti-flash script with nonce={typeof window === 'undefined' ? nonce : ''}, so under SSR it emitted nonce="" and CSP blocked it on every render. Still reproducing on codersociety.com right now, hash sha256-Rcq79NsqIRfp7JA/RMr/1IFEj6q7YAyDVrf6BpzxXwM=. #3457 names which branch produced an absent project config and warns when a request falls back to platform-default security headers -- instrumentation for a preview serving the wrong CSP on a third of renders. #3461 derives passive CSP origins from a project's own released source. Pure function, nothing consumes it yet. Also #3458.
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (1)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughWalkthroughThe release version was incremented from ChangesRelease version synchronization
Estimated code review effort: 1 (Trivial) | ~2 minutes Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
The committed bundle embeds VERSION, so bumping it leaves the generated file stale and `generate:manifests:check` fails before typecheck runs. Not caught locally because the test tasks run `deno task generate` first, which quietly regenerated it after the bump. Three files, not two: deno.json, version-constant.ts, and this bundle.
Version bump only —
deno.json+src/utils/version-constant.ts, same two files as v0.1.1212.Ships four merged PRs. Merging this dispatches
veryfront-code-releasedto veryfront-server and the job-runner; a promotion PR pinning the resulting artifact still follows before anything is live.What ships
#3455 — CSP floor report-only until opt-in. #3417 shipped the floor enforced and it blocked assets on ~100 hosted projects at once — stock photography, video, object storage, embeds — including veryfront's own marketing site. Only
codersocietyandtomcodehad declaredsecurity.csp. The remedy required a republish, because a hosted project serves config from its deployed release. Projects that declared a policy keep the enforced header; everyone else gets-Report-Onlywith a byte-identical policy.#3456 — no
windowglobal during SSR. next-themes renders its anti-flash script withnonce={typeof window === 'undefined' ? nonce : ''}; the stub made that take the browser branch, emittingnonce="", which CSP blocks. Still reproducing on codersociety.com as of now, hashsha256-Rcq79NsqIRfp7JA/RMr/1IFEj6q7YAyDVrf6BpzxXwM=.#3457 — config-resolution instrumentation. Names which of four branches produced an absent project config, and warns when a request silently falls back to platform-default security headers. Diagnostic for a preview serving the wrong CSP on ~a third of renders, where six hypotheses have already been falsified.
#3461 — derive passive CSP origins from released source. Pure function; nothing consumes it yet, so no served policy changes.
Plus #3458 (eval/cli gated-metric diagnostics), which was already on main.
Risk
#3455 reduces enforcement for projects that never configured CSP. That is the intended fix and what unblocks the ~100 projects, but it goes to every hosted project at once.
VERYFRONT_CSP_ENFORCEends the rollout when adoption justifies it.Summary by CodeRabbit