v3.9 homepage: figure legibility and video quilt
This is the local verification record for the 2026-11-03 homepage changes. No commit or deployment has been made for this round.
Scope and source
The desktop hero places Collections beside the introduction and stacks it below
the introduction at narrow widths. The opening no longer waits for hero video.
Projects & Ideas retains the PowerPoint-derived BipedalWBC figure and adds an
“In motion” quilt beneath it; the figure SVG itself was not rebuilt or edited.
Edwin selected z_workspace and orientation for the two simulations, lower
for the z-height lab video, and the original board-wiping recording. All labels
use neutral descriptions, and the segments retain original speed. Private
originals, contact sheets, Drive identifiers, crop and segment details are
recorded in the nonpublished experiments/home-redesign/media-source.md.
The four encoded 640×800 MP4s total 783,518 bytes. Their sizes and SHA-256
hashes were checked against that provenance record:
| Clip | Bytes | SHA-256 |
|---|---|---|
| z_workspace | 205,981 | 08478f0d5c52dba6f6d381139374aed1c805d0301e75c936a1c9dcaf90c3dfb7 |
| orientation | 143,166 | fae91c7fd3defb36fb37f6ce75b9f14621bdc8aa58a803762692ad78729dcdd0 |
| lower | 199,810 | 47d2279735074396e608d858edf095cbae4abb30c1c7bade24afdb59b19da645 |
| board | 234,561 | 980eedaaaa205543139f519a2bc0c0af63bfc05ebb825027598a5fff179ea633 |
Checks completed before quilt integration
The following results apply to the earlier partial implementation, not yet to
the final quilt integration:
| Check | Result |
|---|---|
| MkDocs strict build | Passed |
Python unittest discovery |
22 site tests passed with 3 skipped; 138 tools tests passed |
| Figure gate, Chromium, 900px viewport height | 857px width static, 858px animated |
| Figure gate, Chromium, 1440px viewport width | 614px height static, 615px animated |
| Resize during figure pin | Shrinking to 800×900 preserved the measured figure top (0px change), removed the pin spacer, and opened the step descriptions |
| Start Here calibration preview | Four nodes and three edges rendered without a page error |
| Hero | 1440, 1024, 1023 and 390px checked with no horizontal overflow; introductory copy occupied two lines at 1440px |
The project hook emits the smallest source text/math-strip measurement. The
configured threshold is extra.figure.minLabelPx: 9; the current smallest
source label is 10pt. The gate is measured against the predicted animated
canvas, not a fixed viewport-width media query. The 700px breakpoint still
controls the additional static step crops.
Final integration checks
- MkDocs strict build passed after integration. Python unittest discovery ran 23
site tests (3 skipped) and 138 tool tests successfully. The figure-gate
browser regression and the opening's deck, icon and typing checks passed. - Edge headless at 375, 820 and 1440px in both palettes showed one, two and four
columns respectively, no horizontal overflow and aligned quilt/figure edges. - The four sources played; raster, mix and real states and reversal were checked
visually. Save-Data requested no MP4; no-JavaScript and no-WebGL fallbacks
displayed posters. Reduced motion loaded no video until explicit playback. - Pausing persisted across five Home/Friends navigation cycles. Five old WebGL
contexts were released and one remained for the current homepage. Offscreen
clips paused and sufficiently distant sources detached. - At 4× CPU throttling, an Edge DevTools trace measured 607 animation callbacks:
0.78ms mean, 4.03ms P95, 8.59ms maximum. These include other page and test
callbacks and are not complete per-frame measurements; the 4ms target cannot
be claimed as met. - The older
tests/test_figure_anchor_once.cjstimed out waiting for two
removed.research-figurediagrams. It predates their replacement by the
BipedalWBC figure and is not a passing integration check. The current figure
gate and resize regression passed separately.
Safari, a real touch device, the full requested viewport matrix, initial-load
transfer/CLS, pin geometry before and after loading, standalone rAF counts and
five cycles including an ENotes article were not verified. Source-code
reverse-engineering tooling was unavailable; the quilt implements the provided
reference description rather than claiming an independent bundle audit.