docs(publish): point the torn-clone note at the suite that reproduces it

publish-snapshot.sh's header described the silent-truncation failure mode as
the one "this script's own selftest (scenario 8)" reproduces. Wrong twice:
the scenario that reproduces a truncated clone is in
seed-target-dir-selftest.sh, and since #4 split the old scenario 8 into 8a and
8b it is 8b. publish-snapshot-selftest.sh does have a scenario 8 — the
abandoned-marker case — so the pointer landed on a real scenario with a
plausible number that tests something else.

Names the suite as well as the number, and says what the local scenario 8
actually is so the collision cannot re-form.

Closes #6
This commit is contained in:
2026-08-24 12:49:53 -05:00
parent ec3ab6c702
commit 1f42064d20
+3 -2
View File
@@ -29,8 +29,9 @@
# consumer still WALKING the old generation has its entries unlinked out from # consumer still WALKING the old generation has its entries unlinked out from
# under it, and `cp -al` does not report a subtree that was removed before it # under it, and `cp -al` does not report a subtree that was removed before it
# read the parent's listing. That is a silently truncated clone — the failure # read the parent's listing. That is a silently truncated clone — the failure
# mode this script's own selftest (scenario 8) reproduces against the # mode seed-target-dir-selftest.sh's scenario 8b reproduces from the consumer's
# unguarded version. # side, against the unguarded version. (This script's own selftest also has a
# scenario 8; that one is the abandoned-reader-marker case, not this.)
# #
# So the unlink is interlocked with the consume side rather than # So the unlink is interlocked with the consume side rather than
# unconditional: after the swap, this script waits for every in-flight reader # unconditional: after the swap, this script waits for every in-flight reader