mirror of
https://github.com/penpot/penpot.git
synced 2026-10-31 06:50:33 +00:00
Cross-axis fill sizing reaches distribution before the current line size is initialized. Count eligible items from the minimum fallback, as the update loop already does. Use zero increments when every item is at its maximum, avoiding division by zero. Add portable controls for minimum initialization, redistribution at a cap and fully saturated items. All three raise arithmetic errors before the fix and pass afterward. Generated vertical-fill histories cover the full layout and component pipeline too. Validate the final continuation on common JVM (2004 tests / 32919 assertions), common JS (1940 / 31522), frontend (1745 / 13569), backend (1793 / 9007) and exporter (16 / 40). All four modules pass lint and format. All six generated properties pass 40 programs at seed 712 in both runtimes. Golden data is unchanged. The final continuation benchmark passes with no regression flags. Lower quantile ratios against Phase 1e: main 10/100/1000 0.51/0.58/0.57, three levels 0.57, chain 0.53, library 0.57, many shapes 0.45, variant switch 0.66. Machine/JVM differences make these rough comparisons; baseline unchanged. AI-assisted-by: gpt-6