Sets — locations × seasons

Five clocks across one set beat 1/Δf, phased lull → building → peak → easing → lull.

Provenance

captured
2026-09-24T14:21:53.140Z
built
2026-09-24T14:21:53.140Z
commit
b78be48 · b78be483a6750031f2f59e0b7e5d1372d4aaca60
branch
main
working tree
clean
app build
9e29e81ae09b — sha256/12 over the files build_site.py ships as sim/
note
2026-09-24: site unmirrored (604ea6a), reef refit with intertidal crest (56219d7)
links resolve to
../sim/ (published mode)

What this is. A QA instrument. Deterministic captures of the pointbreak wave model at clocks pinned by the model itself, laid out so a defect is visible by scanning rather than by hunting. Every cell is labelled with the exact URL hash it was taken at and links into the simulator at that state, so any frame here can be reopened and argued with.

What this is not. Not a validation. The model is unvalidated against measured surf — a first validation pass, model residuals against an independent record of a specific day, is the largest open gap in the project. These sheets check the model against itself: that it is deterministic, that its phases differ, that something breaks where something should. They cannot tell you whether it matches Pleasure Point. Not a surf report, not a forecast, and not usable for any decision about entering the water.

What a still cannot show. No frame here supports a claim with a verb of motion in it. What each cell states is a position at a known clock, read out of the model; the frames are ordered by the model's own clock rather than by inspection, so a reader may compare those positions across a row. The pictures themselves still cannot tell you which way anything is going, and nothing on these pages is measured off them except the pixel foam fraction, which is labelled as such.

Licence. Code, docs and these renders are MIT (© 2026 Andy Edmonds). The frames are Produced Works under ODbL — the coastline geometry they are drawn over is OpenStreetMap-derived, and the seabed is NOAA NCEI (public domain). Attribution below is required; share-alike is not triggered by a rendering. The full file-by-file split is LICENSES.md in the repository.

Coastline & spots: OpenStreetMap contributors, ODbL 1.0 · Bathymetry: NOAA NCEI Monterey Bay 1/3″ coastal DEM, NAVD88 · Seasonality: CDIP MOP v1.1 SC116 hindcast (Scripps).

This is the published view: 7 of 13 rows. The full local sheet runs all seven site presets at month=january plus two presets across three months. Published here are three sites and two months. The sites are Sewers (ξ 1.15, the most plunging in the bank), Second Peak (ξ 0.65, the most spilling) and Privates (the down-point site, mapped on 2026-09-02 on a truncated contour window, whose reef fit does not converge — 7.6° against 31° — so its rows show the surveyed platform's own peel; until that date it was the one synthetic-stage site and the source of this page's n/a readings) — the two ends of the breaker-character range plus the edge case. The four omitted sites sit between Sewers and Second Peak. The months are January and August, the two the CDIP record actually separates: H₀ p75 1.245 m against 0.585 m, with zero hours at or above Hs 1.3 m across twenty-five Augusts. October is the shoulder month and is in the local sheet to catch a monotonicity break, which is QA rather than exposition. All five clocks are kept in every row: lull → building → peak → easing → lull is the demonstration.

viewport
1000 × 625 px, deviceScaleFactor 1
pinned
controls=0&q=high&speed=0 — frozen clock, no UI in frame, quality tier pinned
clock spacing
set beat 1/Δf = 125.0 s (Δf = 0.008 Hz), columns 31.25 s apart. setEnv peaks at the live break line at t = SET_ANCHOR_S = 45 s (#arm anchor re-references the envelope to u_setRef = -92.6 m, so the s/cg term cancels there); columns are 45 + P·(0.5 + k/4), k = 0..4 — a full beat from lull through the peak back to lull.
numbers
env — set envelope at the break line, through the repo's own setEnv twin (web-three/js/model-js.js) fed from the live uniforms.
crest — tallest displaced surface point on the ±45 m shore-normal transect nearest where the camera is aimed, read straight off the GPU through __pointbreak.curlProbe (which runs the shipped shader chunk, not a re-derivation). One of 11 transects along the stage; the stage-wide max is in the JSON as crestMaxM, and it barely moves across a wave period because some wave is always cresting somewhere on 200 m of line. These are displayed metres — the renderer applies a viewing gain of VIS = 3.2 (shared/model-glsl.js), so they are not physical wave heights.
crest±T/2 (set sheet only) — the same read swept across one full wave period centred on the column clock (12 sub-clocks) and maxed: the tallest wave to cross that station around this moment. This is the set sheet's headline number, and inst beside it is the single instant the frame shows. A set beat is 31–42 s per column against a 12–15 s wave, so the two are unrelated phases and an instant aliases the carrier into a number that claims to be about sets — measured at The Hook, the instant reads 3.13 m in the peak column where the envelope reads 5.27 m and the biggest wave (5.30 m) crossed 3.9 s earlier. When they disagree, the wave is simply between crests at that station in that frame.
foammodel — the shader's own foam field at those same transects: peak value, and the share of the 11 stations carrying foam ≥ 0.15. Camera-independent, so the framing cannot move it.
foampix — the camera's answer: share of samples at luma ≥ 160 over the whitewater attachment corridor, 25 points per line station spanning -15 m to +45 m across the break line in world metres (sections shift included), each the max of its 3×3 neighbourhood. Reads n/a where there is no baked line to project (no shipped preset since Privates was mapped on 2026-09-02). It is corridor-local: whitewater that has already advected shoreward is outside it by design.
ceilM (JSON only) — the depth-limited crest ceiling 0.8·VIS·min(H₀Ks, γh) at those transects. null at a site with no measured bed, and that is a result, not a gap: such a site runs u_depthMix = 0, the seabed sampler is a 1×1 stand-in, and the depth the shader reads back is the storage format's own quantization floor (a flat 30.91 m stage-wide) rather than a seabed. γh then never binds and the "ceiling" is 1.878·H₀ wearing a depth limit's name, while the crest above it came from the depth-free synthetic branch. A site with no measured bed has no ceiling to be over. Privates was that site until 2026-09-02 (its January set-peak crest, 5.32 m, was in family with the six mapped sites' 4.99–5.32 m on the same day); on the mapped bed its ceiling is a depth and prints like the others'.
links
Every hash is a live link into ../sim/web-three/ at that exact state, so clicking a suspicious frame drops you into the simulator at it. Those links are relative to this page and resolve against the simulator published beside the essay, so they work wherever this bundle is served from. Row headers link to column 1. Clicking the image opens that frame on its own. Frames were captured at 1000×625 and are published at 800×500 WebP to keep this page a reasonable download; every measurement on it was taken from the full-resolution capture before any crop, marker or downscale, and the hash link reopens the state at full fidelity in the simulator, which is better evidence than any still. Captures were taken on their own separate port so they never touched your dev server.

Locations — three presets, month=january

The location axis: three shipped site presets at the same climatological month, so what differs between rows is the reef. Sewers and Second Peak are the ends of the breaker-character range (ξ 1.15 against 0.65); Privates is the down-point site whose bed was mapped on 2026-09-02 and whose reef fit does not converge (7.6° against 31°), so its rows show the surveyed platform's own peel.

row ↓ / clock →
1. lullanchor
2. building+1/4 beat
3. SET PEAK+1/2 beat
4. easing+3/4 beat
5. lull+1 beat
Sewers preset=sewers
H₀
1.54 m drawn · asked January p75 1.245 m · floor applied; reef in play from 1.21 m
T
15.0 s
tide
0.00 m
Δf
0.008 Hz
ξ
1.15
step
31.25 s
cam drift
0.00 m
foam on the crest — → — → — → — → — ✗
OSM/NCEI Sewer Peak · u 403 m · reef -1.53 m NAVD88 · breaker anatomy · bed measured+reef · January · p75 climatology #cam=drone&preset=sewers&month=january&controls=0&q=high&speed=0
frame at sim 107.5 s
t 107.5 s
env 0.15 crest±T/2 1.64 minst 1.37
foammodel 0.06 (0% of stage) foampix 0.0%
#cam=drone&preset=sewers&month=january&controls=0&q=high&speed=0&sim=107.5
frame at sim 138.75 s
t 138.8 s
env 0.57 crest±T/2 5.35 minst 5.11
foammodel 0.37 (55% of stage) foampix 0.1%
#cam=drone&preset=sewers&month=january&controls=0&q=high&speed=0&sim=138.75
frame at sim 170 s
t 170.0 sSET PEAK
env 1.00 crest±T/2 6.20 minst 6.12
foammodel 0.76 (91% of stage) foampix 11.2%
#cam=drone&preset=sewers&month=january&controls=0&q=high&speed=0&sim=170
frame at sim 201.25 s
t 201.3 s
env 0.57 crest±T/2 3.35 minst 2.47
foammodel 0.68 (55% of stage) foampix 6.7%
#cam=drone&preset=sewers&month=january&controls=0&q=high&speed=0&sim=201.25
frame at sim 232.5 s
t 232.5 s
env 0.15 crest±T/2 1.26 minst 1.22
foammodel 0.11 (0% of stage) foampix 0.0%
#cam=drone&preset=sewers&month=january&controls=0&q=high&speed=0&sim=232.5
Second Peak preset=secondpeak
H₀
1.25 m
T
14.0 s
tide
0.00 m
Δf
0.006 Hz
ξ
0.65
step
41.67 s
cam drift
0.00 m
foam on the crest — → — → — → — → — ✗
OSM/NCEI Second Peak · u 668 m · reef -1.30 m NAVD88 · breaker anatomy · bed measured+reef · January · p75 climatology #cam=drone&preset=secondpeak&month=january&controls=0&q=high&speed=0
frame at sim 128.33 s
t 128.3 s
env 0.15 crest±T/2 0.85 minst 0.69
foammodel 0.07 (0% of stage) foampix 0.0%
#cam=drone&preset=secondpeak&month=january&controls=0&q=high&speed=0&sim=128.33
frame at sim 170 s
t 170.0 s
env 0.57 crest±T/2 3.22 minst 2.92
foammodel 0.49 (82% of stage) foampix 0.1%
#cam=drone&preset=secondpeak&month=january&controls=0&q=high&speed=0&sim=170
frame at sim 211.67 s
t 211.7 sSET PEAK
env 1.00 crest±T/2 5.21 minst 5.21
foammodel 0.89 (100% of stage) foampix 20.8%
#cam=drone&preset=secondpeak&month=january&controls=0&q=high&speed=0&sim=211.67
frame at sim 253.33 s
t 253.3 s
env 0.57 crest±T/2 3.06 minst 2.90
foammodel 0.64 (91% of stage) foampix 6.0%
#cam=drone&preset=secondpeak&month=january&controls=0&q=high&speed=0&sim=253.33
frame at sim 295 s
t 295.0 s
env 0.15 crest±T/2 0.87 minst 0.80
foammodel 0.05 (0% of stage) foampix 0.0%
#cam=drone&preset=secondpeak&month=january&controls=0&q=high&speed=0&sim=295
Privates preset=privates · mapped 2026-09-02 (truncated contour, 1.87 m RMS) · reef fit does not converge (7.6° vs 31°) · wedge activates at 0.72 m, above the 0.70 m card — the peel is the surveyed platform's
H₀
1.25 m
T
12.0 s
tide
0.00 m
Δf
0.006 Hz
ξ
0.35
step
41.67 s
cam drift
0.00 m
foam on the crest — → — → — → — → — ✗
OSM/NCEI Private's · u 1977 m · reef -0.52 m NAVD88 · breaker anatomy · bed measured+reef · January · p75 climatology #cam=drone&preset=privates&month=january&controls=0&q=high&speed=0
frame at sim 128.33 s
t 128.3 s
env 0.15 crest±T/2 0.95 minst 0.52
foammodel 0.06 (0% of stage) foampix 0.0%
#cam=drone&preset=privates&month=january&controls=0&q=high&speed=0&sim=128.33
frame at sim 170 s
t 170.0 s
env 0.57 crest±T/2 3.79 minst 3.07
foammodel 0.50 (100% of stage) foampix 0.0%
#cam=drone&preset=privates&month=january&controls=0&q=high&speed=0&sim=170
frame at sim 211.67 s
t 211.7 sSET PEAK
env 1.00 crest±T/2 5.16 minst 3.99
foammodel 0.85 (100% of stage) foampix 6.1%
#cam=drone&preset=privates&month=january&controls=0&q=high&speed=0&sim=211.67
frame at sim 253.33 s
t 253.3 s
env 0.57 crest±T/2 2.81 minst 1.86
foammodel 0.39 (100% of stage) foampix 1.6%
#cam=drone&preset=privates&month=january&controls=0&q=high&speed=0&sim=253.33
frame at sim 295 s
t 295.0 s
env 0.15 crest±T/2 0.95 minst 0.78
foammodel 0.07 (0% of stage) foampix 0.0%
#cam=drone&preset=privates&month=january&controls=0&q=high&speed=0&sim=295

Seasons — two presets × two months

The season axis at its two extremes: January (the peak month, H₀ p75 1.245 m) against August (the flat request, 0.585 m). The shipped peel floor may raise the drawn H₀; Sewers collapses both requests to 1.54 m, while Second Peak draws 1.245 m against 0.47 m. Each row header prints asked and drawn H₀ and whether the asked height reaches the reef. See "What month actually does".

row ↓ / clock →
1. lullanchor
2. building+1/4 beat
3. SET PEAK+1/2 beat
4. easing+3/4 beat
5. lull+1 beat
Sewers · January the big month — asked H₀ p75 1.245 m; drawn H₀ in the header
H₀
1.54 m drawn · asked January p75 1.245 m · floor applied; reef in play from 1.21 m
T
15.0 s
tide
0.00 m
Δf
0.008 Hz
ξ
1.15
step
31.25 s
cam drift
0.00 m
foam on the crest — → — → — → — → — ✗
OSM/NCEI Sewer Peak · u 403 m · reef -1.53 m NAVD88 · breaker anatomy · bed measured+reef · January · p75 climatology #cam=drone&preset=sewers&month=january&controls=0&q=high&speed=0
frame at sim 107.5 s
t 107.5 s
env 0.15 crest±T/2 1.64 minst 1.37
foammodel 0.06 (0% of stage) foampix 0.0%
#cam=drone&preset=sewers&month=january&controls=0&q=high&speed=0&sim=107.5
frame at sim 138.75 s
t 138.8 s
env 0.57 crest±T/2 5.35 minst 5.11
foammodel 0.37 (55% of stage) foampix 0.1%
#cam=drone&preset=sewers&month=january&controls=0&q=high&speed=0&sim=138.75
frame at sim 170 s
t 170.0 sSET PEAK
env 1.00 crest±T/2 6.20 minst 6.12
foammodel 0.76 (91% of stage) foampix 11.2%
#cam=drone&preset=sewers&month=january&controls=0&q=high&speed=0&sim=170
frame at sim 201.25 s
t 201.3 s
env 0.57 crest±T/2 3.35 minst 2.47
foammodel 0.68 (55% of stage) foampix 6.7%
#cam=drone&preset=sewers&month=january&controls=0&q=high&speed=0&sim=201.25
frame at sim 232.5 s
t 232.5 s
env 0.15 crest±T/2 1.26 minst 1.22
foammodel 0.11 (0% of stage) foampix 0.0%
#cam=drone&preset=sewers&month=january&controls=0&q=high&speed=0&sim=232.5
Sewers · August the flat one — asked H₀ p75 0.585 m; ZERO hours ≥ 1.3 m in 25 years; drawn H₀ in the header
H₀
1.54 m drawn · asked August p75 0.585 m · floor applied; reef inactive below 1.21 m — n/a as a season (a lull, not a smaller wave)
T
15.0 s
tide
0.00 m
Δf
0.008 Hz
ξ
1.15
step
31.25 s
cam drift
0.00 m
foam on the crest — → — → — → — → — ✗
OSM/NCEI Sewer Peak · u 403 m · reef -1.53 m NAVD88 · breaker anatomy · bed measured+reef · August · p75 climatology #cam=drone&preset=sewers&month=august&controls=0&q=high&speed=0
frame at sim 107.5 s
t 107.5 s
env 0.15 crest±T/2 1.64 minst 1.37
foammodel 0.06 (0% of stage) foampix 0.0%
#cam=drone&preset=sewers&month=august&controls=0&q=high&speed=0&sim=107.5
frame at sim 138.75 s
t 138.8 s
env 0.57 crest±T/2 5.35 minst 5.11
foammodel 0.37 (55% of stage) foampix 0.1%
#cam=drone&preset=sewers&month=august&controls=0&q=high&speed=0&sim=138.75
frame at sim 170 s
t 170.0 sSET PEAK
env 1.00 crest±T/2 6.20 minst 6.12
foammodel 0.76 (91% of stage) foampix 11.2%
#cam=drone&preset=sewers&month=august&controls=0&q=high&speed=0&sim=170
frame at sim 201.25 s
t 201.3 s
env 0.57 crest±T/2 3.35 minst 2.47
foammodel 0.68 (55% of stage) foampix 6.7%
#cam=drone&preset=sewers&month=august&controls=0&q=high&speed=0&sim=201.25
frame at sim 232.5 s
t 232.5 s
env 0.15 crest±T/2 1.26 minst 1.22
foammodel 0.11 (0% of stage) foampix 0.0%
#cam=drone&preset=sewers&month=august&controls=0&q=high&speed=0&sim=232.5
Second Peak · January the big month — asked H₀ p75 1.245 m; drawn H₀ in the header
H₀
1.25 m
T
14.0 s
tide
0.00 m
Δf
0.006 Hz
ξ
0.65
step
41.67 s
cam drift
0.00 m
foam on the crest — → — → — → — → — ✗
OSM/NCEI Second Peak · u 668 m · reef -1.30 m NAVD88 · breaker anatomy · bed measured+reef · January · p75 climatology #cam=drone&preset=secondpeak&month=january&controls=0&q=high&speed=0
frame at sim 128.33 s
t 128.3 s
env 0.15 crest±T/2 0.85 minst 0.69
foammodel 0.07 (0% of stage) foampix 0.0%
#cam=drone&preset=secondpeak&month=january&controls=0&q=high&speed=0&sim=128.33
frame at sim 170 s
t 170.0 s
env 0.57 crest±T/2 3.22 minst 2.92
foammodel 0.49 (82% of stage) foampix 0.1%
#cam=drone&preset=secondpeak&month=january&controls=0&q=high&speed=0&sim=170
frame at sim 211.67 s
t 211.7 sSET PEAK
env 1.00 crest±T/2 5.21 minst 5.21
foammodel 0.89 (100% of stage) foampix 20.8%
#cam=drone&preset=secondpeak&month=january&controls=0&q=high&speed=0&sim=211.67
frame at sim 253.33 s
t 253.3 s
env 0.57 crest±T/2 3.06 minst 2.90
foammodel 0.64 (91% of stage) foampix 6.0%
#cam=drone&preset=secondpeak&month=january&controls=0&q=high&speed=0&sim=253.33
frame at sim 295 s
t 295.0 s
env 0.15 crest±T/2 0.87 minst 0.80
foammodel 0.05 (0% of stage) foampix 0.0%
#cam=drone&preset=secondpeak&month=january&controls=0&q=high&speed=0&sim=295
Second Peak · August the flat one — asked H₀ p75 0.585 m; ZERO hours ≥ 1.3 m in 25 years; drawn H₀ in the header
H₀
0.58 m
T
14.0 s
tide
0.00 m
Δf
0.006 Hz
ξ
0.65
step
41.67 s
cam drift
0.00 m
foam on the crest — → — → — → — → — ✗
OSM/NCEI Second Peak · u 668 m · reef -1.30 m NAVD88 · breaker anatomy · bed measured+reef · August · p75 climatology #cam=drone&preset=secondpeak&month=august&controls=0&q=high&speed=0
frame at sim 128.33 s
t 128.3 s
env 0.15 crest±T/2 0.50 minst 0.41
foammodel 0.04 (0% of stage) foampix 1.5%
#cam=drone&preset=secondpeak&month=august&controls=0&q=high&speed=0&sim=128.33
frame at sim 170 s
t 170.0 s
env 0.57 crest±T/2 2.36 minst 1.65
foammodel 0.25 (36% of stage) foampix 2.6%
#cam=drone&preset=secondpeak&month=august&controls=0&q=high&speed=0&sim=170
frame at sim 211.67 s
t 211.7 sSET PEAK
env 1.00 crest±T/2 3.06 minst 2.34
foammodel 0.57 (73% of stage) foampix 2.6%
#cam=drone&preset=secondpeak&month=august&controls=0&q=high&speed=0&sim=211.67
frame at sim 253.33 s
t 253.3 s
env 0.57 crest±T/2 2.09 minst 1.05
foammodel 0.22 (55% of stage) foampix 2.7%
#cam=drone&preset=secondpeak&month=august&controls=0&q=high&speed=0&sim=253.33
frame at sim 295 s
t 295.0 s
env 0.15 crest±T/2 0.54 minst 0.42
foammodel 0.04 (0% of stage) foampix 1.8%
#cam=drone&preset=secondpeak&month=august&controls=0&q=high&speed=0&sim=295

What month= actually does. It sets H₀ to that month's p75 significant wave height at CDIP SC116 (MOP v1.1, whole years 2000–2024, 218,975 hours used), de-shoaled from the 15 m contour to the deep-water H₀ the shader re-shoals from. Size only. Period is seasonless in this data — the interpolated spectral peak is 14.4–15.2 s in every month — so a month restores the site card's own T, chop and Δf and changes nothing but height. Tide is not a CDIP product and is left alone. month= and day= are mutually exclusive; an explicit h0= beats both. August is the flat one for a measured reason: across 2000–2024 there are zero hours at or above Hs 1.3 m in July or August. See docs/research/PP_CDIP_CLIMATOLOGY.md.

The requested and drawn heights are not always the same. Monthly p75 is routed through the shipped peel floor before rendering. In this sampled matrix Sewers raises January, October and August to the same 1.54 m drawn H₀; Second Peak keeps January at 1.245 m and raises October/August to 0.47 m. Identical Sewers season rows are therefore a visible cost of the current model policy, not stale captures. Every row header prints both heights — asked (the climatology) and drawn (what the frames show) — with the verdict beside them: floor applied where the asked height reaches the reef but not a peel, or reef inactive … n/a as a season where it does not reach the reef at all. That second case is the summer at Sewers and Second Peak: the reef's own activation height (the depth of the wedge's shallowest cell — Sewers 1.24 m, Second Peak 1.00 m at tide 0) sits above the August p75, so the season there is a lull and the frames in that row are the floor's wave, not August's. The requested climatology also remains in the row label and permalink. See docs/MODEL.md §4.6, docs/research/REEF_ACTIVATION_2026-09-01.md and the clamp control.

What is on this sheet. The location axis is all seven presets at month=january (7 rows). The season axis is two presets × three months (6 rows): January the peak month, October the autumn shoulder, August the flat one. privates is the down-point site: mapped on 2026-09-02 (truncated contour, 1.87 m RMS), but its synthetic reef fit does not converge (7.6° against 31°) and its wedge activates at 0.72 m, above the 0.70 m card, so the card-state line is the surveyed platform's own peel and the app's readout says reef synthetic. Camera is cam=drone throughout: a set is a property of the whole lineup, and the overhead view is the one that shows the envelope arriving down the point.

What was left out. 7 presets × 12 months × 5 clocks would be 420 frames. The sampled 7 + 6 = 13 rows cover the location axis completely at one month and the season axis at its two extremes plus a shoulder, on the two sites with the most contrast in ξ (Sewers 1.15, Second Peak 0.65). Not sampled: the other five presets across months; the nine unsampled months; any tide or Δf variation (a month touches neither).

Why the crest number is swept, not sampled (2026-08-19). A set sheet is about the envelope, and this sheet's columns are one quarter of a set beat apart — 31–42 s — against a carrier wave of 12–15 s. Those two periods have no relation, so a single-instant crest at one station lands on an arbitrary point of the passing wave in every column. It looked exactly like a model defect: The Hook read 1.04 / 3.63 / 3.13 / 1.25 / 0.98 m across the beat, a set apparently peaking a column early and half over by the peak column. Sweeping that same station every 1 s across the beat found waves of 2.11–5.30 m with the biggest arriving at t = 184 s, 3.9 s (0.027 beat) before the peak column's own clock — the envelope was where it was designed to be and the instrument was reading between two waves. The headline crest±T/2 is now the max over one carrier period centred on the column clock; the instant is printed beside it because that is what the frame shows. Nothing in the model moved. See docs/research/MEASUREMENT_LESSONS.md 12.

Why the lull is not flat. #env floors the set envelope at 0.15 instead of exactly zero — env = (1−m) + m·cos(…), m = 0.425, so the peak is unchanged at 1.0 by construction and only the trough rises. That floor is derived from the SC116 spectra two independent ways, not picked. Columns 1 and 5 are the lull; if they read as dead flat water, that is the regression this sheet is for.

Where this sheet says n/a, and why. Two measures go blank at any site with no baked break line. foampix needs a baked line to project a corridor onto; with no measured bed there is no baked line, so there is nothing to sample and the cell reads n/a instead of sampling an arbitrary band of pixels. ceilM, the depth-limited crest ceiling in the JSON, is null for the same root cause one step further on: such a site runs u_depthMix = 0, the seabed sampler is a 1×1 stand-in, and the depth the shader reads back is the storage format's quantization floor rather than a seabed — so γh never binds and the "ceiling" would be 1.878·H₀ wearing a depth limit's name. A site with no measured bed has no ceiling to be over. Privates was that site until 2026-09-02, when its bed was mapped on a truncated contour window (1.87 m RMS); an earlier sheet did print the degenerate number there and produced a headline defect ("2.2× over its ceiling") that was entirely an artifact of dividing by it. On a build from the mapped bed every Privates cell carries real reads — its ceiling at the card is 1.41–1.58 m of water under the line and its set-peak pocket fill is 1.17, at the top of the mapped family — and n/a should appear nowhere on these pages; if it does, a preset has failed closed and this note explains the blank.

Method caveat. Column 1 of every row is captured from a cold load at its own #sim=; columns 2–5 advance the clock with __pointbreak.setSim() plus two rAF ticks — the mode scripts/capture_temporal.mjs validated against per-frame reloads. Each cell's hash reproduces its frame either way.

Camera drift, recorded not assumed. The #aim cameras frame the baked line's action centroid and smooth over ~6 s of sim time, so advancing the clock could move the instrument between columns of one row (MEASUREMENT_LESSONS 11: an instrument that frames itself on the signal is not a fixed instrument). Each row header carries the largest camera displacement between any two of its five columns. A row with a non-trivial drift there is comparing slightly different windows, and its numbers should be read accordingly. The camera legitimately does differ between rows — the break line moves with H₀ — so only within-row drift is a concern.

Stills, not motion. Nothing here is a motion read off the pictures (MEASUREMENT_LESSONS 1). The positions in the cells and the peel in the row headers are model reads at clocks the model itself derived, and the frames are ordered by that clock, so the ordering is established rather than inferred — which is precisely what lesson 1's third failure ("peel direction is rightward, confirmed across two frames") lacked. Read as pictures, these frames still cannot tell you which way the peel runs.

← all QA sheets in this build · raw measurements (JSON) — the same provenance block, machine-readable · the essay · the repo · commit b78be48