Expose remaining SignOptions fields in the wallet sign command
Maintainer thường phản hồi trong vòng 2 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 78/100
Hướng nghiên cứu
Issue cho biết thay đổi chỉ giới hạn ở SignCommand; trước tiên hãy đọc các định nghĩa đối số và phương thức execute. Thêm các tùy chọn CLI cho những trường SignOptions được liệt kê, giữ nguyên giá trị mặc định của thư viện khi bỏ qua các flag, đồng thời xác định cách tuần tự hóa TapLeavesOptions. Công việc hoàn tất khi người dùng CLI có thể thiết lập từng trường và các tùy chọn bị bỏ qua vẫn giữ giá trị mặc định.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Describe the enhancement
The wallet sign command only exposes assume_height and trust_witness_utxo. The remaining fields on bdk_wallet::SignOptions: allow_all_sighashes, try_finalize, sign_with_tap_internal_key, and allow_grinding, tap_leaves_options are fixed at their defaults, so CLI users have no way to change them. This request adds a flag for each, using Option<bool> and Option<TapLeavesOptions> for tap_leaves_options so that omitting a flag preserves the library default.
Use case
allow_all_sighashes is needed to sign PSBTs using anything other than SIGHASH_ALL, which currently fails through the CLI. try_finalize = false is needed for multisig, where finalizing after the first signature blocks the second signer from adding theirs. remove_partial_sigs = false preserves partial signatures between signing rounds. sign_with_tap_internal_key and allow_grinding are useful for Taproot debugging and signature comparison. Together these make the CLI usable for collaborative signing, which is currently only possible by calling the library directly.
Additional context
The change is confined to SignCommand. Each field follows the existing pattern:
#[arg(env = "ALLOW_ALL_SIGHASHES", long = "allow_all_sighashes")]
pub allow_all_sighashes: Option<bool>,
// Other args
and feeds into SignOptions in execute:
let signopt = SignOptions {
assume_height: self.assume_height,
trust_witness_utxo: self.trust_witness_utxo.unwrap_or(false),
allow_all_sighashes: self.allow_all_sighashes.unwrap_or(false),
tap_leaves_options: self.tap_leaves_options.unwrap_or_default(),
try_finalize: self.try_finalize.unwrap_or_default(),
sign_with_tap_internal_key: self.sign_with_tap_internal_key.unwrap_or_default(),
allow_grinding: self.allow_grinding.unwrap_or_default(),
};
tap_leaves_options would require a manual serializer though.
- Ngôn ngữ chính
- Rust
- Star
- 142
- Fork
- 103
- Merge trung bình
- 4 ngày 8 giờ
- Pull request đã merge (30 ngày)
- 5
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của bitcoindevkit/bdk-cli
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
bitcoindevkit/bdk-cli#360 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
bitcoindevkit/bdk-cli#357 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Remove "wallet" field from `WalletConfigInner`Có thể đã có người làm @Jennycj đã nhận 7 ngày trước. Đang mởenhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
bitcoindevkit/bdk-cli#332 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
enhancement
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 55/100
bitcoindevkit/bdk-cli#359 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
`warn!` output is invisible unless `RUST_LOG` is setCó thể đã có người làm @chukwudiikeh đã nhận 5 ngày trước. Đang mở
bitcoindevkit/bdk-cli#352 · 1 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 2 ngày
Tất cả issue của bitcoindevkit/bdk-cli
Issue tương tự
-
ci: SHA pin 3rd party actionsĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 64/100
Maintainer thường phản hồi trong vòng 3 ngày
-
Zellij doesn't validate hex colors correctly and crashesCó thể đã có người làm @ymcx đã nhận hôm nay. Đang mởsuspected bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
zellij-org/zellij#5732 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug rust
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
jonathanong/no-mistakes#2267 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
BASEPRI needs an ISBĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 69/100
rust-embedded/cortex-m#702 · 1 bình luận ·
-
Make major, minor, and makedev safe on solarish targetsCó thể đã có người làm @xtqqczze đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày