Rounds 20-23 — pure-alpha shells, restored blooms, layout fixes, calm wave bars, tremor fix#30
Merged
Merged
Conversation
…, tremor fix (rounds 20-23) Round 20 (user reports) : - three-widths : the >=1440 row (320+480+720 ~ 1390px) overflowed the ~1200px narrow section between 1440-1700px and overflow-x:auto SLICED the 720 card -> overflow visible + flex-wrap - shell captures : hasAlpha=false (the .app background sat behind the showcase, omitBackground had nothing to reveal) -> whole ancestor chain transparent at capture ; blooms silently dead (the :has(.mp[data-variant]) selectors no longer matched) -> PlayerShell exposes data-variant + glow selectors extended ; mood captures retaken at the real 2K cell width (536px, chrome parity 0.368 vs 0.369 ratio) Round 21 (hitch hunting, zone profiling) : - corner veil : an internal overlay paints alpha~18 black across the rect incl. corners beyond the radius -> ALPHA EROSION in the sharp pipeline (<32 -> 0), verified rgba(0,0,0,0) at pixel level ; box-shadow killed at capture, re-created via drop-shadow (follows the radius) ; duplicate frame shadow removed - 12 decorative gradient-only filter:blur sites removed (orbs, washes, floors) ; bottom-zone ascent spikes max 236/191 -> 109/55ms - content-visibility REMOVED entirely : added in round-13 against 25 live instances + 74 blur layers ; after shells + blur purge its one-frame re-renders WERE the user-reported hitches - reveal scrub 1 -> 0.75 (0.5 measured WORSE : 42->59% jank) + velocity gate on act swaps (>3000px/s ; re-validated by stable per-zone runs : pin-ascent jank 42-59% -> 18-24%, act lands correct) Round 22 (user design feedback) : - mood blooms had turned into hard rounded RECTANGLES without their blur (ellipse gradient overruns the box) -> blur restored on these STATIC layers (rasterise once, scroll-safe) ; rotate3d halo + phone ambient wash removed outright (user dislike) ; features cards scaled with clamp() (17/14px was lost on 2K -> up to 27/19px) Round 23 (user reports) : - page tremor : the round-18 binary scroll-freeze alternated freeze->catch-up->freeze on slow wheel scrolls -> velocity-gated freeze (isScrollingFast >1500px/s) for bars/pump/particles - AudioBars : per-bar pseudo-random jitter replaced by THREE superposed deterministic travelling sine waves (calm, ocean-like, never visibly repeating), audio-energy modulated when playing ; idle silhouette preserved with a breathing micro-swell ; cheaper (3 sin/bar, no hash) ; visual baselines pass unchanged Validation : ci exit=0 (88 tests, 0 vulns, lib byte-identical v2.3.5 untouched), visual 2/2, responsive 6/6, Axe AA 2/2. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
User-reported fixes
Perf (zone profiling, 2K headed GPU)
content-visibility removed (its one-frame re-renders WERE the hitches): bottom-zone ascent max 236/191 → 109/55 ms · pin-ascent jank 42-59% → 18-24% (scrub 0.75 + velocity-gated act swaps; 0.5 was measured worse and reverted)
Validation
ci exit=0 (88 tests, 0 vulns, lib byte-identical v2.3.5 untouched) · visual 2/2 (bars baselines pass unchanged) · responsive 6/6 · Axe AA 2/2
🤖 Generated with Claude Code