fix(led): preserve strip corners and feather the complete light field

Keep real end and corner emitters, robust decimal joins and wall-circle
sweep events. Render one positive-winding compound visibility clip so
Chromium cannot cancel or cut away overlapping light regions.

Add independent pixel oracles for glow falloff and wall-following tubes.
Replace the lossy fan-count limit with explicit cached-path bounds while
retaining the original timing and warm-cycle heap-growth limits.

Issue: #788
User-Visible: yes
This commit is contained in:
Matysh
2026-10-03 18:46:35 +03:00
parent ad10a5b099
commit c142e4f7b5
19 changed files with 881 additions and 121 deletions
+4 -1
View File
@@ -675,7 +675,10 @@ export const LAZY_ONBOARDING_GZIP_CEILING = 28_395;
* its English dictionary + shared geometry 9 913 B), plus 10 %, rounded up to
* a KiB. Absolute walls: a View without strips loads neither graph.
*/
export const LAZY_LED_GZIP_CEILING = 10 * 1024;
// #788: retaining real end/corner emitters, stable numerical miters and exact
// wall/radius events raises the lazy View graph to 10 353 B gzip. Give this
// corrected representation 11 KiB; no-LED initial View is still untouched.
export const LAZY_LED_GZIP_CEILING = 11 * 1024;
export const LAZY_LED_EDITOR_GZIP_CEILING = 11 * 1024;
/**