Severity: medium (footgun in longer programs)
Several verbs write their results to hard-coded symbol names with no way to choose:
compare X to Y → always writes record comparison
measure … → measure-status, measure-matched, measure-delta
verify … (session pack) → verification-status, verification-divergences
Two compares in one program silently clobber the first result; there is no compare X to Y as <name>.
Why it matters
As programs grow this is an invisible namespace contract. The second result overwrites the first with no warning, and the names aren't obvious from the call site.
Recommendation
Allow an optional as <name> capture on these verbs, keeping the current fixed name as the default:
compare draft to final as draft-vs-final
show draft-vs-final
Severity: medium (footgun in longer programs)
Several verbs write their results to hard-coded symbol names with no way to choose:
compare X to Y→ always writes recordcomparisonmeasure …→measure-status,measure-matched,measure-deltaverify …(session pack) →verification-status,verification-divergencesTwo
compares in one program silently clobber the first result; there is nocompare X to Y as <name>.Why it matters
As programs grow this is an invisible namespace contract. The second result overwrites the first with no warning, and the names aren't obvious from the call site.
Recommendation
Allow an optional
as <name>capture on these verbs, keeping the current fixed name as the default: