Skip to content

Commit 3ec3326

Browse files
author
gluck
committed
storm-triage: correct the attend/mint diagnosis -- bind refuses a form, so the shell stays unbound and the prompt mints; the role-redirect branch is unreachable through attend
1 parent a0577cc commit 3ec3326

1 file changed

Lines changed: 19 additions & 4 deletions

File tree

‎plans/storm-triage.md‎

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -707,10 +707,25 @@ scratch roots removed.
707707
### Found at close (2026-08-14 19:30), not fixed: attending a FORM mints an aria
708708

709709
Gluck attended role @980dc16c, typed `q test`, and a NEW ARIA was
710-
minted. Mechanism: the bare-prompt path calls resolveTargetEndpoint
711-
with autoCreate=true; the attended id is a form, so nothing resolves to
712-
a conversation endpoint, and mintsWhenUnbound fires. No node-kind check
713-
exists anywhere on that path (cli/target.go).
710+
minted.
711+
712+
FIRST DIAGNOSIS (WRONG, kept as the falsification): "no node-kind check
713+
on the resolve path." There IS a role redirect there -- redirectRole,
714+
cli/target.go:89 -- and prompt.go:47 documents exactly this case.
715+
716+
ACTUAL MECHANISM, read from the code: `attend` cannot bind a form AT
717+
ALL. handlers.bind calls requireAria, which calls rpc.ValidateAriaID,
718+
which rejects an @-sigiled id. So `attend @980dc16c` FAILS and the
719+
shell is left unbound; the next bare prompt finds resp.Found == false
720+
and takes the else branch -- mustCreateAndBindOutfit -- which mints.
721+
722+
The irony worth recording: prompt.go's role-redirect branch ("Attending
723+
a ROLE: the prompt reaches whoever holds it, resolved per call") is
724+
UNREACHABLE THROUGH attend, because bind structurally forbids the
725+
binding it needs. Role redirection survives only where an @-id is
726+
passed explicitly (send/listen/hup --id @role, via
727+
resolveFigaroTargetEndpoint). Gluck remembers roles intercepting sends:
728+
he is right, and that path still works.
714729

715730
PRESCRIPTION (successor): minting is correct for "nothing attended"; it
716731
is WRONG for "attended to something that cannot hold a turn" -- that is

0 commit comments

Comments
 (0)