wallet sign command returns generic error for decoding failures
Les mainteneurs répondent en général sous 1 jour
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 72/100
Piste de recherche
Commence par le chemin de décodage PSBT de la commande bdk-cli wallet sign et suis la façon dont les erreurs de décodage deviennent des valeurs BDKCliError. L’issue indique les variantes existantes PsbtParseError et DecodeError ; vérifie le mappage des erreurs et exécute les tests CLI pertinents. Le travail est terminé lorsque des données PSBT mal formées signalent une erreur de décodage Base64 explicite au lieu d’une erreur générique.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Describe the bug
When the bdk-cli wallet sign command is given a PSBT that cannot be decoded (e.g. malformed base64, truncated bytes, or invalid PSBT structure), the CLI returns a generic error instead of a descriptive one. The underlying BDKCliError already has a dedicated PsbtError and DecodeError variant, but the CLI appears to collapse decoding failures into Error::Generic, which makes it impossible for users to tell whether the problem is their PSBT, their wallet, or the signing step itself.
To Reproduce
- Build
bdk-cliwith any wallet backend. - Create a wallet and obtain a valid PSBT (or use an existing one).
- Corrupt the PSBT string or send a invalid one:
bdk-cli wallet -w test_user1 sign --psbt "cHNidP8BAKkBAAAAAsoKb5SPcP0PpTjvnGo3b4ANmCiirV/br9mIOgkb6DqyAAAAAAD9////"
- Observe the error output.
Expected behavior
The CLI should return a specific, actionable error that identifies the failure as a Base64 decoding problem.for example:
Error: Base64 decode error: Invalid padding
rather than:
Error: Generic error: Invalid padding
Build environment
· BDK-CLI tag/commit: main
· OS+version: macOS 12.7.6 (Monterey)
· Rust/Cargo version: rustc --version output
· Rust/Cargo target: x86_64-apple-darwin
Additional context
The BDKCliError enum already includes a PsbtParseError and DecodeErrorvariant so the fix is simple. I'll like to work on it myself.
- Langage dominant
- Rust
- Étoiles
- 143
- Forks
- 103
- Merge moyen
- 2 j 15 h
- PR mergées (30 j)
- 3
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de bitcoindevkit/bdk-cli
-
key generate subcommand silently coerces any word count other than 12 to 24 wordsPeut-être pris @Olorunshogo l’a pris il y a 1 jour. Ouvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
bitcoindevkit/bdk-cli#362 · 3 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
bitcoindevkit/bdk-cli#360 ·
Les mainteneurs répondent en général sous 1 jour
-
Expose remaining SignOptions fields in the wallet sign commandPeut-être pris @emma31-dev l’a pris il y a 4 jours. Ouverteenhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
bitcoindevkit/bdk-cli#358 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Remove "wallet" field from `WalletConfigInner`Peut-être pris @Jennycj l’a pris il y a 13 jours. Ouverteenhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
bitcoindevkit/bdk-cli#332 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement
Difficulté 3/5 1-2 jours Accessibilité débutants 55/100
bitcoindevkit/bdk-cli#359 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de bitcoindevkit/bdk-cli
Issues similaires
-
area/tools bug session-analysis
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
README crane example out of dateOuverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 84/100
nix-community/fenix#262 ·
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 67/100
GabrieleLozupone/kokon#41 ·
Les mainteneurs répondent en général sous 1 jour
-
Small glitchOuvertepriority: medium
Difficulté 2/5 1-3 heures Accessibilité débutants 66/100
storytold/photocraft#9538 ·
Les mainteneurs répondent en général sous 1 jour
-
bug P2 rust
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour