diff --git a/__tests__/fixtures/batched-giraffe-hourglass.json b/__tests__/fixtures/batched-giraffe-hourglass.json index 7d61ec7..52f65aa 100644 --- a/__tests__/fixtures/batched-giraffe-hourglass.json +++ b/__tests__/fixtures/batched-giraffe-hourglass.json @@ -31,6 +31,7 @@ "[Alice]->[Bob] trace genRanHex1 genRanHex6 genRanHex8", "[Charlie]->[Bob] probe genRanHex2", "[Charlie]->[Alice] okay-to-send-probes", + "[Charlie]->[Bob] trace genRanHex0 genRanHex3 genRanHex4", "[Bob]->[Alice] okay-to-send-probes", "[Dave]->[Alice] have-probes", "[Dave]->[Edward] meet", @@ -40,9 +41,11 @@ "[Dave]->[Edward] probe genRanHex5", "[Dave]->[Edward] probe genRanHex9", "[---]->[---] ---", + "[Charlie]->[Bob] trace genRanHex1 genRanHex6 genRanHex7", "[Bob]->[Alice] have-probes", "[Bob]->[Charlie] have-probes", "[Alice]->[Charlie] probe genRanHex5", + "[Bob]->[Alice] trace genRanHex0 genRanHex3 genRanHex4", "[Alice]->[Bob] probe genRanHex2", "[Alice]->[Bob] probe genRanHex5", "[Alice]->[Dave] okay-to-send-probes", @@ -59,6 +62,7 @@ "[Charlie]->[Bob] okay-to-send-probes", "[Charlie]->[Bob] have-probes", "[Charlie]->[Alice] have-probes", + "[Alice]->[Charlie] trace genRanHex0 genRanHex3 genRanHex4", "[Bob]->[Charlie] trace genRanHex2 genRanHex11 genRanHex12", "[Bob]->[Alice] trace genRanHex2 genRanHex11 genRanHex13", "[Dave]->[Alice] probe genRanHex9", @@ -80,10 +84,19 @@ "[Bob]->[Charlie] probe genRanHex5", "[Bob]->[Charlie] okay-to-send-probes", "[Alice]->[Charlie] okay-to-send-probes", + "[Charlie]->[Bob] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Charlie] trace genRanHex2 genRanHex11 genRanHex13", + "[Alice]->[Edward] trace genRanHex2 genRanHex11 genRanHex13", "[Alice]->[Edward] trace genRanHex9 genRanHex26 genRanHex27", "[Alice]->[Dave] trace genRanHex9 genRanHex26 genRanHex28", "[Edward]->[Dave] probe genRanHex10", "[Edward]->[Alice] okay-to-send-probes", + "[Charlie]->[Bob] trace genRanHex0 genRanHex14 genRanHex15", + "[Edward]->[Dave] trace genRanHex0 genRanHex14 genRanHex16", + "[Charlie]->[Bob] trace genRanHex1 genRanHex17 genRanHex18", + "[Edward]->[Dave] trace genRanHex1 genRanHex17 genRanHex20", + "[Edward]->[Dave] trace genRanHex2 genRanHex21 genRanHex23", + "[Edward]->[Dave] trace genRanHex5 genRanHex24 genRanHex25", "[Bob]->[Alice] okay-to-send-probes", "[Dave]->[Alice] okay-to-send-probes", "[---]->[---] ---", @@ -91,16 +104,37 @@ "[Charlie]->[Bob] trace genRanHex5 genRanHex29 genRanHex31", "[Charlie]->[Bob] probe genRanHex9", "[Charlie]->[Bob] probe genRanHex10", + "[Bob]->[Alice] trace genRanHex0 genRanHex3 genRanHex4", + "[Edward]->[Dave] trace genRanHex2 genRanHex11 genRanHex13", + "[Edward]->[Dave] trace genRanHex9 genRanHex26 genRanHex27", "[Dave]->[Alice] have-probes", "[Dave]->[Edward] have-probes", + "[Bob]->[Alice] trace genRanHex0 genRanHex14 genRanHex15", + "[Dave]->[Alice] trace genRanHex0 genRanHex14 genRanHex16", + "[Dave]->[Alice] trace genRanHex1 genRanHex17 genRanHex20", + "[Dave]->[Alice] trace genRanHex2 genRanHex21 genRanHex23", + "[Dave]->[Alice] trace genRanHex5 genRanHex24 genRanHex25", "[Alice]->[Bob] probe genRanHex9", "[Alice]->[Bob] probe genRanHex10", "[Alice]->[Dave] probe genRanHex10", "[---]->[---] ---", + "[Alice]->[Edward] trace genRanHex5 genRanHex29 genRanHex30", + "[Bob]->[Alice] trace genRanHex5 genRanHex29 genRanHex31", "[Bob]->[Alice] have-probes", "[Bob]->[Charlie] have-probes", + "[Alice]->[Charlie] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Edward] trace genRanHex0 genRanHex3 genRanHex4", + "[Dave]->[Alice] trace genRanHex2 genRanHex11 genRanHex13", "[Alice]->[Dave] okay-to-send-probes", "[Edward]->[Dave] okay-to-send-probes", + "[Alice]->[Charlie] trace genRanHex0 genRanHex14 genRanHex15", + "[Alice]->[Edward] trace genRanHex0 genRanHex14 genRanHex15", + "[Alice]->[Charlie] trace genRanHex1 genRanHex17 genRanHex20", + "[Alice]->[Bob] trace genRanHex1 genRanHex17 genRanHex20", + "[Alice]->[Edward] trace genRanHex1 genRanHex17 genRanHex20", + "[Alice]->[Charlie] trace genRanHex2 genRanHex21 genRanHex23", + "[Alice]->[Edward] trace genRanHex2 genRanHex21 genRanHex23", + "[Alice]->[Edward] trace genRanHex5 genRanHex24 genRanHex25", "[Bob]->[Charlie] trace genRanHex9 genRanHex32 genRanHex33", "[Bob]->[Alice] trace genRanHex9 genRanHex32 genRanHex34", "[Bob]->[Charlie] trace genRanHex10 genRanHex35 genRanHex36", @@ -108,10 +142,106 @@ "[Dave]->[Edward] trace genRanHex10 genRanHex38 genRanHex39", "[Dave]->[Alice] trace genRanHex10 genRanHex38 genRanHex40", "[---]->[---] ---", + "[Edward]->[Dave] trace genRanHex5 genRanHex29 genRanHex30", "[Alice]->[Bob] okay-to-send-probes", "[Charlie]->[Bob] okay-to-send-probes", + "[Charlie]->[Bob] trace genRanHex0 genRanHex3 genRanHex4", + "[Edward]->[Dave] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Charlie] trace genRanHex2 genRanHex11 genRanHex13", + "[Alice]->[Edward] trace genRanHex2 genRanHex11 genRanHex13", + "[Charlie]->[Bob] trace genRanHex0 genRanHex14 genRanHex15", + "[Edward]->[Dave] trace genRanHex1 genRanHex17 genRanHex20", + "[Edward]->[Dave] trace genRanHex2 genRanHex21 genRanHex23", + "[Edward]->[Dave] trace genRanHex5 genRanHex24 genRanHex25", + "[Charlie]->[Alice] trace genRanHex9 genRanHex32 genRanHex33", + "[Alice]->[Edward] trace genRanHex9 genRanHex32 genRanHex34", + "[Alice]->[Dave] trace genRanHex9 genRanHex32 genRanHex34", + "[Charlie]->[Alice] trace genRanHex10 genRanHex35 genRanHex36", + "[Alice]->[Edward] trace genRanHex10 genRanHex35 genRanHex37", + "[Alice]->[Edward] trace genRanHex10 genRanHex38 genRanHex40", + "[---]->[---] ---", + "[Dave]->[Alice] trace genRanHex5 genRanHex29 genRanHex30", + "[Bob]->[Alice] trace genRanHex0 genRanHex3 genRanHex4", + "[Dave]->[Alice] trace genRanHex0 genRanHex3 genRanHex4", + "[Edward]->[Dave] trace genRanHex2 genRanHex11 genRanHex13", + "[Bob]->[Alice] trace genRanHex0 genRanHex14 genRanHex15", + "[Dave]->[Alice] trace genRanHex1 genRanHex17 genRanHex20", + "[Dave]->[Alice] trace genRanHex2 genRanHex21 genRanHex23", + "[Dave]->[Alice] trace genRanHex5 genRanHex24 genRanHex25", + "[Edward]->[Dave] trace genRanHex9 genRanHex32 genRanHex34", + "[---]->[---] ---", + "[Alice]->[Edward] trace genRanHex5 genRanHex29 genRanHex30", + "[Alice]->[Charlie] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Edward] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Charlie] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Edward] trace genRanHex0 genRanHex3 genRanHex4", + "[Dave]->[Alice] trace genRanHex2 genRanHex11 genRanHex13", + "[Alice]->[Charlie] trace genRanHex0 genRanHex14 genRanHex15", + "[Alice]->[Edward] trace genRanHex0 genRanHex14 genRanHex15", + "[Alice]->[Charlie] trace genRanHex1 genRanHex17 genRanHex20", + "[Alice]->[Bob] trace genRanHex1 genRanHex17 genRanHex20", + "[Alice]->[Edward] trace genRanHex1 genRanHex17 genRanHex20", + "[Alice]->[Charlie] trace genRanHex2 genRanHex21 genRanHex23", + "[Alice]->[Edward] trace genRanHex2 genRanHex21 genRanHex23", + "[Alice]->[Edward] trace genRanHex5 genRanHex24 genRanHex25", + "[---]->[---] ---", + "[Edward]->[Dave] trace genRanHex5 genRanHex29 genRanHex30", + "[Charlie]->[Bob] trace genRanHex0 genRanHex3 genRanHex4", + "[Edward]->[Dave] trace genRanHex0 genRanHex3 genRanHex4", + "[Charlie]->[Bob] trace genRanHex0 genRanHex3 genRanHex4", + "[Edward]->[Dave] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Charlie] trace genRanHex2 genRanHex11 genRanHex13", + "[Alice]->[Edward] trace genRanHex2 genRanHex11 genRanHex13", + "[Charlie]->[Bob] trace genRanHex0 genRanHex14 genRanHex15", + "[Edward]->[Dave] trace genRanHex1 genRanHex17 genRanHex20", + "[Edward]->[Dave] trace genRanHex2 genRanHex21 genRanHex23", + "[Edward]->[Dave] trace genRanHex5 genRanHex24 genRanHex25", "[---]->[---] ---", - "[---]->[---] ---" + "[Dave]->[Alice] trace genRanHex5 genRanHex29 genRanHex30", + "[Bob]->[Alice] trace genRanHex0 genRanHex3 genRanHex4", + "[Dave]->[Alice] trace genRanHex0 genRanHex3 genRanHex4", + "[Bob]->[Alice] trace genRanHex0 genRanHex3 genRanHex4", + "[Dave]->[Alice] trace genRanHex0 genRanHex3 genRanHex4", + "[Edward]->[Dave] trace genRanHex2 genRanHex11 genRanHex13", + "[Bob]->[Alice] trace genRanHex0 genRanHex14 genRanHex15", + "[Dave]->[Alice] trace genRanHex1 genRanHex17 genRanHex20", + "[Dave]->[Alice] trace genRanHex2 genRanHex21 genRanHex23", + "[Dave]->[Alice] trace genRanHex5 genRanHex24 genRanHex25", + "[---]->[---] ---", + "[Alice]->[Edward] trace genRanHex5 genRanHex29 genRanHex30", + "[Alice]->[Charlie] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Edward] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Charlie] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Edward] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Charlie] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Edward] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Charlie] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Edward] trace genRanHex0 genRanHex3 genRanHex4", + "[Dave]->[Alice] trace genRanHex2 genRanHex11 genRanHex13", + "[Alice]->[Charlie] trace genRanHex0 genRanHex14 genRanHex15", + "[Alice]->[Edward] trace genRanHex0 genRanHex14 genRanHex15", + "[Alice]->[Charlie] trace genRanHex1 genRanHex17 genRanHex20", + "[Alice]->[Bob] trace genRanHex1 genRanHex17 genRanHex20", + "[Alice]->[Edward] trace genRanHex1 genRanHex17 genRanHex20", + "[Alice]->[Charlie] trace genRanHex2 genRanHex21 genRanHex23", + "[Alice]->[Edward] trace genRanHex2 genRanHex21 genRanHex23", + "[Alice]->[Edward] trace genRanHex5 genRanHex24 genRanHex25", + "[---]->[---] ---", + "[Edward]->[Dave] trace genRanHex5 genRanHex29 genRanHex30", + "[Charlie]->[Bob] trace genRanHex0 genRanHex3 genRanHex4", + "[Edward]->[Dave] trace genRanHex0 genRanHex3 genRanHex4", + "[Charlie]->[Bob] trace genRanHex0 genRanHex3 genRanHex4", + "[Edward]->[Dave] trace genRanHex0 genRanHex3 genRanHex4", + "[Charlie]->[Bob] trace genRanHex0 genRanHex3 genRanHex4", + "[Edward]->[Dave] trace genRanHex0 genRanHex3 genRanHex4", + "[Charlie]->[Bob] trace genRanHex0 genRanHex3 genRanHex4", + "[Edward]->[Dave] trace genRanHex0 genRanHex3 genRanHex4", + "[Alice]->[Charlie] trace genRanHex2 genRanHex11 genRanHex13", + "[Alice]->[Edward] trace genRanHex2 genRanHex11 genRanHex13", + "[Charlie]->[Bob] trace genRanHex0 genRanHex14 genRanHex15", + "[Edward]->[Dave] trace genRanHex1 genRanHex17 genRanHex20", + "[Edward]->[Dave] trace genRanHex2 genRanHex21 genRanHex23", + "[Edward]->[Dave] trace genRanHex5 genRanHex24 genRanHex25" ], "probes": { "probe genRanHex0": [ @@ -259,6 +389,12 @@ "QUEUEING PROBE genRanHex5 TO Bob [3/4]", "[Node#receiveMessage] Alice receives message from Dave", "[Node#receiveMessage] Alice receives message from Bob", + "[Node#receiveMessage] Alice receives message from Bob", + "[TraceEngine] handling trace message from Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Charlie], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", "[Node#receiveMessage] Alice receives message from Edward", "MEET MESSAGE FROM Edward, queueing all flood probes", "QUEUEING ALL FLOOD PROBES TO Edward", @@ -308,8 +444,11 @@ "[Node#receiveMessage] Alice receives message from Bob", "[TraceEngine] handling trace message from Bob: trace genRanHex2 genRanHex11 genRanHex13", "[Node#lookup-probe] Alice is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [Charlie, Edward], and otherLeg undefined", "[TracesEngine] sending message to Charlie: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex2 genRanHex11 genRanHex13", "[TracesEngine] sending message to Edward: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex2 genRanHex11 genRanHex13", "[Node#receiveMessage] Alice receives message from Dave", "INCOMING PROBE genRanHex9 IS KNOWN TO US", "PROBE genRanHex9 ALREADY KNOWN TO US, VIRGIN FOR Dave!", @@ -328,22 +467,239 @@ "[Node#receiveMessage] Alice receives message from Charlie", "[TraceEngine] handling trace message from Charlie: trace genRanHex5 genRanHex29 genRanHex30", "[Node#lookup-probe] Alice is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex5 genRanHex29 genRanHex30, we found these upstreams: [Edward], and otherLeg undefined", "[TracesEngine] sending message to Edward: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#receiveMessage] Alice receives message from Bob", + "[TraceEngine] handling trace message from Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[TracesEngine] sending message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex0 genRanHex3 genRanHex4", "[Node#receiveMessage] Alice receives message from Dave", "[Node#receiveMessage] Alice receives message from Bob", + "[TraceEngine] handling trace message from Bob: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex0 genRanHex14 genRanHex15", + "[TracesEngine] sending message to Edward: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex0 genRanHex14 genRanHex16", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex0 genRanHex14 genRanHex16, we found these upstreams: [Charlie, Edward], and otherLeg Charlie", + "[TracesEngine] found otherLeg Charlie for trace genRanHex14 of probe genRanHex0", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Alice is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Charlie, Bob, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex1 genRanHex17 genRanHex20", + "[TracesEngine] sending message to Bob: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Alice sends trace message to Bob: trace genRanHex1 genRanHex17 genRanHex20", + "[TracesEngine] sending message to Edward: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#lookup-probe] Alice is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex2 genRanHex21 genRanHex23", + "[TracesEngine] sending message to Edward: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#lookup-probe] Alice is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex5 genRanHex24 genRanHex25, we found these upstreams: [Edward], and otherLeg undefined", + "[TracesEngine] sending message to Edward: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#receiveMessage] Alice receives message from Bob", + "[TraceEngine] handling trace message from Bob: trace genRanHex5 genRanHex29 genRanHex31", + "[Node#lookup-probe] Alice is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex5 genRanHex29 genRanHex31, we found these upstreams: [Edward], and otherLeg Edward", + "[TracesEngine] found otherLeg Edward for trace genRanHex29 of probe genRanHex5", + "[Node#receiveMessage] Alice receives message from Bob", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#lookup-probe] Alice is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex2 genRanHex11 genRanHex13", + "[TracesEngine] sending message to Edward: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex2 genRanHex11 genRanHex13", "[Node#receiveMessage] Alice receives message from Bob", "[TraceEngine] handling trace message from Bob: trace genRanHex9 genRanHex32 genRanHex34", "[Node#lookup-probe] Alice is looking up probe genRanHex9", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex9 genRanHex32 genRanHex34, we found these upstreams: [Edward, Dave], and otherLeg undefined", "[TracesEngine] sending message to Edward: trace genRanHex9 genRanHex32 genRanHex34", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex9 genRanHex32 genRanHex34", "[TracesEngine] sending message to Dave: trace genRanHex9 genRanHex32 genRanHex34", + "[Node#sendTraceMessage] Alice sends trace message to Dave: trace genRanHex9 genRanHex32 genRanHex34", "[Node#receiveMessage] Alice receives message from Bob", "[TraceEngine] handling trace message from Bob: trace genRanHex10 genRanHex35 genRanHex37", "[Node#lookup-probe] Alice is looking up probe genRanHex10", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex10 genRanHex35 genRanHex37, we found these upstreams: [Edward], and otherLeg undefined", "[TracesEngine] sending message to Edward: trace genRanHex10 genRanHex35 genRanHex37", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex10 genRanHex35 genRanHex37", "[Node#receiveMessage] Alice receives message from Dave", "[TraceEngine] handling trace message from Dave: trace genRanHex10 genRanHex38 genRanHex40", "[Node#lookup-probe] Alice is looking up probe genRanHex10", - "[TracesEngine] sending message to Edward: trace genRanHex10 genRanHex38 genRanHex40" + "[TraceEngine] in the context of trace message from Dave: trace genRanHex10 genRanHex38 genRanHex40, we found these upstreams: [Edward], and otherLeg undefined", + "[TracesEngine] sending message to Edward: trace genRanHex10 genRanHex38 genRanHex40", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex10 genRanHex38 genRanHex40", + "[Node#receiveMessage] Alice receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex9 genRanHex32 genRanHex33", + "[Node#lookup-probe] Alice is looking up probe genRanHex9", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex9 genRanHex32 genRanHex33, we found these upstreams: [Edward, Dave], and otherLeg Edward", + "[TracesEngine] found otherLeg Edward for trace genRanHex32 of probe genRanHex9", + "[Node#receiveMessage] Alice receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex10 genRanHex35 genRanHex36", + "[Node#lookup-probe] Alice is looking up probe genRanHex10", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex10 genRanHex35 genRanHex36, we found these upstreams: [Edward], and otherLeg Edward", + "[TracesEngine] found otherLeg Edward for trace genRanHex35 of probe genRanHex10", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#lookup-probe] Alice is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex5 genRanHex29 genRanHex30, we found these upstreams: [Edward], and otherLeg undefined", + "[TracesEngine] sending message to Edward: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#receiveMessage] Alice receives message from Bob", + "[TraceEngine] handling trace message from Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[TracesEngine] sending message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[TracesEngine] sending message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Alice receives message from Bob", + "[TraceEngine] handling trace message from Bob: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex0 genRanHex14 genRanHex15", + "[TracesEngine] sending message to Edward: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Alice is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Charlie, Bob, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex1 genRanHex17 genRanHex20", + "[TracesEngine] sending message to Bob: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Alice sends trace message to Bob: trace genRanHex1 genRanHex17 genRanHex20", + "[TracesEngine] sending message to Edward: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#lookup-probe] Alice is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex2 genRanHex21 genRanHex23", + "[TracesEngine] sending message to Edward: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#lookup-probe] Alice is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex5 genRanHex24 genRanHex25, we found these upstreams: [Edward], and otherLeg undefined", + "[TracesEngine] sending message to Edward: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#lookup-probe] Alice is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex2 genRanHex11 genRanHex13", + "[TracesEngine] sending message to Edward: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#lookup-probe] Alice is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex5 genRanHex29 genRanHex30, we found these upstreams: [Edward], and otherLeg undefined", + "[TracesEngine] sending message to Edward: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#receiveMessage] Alice receives message from Bob", + "[TraceEngine] handling trace message from Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[TracesEngine] sending message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[TracesEngine] sending message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Alice receives message from Bob", + "[TraceEngine] handling trace message from Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[TracesEngine] sending message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[TracesEngine] sending message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Alice receives message from Bob", + "[TraceEngine] handling trace message from Bob: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex0 genRanHex14 genRanHex15", + "[TracesEngine] sending message to Edward: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Alice is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Charlie, Bob, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex1 genRanHex17 genRanHex20", + "[TracesEngine] sending message to Bob: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Alice sends trace message to Bob: trace genRanHex1 genRanHex17 genRanHex20", + "[TracesEngine] sending message to Edward: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#lookup-probe] Alice is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex2 genRanHex21 genRanHex23", + "[TracesEngine] sending message to Edward: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#lookup-probe] Alice is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex5 genRanHex24 genRanHex25, we found these upstreams: [Edward], and otherLeg undefined", + "[TracesEngine] sending message to Edward: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#receiveMessage] Alice receives message from Dave", + "[TraceEngine] handling trace message from Dave: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#lookup-probe] Alice is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [Charlie, Edward], and otherLeg undefined", + "[TracesEngine] sending message to Charlie: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex2 genRanHex11 genRanHex13", + "[TracesEngine] sending message to Edward: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Alice sends trace message to Edward: trace genRanHex2 genRanHex11 genRanHex13" ], "loopsFound": [] }, @@ -375,12 +731,23 @@ "[Node#receiveMessage] Bob receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex6 genRanHex8", "[Node#lookup-probe] Bob is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex6 genRanHex8, we found these upstreams: [], and otherLeg undefined", "[Node#receiveMessage] Bob receives message from Charlie", "INCOMING PROBE genRanHex2 IS NEW TO US, FLOOD IT FORWARD", "Bob starts waiting to talk to Alice", "Bob raises hand to Alice", "Bob starts waiting to talk to Charlie", "Bob raises hand to Charlie", + "[Node#receiveMessage] Bob receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Bob is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Bob sends trace message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Bob receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex1 genRanHex6 genRanHex7", + "[Node#lookup-probe] Bob is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex1 genRanHex6 genRanHex7, we found these upstreams: [], and otherLeg undefined", "[Node#receiveMessage] Bob receives message from Alice", "INCOMING PROBE genRanHex2 IS KNOWN TO US", "PROBE genRanHex2 ALREADY KNOWN TO US, VIRGIN FOR Alice!", @@ -398,11 +765,30 @@ "[Node#receiveMessage] Bob receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex17 genRanHex19", "[Node#lookup-probe] Bob is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex17 genRanHex19, we found these upstreams: [], and otherLeg undefined", "[Node#receiveMessage] Bob receives message from Alice", "[Node#receiveMessage] Bob receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Bob is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Bob sends trace message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Bob receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#lookup-probe] Bob is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Bob sends trace message to Alice: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#receiveMessage] Bob receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex1 genRanHex17 genRanHex18", + "[Node#lookup-probe] Bob is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex1 genRanHex17 genRanHex18, we found these upstreams: [], and otherLeg undefined", + "[Node#receiveMessage] Bob receives message from Charlie", "[TraceEngine] handling trace message from Charlie: trace genRanHex5 genRanHex29 genRanHex31", "[Node#lookup-probe] Bob is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex5 genRanHex29 genRanHex31, we found these upstreams: [Alice], and otherLeg undefined", "[TracesEngine] sending message to Alice: trace genRanHex5 genRanHex29 genRanHex31", + "[Node#sendTraceMessage] Bob sends trace message to Alice: trace genRanHex5 genRanHex29 genRanHex31", "[Node#receiveMessage] Bob receives message from Charlie", "INCOMING PROBE genRanHex9 IS NEW TO US, FLOOD IT FORWARD", "Bob starts waiting to talk to Alice", @@ -424,9 +810,51 @@ "[Node#sendTraceMessage] Bob sends trace message to Charlie: trace genRanHex10 genRanHex35 genRanHex36", "[Node#sendTraceMessage] Bob sends trace message to Alice: trace genRanHex10 genRanHex35 genRanHex37", "[Node#receiveMessage] Bob receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Bob is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [], and otherLeg undefined", + "[Node#receiveMessage] Bob receives message from Alice", "Bob receives okay-to-send-probes from Alice", "[Node#receiveMessage] Bob receives message from Charlie", - "Bob receives okay-to-send-probes from Charlie" + "Bob receives okay-to-send-probes from Charlie", + "[Node#receiveMessage] Bob receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Bob is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Bob sends trace message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Bob receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#lookup-probe] Bob is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Bob sends trace message to Alice: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#receiveMessage] Bob receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Bob is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [], and otherLeg undefined", + "[Node#receiveMessage] Bob receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Bob is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Bob sends trace message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Bob receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Bob is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Bob sends trace message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Bob receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#lookup-probe] Bob is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Bob sends trace message to Alice: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#receiveMessage] Bob receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Bob is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [], and otherLeg undefined" ], "loopsFound": [] }, @@ -462,11 +890,15 @@ "[Node#receiveMessage] Charlie receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Bob], and otherLeg undefined", "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex3 genRanHex4", "[Node#receiveMessage] Charlie receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex6 genRanHex7", "[Node#lookup-probe] Charlie is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex6 genRanHex7, we found these upstreams: [Bob], and otherLeg undefined", "[TracesEngine] sending message to Bob: trace genRanHex1 genRanHex6 genRanHex7", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex1 genRanHex6 genRanHex7", "[Node#receiveMessage] Charlie receives message from Bob", "[Node#receiveMessage] Charlie receives message from Alice", "INCOMING PROBE genRanHex5 IS NEW TO US, FLOOD IT FORWARD", @@ -474,20 +906,32 @@ "Charlie raises hand to Bob", "Charlie starts waiting to talk to Alice", "Charlie raises hand to Alice", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Bob], and otherLeg undefined", + "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex3 genRanHex4", "[Node#receiveMessage] Charlie receives message from Bob", "[TraceEngine] handling trace message from Bob: trace genRanHex2 genRanHex11 genRanHex12", "[Node#lookup-probe] Charlie is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex2 genRanHex11 genRanHex12, we found these upstreams: [], and otherLeg undefined", "[Node#receiveMessage] Charlie receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15", "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Bob], and otherLeg undefined", "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex14 genRanHex15", "[Node#receiveMessage] Charlie receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex17 genRanHex18", "[Node#lookup-probe] Charlie is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex17 genRanHex18, we found these upstreams: [Bob], and otherLeg undefined", "[TracesEngine] sending message to Bob: trace genRanHex1 genRanHex17 genRanHex18", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex1 genRanHex17 genRanHex18", "[Node#receiveMessage] Charlie receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex21 genRanHex22", "[Node#lookup-probe] Charlie is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex21 genRanHex22, we found these upstreams: [], and otherLeg undefined", "[Node#receiveMessage] Charlie receives message from Alice", "INCOMING PROBE genRanHex9 IS NEW TO US, FLOOD IT FORWARD", "[Node#receiveMessage] Charlie receives message from Alice", @@ -504,15 +948,118 @@ "QUEUEING PROBE genRanHex10 TO Bob [3/4]", "[Node#receiveMessage] Charlie receives message from Alice", "Charlie receives okay-to-send-probes from Alice", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#lookup-probe] Charlie is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [], and otherLeg undefined", "[Node#receiveMessage] Charlie receives message from Bob", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Bob], and otherLeg undefined", + "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Bob], and otherLeg undefined", + "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Charlie is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Bob], and otherLeg Bob", + "[TracesEngine] found otherLeg Bob for trace genRanHex17 of probe genRanHex1", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#lookup-probe] Charlie is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [], and otherLeg undefined", "[Node#receiveMessage] Charlie receives message from Bob", "[TraceEngine] handling trace message from Bob: trace genRanHex9 genRanHex32 genRanHex33", "[Node#lookup-probe] Charlie is looking up probe genRanHex9", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex9 genRanHex32 genRanHex33, we found these upstreams: [Alice], and otherLeg undefined", "[TracesEngine] sending message to Alice: trace genRanHex9 genRanHex32 genRanHex33", + "[Node#sendTraceMessage] Charlie sends trace message to Alice: trace genRanHex9 genRanHex32 genRanHex33", "[Node#receiveMessage] Charlie receives message from Bob", "[TraceEngine] handling trace message from Bob: trace genRanHex10 genRanHex35 genRanHex36", "[Node#lookup-probe] Charlie is looking up probe genRanHex10", - "[TracesEngine] sending message to Alice: trace genRanHex10 genRanHex35 genRanHex36" + "[TraceEngine] in the context of trace message from Bob: trace genRanHex10 genRanHex35 genRanHex36, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex10 genRanHex35 genRanHex36", + "[Node#sendTraceMessage] Charlie sends trace message to Alice: trace genRanHex10 genRanHex35 genRanHex36", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#lookup-probe] Charlie is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [], and otherLeg undefined", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Bob], and otherLeg undefined", + "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Bob], and otherLeg undefined", + "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Bob], and otherLeg undefined", + "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Charlie is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Bob], and otherLeg Bob", + "[TracesEngine] found otherLeg Bob for trace genRanHex17 of probe genRanHex1", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#lookup-probe] Charlie is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [], and otherLeg undefined", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#lookup-probe] Charlie is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [], and otherLeg undefined", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Bob], and otherLeg undefined", + "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Bob], and otherLeg undefined", + "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Bob], and otherLeg undefined", + "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Bob], and otherLeg undefined", + "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#lookup-probe] Charlie is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Bob], and otherLeg undefined", + "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Charlie is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Bob], and otherLeg Bob", + "[TracesEngine] found otherLeg Bob for trace genRanHex17 of probe genRanHex1", + "[Node#receiveMessage] Charlie receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#lookup-probe] Charlie is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [], and otherLeg undefined" ], "loopsFound": [] }, @@ -559,12 +1106,47 @@ "[Node#receiveMessage] Dave receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex9 genRanHex26 genRanHex28", "[Node#lookup-probe] Dave is looking up probe genRanHex9", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex9 genRanHex26 genRanHex28, we found these upstreams: [], and otherLeg undefined", "[Node#receiveMessage] Dave receives message from Edward", "INCOMING PROBE genRanHex10 IS NEW TO US, FLOOD IT FORWARD", "Dave starts waiting to talk to Alice", "Dave raises hand to Alice", "Dave starts waiting to talk to Edward", "Dave raises hand to Edward", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex0 genRanHex14 genRanHex16", + "[Node#lookup-probe] Dave is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex0 genRanHex14 genRanHex16, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex14 genRanHex16", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex0 genRanHex14 genRanHex16", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Dave is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#lookup-probe] Dave is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#lookup-probe] Dave is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex5 genRanHex24 genRanHex25, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#lookup-probe] Dave is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex9 genRanHex26 genRanHex27", + "[Node#lookup-probe] Dave is looking up probe genRanHex9", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex9 genRanHex26 genRanHex27, we found these upstreams: [], and otherLeg undefined", "[Node#receiveMessage] Dave receives message from Alice", "INCOMING PROBE genRanHex10 IS KNOWN TO US", "PROBE genRanHex10 ALREADY KNOWN TO US, VIRGIN FOR Alice!", @@ -574,7 +1156,93 @@ "[Node#receiveMessage] Dave receives message from Alice", "Dave receives okay-to-send-probes from Alice", "[Node#receiveMessage] Dave receives message from Edward", - "Dave receives okay-to-send-probes from Edward" + "Dave receives okay-to-send-probes from Edward", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#lookup-probe] Dave is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex5 genRanHex29 genRanHex30, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Dave is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Dave is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#lookup-probe] Dave is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#lookup-probe] Dave is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex5 genRanHex24 genRanHex25, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#receiveMessage] Dave receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex9 genRanHex32 genRanHex34", + "[Node#lookup-probe] Dave is looking up probe genRanHex9", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex9 genRanHex32 genRanHex34, we found these upstreams: [], and otherLeg undefined", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#lookup-probe] Dave is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex9 genRanHex32 genRanHex34", + "[Node#lookup-probe] Dave is looking up probe genRanHex9", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex9 genRanHex32 genRanHex34, we found these upstreams: [], and otherLeg undefined", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#lookup-probe] Dave is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex5 genRanHex29 genRanHex30, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Dave is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Dave is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Dave is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#lookup-probe] Dave is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#lookup-probe] Dave is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex5 genRanHex24 genRanHex25, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#receiveMessage] Dave receives message from Edward", + "[TraceEngine] handling trace message from Edward: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#lookup-probe] Dave is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Edward: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Dave sends trace message to Alice: trace genRanHex2 genRanHex11 genRanHex13" ], "loopsFound": [] }, @@ -625,27 +1293,199 @@ "[Node#receiveMessage] Edward receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex14 genRanHex16", "[Node#lookup-probe] Edward is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex14 genRanHex16, we found these upstreams: [Dave], and otherLeg undefined", "[TracesEngine] sending message to Dave: trace genRanHex0 genRanHex14 genRanHex16", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex0 genRanHex14 genRanHex16", "[Node#receiveMessage] Edward receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20", "[Node#lookup-probe] Edward is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Dave], and otherLeg undefined", "[TracesEngine] sending message to Dave: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex1 genRanHex17 genRanHex20", "[Node#receiveMessage] Edward receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23", "[Node#lookup-probe] Edward is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [Dave], and otherLeg undefined", "[TracesEngine] sending message to Dave: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex2 genRanHex21 genRanHex23", "[Node#receiveMessage] Edward receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex5 genRanHex24 genRanHex25", "[Node#lookup-probe] Edward is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex5 genRanHex24 genRanHex25, we found these upstreams: [Dave], and otherLeg undefined", "[TracesEngine] sending message to Dave: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#lookup-probe] Edward is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex2 genRanHex11 genRanHex13", "[Node#receiveMessage] Edward receives message from Alice", "[TraceEngine] handling trace message from Alice: trace genRanHex9 genRanHex26 genRanHex27", "[Node#lookup-probe] Edward is looking up probe genRanHex9", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex9 genRanHex26 genRanHex27, we found these upstreams: [Dave], and otherLeg undefined", "[TracesEngine] sending message to Dave: trace genRanHex9 genRanHex26 genRanHex27", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex9 genRanHex26 genRanHex27", "[Node#receiveMessage] Edward receives message from Dave", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#lookup-probe] Edward is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex5 genRanHex29 genRanHex30, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Edward is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#lookup-probe] Edward is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Dave], and otherLeg Dave", + "[TracesEngine] found otherLeg Dave for trace genRanHex14 of probe genRanHex0", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Edward is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#lookup-probe] Edward is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#lookup-probe] Edward is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex5 genRanHex24 genRanHex25, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex5 genRanHex24 genRanHex25", "[Node#receiveMessage] Edward receives message from Dave", "[TraceEngine] handling trace message from Dave: trace genRanHex10 genRanHex38 genRanHex39", - "[Node#lookup-probe] Edward is looking up probe genRanHex10" + "[Node#lookup-probe] Edward is looking up probe genRanHex10", + "[TraceEngine] in the context of trace message from Dave: trace genRanHex10 genRanHex38 genRanHex39, we found these upstreams: [], and otherLeg undefined", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#lookup-probe] Edward is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex9 genRanHex32 genRanHex34", + "[Node#lookup-probe] Edward is looking up probe genRanHex9", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex9 genRanHex32 genRanHex34, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex9 genRanHex32 genRanHex34", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex9 genRanHex32 genRanHex34", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex10 genRanHex35 genRanHex37", + "[Node#lookup-probe] Edward is looking up probe genRanHex10", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex10 genRanHex35 genRanHex37, we found these upstreams: [], and otherLeg undefined", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex10 genRanHex38 genRanHex40", + "[Node#lookup-probe] Edward is looking up probe genRanHex10", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex10 genRanHex38 genRanHex40, we found these upstreams: [], and otherLeg undefined", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#lookup-probe] Edward is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex5 genRanHex29 genRanHex30, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Edward is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Edward is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#lookup-probe] Edward is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Dave], and otherLeg Dave", + "[TracesEngine] found otherLeg Dave for trace genRanHex14 of probe genRanHex0", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Edward is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#lookup-probe] Edward is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#lookup-probe] Edward is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex5 genRanHex24 genRanHex25, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#lookup-probe] Edward is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex11 genRanHex13, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex2 genRanHex11 genRanHex13", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#lookup-probe] Edward is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex5 genRanHex29 genRanHex30, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex5 genRanHex29 genRanHex30", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Edward is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Edward is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Edward is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#lookup-probe] Edward is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15", + "[Node#lookup-probe] Edward is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex0 genRanHex14 genRanHex15, we found these upstreams: [Dave], and otherLeg Dave", + "[TracesEngine] found otherLeg Dave for trace genRanHex14 of probe genRanHex0", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#lookup-probe] Edward is looking up probe genRanHex1", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex1 genRanHex17 genRanHex20, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex1 genRanHex17 genRanHex20", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#lookup-probe] Edward is looking up probe genRanHex2", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex2 genRanHex21 genRanHex23, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex2 genRanHex21 genRanHex23", + "[Node#receiveMessage] Edward receives message from Alice", + "[TraceEngine] handling trace message from Alice: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#lookup-probe] Edward is looking up probe genRanHex5", + "[TraceEngine] in the context of trace message from Alice: trace genRanHex5 genRanHex24 genRanHex25, we found these upstreams: [Dave], and otherLeg undefined", + "[TracesEngine] sending message to Dave: trace genRanHex5 genRanHex24 genRanHex25", + "[Node#sendTraceMessage] Edward sends trace message to Dave: trace genRanHex5 genRanHex24 genRanHex25" ], "loopsFound": [] } diff --git a/__tests__/fixtures/batched-giraffe-hourglass.puml b/__tests__/fixtures/batched-giraffe-hourglass.puml index 90e587e..85d75de 100644 --- a/__tests__/fixtures/batched-giraffe-hourglass.puml +++ b/__tests__/fixtures/batched-giraffe-hourglass.puml @@ -18,13 +18,16 @@ Alice -[#green]-> Dave: probe genRanHex5 Alice -[#green]-> Charlie: trace genRanHex1 genRanHex6 genRanHex7 Alice -[#green]-> Bob: trace genRanHex1 genRanHex6 genRanHex8 Charlie -[#green]-> Bob: probe genRanHex2 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex3 genRanHex4 Dave -[#green]-> Edward: meet Dave -[#green]-> Edward: probe genRanHex0 Dave -[#green]-> Edward: probe genRanHex1 Dave -[#green]-> Edward: probe genRanHex2 Dave -[#green]-> Edward: probe genRanHex5 Dave -[#green]-> Edward: probe genRanHex9 +Charlie -[#green]-> Bob: trace genRanHex1 genRanHex6 genRanHex7 Alice -[#green]-> Charlie: probe genRanHex5 +Bob -[#green]-> Alice: trace genRanHex0 genRanHex3 genRanHex4 Alice -[#green]-> Bob: probe genRanHex2 Alice -[#green]-> Bob: probe genRanHex5 Edward -[#green]-> Alice: meet @@ -34,6 +37,7 @@ Edward -[#green]-> Alice: probe genRanHex2 Edward -[#green]-> Alice: probe genRanHex5 Edward -[#green]-> Alice: probe genRanHex9 Edward -[#green]-> Alice: probe genRanHex10 +Alice -[#green]-> Charlie: trace genRanHex0 genRanHex3 genRanHex4 Bob -[#green]-> Charlie: trace genRanHex2 genRanHex11 genRanHex12 Bob -[#green]-> Alice: trace genRanHex2 genRanHex11 genRanHex13 Dave -[#green]-> Alice: probe genRanHex9 @@ -48,20 +52,142 @@ Alice -[#green]-> Edward: trace genRanHex5 genRanHex24 genRanHex25 Alice -[#green]-> Charlie: probe genRanHex9 Alice -[#green]-> Charlie: probe genRanHex10 Bob -[#green]-> Charlie: probe genRanHex5 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Charlie: trace genRanHex2 genRanHex11 genRanHex13 +Alice -[#green]-> Edward: trace genRanHex2 genRanHex11 genRanHex13 Alice -[#green]-> Edward: trace genRanHex9 genRanHex26 genRanHex27 Alice -[#green]-> Dave: trace genRanHex9 genRanHex26 genRanHex28 Edward -[#green]-> Dave: probe genRanHex10 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex14 genRanHex15 +Edward -[#green]-> Dave: trace genRanHex0 genRanHex14 genRanHex16 +Charlie -[#green]-> Bob: trace genRanHex1 genRanHex17 genRanHex18 +Edward -[#green]-> Dave: trace genRanHex1 genRanHex17 genRanHex20 +Edward -[#green]-> Dave: trace genRanHex2 genRanHex21 genRanHex23 +Edward -[#green]-> Dave: trace genRanHex5 genRanHex24 genRanHex25 Charlie -[#green]-> Alice: trace genRanHex5 genRanHex29 genRanHex30 Charlie -[#green]-> Bob: trace genRanHex5 genRanHex29 genRanHex31 Charlie -[#green]-> Bob: probe genRanHex9 Charlie -[#green]-> Bob: probe genRanHex10 +Bob -[#green]-> Alice: trace genRanHex0 genRanHex3 genRanHex4 +Edward -[#green]-> Dave: trace genRanHex2 genRanHex11 genRanHex13 +Edward -[#green]-> Dave: trace genRanHex9 genRanHex26 genRanHex27 +Bob -[#green]-> Alice: trace genRanHex0 genRanHex14 genRanHex15 +Dave -[#green]-> Alice: trace genRanHex0 genRanHex14 genRanHex16 +Dave -[#green]-> Alice: trace genRanHex1 genRanHex17 genRanHex20 +Dave -[#green]-> Alice: trace genRanHex2 genRanHex21 genRanHex23 +Dave -[#green]-> Alice: trace genRanHex5 genRanHex24 genRanHex25 Alice -[#green]-> Bob: probe genRanHex9 Alice -[#green]-> Bob: probe genRanHex10 Alice -[#green]-> Dave: probe genRanHex10 +Alice -[#green]-> Edward: trace genRanHex5 genRanHex29 genRanHex30 +Bob -[#green]-> Alice: trace genRanHex5 genRanHex29 genRanHex31 +Alice -[#green]-> Charlie: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Edward: trace genRanHex0 genRanHex3 genRanHex4 +Dave -[#green]-> Alice: trace genRanHex2 genRanHex11 genRanHex13 +Alice -[#green]-> Charlie: trace genRanHex0 genRanHex14 genRanHex15 +Alice -[#green]-> Edward: trace genRanHex0 genRanHex14 genRanHex15 +Alice -[#green]-> Charlie: trace genRanHex1 genRanHex17 genRanHex20 +Alice -[#green]-> Bob: trace genRanHex1 genRanHex17 genRanHex20 +Alice -[#green]-> Edward: trace genRanHex1 genRanHex17 genRanHex20 +Alice -[#green]-> Charlie: trace genRanHex2 genRanHex21 genRanHex23 +Alice -[#green]-> Edward: trace genRanHex2 genRanHex21 genRanHex23 +Alice -[#green]-> Edward: trace genRanHex5 genRanHex24 genRanHex25 Bob -[#green]-> Charlie: trace genRanHex9 genRanHex32 genRanHex33 Bob -[#green]-> Alice: trace genRanHex9 genRanHex32 genRanHex34 Bob -[#green]-> Charlie: trace genRanHex10 genRanHex35 genRanHex36 Bob -[#green]-> Alice: trace genRanHex10 genRanHex35 genRanHex37 Dave -[#green]-> Edward: trace genRanHex10 genRanHex38 genRanHex39 Dave -[#green]-> Alice: trace genRanHex10 genRanHex38 genRanHex40 +Edward -[#green]-> Dave: trace genRanHex5 genRanHex29 genRanHex30 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex3 genRanHex4 +Edward -[#green]-> Dave: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Charlie: trace genRanHex2 genRanHex11 genRanHex13 +Alice -[#green]-> Edward: trace genRanHex2 genRanHex11 genRanHex13 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex14 genRanHex15 +Edward -[#green]-> Dave: trace genRanHex1 genRanHex17 genRanHex20 +Edward -[#green]-> Dave: trace genRanHex2 genRanHex21 genRanHex23 +Edward -[#green]-> Dave: trace genRanHex5 genRanHex24 genRanHex25 +Charlie -[#green]-> Alice: trace genRanHex9 genRanHex32 genRanHex33 +Alice -[#green]-> Edward: trace genRanHex9 genRanHex32 genRanHex34 +Alice -[#green]-> Dave: trace genRanHex9 genRanHex32 genRanHex34 +Charlie -[#green]-> Alice: trace genRanHex10 genRanHex35 genRanHex36 +Alice -[#green]-> Edward: trace genRanHex10 genRanHex35 genRanHex37 +Alice -[#green]-> Edward: trace genRanHex10 genRanHex38 genRanHex40 +Dave -[#green]-> Alice: trace genRanHex5 genRanHex29 genRanHex30 +Bob -[#green]-> Alice: trace genRanHex0 genRanHex3 genRanHex4 +Dave -[#green]-> Alice: trace genRanHex0 genRanHex3 genRanHex4 +Edward -[#green]-> Dave: trace genRanHex2 genRanHex11 genRanHex13 +Bob -[#green]-> Alice: trace genRanHex0 genRanHex14 genRanHex15 +Dave -[#green]-> Alice: trace genRanHex1 genRanHex17 genRanHex20 +Dave -[#green]-> Alice: trace genRanHex2 genRanHex21 genRanHex23 +Dave -[#green]-> Alice: trace genRanHex5 genRanHex24 genRanHex25 +Edward -[#green]-> Dave: trace genRanHex9 genRanHex32 genRanHex34 +Alice -[#green]-> Edward: trace genRanHex5 genRanHex29 genRanHex30 +Alice -[#green]-> Charlie: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Edward: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Charlie: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Edward: trace genRanHex0 genRanHex3 genRanHex4 +Dave -[#green]-> Alice: trace genRanHex2 genRanHex11 genRanHex13 +Alice -[#green]-> Charlie: trace genRanHex0 genRanHex14 genRanHex15 +Alice -[#green]-> Edward: trace genRanHex0 genRanHex14 genRanHex15 +Alice -[#green]-> Charlie: trace genRanHex1 genRanHex17 genRanHex20 +Alice -[#green]-> Bob: trace genRanHex1 genRanHex17 genRanHex20 +Alice -[#green]-> Edward: trace genRanHex1 genRanHex17 genRanHex20 +Alice -[#green]-> Charlie: trace genRanHex2 genRanHex21 genRanHex23 +Alice -[#green]-> Edward: trace genRanHex2 genRanHex21 genRanHex23 +Alice -[#green]-> Edward: trace genRanHex5 genRanHex24 genRanHex25 +Edward -[#green]-> Dave: trace genRanHex5 genRanHex29 genRanHex30 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex3 genRanHex4 +Edward -[#green]-> Dave: trace genRanHex0 genRanHex3 genRanHex4 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex3 genRanHex4 +Edward -[#green]-> Dave: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Charlie: trace genRanHex2 genRanHex11 genRanHex13 +Alice -[#green]-> Edward: trace genRanHex2 genRanHex11 genRanHex13 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex14 genRanHex15 +Edward -[#green]-> Dave: trace genRanHex1 genRanHex17 genRanHex20 +Edward -[#green]-> Dave: trace genRanHex2 genRanHex21 genRanHex23 +Edward -[#green]-> Dave: trace genRanHex5 genRanHex24 genRanHex25 +Dave -[#green]-> Alice: trace genRanHex5 genRanHex29 genRanHex30 +Bob -[#green]-> Alice: trace genRanHex0 genRanHex3 genRanHex4 +Dave -[#green]-> Alice: trace genRanHex0 genRanHex3 genRanHex4 +Bob -[#green]-> Alice: trace genRanHex0 genRanHex3 genRanHex4 +Dave -[#green]-> Alice: trace genRanHex0 genRanHex3 genRanHex4 +Edward -[#green]-> Dave: trace genRanHex2 genRanHex11 genRanHex13 +Bob -[#green]-> Alice: trace genRanHex0 genRanHex14 genRanHex15 +Dave -[#green]-> Alice: trace genRanHex1 genRanHex17 genRanHex20 +Dave -[#green]-> Alice: trace genRanHex2 genRanHex21 genRanHex23 +Dave -[#green]-> Alice: trace genRanHex5 genRanHex24 genRanHex25 +Alice -[#green]-> Edward: trace genRanHex5 genRanHex29 genRanHex30 +Alice -[#green]-> Charlie: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Edward: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Charlie: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Edward: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Charlie: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Edward: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Charlie: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Edward: trace genRanHex0 genRanHex3 genRanHex4 +Dave -[#green]-> Alice: trace genRanHex2 genRanHex11 genRanHex13 +Alice -[#green]-> Charlie: trace genRanHex0 genRanHex14 genRanHex15 +Alice -[#green]-> Edward: trace genRanHex0 genRanHex14 genRanHex15 +Alice -[#green]-> Charlie: trace genRanHex1 genRanHex17 genRanHex20 +Alice -[#green]-> Bob: trace genRanHex1 genRanHex17 genRanHex20 +Alice -[#green]-> Edward: trace genRanHex1 genRanHex17 genRanHex20 +Alice -[#green]-> Charlie: trace genRanHex2 genRanHex21 genRanHex23 +Alice -[#green]-> Edward: trace genRanHex2 genRanHex21 genRanHex23 +Alice -[#green]-> Edward: trace genRanHex5 genRanHex24 genRanHex25 +Edward -[#green]-> Dave: trace genRanHex5 genRanHex29 genRanHex30 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex3 genRanHex4 +Edward -[#green]-> Dave: trace genRanHex0 genRanHex3 genRanHex4 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex3 genRanHex4 +Edward -[#green]-> Dave: trace genRanHex0 genRanHex3 genRanHex4 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex3 genRanHex4 +Edward -[#green]-> Dave: trace genRanHex0 genRanHex3 genRanHex4 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex3 genRanHex4 +Edward -[#green]-> Dave: trace genRanHex0 genRanHex3 genRanHex4 +Alice -[#green]-> Charlie: trace genRanHex2 genRanHex11 genRanHex13 +Alice -[#green]-> Edward: trace genRanHex2 genRanHex11 genRanHex13 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex14 genRanHex15 +Edward -[#green]-> Dave: trace genRanHex1 genRanHex17 genRanHex20 +Edward -[#green]-> Dave: trace genRanHex2 genRanHex21 genRanHex23 +Edward -[#green]-> Dave: trace genRanHex5 genRanHex24 genRanHex25 @enduml \ No newline at end of file diff --git a/__tests__/fixtures/batched-giraffe-triangle.json b/__tests__/fixtures/batched-giraffe-triangle.json index ee0fd48..c4580f0 100644 --- a/__tests__/fixtures/batched-giraffe-triangle.json +++ b/__tests__/fixtures/batched-giraffe-triangle.json @@ -3,39 +3,28 @@ "[---]->[---] ---", "[Alice]->[Bob] meet", "[Alice]->[Bob] probe genRanHex0", - "[---]->[---] ---", - "[Bob]->[Alice] have-probes", "[Bob]->[Charlie] meet", - "[Bob]->[Charlie] probe genRanHex0", - "[Bob]->[Charlie] probe genRanHex1", - "[---]->[---] ---", - "[Alice]->[Bob] okay-to-send-probes", - "[Charlie]->[Bob] have-probes", "[Charlie]->[Alice] meet", - "[Charlie]->[Alice] probe genRanHex0", - "[Charlie]->[Alice] probe genRanHex1", - "[Charlie]->[Alice] probe genRanHex2", "[---]->[---] ---", - "[Bob]->[Alice] probe genRanHex1", - "[Bob]->[Charlie] okay-to-send-probes", + "[Bob]->[Charlie] have-probes", + "[Bob]->[Alice] have-probes", "[Alice]->[Charlie] have-probes", - "[Alice]->[Charlie] trace genRanHex0 genRanHex3 genRanHex4", - "[Alice]->[Bob] have-probes", "[---]->[---] ---", - "[Alice]->[Charlie] trace genRanHex1 genRanHex5 genRanHex6", - "[Alice]->[Bob] trace genRanHex1 genRanHex5 genRanHex7", - "[Charlie]->[Bob] probe genRanHex2", + "[Charlie]->[Bob] okay-to-send-probes", + "[Alice]->[Bob] okay-to-send-probes", "[Charlie]->[Alice] okay-to-send-probes", - "[Bob]->[Alice] okay-to-send-probes", "[---]->[---] ---", - "[Bob]->[Alice] have-probes", - "[Bob]->[Charlie] have-probes", - "[Alice]->[Bob] probe genRanHex2", + "[Bob]->[Charlie] probe genRanHex0", + "[Alice]->[Charlie] probe genRanHex0", "[---]->[---] ---", - "[Alice]->[Bob] okay-to-send-probes", - "[Charlie]->[Bob] okay-to-send-probes", - "[Bob]->[Charlie] trace genRanHex2 genRanHex8 genRanHex9", - "[Bob]->[Alice] trace genRanHex2 genRanHex8 genRanHex10", + "[Charlie]->[Alice] have-probes", + "[Charlie]->[Bob] have-probes", + "[Charlie]->[Bob] trace genRanHex0 genRanHex1 genRanHex2", + "[Charlie]->[Alice] trace genRanHex0 genRanHex1 genRanHex3", + "[---]->[---] ---", + "[Alice]->[Charlie] okay-to-send-probes", + "[Bob]->[Charlie] okay-to-send-probes", + "[Bob]->[Alice] trace genRanHex0 genRanHex1 genRanHex2", "[---]->[---] ---", "[---]->[---] ---" ], @@ -44,25 +33,9 @@ "[Alice]->[Bob]", "[Alice]>-[Bob]", "[Bob]->[Charlie]", + "[Alice]->[Charlie]", "[Bob]>-[Charlie]", - "[Charlie]->[Alice]", - "[Charlie]>-[Alice]" - ], - "probe genRanHex1": [ - "[Bob]->[Charlie]", - "[Bob]>-[Charlie]", - "[Charlie]->[Alice]", - "[Bob]->[Alice]", - "[Charlie]>-[Alice]", - "[Bob]>-[Alice]" - ], - "probe genRanHex2": [ - "[Charlie]->[Alice]", - "[Charlie]>-[Alice]", - "[Charlie]->[Bob]", - "[Charlie]>-[Bob]", - "[Alice]->[Bob]", - "[Alice]>-[Bob]" + "[Alice]>-[Charlie]" ] }, "alice": { @@ -75,131 +48,85 @@ "Alice is talking to Bob", "QUEUEING PROBE genRanHex0 TO Bob [3/4]", "Done onMeet Bob [4/4]", - "[Node#receiveMessage] Alice receives message from Bob", "[Node#receiveMessage] Alice receives message from Charlie", "MEET MESSAGE FROM Charlie, queueing all flood probes", "QUEUEING ALL FLOOD PROBES TO Charlie", "QUEUEING PROBE genRanHex0 TO Charlie", "Alice starts waiting to talk to Charlie", "Alice raises hand to Charlie", - "[Node#receiveMessage] Alice receives message from Charlie", - "INCOMING PROBE genRanHex0 IS KNOWN TO US", - "PROBE genRanHex0 ALREADY KNOWN TO US, VIRGIN FOR Charlie!", - "[Node#lookup-probe] Alice is looking up probe genRanHex0", - "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex0 genRanHex3 genRanHex4", - "[Node#receiveMessage] Alice receives message from Charlie", - "INCOMING PROBE genRanHex1 IS NEW TO US, FLOOD IT FORWARD", - "Alice starts waiting to talk to Bob", - "Alice raises hand to Bob", - "[Node#receiveMessage] Alice receives message from Charlie", - "INCOMING PROBE genRanHex2 IS NEW TO US, FLOOD IT FORWARD", "[Node#receiveMessage] Alice receives message from Bob", - "INCOMING PROBE genRanHex1 IS KNOWN TO US", - "PROBE genRanHex1 ALREADY KNOWN TO US, VIRGIN FOR Bob!", - "[Node#lookup-probe] Alice is looking up probe genRanHex1", - "[Node#sendTraceMessage] Alice sends trace message to Charlie: trace genRanHex1 genRanHex5 genRanHex6", - "[Node#sendTraceMessage] Alice sends trace message to Bob: trace genRanHex1 genRanHex5 genRanHex7", "[Node#receiveMessage] Alice receives message from Charlie", "Alice receives okay-to-send-probes from Charlie", + "QUEUEING PROBE genRanHex0 TO Charlie [3/4]", + "[Node#receiveMessage] Alice receives message from Charlie", + "[Node#receiveMessage] Alice receives message from Charlie", + "[TraceEngine] handling trace message from Charlie: trace genRanHex0 genRanHex1 genRanHex3", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex0 genRanHex1 genRanHex3, we found these upstreams: [], and otherLeg undefined", "[Node#receiveMessage] Alice receives message from Bob", - "Alice receives okay-to-send-probes from Bob", - "QUEUEING PROBE genRanHex2 TO Bob [3/4]", - "[Node#receiveMessage] Alice receives message from Bob", - "[Node#receiveMessage] Alice receives message from Bob", - "[TraceEngine] handling trace message from Bob: trace genRanHex2 genRanHex8 genRanHex10", - "[Node#lookup-probe] Alice is looking up probe genRanHex2", - "[TracesEngine] sending message to Charlie: trace genRanHex2 genRanHex8 genRanHex10" + "[TraceEngine] handling trace message from Bob: trace genRanHex0 genRanHex1 genRanHex2", + "[Node#lookup-probe] Alice is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Bob: trace genRanHex0 genRanHex1 genRanHex2, we found these upstreams: [], and otherLeg undefined" ], "loopsFound": [] }, "bob": { "debugLog": [ + "I meet Charlie [1/4]", + "I queue Charlie all my flood probes [2/4]", + "QUEUEING ALL FLOOD PROBES TO Charlie", + "Done onMeet Charlie [4/4]", "[Node#receiveMessage] Bob receives message from Alice", "MEET MESSAGE FROM Alice, queueing all flood probes", "QUEUEING ALL FLOOD PROBES TO Alice", "[Node#receiveMessage] Bob receives message from Alice", "INCOMING PROBE genRanHex0 IS NEW TO US, FLOOD IT FORWARD", + "Bob starts waiting to talk to Charlie", + "Bob raises hand to Charlie", "Bob starts waiting to talk to Alice", "Bob raises hand to Alice", - "I meet Charlie [1/4]", - "I queue Charlie all my flood probes [2/4]", - "QUEUEING ALL FLOOD PROBES TO Charlie", - "QUEUEING PROBE genRanHex0 TO Charlie", - "Bob is talking to Charlie", + "[Node#receiveMessage] Bob receives message from Charlie", + "Bob receives okay-to-send-probes from Charlie", "QUEUEING PROBE genRanHex0 TO Charlie [3/4]", - "and create a new flood probe for other friends than Charlie [3/4]", - "creating flood probe", - "Bob is talking to Charlie", - "QUEUEING PROBE genRanHex1 TO Charlie [3/4]", - "Done onMeet Charlie [4/4]", "[Node#receiveMessage] Bob receives message from Alice", "Bob receives okay-to-send-probes from Alice", - "QUEUEING PROBE genRanHex1 TO Alice [3/4]", - "[Node#receiveMessage] Bob receives message from Charlie", - "[Node#receiveMessage] Bob receives message from Alice", - "[Node#receiveMessage] Bob receives message from Alice", - "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex5 genRanHex7", - "[Node#lookup-probe] Bob is looking up probe genRanHex1", "[Node#receiveMessage] Bob receives message from Charlie", - "INCOMING PROBE genRanHex2 IS NEW TO US, FLOOD IT FORWARD", - "Bob starts waiting to talk to Alice", - "Bob raises hand to Alice", - "Bob starts waiting to talk to Charlie", - "Bob raises hand to Charlie", - "[Node#receiveMessage] Bob receives message from Alice", - "INCOMING PROBE genRanHex2 IS KNOWN TO US", - "PROBE genRanHex2 ALREADY KNOWN TO US, VIRGIN FOR Alice!", - "[Node#lookup-probe] Bob is looking up probe genRanHex2", - "[Node#sendTraceMessage] Bob sends trace message to Charlie: trace genRanHex2 genRanHex8 genRanHex9", - "[Node#sendTraceMessage] Bob sends trace message to Alice: trace genRanHex2 genRanHex8 genRanHex10", - "[Node#receiveMessage] Bob receives message from Alice", - "Bob receives okay-to-send-probes from Alice", "[Node#receiveMessage] Bob receives message from Charlie", - "Bob receives okay-to-send-probes from Charlie" + "[TraceEngine] handling trace message from Charlie: trace genRanHex0 genRanHex1 genRanHex2", + "[Node#lookup-probe] Bob is looking up probe genRanHex0", + "[TraceEngine] in the context of trace message from Charlie: trace genRanHex0 genRanHex1 genRanHex2, we found these upstreams: [Alice], and otherLeg undefined", + "[TracesEngine] sending message to Alice: trace genRanHex0 genRanHex1 genRanHex2", + "[Node#sendTraceMessage] Bob sends trace message to Alice: trace genRanHex0 genRanHex1 genRanHex2" ], "loopsFound": [] }, "charlie": { "debugLog": [ + "I meet Alice [1/4]", + "I queue Alice all my flood probes [2/4]", + "QUEUEING ALL FLOOD PROBES TO Alice", + "Done onMeet Alice [4/4]", "[Node#receiveMessage] Charlie receives message from Bob", "MEET MESSAGE FROM Bob, queueing all flood probes", "QUEUEING ALL FLOOD PROBES TO Bob", "[Node#receiveMessage] Charlie receives message from Bob", + "[Node#receiveMessage] Charlie receives message from Alice", + "[Node#receiveMessage] Charlie receives message from Bob", "INCOMING PROBE genRanHex0 IS NEW TO US, FLOOD IT FORWARD", + "Charlie starts waiting to talk to Alice", + "Charlie raises hand to Alice", "Charlie starts waiting to talk to Bob", "Charlie raises hand to Bob", - "[Node#receiveMessage] Charlie receives message from Bob", - "INCOMING PROBE genRanHex1 IS NEW TO US, FLOOD IT FORWARD", - "I meet Alice [1/4]", - "I queue Alice all my flood probes [2/4]", - "QUEUEING ALL FLOOD PROBES TO Alice", - "QUEUEING PROBE genRanHex0 TO Alice", - "Charlie is talking to Alice", - "QUEUEING PROBE genRanHex0 TO Alice [3/4]", - "QUEUEING PROBE genRanHex1 TO Alice", - "Charlie is talking to Alice", - "QUEUEING PROBE genRanHex1 TO Alice [3/4]", - "and create a new flood probe for other friends than Alice [3/4]", - "creating flood probe", - "Charlie is talking to Alice", - "QUEUEING PROBE genRanHex2 TO Alice [3/4]", - "Done onMeet Alice [4/4]", - "[Node#receiveMessage] Charlie receives message from Bob", - "Charlie receives okay-to-send-probes from Bob", - "QUEUEING PROBE genRanHex2 TO Bob [3/4]", - "[Node#receiveMessage] Charlie receives message from Alice", "[Node#receiveMessage] Charlie receives message from Alice", - "[TraceEngine] handling trace message from Alice: trace genRanHex0 genRanHex3 genRanHex4", + "INCOMING PROBE genRanHex0 IS KNOWN TO US", + "PROBE genRanHex0 ALREADY KNOWN TO US, VIRGIN FOR Alice!", "[Node#lookup-probe] Charlie is looking up probe genRanHex0", - "[TracesEngine] sending message to Bob: trace genRanHex0 genRanHex3 genRanHex4", + "[Node#sendTraceMessage] Charlie sends trace message to Bob: trace genRanHex0 genRanHex1 genRanHex2", + "[Node#sendTraceMessage] Charlie sends trace message to Alice: trace genRanHex0 genRanHex1 genRanHex3", "[Node#receiveMessage] Charlie receives message from Alice", - "[TraceEngine] handling trace message from Alice: trace genRanHex1 genRanHex5 genRanHex6", - "[Node#lookup-probe] Charlie is looking up probe genRanHex1", - "[TracesEngine] sending message to Bob: trace genRanHex1 genRanHex5 genRanHex6", - "[Node#receiveMessage] Charlie receives message from Bob", + "Charlie receives okay-to-send-probes from Alice", "[Node#receiveMessage] Charlie receives message from Bob", - "[TraceEngine] handling trace message from Bob: trace genRanHex2 genRanHex8 genRanHex9", - "[Node#lookup-probe] Charlie is looking up probe genRanHex2" + "Charlie receives okay-to-send-probes from Bob" ], "loopsFound": [] } diff --git a/__tests__/fixtures/batched-giraffe-triangle.puml b/__tests__/fixtures/batched-giraffe-triangle.puml index b813bf7..dea50cf 100644 --- a/__tests__/fixtures/batched-giraffe-triangle.puml +++ b/__tests__/fixtures/batched-giraffe-triangle.puml @@ -2,18 +2,10 @@ Alice -[#green]-> Bob: meet Alice -[#green]-> Bob: probe genRanHex0 Bob -[#green]-> Charlie: meet -Bob -[#green]-> Charlie: probe genRanHex0 -Bob -[#green]-> Charlie: probe genRanHex1 Charlie -[#green]-> Alice: meet -Charlie -[#green]-> Alice: probe genRanHex0 -Charlie -[#green]-> Alice: probe genRanHex1 -Charlie -[#green]-> Alice: probe genRanHex2 -Bob -[#green]-> Alice: probe genRanHex1 -Alice -[#green]-> Charlie: trace genRanHex0 genRanHex3 genRanHex4 -Alice -[#green]-> Charlie: trace genRanHex1 genRanHex5 genRanHex6 -Alice -[#green]-> Bob: trace genRanHex1 genRanHex5 genRanHex7 -Charlie -[#green]-> Bob: probe genRanHex2 -Alice -[#green]-> Bob: probe genRanHex2 -Bob -[#green]-> Charlie: trace genRanHex2 genRanHex8 genRanHex9 -Bob -[#green]-> Alice: trace genRanHex2 genRanHex8 genRanHex10 +Bob -[#green]-> Charlie: probe genRanHex0 +Alice -[#green]-> Charlie: probe genRanHex0 +Charlie -[#green]-> Bob: trace genRanHex0 genRanHex1 genRanHex2 +Charlie -[#green]-> Alice: trace genRanHex0 genRanHex1 genRanHex3 +Bob -[#green]-> Alice: trace genRanHex0 genRanHex1 genRanHex2 @enduml \ No newline at end of file diff --git a/__tests__/self-mending-for-giraffe-hourglass.test.ts b/__tests__/self-mending-for-giraffe-hourglass.test.ts index b4369f6..63614e6 100644 --- a/__tests__/self-mending-for-giraffe-hourglass.test.ts +++ b/__tests__/self-mending-for-giraffe-hourglass.test.ts @@ -3,7 +3,7 @@ import { jest } from '@jest/globals'; import { readFileSync, writeFileSync } from 'fs'; -const NUM_ROUNDS = 100; +const NUM_ROUNDS = 10; const TEST_NAME = 'batched-giraffe-hourglass'; const JSON_FILE = `__tests__/fixtures/${TEST_NAME}.json`; const PUML_FILE = `__tests__/fixtures/${TEST_NAME}.puml`; diff --git a/__tests__/self-mending-for-giraffe-triangle.test.ts b/__tests__/self-mending-for-giraffe-triangle.test.ts index aa7e674..2a4f506 100644 --- a/__tests__/self-mending-for-giraffe-triangle.test.ts +++ b/__tests__/self-mending-for-giraffe-triangle.test.ts @@ -35,10 +35,13 @@ describe(`${TEST_NAME} - until the music stops`, () => { networkSimulator.addNode('Charlie', charlie); flushReport = await networkSimulator.flush(); await alice.meet('Bob'); - flushReport = await networkSimulator.flush(); - await bob.meet('Charlie'); - flushReport = await networkSimulator.flush(); - await charlie.meet('Alice'); + // suppressing probe creation in meet of Bob with Charlie and Charlie with Alice: + await bob.meet('Charlie', false); + await charlie.meet('Alice', false); + // flushReport = await networkSimulator.flush(); + // await bob.meet('Charlie'); + // flushReport = await networkSimulator.flush(); + // await charlie.meet('Alice'); let counter = 0; do { flushReport = await networkSimulator.flush(); diff --git a/src/engine/probesengine.ts b/src/engine/probesengine.ts index bdde5a8..927a92c 100644 --- a/src/engine/probesengine.ts +++ b/src/engine/probesengine.ts @@ -193,11 +193,11 @@ export class ProbesEngine extends EventEmitter { this.emit('debug', `creating flood probe`); return this.queueFloodProbeToAll(genRanHex(8), true); } - public addFriend(other: string, weInitiate: boolean): void { - this.friends[other] = new Friend(null, weInitiate ? HandRaisingStatus.Talking : HandRaisingStatus.Listening); + public addFriend(other: string, createFloodProbe: boolean): void { + this.friends[other] = new Friend(null, createFloodProbe ? HandRaisingStatus.Talking : HandRaisingStatus.Listening); this.queueAllFloodProbes(other); - if (weInitiate) { + if (createFloodProbe) { this.emit('debug', `and create a new flood probe for other friends than ${other} [3/4]`); this.createFloodProbe(); } diff --git a/src/engine/tracesengine.ts b/src/engine/tracesengine.ts index 6053cdb..649b8a4 100644 --- a/src/engine/tracesengine.ts +++ b/src/engine/tracesengine.ts @@ -23,24 +23,26 @@ export class TracesEngine extends EventEmitter { if (messageType !== 'trace') { throw new Error(`expected trace message but got ${messageType}`); } - this.emit('lookup-probe', probeId, (probeFrom) => { + this.emit('lookup-probe', probeId, (probeFrom: string[]) => { const otherLeg = this.getOtherLeg(probeId, traceId, legId); + this.emit('debug', `[TraceEngine] in the context of trace message from ${sender}: ${message}, we found these upstreams: [${probeFrom.join(', ')}], and otherLeg ${otherLeg}`); if (typeof otherLeg === 'undefined') { const legs = {}; probeFrom.forEach((from) => { legs[from] = legId; this.emit('debug', `[TracesEngine] sending message to ${from}: trace ${probeId} ${traceId} ${legId}`); - // this.emit('message', from, `trace ${probeId} ${traceId} ${legId}`); + this.emit('message', from, `trace ${probeId} ${traceId} ${legId}`); }); if (typeof this.tracesForwarded[probeId] === 'undefined') { this.tracesForwarded[probeId] = {}; } this.tracesForwarded[probeId][traceId] = legs; } else { + this.emit('debug', `[TracesEngine] found otherLeg ${otherLeg} for trace ${traceId} of probe ${probeId}`); if (otherLeg === sender) { this.emit('debug', `UNEXPECTED: Received two different legs from the same node`); } - this.emit('message', otherLeg, `trace ${probeId} ${traceId} ${legId}`) + // this.emit('message', otherLeg, `trace ${probeId} ${traceId} ${legId}`) } }); } diff --git a/src/giraffe.ts b/src/giraffe.ts index af52100..442b263 100644 --- a/src/giraffe.ts +++ b/src/giraffe.ts @@ -59,13 +59,13 @@ export class Giraffe extends EventEmitter implements NetworkNode { case `okay-to-send-probes`: return this.probesengine.handleOkayToSendProbesMessage(sender); } } - meet(other: string): void { + meet(other: string, createProbe: boolean = true): void { this.friendsengine.addFriend(other); this.debugLog.push(`I meet ${other} [1/4]`); // this is safe to because it will just queue them for the next message round this.emit('message', other, 'meet'); this.debugLog.push(`I queue ${other} all my flood probes [2/4]`); - this.probesengine.addFriend(other, true); + this.probesengine.addFriend(other, createProbe); this.debugLog.push(`Done onMeet ${other} [4/4]`); }