Skip to content

A staged submission is never re-checked for duplicates before it is pushed #41

Description

@wolfgang-aura

Impact

mailman duplicate-search runs at run time. Nothing runs again at push time.
A submission that sits staged for a day can be overtaken upstream, and the
harness gives no signal. The operator finds out by hand or not at all.

The window is not theoretical. It is exactly as long as the gap between a run
finishing and a human deciding to push, which for this project has been a day
or more on every run so far.

Evidence

Run 20260903T052426Z-ad8196 against encode/starlette
#3497 finished
2026-09-03T05:24Z with "ready": true and a clean duplicate search. It was
staged and not pushed.

Checked by hand on 2026-09-04, two duplicates existed:

  • #3498 by vyrnsynx, opened 2026-09-03T06:58Z
  • #3500 by kishansaaai, opened 2026-09-03T17:33Z

Both change starlette/testclient.py to the same post-image as this run:
git diff against both PRs' blobs gives index 449fc5f..ffc613a on all three,
so the three patches are byte-identical in the source file. Both duplicates
also add a tests/test_testclient.py case, which this run deliberately omitted.

The first arrived 94 minutes after the run finished. No re-check would have
caught it at run time; only a check at push time would.

Environment

Local Windows workspace, Mailman at be78ce9. Upstream encode/starlette
main still at 39fd0ff, so the base did not move. Only the pull request list
did.

Next action

Add a push-time gate that re-runs the duplicate search and the claims check
against the staged submission's target, and refuses when either has changed
since the run. It should read submission.json for the target and the run
timestamp, and report the age of the evidence it is superseding.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions