?rev drops, leaky be-snapshot
Two smaller divergences from the context model (Nav: a ?rev context reads repo objects; verbs may DROP context parts, but not mislead). (1) views/status/status.js:92-93 and views/ls/ls.js:191 deliberately drop ?ref and read the live wt — at a pinned context //ABC-123/dir?<oldsha>, :ls/:status silently show live-wt content with no signal (cat/tree honor the rev, so views disagree). (2) _snapBe/_restoreBe (core/loop.js:245-249) snapshot {repo,sink,format,force,flags} but omit be.authority and be.verb, which _cli overwrites — a pager :spell reentry leaks its //name scope into the outer session until the next drive recomputes it.
?rev context either read the repo tree at that rev, or refuse/label loudly — a ruling, then fix. covers every field _cli` overwrites (authority, verb) so reentry is side-effect-free.?rev; read views showing wrong-rev content silently is what needs the ruling.?rev context therefore selects tree B (or A for commit-to-commit), not a silent no-op.status/head at a ?rev context diff against that rev; ls follows the same tree-select rule.:ls/:status show live-wt content at <oldsha> with no signal._snapBe/_restoreBe; repro via a reads-be.authority probe after reentry.