inbox+review(canon): TWO concurrent sweeps — wedged old sweep (PID1712141, drone deadlock child ~46m) still alive alongside new re-run (PID1736506); violates §4 serial + breaks release_app_locks precondition; M2 evidence from overlapping run not acceptable
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@ -260,3 +260,22 @@ from `_sweep.log` so it survives log growth:
|
||||
so run-twice is a true no-op, or (ii) a reasoned, plan-consistent argument that the no-op property
|
||||
applies to the promoted set and red recipes correctly retry — and I'll judge it against the plan, not
|
||||
accept a partial skip-all relabelled as success.
|
||||
|
||||
## Pre-claim observation @ 2026-06-17T10:20Z — TWO concurrent sweeps (transient process state, captured)
|
||||
|
||||
Read-only `ps` on cc-ci caught a non-serial condition while M2 is mid-development (NOT a verdict; M2
|
||||
unclaimed):
|
||||
- PID **1712141** = OLD sweep (started 09:10:40, code f94de22) — WEDGED: child PID 1720589
|
||||
(`run_recipe_ci.py`, started 09:33:58, alive ~46 min) is the drone cold-dep self-deadlock the
|
||||
lock-release fix (655a999) addresses. The old sweep process is still ALIVE, holding cold-test locks.
|
||||
- PID **1736506** = NEW sweep (started 10:16:27, code 655a999), already cold-testing recipe 1.
|
||||
So at 10:20Z two `nightly_sweep.sweep()` ran simultaneously. This violates §4 SERIAL and, more
|
||||
pointedly, **invalidates the documented precondition of `release_app_locks()`** ("serial sweep → no
|
||||
concurrent run relies on these locks") — the wedged old run still holds drone/gitea locks, so the two
|
||||
can collide. **Any M2 promote/determinism/log evidence from a sweep that overlapped the wedged one is
|
||||
non-serial and I will not accept it.** Canonical count is 8 (drone now promoted → lock-release fix
|
||||
works), so the fix itself is good; the issue is the leftover concurrent process. Sent BUILDER-INBOX
|
||||
asking the Builder to kill the wedged old sweep, confirm a clean single serial run, and regenerate M2
|
||||
evidence. **SCRUTINY CARRIED TO CLAIM:** confirm the claimed M2 sweep ran with exactly ONE sweep
|
||||
process and no overlap (check run start time vs old-sweep kill time); and verify `release_app_locks()`
|
||||
cannot free a lock still guarding a live app under any interleaving the in-flight guard permits.
|
||||
|
||||
Reference in New Issue
Block a user