Fix trace packet handling (closes #44)

This commit is contained in:
Jack Kingsman
2026-03-09 09:23:35 -07:00
parent 48bc8c6337
commit 7e384c12bb
3 changed files with 25 additions and 2 deletions
+7 -1
View File
@@ -143,11 +143,17 @@ export function parsePacket(hexData: string): ParsedPacket | null {
try {
const decoded = MeshCoreDecoder.decode(hexData);
if (!decoded.isValid) return null;
const tracePayload =
decoded.payloadType === PayloadType.Trace && decoded.payload.decoded
? (decoded.payload.decoded as { pathHashes?: string[] })
: null;
const result: ParsedPacket = {
payloadType: decoded.payloadType,
messageHash: decoded.messageHash || null,
pathBytes: decoded.path || [],
// TRACE reuses the outer packet path field for SNR samples, not hop identities.
// For visualization, use the trace payload's actual node hashes instead.
pathBytes: tracePayload?.pathHashes || decoded.path || [],
srcHash: null,
dstHash: null,
advertPubkey: null,