DIS-043: dog/WEAVE merge — concurrent-insert order is path-dependent

The new identity-keyed dog/WEAVE WEAVEMerge (the DIS-003 robust fix, built in DOG-003) recovers every revision correctly for linear and simple-fork histories, but a criss-cross / repeated merge still duplicates tokens: recovering an ancestor yields extra, doubled tokens (e.g. aaea/aa/e, root rrr). The DWEAVE fuzzer (below) finds these in seconds. Root cause is the ordering of concurrent inserts, not identity matching — two sibling tokens get ordered oppositely on two merge paths, so a later merge of those weaves desyncs the two-pointer and cascades into duplication. The real fix is a stable, path-independent order key per token (causal position + commit-id tiebreak, CRDT/RGA-style), not a counter recomputed in weave order. Links: DIS-003 (parent), DOG-003 (engine).

Issues

One root cause — concurrent-insert order has no total, path-independent definition.

Blockers

A local fix is not enough.

Planned

Give tokens a stable order key, then merge by it.

Landed

Two sub-bugs fixed on beagle.new (pending the DOG-003 gate), both pinned by tests.