PATCH-014: WHOLE-scope ?<sha>! rows invisible to refOf/patchTheirs

Now
DONE

Input

Context

Found by the /todo/BRO/BRO-030 quad test sweep: every WHOLE-scope absorb writes a wtlog patch row ?<sha>!/?<br>!, but wtlog.refOf splits the query and tests chunks with isFullSha the trailing ! sigil fails the test, so patchTheirs() DROPS the row (patch column blank, classify's theirs axis silently empty) and, worse, the <sha>! chunk is adopted as a BRANCH. The patchTheirs docstring even claims "refOf() reads either form back to a 40-hex sha" comment/spec drift, the ! form was never handled. Latent beyond quad: classify's pat corroboration ran theirs-less on WHOLE absorbs all along.

Goals

A ?<sha>! row reads back like ?<sha>: patchTheirs returns the sha, no bang-branch adoption; the 8 WHOLE-scope test/patch goldens (pinned to the DERIVED ..vv/..v! quads) go green.

Constraints

WIP

Design decisions

TODOs

Outcome