Issue-side close/reopen convergence is fixed but untested #61
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
64194908fixed a real divergence:closemoves a ref between the active and archive namespaces while the id stays the same, andreconcile_refsonly globbed the active sync prefix — so one clone's archived close and another clone's active reopen were adopted as two divergent DAGs for one object, which no later sync could reunite.Confirmed by reverting the fix:
a_concurrent_close_and_reopen_convergefails.The same code path fixes issues as well as patches, but only the patch side has a convergence test. Issues are the more common object and
issue reopenhas existed longer thanpatch reopen, so the untested side is the one more likely to have been hit in practice.Also uncovered from the same patch:
release publish --jsonandrelease delete --jsonare wired but have no test, because they need the SSH server harness.Wanted: the issue-side twin of
a_concurrent_close_and_reopen_converge, and release--jsoncoverage under the SSH harness.One caveat recorded about the existing test: it asserts the two clones agree, not which side wins — that is decided by
(clock, oid)and varies per run. Both branches were exercised across repeat runs but neither is pinned deterministically. A test that pins the winner would be stronger.Migrated from git-collab issue
f1913b56c7d9bbea083b5fc58649cc5543c05218.Original author: a73x dev@a73x.sh.
Close reason: merged in patch
7a39e6a8