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.