Merge branch 'refactor-node' into refactor-node-next

Carries the leg-embed storage move: PeerMachine.leg replaces the
Node.connections map. Hand-resolved onto the XX surfaces keeping this
line's semantics with the new storage: the msg3 termination arms and
executor swap/rekey-responder teardowns keep their exact cleanup sets
and index-free behavior; the msg2 cross-connection extract takes the
leg before the unconditional machine dispose; msg1 and anonymous leg
births embed the leg at machine insertion; the rekey-vs-establish gate
tests leg-absence. The merge also drops the now-redundant explicit
machine inserts next to the seeded test seam, whose auto-merged
combination clobbered leg-carrying machines.
This commit is contained in:
Johnathan Corgan
2026-07-17 05:07:36 +00:00
11 changed files with 328 additions and 317 deletions
+1 -8
View File
@@ -162,14 +162,7 @@ pub(super) async fn initiate_handshake(nodes: &mut [TestNode], i: usize, j: usiz
.node
.addr_to_link
.insert((transport_id, responder_addr.clone()), link_id);
initiator.node.connections.insert(link_id, conn);
// Mirror the production dial path: an identified outbound leg persists
// its control machine at dial, and the promote feedback later
// crystallizes that same machine in place.
initiator.node.peer_machines.insert(
link_id,
crate::peer::machine::PeerMachine::new_outbound(link_id, Some(peer_identity), 1000),
);
initiator.node.add_connection(conn).unwrap();
initiator
.node
.pending_outbound