# r02: one lower-corner join repair

This is one revision of `study-outline-page-turn`, not a new mechanism. The
default is a fresh candidate for independent review. Adaptation retains its
earlier static tie and is not submitted for another judgment.

## Observation and hypothesis

The frozen preceding static review identified a short horizontal shoulder in
default where a raised left leaf's vertical edge meets its lower return. Its
primary frames are26–30; secondary frames12/16/22/24; native ROI is
`[890,550,100,100]`. Adaptation did not show this shelf. Native crops were
inspected before editing. Straight versus bowed alone was not treated as a
defensible failure or a reason to change adaptation.

The original lower quadratic corner exits horizontally, while the following
cubic departs down-right. At local26, in the factory's coordinates, that join
is `(-41,584)`: the incoming direction is `(8,0)` and the outgoing first-control
vector is `(8.66,9.8)`. Their approximately48.5° direction break exposes a small
shoulder under the unchanged17px miter stroke. A regression first reproduced
this discontinuity using the retained r01 original-content fixture.

## One change

Only negative-reach **turning** leaves of `rounded-book` replace their lower
corner Q command with a C command. Endpoints stay fixed. The entry handle is
vertical; the exit handle is parallel to the following **unchanged** return
cubic. Each handle uses half the existing corner size. There is no new design
parameter, per-frame correction table, source-pixel mask, global join-style
change or extra motion.

Changed slots: frames11–15 order0;16–17 order2;18–22 orders2 and3;23–37 order2.
That is **32 commands in32 path slots** across27 local frames. The other79 path
slots, every other segment of the changed paths, fixed/rear leaves, closed
states, colors, fills, strokes, layer order, transforms, clock and shared core
stay unchanged. Adaptation code output, its149 SVGs and controls stay unchanged.

## Measurements

- Both actual Remotion renders completed once. The adaptation movie and all38
  lossless PNGs are byte-identical to r01. The default's local0–10 lossless PNGs
  are byte-identical; locals11–37 contain the intended corner changes.
- All38 default frames were compared over the entire1920×1080 canvas, not only
  the ROI. At most115 pixels change in a frame; zero changes lie outside the
  conservative support rectangles for the changed corner segments. These are
  regression-locality checks, not source-fidelity scores.
- At primary frames26–30, respectively60,58,63,56,58 lossless pixels change.
  Each frame's changed rectangle stays within the stated native ROI. The
  separate25→26 and30→31 comparisons retain all endpoints and frame timing.
- The maximum tangent-direction error after three-decimal path serialization
  is0.008934°. Geometry tests cover all32 joins at nine width/curvature settings,
  forbid backtracking and reject a restored Q, a misaligned handle and a
  reversed handle. Another test freezes173 source/control files and every
  recipe field other than the default content record.
- H.264 changes are not restricted to the exact lossless changed-pixel mask:
  the new default's decoded frame10 also differs through inter-frame encoding,
  although its lossless render PNG is unchanged. Only decoded locals0–9 match
  r01 exactly. All38 timestamps match exactly. This is disclosed, not hidden
  by comparing only the ROI or the still renders.

Both candidate movies actually have a1/15360 mux time base (512ticks/frame),
exact30fps,38frames and no audio. The retained harness's `toolchain.json`
`encoding.videoTrackTimescale:30` is the requested setting, **not the observed
mux result**; the request did not force that time base. This revision does not
change the renderer to normalize it. The frame PTS are exactly n/30 either way.
The separate960×540 source derivative uses1/30, while the native-source ledger
retains its33/34ms decimal timing; do not conflate these three representations.

## Limits

All38 source/r01/new-default states were inspected as static native-size crops.
No moving perception, native Resolve execution or visual-win claim is made.
Broader source differences, including the unchanged early cover, are not
silently repaired. The independent critic judges the sealed default movie;
packaging does not alter it or reopen adaptation. The complete r01 kit, source
evidence, movies and frozen review remain untouched and external to this kit.
