## Description
Closes: #9404
---
### 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
- [ ] 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))
- [x] 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)
- [ ] updated the relevant documentation or specification
- [x] reviewed "Files changed" and left comments if necessary
- [x] 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)
ref: https://github.com/cosmos/cosmos-sdk/discussions/9913
---
### 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
- [ ] 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))
- [x] provided a link to the relevant issue or specification
- [x] 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
- [x] reviewed "Files changed" and left comments if necessary
- [x] 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...
- [x] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [x] confirmed `!` in the type prefix if API or client breaking change
- [x] confirmed all author checklist items have been addressed
- [x] reviewed state machine logic
- [x] reviewed API design and naming
- [x] reviewed documentation is accurate
- [x] reviewed tests and test coverage
- [ ] manually tested (if applicable)
<!--
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
This ADR is to be merged as "DRAFT" status for now, as the details for the "Bumping Protobuf Package Version" section have not been sorted out yet.
This ADR comes from discussion with @webmaster128 and @robert-zaremba about proto updates strategy. We decided to go for an ADR to document our decision for v0.43, and for visibility for other chains doing proto upgrades.
[rendered](https://github.com/cosmos/cosmos-sdk/blob/am/adr-044-protobuf/docs/architecture/adr-044-protobuf-updates-guidelines.md)
Closes: #9477
ref: #9446
ref: #9445
<!-- 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
- [ ] 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)
- [ ] updated the relevant documentation or specification
- [x] 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...
- [x] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [x] 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
- [x] reviewed documentation is accurate
- [ ] reviewed tests and test coverage
- [ ] manually tested (if applicable)
## Description
Recently when discussing NFT standard we stumbled upon the proper use of keywards such as SHOULD, MAY etc ...
Let's add them to our guidelines.
---
### 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 `docs:` prefix in the PR title
- [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
- [x] followed the [documentation writing guidelines](https://github.com/cosmos/cosmos-sdk/blob/master/docs/DOC_WRITING_GUIDELINES.md)
- [x] 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...
- [x] confirmed the correct `docs:` prefix in the PR title
- [ ] confirmed all author checklist items have been addressed
- [x] confirmed that this PR only changes documentation
- [x] reviewed content for consistency
- [x] reviewed content for thoroughness
- [x] reviewed content for spelling and grammar
- [ ] tested instructions (if applicable)
* ADR-040: Storage and SMT State Commitments
* Update docs/architecture/adr-040-storage-and-smt-state-commitments.md
Co-authored-by: Ismail Khoffi <Ismail.Khoffi@gmail.com>
* Update docs/architecture/adr-040-storage-and-smt-state-commitments.md
Co-authored-by: Ismail Khoffi <Ismail.Khoffi@gmail.com>
* Added more details for snapshotting and pruning.
* updated links and references
* add blockchains which already use SMT
* reorganize versioning and pruning
* Update docs/architecture/adr-040-storage-and-smt-state-commitments.md
Co-authored-by: Tomasz Zdybał <tomek@zdybal.lap.pl>
* Update docs/architecture/adr-040-storage-and-smt-state-commitments.md
Co-authored-by: Ismail Khoffi <Ismail.Khoffi@gmail.com>
* adding a paragraph about state management
* adr-40: update 'accessing old state' section
* update based on all recent discussions and validations
* adding more explanation about KV interface
* Apply suggestions from code review
Co-authored-by: Tomasz Zdybał <tomek@zdybal.lap.pl>
Co-authored-by: Marko <marbar3778@yahoo.com>
* Apply suggestions from code review
Co-authored-by: Marko <marbar3778@yahoo.com>
* review comments
* adding paragraph about commiting to an object without storying it
* review updates
* Apply suggestions from code review
Co-authored-by: Roy Crihfield <30845198+roysc@users.noreply.github.com>
* review udpates
* adding clarification
Co-authored-by: Ismail Khoffi <Ismail.Khoffi@gmail.com>
Co-authored-by: Tomasz Zdybał <tomek@zdybal.lap.pl>
Co-authored-by: Marko <marbar3778@yahoo.com>
Co-authored-by: Roy Crihfield <30845198+roysc@users.noreply.github.com>
* ADR-038 state listening
* updates/fixes
* review fixes/adjustments
* review fixes/adjustments part 2
* review updates part 3: refactor after review to coordinate store changes with block and tx messages and enable file pruning
* review updates part 4: additional details and fixes; addressing recent feedback; use binary protobuf encoding for kv pairs in files
* review updates part 5: formatting fixes; updated StreamingService/Hook interface
* auxiliary streaming/queue service
* review updates part 6: update StoreKVPair to differentiate between Set and Deletes on nil byte values; some minor adjustments
* typo fix
* adr: coin cross-chain transfer source tracing
* update pros and cons
* update spec README
* Update docs/architecture/adr-001-coin-source-tracing.md
Co-authored-by: billy rennekamp <billy.rennekamp@gmail.com>
* Apply suggestions from code review
Co-authored-by: billy rennekamp <billy.rennekamp@gmail.com>
* Update docs/architecture/adr-001-coin-source-tracing.md
* address comments from review
* update ADR with Send/Recv logic
* final touches
* Apply suggestions from code review
Co-authored-by: Christopher Goes <cwgoes@pluranimity.org>
* address comments from review
* address @aaronc review comments
* Apply suggestions from code review
Co-authored-by: colin axner <25233464+colin-axner@users.noreply.github.com>
* use SplitN
* custom denom validation reference
* address some comments from review
* more updates based on Colin's review
* final draft with changes to relay.go
* undo proto changes
* address @aaronc review comments
* why do I keep updating the proto files?
* address @AdityaSripal comments
* address more comments
* typos
* final ammendments
* minor fix
* address more comments
* update example
* Update docs/architecture/adr-001-coin-source-tracing.md
Co-authored-by: Anil Kumar Kammari <anil@vitwit.com>
* address more comments
* update prefix example
Co-authored-by: billy rennekamp <billy.rennekamp@gmail.com>
Co-authored-by: Christopher Goes <cwgoes@pluranimity.org>
Co-authored-by: colin axner <25233464+colin-axner@users.noreply.github.com>
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Anil Kumar Kammari <anil@vitwit.com>
* First work on ADR 023
* WIP on ADR 023
* Fill out descriptions
* Review test
* Updates
* Update docs/architecture/adr-023-protobuf-naming.md
Co-Authored-By: Marko <marbar3778@yahoo.com>
* Add ICS name suggestion
* cosmos.libs -> base, mention alias
* fix diff
* Update docs/architecture/adr-023-protobuf-naming.md
* Update docs/architecture/adr-023-protobuf-naming.md
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
* Update version suffixing
* Describe RPC req/res type names
* Retain Msg prefix
Co-authored-by: Marko <marbar3778@yahoo.com>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
* [ADR: 013] Metrics
- Inital ADR for metrics with in the SDK
- extending metrics to be module specific as well
Signed-off-by: Marko Baricevic <marbar3778@yahoo.com>
* add some metrics
* update adr-013 to Observability
* Update docs/architecture/README.MD
Co-Authored-By: Jack Zampolin <jack.zampolin@gmail.com>
* change wording
* minor wording change
* add more things
* undo module work
* Fix formatting and added more info
* Address comments
* Address comments
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: Jack Zampolin <jack.zampolin@gmail.com>
Co-authored-by: Timothy Chen <tnachen@gmail.com>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
- Added a ADR section to the Contributing.md
- This will streamline and create a central palce for discussions
- Currently conversations are fragmented across platfroms and different forum posts,
the aim here is to move it all to one place and create a document to be used as
reference in the future for why SDK went in this direction.