CSS Phase C sprint C5 + phase closure: critical-vs-pages dedup (5 winner-safe pairs), Phase D decisions#376
Conversation
… (274 rules) Each critical/*.css shared key-identical twin rules with its page file. Formatting differences meant the byte-level production dedup never removed them - both copies shipped, so deleting the pages side is a real payload cut. SHIPPED for the 5 pairs where the per-selector last-wins winner map is exactly unchanged: about-us (60), careers (58), homepage (81), services (30), single-client (8) = 237 rules... plus per-pair counts above; REVERTED for 4 position-sensitive pairs whose winner maps flipped (clients: a rich-text font-size; single-service + single-use-cases: .clearfix:after display; single-career: the apply form's gform_wrapper display + a var-font twin) - caught by the winner gate after the careers_ruby screenshot regressed deterministically. Those twins are POSITION-LOAD-BEARING (the delta-port headers warned) - logged in the tracker as not-dedupeable without rule-content normalization first. Gate: 5 shipped pairs decl-set identical AND winner-map identical; 4 reverted pairs restored byte-identical to pre-C5. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GYRU9wGepomJo5hSuqtu7V
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GYRU9wGepomJo5hSuqtu7V
|
Warning Review limit reached
Next review available in: 3 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: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (6)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
What this is
The final Phase C sprint plus the phase closure. After this PR, Phase C's five success criteria are all met and the remaining work is a decided, documented Phase D backlog.
C5 — critical-vs-pages twin dedup
Every
critical/*.cssshared 8-81 key-identical rules with itspages/*.cssfile (delta-port leftovers). Formatting differences meant the byte-level production dedup plugin never removed them — both copies shipped, so this is a real payload cut.careers_rubyscreenshot regression showed those twins are position-load-bearing: the pages copies re-override critical-side defaults (gform_wrapperdisplay,.clearfix:after, a rich-text font-size). The delta-port headers had warned "keep cascade position — do not dedupe"; the tracker now records them as fold-then-dedup work for Phase D. This is the second time this session the screenshot gate caught what a set-level static gate missed.Phase C closure (in the tracker)
Scorecard: FL files 0 ✅ · no obfuscated artifacts ✅ (zero hashed classes, zero hash-named files) · no hand-layer duplication ✅ · safe-edit headers + ownership map ✅ · compiled+gzip evidence rule held ✅.
Phase D decisions (made per Paul's delegation): wrapper collapse + fl-* trio retirement deferred (DOM changes need design QA); legacy-shared strangler deferred to own sprints; the 4 twin sets above fold-then-dedup; jt-reviews-box restoration postponed per Paul.
Verification
careers_rubyregression fixed and green; churn-based critical suite 34/52 greenbin/dtest-all): EXIT=0, 119 screenshots, no failures🤖 Generated with Claude Code
https://claude.ai/code/session_01GYRU9wGepomJo5hSuqtu7V