Add a dedicated pool registration certificate creation command to register or update a pool’s BLS key using existing pool parameters
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 52/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- haskell
- Ambito
- blockchain, cli
Direzione di ricerca
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.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
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.
- Lingua principale
- Haskell
- Stelle
- 72
- Fork
- 26
- Merge medio
- 3g 4h
- PR unite (30g)
- 19
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di IntersectMBO/cardano-cli
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
IntersectMBO/cardano-cli#1306 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Show genesis hash mismatches in plain wordsForse già presa @palas l’ha presa oggi. Aperta
IntersectMBO/cardano-cli#1481 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 56/100
IntersectMBO/cardano-cli#1472 ·
I maintainer di solito rispondono entro 1 giorno
-
Clarify the origin and intended use of Plutus V2/V4 test fixturesForse già presa @Jimbo4350 l’ha presa 10 giorni fa. Aperta
IntersectMBO/cardano-cli#1464 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Share body construction and input reading between transaction and sub-transaction buildersForse già presa @Jimbo4350 l’ha presa 10 giorni fa. Apertarefactor
IntersectMBO/cardano-cli#1463 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di IntersectMBO/cardano-cli
Issue simili
-
MorphRule, DataizeRule and ContextualizeRule silently accept unknown YAML keys, unlike rewrite `Rule`Forse già presa @renyamamoto2026-cmyk l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
objectionary/phino#2107 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno