Skip to content

Enhancement: an API to get all details, including input addresses, for a set of transparent transactions. #297

Open
@gmale

Description

@gmale

Enhancement Story

As a wallet developer, I'd like to fetch transparent transactions from Lightwalletd along with all the related details for that transaction (in particular the addresses associated with the inputs, which requires additional context and lookups from the insight explorer. outputs don't have that problem.) so that I can display these relevant details to the user, when they inspect their transaction details.

In other words:
Given a single transaction, give me as much available info about it as possible, within reason. Particularly with the tx inputs.

Details

In a transparent transaction, each input does not contain enough information about where it originated. All you see is pointers to where the money came from. Getting the relevant details requires an additional lookup. You have to look up the UTXOs that were used when the transaction was created. The UTXO map is, essentially, a backwards map that can serve as a lookup for address info. We want to show that address info to the user, when they inspect their transactions that have transparent components.

Criteria

For a given transaction, a developer interacting with lightwalletd can:

  • receive all details about the transaction inputs that an average user would care to see (currently missing)
  • receive all details about the transaction outputs that an average user would care to see (currently available)
  • ideally, not have to make individual server requests for each transaction
    • i.e. can request over a block range for a given address
  • receive typed objects rather than raw binary
  • can include commitments that can later be added to flyclient trees
    • currently, the root is available but we can add other roots in the future
    • eventually, this commitment can be used to verify the information returned by lightwalletd

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