Commit ccb9229
committed
test(qwp): drain-liveness fuzz for the SF recovery scan and retire machinery
Seeded, single-threaded (replayable) randomized schedules of recovery steps,
housekeeper ticks, borrows and late flock releases against stranded slot
dirs and wedge-forged recovery builds. The forged recoverers model a wedged
worker faithfully: alive but streaming into a silent sink, with close-flush
off, so neither the forge nor the heal can deliver data on the scan's
behalf. Oracle: after every wedge heals and the pool quiesces, the scan
must converge and an ordinary-lifecycle close must leave no slot dir with
undelivered durable data -- no restart, no lucky borrow. Iteration 0 pins
the wedged-retire shape deterministically (prologue drives the retire before
any random traffic, heals only at the end) so the suite reds on the scan-
abandonment bug class regardless of seed; the remaining iterations
randomize freely. Failure messages carry the reproducer seeds.1 parent ac24044 commit ccb9229
1 file changed
Lines changed: 471 additions & 0 deletions
0 commit comments