cosmos-sdk/x/staking/spec
Federico Kunze Küllmer f5b11bc328
feat!: add error handling to staking hooks (#9571)
<!--
The default pull request template is for types feat, fix, or refactor.
For other templates, add one of the following parameters to the url:
- template=docs.md
- template=other.md
-->

## Description

- Adds error handling for staking hooks

<!-- Add a description of the changes that this PR introduces and the files that
are the most critical to review. -->

---

### Author Checklist

*All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.*

I have...

- [x] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [x] added `!` to the type prefix if API or client breaking change
- [x] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/master/CONTRIBUTING.md#pr-targeting))
- [ ] provided a link to the relevant issue or specification
- [ ] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/master/docs/building-modules)
- [ ] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/master/CONTRIBUTING.md#testing)
- [ ] added a changelog entry to `CHANGELOG.md`
- [ ] included comments for [documenting Go code](https://blog.golang.org/godoc)
- [x] updated the relevant documentation or specification
- [ ] reviewed "Files changed" and left comments if necessary
- [ ] confirmed all CI checks have passed

### Reviewers Checklist

*All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.*

I have...

- [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] confirmed `!` in the type prefix if API or client breaking change
- [ ] confirmed all author checklist items have been addressed 
- [ ] reviewed state machine logic
- [ ] reviewed API design and naming
- [ ] reviewed documentation is accurate
- [ ] reviewed tests and test coverage
- [ ] manually tested (if applicable)
2021-06-30 10:13:07 +00:00
..
01_state.md x/staking v0.43 Audit updates (#9267) 2021-05-10 12:41:24 +00:00
02_state_transitions.md chore: add markdownlint to lint commands (#9353) 2021-05-27 15:31:04 +00:00
03_messages.md chore: add markdownlint to lint commands (#9353) 2021-05-27 15:31:04 +00:00
04_begin_block.md Merge PR #5380: ADR 17 Implementation: Historical Module 2019-12-18 08:20:02 -05:00
05_end_block.md chore: add markdownlint to lint commands (#9353) 2021-05-27 15:31:04 +00:00
06_hooks.md feat!: add error handling to staking hooks (#9571) 2021-06-30 10:13:07 +00:00
07_events.md x/staking v0.43 Audit updates (#9267) 2021-05-10 12:41:24 +00:00
08_params.md fix merge conflicts 2021-03-21 18:39:23 -04:00
README.md chore: add markdownlint to lint commands (#9353) 2021-05-27 15:31:04 +00:00

README.md

staking

Abstract

This paper specifies the Staking module of the Cosmos-SDK, which was first described in the Cosmos Whitepaper in June 2016.

The module enables Cosmos-SDK based blockchain to support an advanced Proof-of-Stake system. In this system, holders of the native staking token of the chain can become validators and can delegate tokens to validators, ultimately determining the effective validator set for the system.

This module will be used in the Cosmos Hub, the first Hub in the Cosmos network.

Contents

  1. State
  2. State Transitions
  3. Messages
  4. Begin-Block
  5. End-Block
  6. Hooks
  7. Events
  8. Parameters