Skip to content

Use Rust/WASM bindings for explorer transaction decoding #33

Description

@BrendanChou

Problem

The explorer currently duplicates parts of the Rust transaction wire format in TypeScript. That duplication has already drifted once: transaction proof verification assumed a fixed transfer-sized transaction body and failed for newer tagged/channel transaction shapes.

Goal

Expose a small Rust/WASM boundary for explorer transaction decoding and digest verification so the frontend does not need to manually mirror transaction layout details.

A useful first API could return:

  • signed transaction digest
  • operation kind: transfer, channel open, channel close
  • sender/counterparty/value/nonce display fields where needed

Notes

Short term, it is acceptable to keep a narrow TypeScript parser for the current proof fix. This issue tracks the cleaner follow-up so future transaction format changes are validated by the Rust primitives codec instead of duplicated in the explorer.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions