GET-031 HIGH: be get silently overwrites put/patch-staged content

be get <target> destroys uncommitted STAGED work: a path staged by be put/be patch is OVERWRITTEN with the target's bytes when the target also changed it — no refusal, no merge, exit 0. The dirty-overlap protection in get_overlap_step (sniff/GET.c) only weave-merges/refuses for an UNATTRIBUTED mtime; staged content is STAMPED (known mtime), so the classifier skips protection and the WRITE pass clobbers it. Cost this session: landing JS-036 onto JS-035 lost the JABCdelta registration + encode docs (commit 742c06ff shipped incomplete). Repro + contrast + session evidence in this dir. Method: Issues.

Input

Context

Goals

Constraints

WIP

Design decisions

TODOs

Blockers and bummers

Outcome