Add a dedicated pool registration certificate creation command to register or update a pool’s BLS key using existing pool parameters
メンテナーはふだん 1 日以内に返信
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 52/100
- issue の種類
- 機能追加
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- haskell
- 領域
- blockchain, cli
調査の方向性
Start by reading the existing stake-pool certificate creation commands and the code that queries or reads pool parameters and validates BLS keys and proofs of possession. Trace how pool-registration certificates are serialized and how transaction witnesses are assembled. Done means the new command supports all three parameter sources, preserves unrelated parameters, validates the BLS inputs, and its documentation shows collecting owner witnesses and assembling the signed transaction.
索引モデルが issue の本文から書いたものです。
説明
Problem
Registering or rotating a pool’s BLS key currently uses a pool-registration certificate, which includes the pool’s other parameters. Operators should be able to change the BLS key without manually supplying every unrelated parameter again or risking accidental changes.
Related: https://github.com/input-output-hk/ouroboros-leios/issues/1093
Proposed command
Add a dedicated command under stake-pool to generate a pool-registration certificate that changes only the BLS key and its proof of possession.
The command should accept exactly one source of existing pool parameters:
- Pool ID: query a node for the pool parameters.
- Pool parameters file: read explicitly supplied parameters, supporting offline use.
- Existing pool-registration certificate: extract the parameters from that certificate, supporting offline use.
The command should also accept the new BLS verification key and proof of possession, and an output file for the generated certificate.
The output should use the existing pool-registration certificate type.
Expected behavior
- Accept exactly one source of existing pool parameters.
- For file inputs, use the supplied values and validate the file type.
- When querying by pool ID, let the caller choose current or pending parameters.
- Preserve all selected parameters except the BLS key and proof of possession.
- Support both initial BLS registration for an existing pool and subsequent BLS key rotation.
- Validate the supplied BLS key and proof of possession.
- Clearly report the pool identity and the BLS change being made.
Signing workflow
The generated certificate can be included in a transaction using existing commands. The transaction body can then be distributed to pool owners, who independently create witnesses and return them for assembly.
Document the required authorizations:
- Pool cold key.
- Every owner stake key listed in the generated certificate.
- Authorization for the transaction’s spending inputs.
All witnesses must refer to the same unchanged transaction body.
Acceptance criteria
- Operators can produce a BLS registration/update certificate using any of the three parameter sources.
- File-based inputs work without a node connection.
- All unrelated pool parameters are preserved.
- Documentation includes an example of collecting owner witnesses and assembling the signed transaction.
This simplifies certificate preparation without changing ledger authorization requirements.
- 主要言語
- Haskell
- スター
- 72
- フォーク
- 26
- 平均マージ
- 2日 2時間
- マージ済み PR(30日)
- 21
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
IntersectMBO/cardano-cli のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
IntersectMBO/cardano-cli#1306 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
BUG - cardano-cli 11.6 returns wrong `bksRegisteredIn` epoch対応中かも @carbolymer が 1 日前に担当しました。 オープン
IntersectMBO/cardano-cli#1493 · コメント 3 件 · リアクション 1 件 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
Show genesis hash mismatches in plain words対応中かも @palas が 13 日前に担当しました。 オープンenhancement
IntersectMBO/cardano-cli#1481 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
performance
難易度 4/5 3〜5日 初心者へのやさしさ 56/100
IntersectMBO/cardano-cli#1472 ·
メンテナーはふだん 1 日以内に返信
-
Clarify the origin and intended use of Plutus V2/V4 test fixtures対応中かも @Jimbo4350 が 22 日前に担当しました。 オープン
IntersectMBO/cardano-cli#1464 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
IntersectMBO/cardano-cli の issue をすべて見る
似ている issue
-
needs triage type: bug
難易度 2/5 1〜3時間 初心者へのやさしさ 67/100
haskell/cabal#12525 · コメント 1 件 ·
メンテナーはふだん 3 日以内に返信
-
validateXmirOptions error message is missing the word 'option'対応中かも @opusstudiohq-max が 1 日前に担当しました。 オープン
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
objectionary/phino#2256 ·
メンテナーはふだん 1 日以内に返信
-
30-minutes algorithm any-language codewars dart easy elixir hackerrank hacktoberfest haskell help wanted interview-prep julia leetcode lua open-source r scala students zig
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
Huerte/algo-solutions-python#163 ·
メンテナーはふだん 1 日以内に返信
-
subsystem: saw-core type: bug
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
GaloisInc/saw-script#3516 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1時間未満 初心者へのやさしさ 65/100
qnikst/HaskellNet#125 ·