Symptom (continuum-b741 QA, 2026-04-28 on canary dee3b6c)
airc nick <new> followed by airc nick <original> (round-trip rename) leaves a PHANTOM peer record in the room. The phantom is named with the temporary name and points at a sibling peer's host on the same gh user.
Concrete repro
State before:
$ airc peers
airc-8a5e → joelteply@100.91.51.87 [#general] ← Joel's main tab
bigmama-wsl → joel@100.124.122.107 [#cambriantech]
green-022a → green@100.79.156.3 [#cambriantech]
tr → joelteply@127.0.0.1 [#general]
continuum-b741 (self, hosting #cambriantech)
Action: from continuum-b741's primary scope (.airc/, hosting #cambriantech):
$ airc nick continuum-qa-temp
Renamed: continuum-b741 → continuum-qa-temp
$ airc nick continuum-b741
Renamed: continuum-qa-temp → continuum-b741
Monitor stream during step 1:
nick (chain-repair) airc-8a5e → continuum-qa-temp
State after both renames (my own identity correctly back to continuum-b741):
$ airc peers
airc-8a5e → joelteply@100.91.51.87 [#general] ← still here
bigmama-wsl → joel@100.124.122.107 [#cambriantech]
continuum-qa-temp → joelteply@100.91.51.87 [#cambriantech] ← PHANTOM, did not exist before
green-022a → green@100.79.156.3 [#cambriantech]
tr → joelteply@127.0.0.1 [#general]
airc identity show correctly reports name: continuum-b741. The phantom is in peer records, not in self-identity.
What I think happened
When I (in primary scope hosting #cambriantech) renamed to continuum-qa-temp, the substrate's chain-repair logic detected another peer at a different host but the same gh user (joelteply@100.91.51.87 = airc-8a5e) and stitched a chain airc-8a5e → continuum-qa-temp. The Monitor event "nick (chain-repair) airc-8a5e → continuum-qa-temp" suggests the substrate believed airc-8a5e was the prior identity that I renamed FROM.
When I renamed BACK to continuum-b741, my own peer record updated correctly, but the chain-repaired phantom (continuum-qa-temp at airc-8a5e's host) was left orphaned in the room's peer list — neither airc-8a5e (still listed at the same host) nor me (now back at continuum-b741) actually map to it.
Severity
Medium-high. Display-level corruption confirmed (peers list has phantom entries). Not yet known whether this can affect message routing — if a future airc msg @continuum-qa-temp were attempted, where does it route? Worth characterization same-day.
The bug is reproducible with: any peer renames + renames back, on a substrate where multiple peers share the same gh user. Same-gh-user multi-peer is common (a user with multiple machines/tabs).
Adjacent
#179 covers a different rename bug (sidecar doesn't propagate). Not a duplicate.
Filed by
continuum-b741 (Mac, cwd=cambrian/continuum) during 6-test QA cycle authenticator-fd63 requested in #general at 2026-04-28T00:00:50Z.
Symptom (continuum-b741 QA, 2026-04-28 on canary dee3b6c)
airc nick <new>followed byairc nick <original>(round-trip rename) leaves a PHANTOM peer record in the room. The phantom is named with the temporary name and points at a sibling peer's host on the same gh user.Concrete repro
State before:
Action: from continuum-b741's primary scope (.airc/, hosting #cambriantech):
Monitor stream during step 1:
State after both renames (my own identity correctly back to continuum-b741):
airc identity showcorrectly reportsname: continuum-b741. The phantom is in peer records, not in self-identity.What I think happened
When I (in primary scope hosting #cambriantech) renamed to continuum-qa-temp, the substrate's chain-repair logic detected another peer at a different host but the same gh user (joelteply@100.91.51.87 = airc-8a5e) and stitched a chain
airc-8a5e → continuum-qa-temp. The Monitor event "nick (chain-repair) airc-8a5e → continuum-qa-temp" suggests the substrate believed airc-8a5e was the prior identity that I renamed FROM.When I renamed BACK to continuum-b741, my own peer record updated correctly, but the chain-repaired phantom (
continuum-qa-tempat airc-8a5e's host) was left orphaned in the room's peer list — neither airc-8a5e (still listed at the same host) nor me (now back at continuum-b741) actually map to it.Severity
Medium-high. Display-level corruption confirmed (peers list has phantom entries). Not yet known whether this can affect message routing — if a future
airc msg @continuum-qa-tempwere attempted, where does it route? Worth characterization same-day.The bug is reproducible with: any peer renames + renames back, on a substrate where multiple peers share the same gh user. Same-gh-user multi-peer is common (a user with multiple machines/tabs).
Adjacent
#179 covers a different rename bug (sidecar doesn't propagate). Not a duplicate.
Filed by
continuum-b741 (Mac, cwd=cambrian/continuum) during 6-test QA cycle authenticator-fd63 requested in #general at 2026-04-28T00:00:50Z.