The 2026-09-06 re-check of the instrumented suite, asked after the last e2e-read
ticket landed. Every drifted line it found came from #226 — the read's own last PR.
What the machine says, and it all agrees
70 instrumented tests in 14 classes, 6 carrying @FailsOnEmulatorApi37, gating leg 64. FAILS_ON_EMULATOR_API37_BASELINE = 6, and the advisory job reports baseline: matches. All five
gating legs green on main; API 34 runs the 70 in 73.3 s.
What the prose said
Four places still said five carriers of 69 — CLAUDE.md (three sites), the marker's own KDoc,
and two comments in status_check.yml.
The gating figure is what hid it. 69 − 5 and 70 − 6 are both 64, so the one number a reader
would check against a run had not moved. CLAUDE.md's instruction to derive these rather than
remember them is what caught it.
Two KDoc claims described a draft rather than the code
aSaveWritesToTheDocumentTheSystemPickerCreated says MP3 was chosen "because the router sends it
to FFmpeg unconditionally at every API level, so the setup cannot depend on the device's codecs".
The code converts at the screen's default MP4_H265 / FAST, which reaches canEncode(H265) — so
the negation of the stated reason is true. The format moved during #226 for a different
constraint (the fixture root advertises video/mp4, so MP3's audio/mpeg destination filtered the
root out of the save dialog); the helper's KDoc records that and the test's KDoc was never updated.
That is E1 and E3's failure mode, committed by the wave that found it, so it is written down as
such rather than quietly corrected.
Neither picker test has ever reported on the advisory leg
The marker KDoc said the picker test fails there, behind the rotation test — measured when four
tests carried the marker. With six, the rotation test truncates the run before both picker tests:
runs 34042397320 and 34043502322 each report expected: 6, received: 4, the four being the
three Media3 tests plus the rotation.
So the save test is marked by inheritance, not measurement, and both KDocs now say that instead
of implying it was observed. The baseline comparison is unaffected — failed is only compared on a
run that finished — but the explanation was wrong.
FixtureDocumentsProvider.deletedDocumentIds() has no callers. #226 proved D4's premise — SAF
hands back a document of exactly zero bytes — but drove only the success path, so deletePartialOutput against a real DocumentsProvider is still asserted nowhere but FakeSafProvider under Robolectric.
The accessor is kept with a KDoc naming #250 rather than removed and re-added; #250 carries the
forcing condition (openDestination is protected open for exactly this), the mutation that must
go red, and the cost (another marked picker test, baseline 6 → 7).
Verification
ktlintCheck + detekt + lintDebug + compileDebugAndroidTestKotlin green; pinned actionlint
clean. No production or test code changes — KDoc, comments and docs only — so the instrumented
suite is unchanged and the counts above are the ones CI will report.
The 2026-09-06 re-check of the instrumented suite, asked after the last e2e-read
ticket landed. **Every drifted line it found came from #226 — the read's own last PR.**
## What the machine says, and it all agrees
70 instrumented tests in 14 classes, **6** carrying `@FailsOnEmulatorApi37`, gating leg **64**.
`FAILS_ON_EMULATOR_API37_BASELINE = 6`, and the advisory job reports `baseline: matches`. All five
gating legs green on `main`; API 34 runs the 70 in 73.3 s.
## What the prose said
Four places still said **five carriers of 69** — `CLAUDE.md` (three sites), the marker's own KDoc,
and two comments in `status_check.yml`.
**The gating figure is what hid it.** 69 − 5 and 70 − 6 are both 64, so the one number a reader
would check against a run had not moved. CLAUDE.md's instruction to derive these rather than
remember them is what caught it.
## Two KDoc claims described a draft rather than the code
`aSaveWritesToTheDocumentTheSystemPickerCreated` says MP3 was chosen *"because the router sends it
to FFmpeg unconditionally at every API level, so the setup cannot depend on the device's codecs"*.
The code converts at the screen's default `MP4_H265` / `FAST`, which reaches `canEncode(H265)` — so
the **negation** of the stated reason is true. The format moved during #226 for a different
constraint (the fixture root advertises `video/mp4`, so MP3's `audio/mpeg` destination filtered the
root out of the save dialog); the helper's KDoc records that and the test's KDoc was never updated.
That is **E1 and E3's failure mode, committed by the wave that found it**, so it is written down as
such rather than quietly corrected.
## Neither picker test has ever reported on the advisory leg
The marker KDoc said the picker test *fails* there, behind the rotation test — measured when four
tests carried the marker. With six, the rotation test truncates the run before both picker tests:
runs **34042397320** and **34043502322** each report `expected: 6, received: 4`, the four being the
three Media3 tests plus the rotation.
So the save test is marked by **inheritance, not measurement**, and both KDocs now say that instead
of implying it was observed. The baseline comparison is unaffected — `failed` is only compared on a
run that finished — but the explanation was wrong.
## One substantive gap, filed as #250
`FixtureDocumentsProvider.deletedDocumentIds()` has **no callers**. #226 proved D4's *premise* — SAF
hands back a document of exactly zero bytes — but drove only the success path, so
`deletePartialOutput` against a real `DocumentsProvider` is still asserted nowhere but
`FakeSafProvider` under Robolectric.
The accessor is **kept with a KDoc naming #250** rather than removed and re-added; #250 carries the
forcing condition (`openDestination` is `protected open` for exactly this), the mutation that must
go red, and the cost (another marked picker test, baseline 6 → 7).
## Verification
`ktlintCheck` + `detekt` + `lintDebug` + `compileDebugAndroidTestKotlin` green; pinned `actionlint`
clean. No production or test *code* changes — KDoc, comments and docs only — so the instrumented
suite is unchanged and the counts above are the ones CI will report.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
The 2026-09-06 re-check of the instrumented suite, asked after the last e2e-read
ticket landed. Every drifted line it found came from #226 — the read's own last PR.
What the machine says, and it all agrees
70 instrumented tests in 14 classes, 6 carrying
@FailsOnEmulatorApi37, gating leg 64.FAILS_ON_EMULATOR_API37_BASELINE = 6, and the advisory job reportsbaseline: matches. All fivegating legs green on
main; API 34 runs the 70 in 73.3 s.What the prose said
Four places still said five carriers of 69 —
CLAUDE.md(three sites), the marker's own KDoc,and two comments in
status_check.yml.The gating figure is what hid it. 69 − 5 and 70 − 6 are both 64, so the one number a reader
would check against a run had not moved. CLAUDE.md's instruction to derive these rather than
remember them is what caught it.
Two KDoc claims described a draft rather than the code
aSaveWritesToTheDocumentTheSystemPickerCreatedsays MP3 was chosen "because the router sends itto FFmpeg unconditionally at every API level, so the setup cannot depend on the device's codecs".
The code converts at the screen's default
MP4_H265/FAST, which reachescanEncode(H265)— sothe negation of the stated reason is true. The format moved during #226 for a different
constraint (the fixture root advertises
video/mp4, so MP3'saudio/mpegdestination filtered theroot out of the save dialog); the helper's KDoc records that and the test's KDoc was never updated.
That is E1 and E3's failure mode, committed by the wave that found it, so it is written down as
such rather than quietly corrected.
Neither picker test has ever reported on the advisory leg
The marker KDoc said the picker test fails there, behind the rotation test — measured when four
tests carried the marker. With six, the rotation test truncates the run before both picker tests:
runs 34042397320 and 34043502322 each report
expected: 6, received: 4, the four being thethree Media3 tests plus the rotation.
So the save test is marked by inheritance, not measurement, and both KDocs now say that instead
of implying it was observed. The baseline comparison is unaffected —
failedis only compared on arun that finished — but the explanation was wrong.
One substantive gap, filed as #250
FixtureDocumentsProvider.deletedDocumentIds()has no callers. #226 proved D4's premise — SAFhands back a document of exactly zero bytes — but drove only the success path, so
deletePartialOutputagainst a realDocumentsProvideris still asserted nowhere butFakeSafProviderunder Robolectric.The accessor is kept with a KDoc naming #250 rather than removed and re-added; #250 carries the
forcing condition (
openDestinationisprotected openfor exactly this), the mutation that mustgo red, and the cost (another marked picker test, baseline 6 → 7).
Verification
ktlintCheck+detekt+lintDebug+compileDebugAndroidTestKotlingreen; pinnedactionlintclean. No production or test code changes — KDoc, comments and docs only — so the instrumented
suite is unchanged and the counts above are the ones CI will report.