Skip to main content

Cardano-cli user stories

Personas

IDNAME
HOLDERADA Holder
DRepDRep
CCMConstitutional Community Member
SPOStake Pool Operator

Latest test report

User stories

User Story IdTitleUser StoryAcceptance Criteria
CLI.001Obtain constitution hash for verification (HOLDER)As an Ada holder, I want to obtain the hash of the off-chain text of a Constitution so that I can compare it against the hash registered on-chain to verify its authenticity.AC-CLI.001
CLI.002Generate hash of the off-chain constitution (HOLDER)As an Ada holder, I want to generate the hash of the off-chain text for a proposed Constitution so that the hash can be utilized in a governance action.AC-CLI.002
CLI.003Generate Committee member cold key pair (CCM)As a potential Constitutional Committee member, I want to generate a COLD key pair so that I can be proposed for the Committee in a Governance action.AC-CLI.003
CLI.004Generate committee member hot key pair (CCM)As a potential Constitutional Committee member, I want to generate HOT key pair so that I can authorize the Hot key to sign votes on behalf of the Cold key.AC-CLI.004
CLI.005Authorization certificate (CCM)As a committee member, I want to issue an authorization certificate from my cold key to a hot key so that I can sign my votes using the hot key and keep the cold key in cold storage and can authorize a new hot key in case the original one is compromised.AC-CLI.005
CLI.006Generate committee member key hash (CCM)As a potential constitutional committee member, I want to generate the key hashes for my cold and hot keys so that they can be used by third parties to propose me as a new committee member and for identification purposes once I've been elected as committee member.AC-CLI.006
CLI.007Committee member resignation certificate (CCM)As a constitutional committee member, I want to be able to generate a resignation certificate so that I can submit it to the chain on a transaction to signal to the Ada holders that I’m resigning from my duties as cc member.AC-CLI.007
CLI.008Generate DRep keys (HOLDER)As an Ada holder, I want to generate Ed25519 keys so that I can register as a DRep.AC-CLI.008
CLI.009Generate DRep ID (DRep)As a DRep, I want to generate a DRep Id so that Ada holder can use it to delegate their votes to me and my voting record can be tracked.AC-CLI.009
CLI.010DRep Registration Certificate Generation (DRep)As a DRep, I want to generate a DRep registration certificate so that I can submit it on a transaction and the Ada holders can delegate their votes to me.AC-CLI.010
CLI.011DRep Retirement Certificate Generation (DRep)As a DRep, I want to generate a DRep retirement (unregistration) certificate so that I can submit it on a transaction and can get my DRep deposit back.AC-CLI.011
CLI.012DRep Metadata Hash Generation (DRep)As a DRep, I want to generate the hash of my DRep metadata so that I can supply it when registering as DRep.AC-CLI.012
CLI.013Create Update Constitution Governance Action (HOLDER)As an Ada holder, I want to create a governance action that updates the constitution so that it can be submitted to the chain and be voted by the governance bodies.AC-CLI.013
CLI.014Create Update Constitutional Committee Governance Action (HOLDER)As an Ada holder, I want to create a governance action that updates the constitutional committee so that it can be submitted to the chain and be voted by the governance bodies.AC-CLI.014
CLI.015Create Treasury Withdrawal Governance Action (HOLDER)As an Ada holder, I want to create a governance action to withdraw funds from the treasury so that it can be submitted to the chain and be voted by the governance bodies.AC-CLI.015
CLI.016Create info governance action (HOLDER)As an Ada holder, I want to create an info governance action so that it can be submitted to the chain and be voted by the governance bodies.AC-CLI.016
CLI.017Create update protocol parameters governance action (HOLDER)As an Ada holder, I want to create a governance action to update protocol parameters so that it can be submitted to the chain and be voted by the governance bodies.AC-CLI.017
CLI.018Create no-confidence governance action (HOLDER)As an Ada holder, I want to create a no-confidence governance action so that it can be submitted to the chain and be voted by the governance bodies.AC-CLI.018
CLI.019Create Hard-fork initiation governance action (HOLDER)As an Ada holder, I want to create a governance action to initiate a hardfork so that it can be submitted to the chain and be voted by the governance bodies.AC-CLI.019
CLI.020View governance action file (HOLDER)As an Ada holder, I want to inspect the contents of a governance action file so that I can verify it is correct before submitting it in a transaction.AC-CLI.020
CLI.021Create a governance action vote (DRep/SPO/CCM)As a DRep, SPO or CC member, I want to create a vote for a governance action so that I can include it in a transaction and submit it to the chain.AC-CLI.021
CLI.022View vote file (DRep/SPO/CCM)As a DRep, SPO or CC member, I want to inspect the contents of a vote file so that I can verify it is correct before submitting it in a transaction.AC-CLI.022
CLI.023Build a transaction to submit proposal (HOLDER)As an Ada holder, I want to build a transaction that includes a proposal (containing a governance action) so that I can later sign and submit to the chain.AC-CLI.023
CLI.024Build transaction for to submit votes (DRep, SPO, CCM)As a DRep, SPO or CC member, I want to build a transaction that includes my vote on a particular governance action so that I can later sign and submit to the chain.AC-CLI.025
CLI.025Build RAW transaction for proposal vote (HOLDER)As an Ada holder, I want to build a transaction that includes a proposal (containing a governance action) so that I can later sign and submit to the chain.AC-CLI.026
CLI.026Build RAW transaction for proposal vote (DRep/SPO/CCM)As a DRep, SPO or CC member, I want to build a transaction that includes my vote on a particular governance action so that I can later sign and submit to the chain.AC-CLI.027
CLI.027Create stake registration certificate (HOLDER)As an Ada holder, I want to create a Conway cddl-compliant stake registration certificate stake-address.AC-CLI.028
CLI.028Create stake deregistration certificate (HOLDER)As an Ada holder, I want to create a Conway cddl-compliant stake deregistration certificate to get my deposit back stake-address.AC-CLI.028
CLI.029Delegate vote to DRep (HOLDER)As an Ada holder, I want to delegate my votes to a DRep (registered or default) so that my stake is counted when the DRep votes. Stake-address.AC-CLI.029
CLI.030Delegate stake to SPO and votes to DRep with a single certificate (HOLDER)As an Ada holder, I want to delegate my stake to a stake pool AND my votes to a DRep (registered or default) with a single certificate. Stake-address.AC-CLI.030
CLI.031Query governance state (ANY)As any persona, I want to query the nodes for the current Governance state so that I can inform my decisions.AC-CLI.031
CLI.032Query committee state (CCM)As a CC member, I want to query the committee state so that I can find my expiration term and whether my hot key authorization certificate has been recorded on chain.AC-CLI.032
CLI.033Query DRep state (HOLDER)As an Ada holder, I want to query the DRep state so that I can find detailed information about registered DReps.AC-CLI.033
CLI.034Query DRep stake distribution (HOLDER)As an Ada holder and DRep, I want to query the DRep stake distribution so that I can find the weight (of the votes) of each DRep.AC-CLI.034
CLI.035Expand query stake-address-info to show deposits and vote delegation (HOLDER)As an Ada holder, I want to query my stake address information so that I can learn to which pool and DRep I'm delegating to and the value in Lovelace of my deposits for delegating and for submitting governance actions.AC-CLI.035
CLI.036Query constitutionAs any persona I want to query the on-chain constitution so that I can know the url where it is stored and the document hash so that I can verify authenticity.