websem: retain non-painted blend sibling extents - #139
Conversation
Preserve bounded rectangle source contributions independently of visible paint, using the existing checked blend-source domain. Keep effect, filter-Hide, disabled-server and normalized-pattern provenance behind named source guards. The independently maintained consumer admits validated paintless rectangles without inventing paint, coverage or damage. Add 70 exact Chromium cells and 26 named refusal witnesses. Promote the old transparent, fill-zero, empty-gradient and stroke-sibling refusal witnesses after old/new paired captures and actual CLI equality. Deliberately drop only their obsolete refusal assertions and files; the semantic witnesses survive as passing cells. No old oracle, tolerance, checklist tick or FLIP change. Omitting the new paintless source union fails 51 new pixel cells; exact source restoration re-gates green. Record manual independent verification because no Workflow runner is exposed.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Warning Review limit reachedNext included review available in 39 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (1)
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: ⛔ Files ignored due to path filters (170)
📒 Files selected for processing (14)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. WalkthroughThe compiler now distinguishes selected transparent or stopless sibling paint from absent paint. It tracks hidden and non-painted source boundaries, admits identity-mapped paintless rectangles in glyphless validation, and adds tests and fixtures for the updated blend source-domain behavior. ChangesSVG sibling source-domain contract
Estimated code review effort: 4 (Complex) | ~45 minutes Merge Risk: ⚪ Minimal · up to The blend source-domain change retains its documented refusal boundaries and adds matching behavior coverage; no actionable merge risk remains. Sequence Diagram(s)sequenceDiagram
participant SVGCompiler
participant PaintServerResolver
participant SpanFacts
participant BlendSourceDomain
SVGCompiler->>PaintServerResolver: Resolve fill or stroke paint
PaintServerResolver-->>SVGCompiler: Return selected, stopless, or disabled state
SVGCompiler->>SpanFacts: Record geometry and source boundaries
SpanFacts-->>SVGCompiler: Return linear-source and completeness facts
SVGCompiler->>BlendSourceDomain: Attach or reject the source domain
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 76.47% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 17 functions across 4 files. (10 skipped: 9 unsupported, 1 too large.) ✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 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 |
|
Addressed the documentation advisory in The reported ast-grep timeout is an incomplete check, not a success. Independent |
|
The follow-up CodeRabbit run is rate-limited; its green status explicitly says |
Measured verdict
Extend B2b's existing complete blend-source domain to unit-opacity, identity-mapped rectangle siblings that contribute an enclosure without painting. A transparent-fill sibling changes a fractional live linear ramp's Multiply/Screen result at 236/342 pixels, maximum channel delta one; invisible width-four solid stroke-only siblings change 291/387. Treating those siblings as absent loses the source origin even though they paint nothing.
The Web producer retains these contributions independently of geometry and opacity passes. An independently maintained n0 consumer unit permits ordinarily validated paintless rectangles inside a declared source without requiring noncontributing geometry enclosure. Painted rectangles/strokes still require enclosure. No new rframe field, painter change, cache, timing claim, or new blend mode.
Review found and closed normalization/elision escapes before admission:
Hidecallers preserve the source boundary.These probe numbers are measured, not positive conformance claims. The unproved effect/resource, mapped, zero-element/container-opacity and root profiles remain named refusals. An ancestor clip around an already completed blend stays admitted.
Evidence and scope
70 new byte-exact Chromium cells; 1,537 primitive/HTML cells total. Four old refusal witnesses are preserved as passing cells after exact old/new pair captures and actual CLI verification; only their obsolete refusal assertions/files are deliberately removed. 26 new refusal witnesses bring the named register to 351. The 16 sampled frames, 16 text-pixel cells and 8 real-font geometry witnesses are unchanged.
Every selected candidate was twice captured through the unchanged hash-pinned
chromium_capture.tsviaprobe_harness.ts, and rendered through the product CLI in strict and best-effort admissions. No old oracle, existing manifest row or tolerance changed. No checklist tick, conformance score or FLIP change. Native opacity, generic damage/coverage, text and external I/O remain separate.Verification
Deliberately excluding only the new paintless source-domain union makes
just gatefail 51 new pixel cells. Exact source restoration returns the full gate to green.Local checks: full nine-crate Web path tests, full n0 trace tests, post-review full websem/n0_cli tests, trace-enabled pixel gate, formatting, strict Clippy,
just bake,just gate,just status, link/manifest/oracle checks and pre-PR OSS audit. Producer-neutral consumer tests guard retained identity/geometry, no extra coverage, strict painted enclosure, balanced saves and changed-view reuse equal to fresh.No Workflow runner was exposed.
.agents/workflows/verify-rung.jswas read but could not be invoked through a Workflow tool. Its independent TICK/LAW and REPRO roles were reproduced manually; all must_fix and should_fix findings were applied. Final independent verdicts and full local completion are confirmed before opening this PR.Admitted slice · rung evidence.