-
Notifications
You must be signed in to change notification settings - Fork 79
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Describe the enhancement
This enhancement aims to integrate BIP-329 ("Wallet Labels Export Format") support into bdk-cli
. This will allow users to:
- Set and manage human-readable labels for wallet items such as transactions (TXIDs), addresses, and UTXOs (outputs).
- Import labels from other BIP-329 compliant wallets or previously exported
bdk-cli
label files. - Export labels in the standard BIP-329 JSONL format for backup or use in other compatible wallet software.
- View these labels alongside relevant items in existing
bdk-cli
list commands (e.g.,transactions
,unspent
).
The implementation will leverage the external bip329
crate for parsing, managing, and persisting label data in a separate .jsonl
file (e.g., <wallet_name>.labels.jsonl
) within the wallet's data directory.
Use case
Users of bdk-cli
will benefit from this feature in several ways:
- Improved Wallet Management: Instead of relying solely on cryptic identifiers (TXIDs, long addresses), users can add descriptive labels (e.g., "Payment from Steve," "Savings Address," "Coinjoin UTXO"). This significantly improves transaction history comprehension and overall wallet organization.
- Enhanced Interoperability: By adhering to the BIP-329 standard, users can easily migrate their label data to or from other Bitcoin wallets that support this BIP, reducing vendor lock-in and improving the portability of their wallet metadata.
- Better Record Keeping: Labels provide context for financial activities, which can be useful for personal accounting or tax purposes.
- Streamlined Debugging/Testing: Developers using
bdk-cli
to test BDK applications can label specific test transactions or UTXOs for easier identification and tracking.
Additional context
- This feature request was originally discussed in bdk_wallet issue 168.
- The current proposed approach by @notmandatory (BIP 329 "Wallet Labels Export Format" Support bdk_wallet#168 (comment)) is to implement this in
bdk-cli
. - The implementation will use the existing bip329 crate.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request
Type
Projects
Status
Todo