Skip to content

HWI parity: complete Ledger registered-wallet signing #70

Description

@trevarj

Goal

Complete Ledger signtx parity for registered wallets and non-default wallet policies, moving the Ledger matrix entry from [~] to [x].

This follows the remaining partial entry in docs/HWI.md.

Current state

  • Standard singlesig signing is covered.
  • The parity harness covers one registered native-SegWit 2-of-2 sorted-multisig policy.
  • The CLI can reconstruct and register a Ledger multisig policy, retain the returned HMAC, and pass it into the signing interpreter.
  • Broader policy shapes and registered-wallet behavior have not been audited or claimed complete.

Scope

  • Audit the policy shapes supported by pinned HWI 3.2.0 and the Ledger app used by BHWI.
  • Define the exact supported parity set before implementation.
  • Extend Ledger policy reconstruction, registration/HMAC handling, and signing context as required.
  • Add differential cases for the additional supported policy shapes, including script wrappers and key ordering where applicable.
  • Cover already-registered and newly-registered wallet behavior when the emulator supports both paths.
  • Return contextual errors for unsupported or ambiguous PSBT policy shapes.

Acceptance criteria

  • The supported Ledger wallet-policy set is documented.
  • Every claimed policy shape signs successfully through the common, async, and HWI CLI path.
  • Added signatures are cryptographically valid and belong to the expected device keys.
  • Registration and HMAC handling are emulator-covered.
  • hwi-parity-ledger and the unmodified hwi-upstream-ledger final gate pass.
  • docs/HWI.md marks Ledger signtx as [x].
  • Required protocol, CLI, emulator, and non-emulator checks pass.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions