release: v0.1.1207 - #3423
Conversation
|
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits. |
|
Warning Review limit reached
Next review available in: 7 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (2)
Comment |
Description
Cuts
v0.1.1207. Ships the production fixes that landed afterv0.1.1206and are currently released to nobody.503, andimport()never retries — one shed asset killed hydration for a whole page.platform/compat/dynamic-import.tsleaked into theveryfront/chatclient bundle; itsnew FunctionthrowsEvalErrorunder the page CSP (script-srcwith no'unsafe-eval') and kills hydration before first paint.security.cspis now additive against a platform floor instead of replacing the whole policy.#3420 and #3421 are two halves of the same symptom — a project page stuck on its skeleton loaders. Neither fixes it alone: loads that shed zero assets still died on the
EvalError, and loads with noEvalErrorstill died when an asset 503'd.Observed on a production project page, where entry module
9f1ba668…failed to import because chunkbfbed417…(thenew Functionhelper) was refused by CSP. Reproduced from a local build of theai-agentscaffold served under the byte-identical production CSP: the pre-fix build reportsHYDRATION_FAILEDwith the sameEvalErrorat the same asset and column, the post-fix build hydrates clean.Note on #3422 landing in this version
#3422 was queued behind this PR and moved ahead of it, so it lands in
v0.1.1207rather than the version after. That is a safe order, and arguably the better one — the two are complementary:Today, setting
security.cspreplaces the entire policy, and a policy naming neitherscript-srcnordefault-srcleaves script loading unrestricted. Any project that setsecurity.cspwas therefore accidentally not hitting thenew Functionbug. #3422 makes thescript-srcfloor always present, which means that without #3421 the eval would start being blocked for every project rather than only those on the default policy.So #3422 would have widened the blast radius of #3421. Shipping them together is correct; shipping #3422 without #3421 would not have been.
Type of Change
Checklist
Standard three-file bump, same shape as
042f4662c(release: v0.1.1202):deno.jsonsrc/utils/version-constant.tssrc/html/hydration-script-builder/hydration-runtime.generated.tsVerification:
deno task generate:manifests:checkclean, so the committed generated runtime is what the generator emits at this version.deno fmt --checkanddeno lintclean. No stray0.1.1206in the three files. 26/26 CI checks green.Notes for review
Publishing to npm does not by itself recover affected sites. The chain is code → npm → api dep bump → staging → prod, and a project only recovers once redeployed on a framework at or above
0.1.1207.Worth keeping in view during rollout: a renderer below framework
0.1.1189emits v1 asset manifests, which every newer CLI then rejects at deploy time. The deployed renderer needs to move forward with this, not be rolled back behind it.