Three comments still say the advisory API 37 job runs two tests; it runs three #81
Closed
opened 2026-08-25 02:24:22 +00:00 by JMR-dev
·
1 comment
No Branch/Tag Specified
main
fix/102-picker-back-press-overshoot
fix/268-saf-picker-determinism
feat/ogg-vorbis-libvorbis
feat/expedited-conversion-work
fix/gate-cache-in-worktrees
chore/gate-runs-shellcheck
test/publish-delete-arm-real-provider
docs/e8-instrumented-coverage
docs/api37-carrier-count-drift
docs/e7-second-constraint
test/publish-to-a-real-saf-destination
fix/api37-report-match-line
fix/api37-task-snapshot-crash
test/join-failure-message-on-device
docs/e2e-read-findings-e7
test/cancelling-a-running-export
test/reattach-to-a-running-job
test/content-uri-reaches-ffmpeg
fix/launcher-wiring-waits-for-the-pick
fix/cancel-tests-need-a-slower-encode
test/cancelling-a-running-join
test/cancelling-a-running-session
test/notification-cancel-action
test/ffmpeg-progress-is-observed
test/fallback-asserts-the-path
test/flac-and-opus-assert-their-format
docs/e2e-read-findings
docs/wave4-coverage-numbers
fix/injectable-startup-sweep-scope
test/session-outcome-seam
test/launcher-callback-identity
test/theme-follows-system-dark
test/audio-drop-arm
fix/rotation-waits-for-recreation
fix/convert-guards-on-ready
test/retry-save-mime
test/hardware-progress-reaches-workmanager
test/ffprobe-mapping-seam
test/device-codec-enumeration-seam
test/unknown-container-row
test/null-message-fallbacks
test/cancel-reaches-workmanager
docs/coverage-wave3-recovery
test/concat-engine-seam
docs/coverage-wave3
test/mediaprobe-merge-seam
test/adaptive-shell-wiring
test/aac-audio-args
test/notification-progress-text
test/media3-muxer-guard
test/hardware-fallback-and-cancellation
test/unprobeable-join-clip
test/one-branch-outcomes
test/foreground-type-regimes
fix/bound-wedge-diagnostics
docs/coverage-wave2
test/screen-wiring
test/viewmodel-setters
test/join-state-mapping
test/conversion-state-mapping
test/dedupe-user-messages
fix/restore-stack-merges
test/refused-jobs
test/concatworker-failure-arms
test/container-capabilities-audio
test/readspec-enum-fallbacks
test/outputpublisher-seams
test/mediaprobe-track-seam
test/outputpublisher-partial-branches
test/fake-provider-scaffolding
docs/coverage-read-findings
chore/gitignore-kotlin
test/bound-the-hangs
docs/coverage-remeasure
ci/baseline-counter-precision
fix/invalid-suggestion-chip
ci/wedged-leg-report
fix/reattachment-overwrites-pick
test/theme-live-branches
fix/failed-save-retry
fix/empty-composition-crash
ci/advisory-failure-report
docs/seven-run-counts
test/release-permission-guard
ci/build-workflow-permissions
docs/api37-point-release
docs/benchmark-populate-path
fix/dead-assertion-probe-test
ci/actionlint
test/device-codecs-encode-consequence
fix/sdkmanager-pipefail
docs/readme-restart-claim
fix/saf-picker-root-discovery
fix/probe-dispatcher-seam
test/media3engine-mime-tables
test/mediaprobe-pure-helpers
fix/codec-vocabulary-drift
docs/robolectric-rationale-correction
docs/api37-advisory-counts
test/r38-8-saf-e2e
test/r38-7-join-states
test/r38-6-conversion-states
test/r38-5-state-seam
fix/jacoco-robolectric-coverage
docs/instrumented-tests-correction
test/r38-2-filecard
test/r38-4-advanced-picker
test/r38-3-pickers
tools/file-issue-script
tools/api-37-emulator
fix/review-app-gaps
docs/review-corrections
No results found.
Labels
Clear labels
above-cut
accessibility
backlog
bug
confirmed
documentation
duplicate
enhancement
good first issue
help wanted
invalid
plausible
question
sev:high
sev:low
sev:medium
wontfix
Worked autonomously overnight: local, JVM-verifiable, no product decision
Barrier affecting people with disabilities
Held for manual review: product/UX call, CI/workflow, hardware, or unverifiable here
Something isn't working
Reviewer demonstrated the defect
Improvements or additions to documentation
This issue or pull request already exists
New feature or request
Good for newcomers
Extra attention is needed
This doesn't seem right
Reviewer could not fully demonstrate it; treat as unproven
Further information is requested
High severity
Low severity
Medium severity
This will not be worked on
Milestone
No items
No Milestone
Projects
Clear projects
No projects
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: JMR-dev/LibreMediaConverter#81
Reference in New Issue
Block a user
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.
Rescoped 2026-08-25. This was originally filed as "rename the advisory job". That was the wrong fix — see the comment below. What is actually wrong is three statements of fact.
A third test joined the advisory job, and three places still describe two
#80addedSafPickerRoundTripTest.thePickedInputSurvivesARealRotationto the@FailsOnEmulatorApi37marker, because a real rotation takes the framework down onandroid-37.0(
INSTRUMENTATION_ABORTED: System has crashed). Three tests now carry the marker — two inMedia3EngineTest, one inSafPickerRoundTripTest.Three claims were true when there were two and are false now. Locate them by their text, not by
line number — these have already moved once:
1.
.github/workflows/status_check.yml, in the gating API 37 matrix entry:2.
CLAUDE.md, in "Instrumented tests: where they actually run":3.
.github/workflows/status_check.yml, above the advisory job — and this one is worse than acount, because it is the stated justification for the job's name:
The rotation test drives no transcode. So the comment does not merely miscount — it asserts an
invariant the code no longer satisfies, and that invariant is the whole argument for the name.
The fix
Correct all three to describe three tests, and rewrite #3 so it stops claiming every test in the job
is a hardware transcode. The honest description of the job's contents is "the tests that cannot pass
on the API 37 emulator image", whatever their subject.
Do not rename the job. That was this ticket's original proposal and it is withdrawn:
that people have already learned to look for." Undoing that needs a better argument than tidiness.
continue-on-error, red on every PR by design, and not a required context(verified against ruleset
21117412, whose eight contexts do not include it). Nobody triages fromit, so the name costs little.
much cheaper problem.
Acceptance
The three quoted strings no longer appear, and what replaces them matches the marker's actual usage.
Verify by counting, not by reading:
must equal the number every corrected comment states. That command is the check to re-run the next
time a test joins or leaves the marker — which is the event that broke this twice.
Related, and NOT fixed here
The advisory job is permanently red, so a new failure joining it is invisible. Flagged during the
#56 review and still without a detector; a name or a comment cannot fix it. Its own ticket if it is
worth one.
Rescoped. The original proposal — rename the advisory job — is withdrawn, and it is worth saying why rather than quietly editing the body.
I filed this after #80 pointed out that
E2E API 37 Media3 hardware transcode (advisory)now runs a test that is neither Media3 nor a hardware transcode. That observation is correct. The conclusion I drew from it was not.What I had not checked when I filed it: the workflow comment directly above the job says the name was chosen on purpose —
So a previous pass considered this exact question and chose stability. Renaming now would undo a decision that has its reasoning written beside it, on grounds no stronger than tidiness.
And the cost of the mismatch is small. The job is
continue-on-error, red on every PR by design, and not among ruleset21117412's eight required contexts. Nobody diagnoses from it; anyone who opens it sees the failing test named in the log immediately.What is actually wrong is narrower and more serious than a name: three comments state a count that is now false, and one of them justifies the name by asserting every test in the job is a hardware transcode — an invariant
SafPickerRoundTripTest.thePickedInputSurvivesARealRotationbreaks. That is a false statement in the project's own instructions, which is the R14/R15/R20/R25 class this repo has already paid for four times. Fixing it makes the name approximate instead of false, which is the cheap and honest outcome.Same defect, one layer down: the thing worth correcting was the claim, not the label.