Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Morse->Shannon Migration] Migration module #1034

Open
5 of 13 tasks
bryanchriswhite opened this issue Jan 20, 2025 · 0 comments · Fixed by #1059 or #1079 · May be fixed by #1080, #1091 or #1093
Open
5 of 13 tasks

[Morse->Shannon Migration] Migration module #1034

bryanchriswhite opened this issue Jan 20, 2025 · 0 comments · Fixed by #1059 or #1079 · May be fixed by #1080, #1091 or #1093
Assignees
Labels
consensus-breaking IMPORTANT! If the PR with this tag is merged, next release WILL HAVE TO BE an upgrade. on-chain On-chain business logic protocol General core protocol related changes

Comments

@bryanchriswhite
Copy link
Contributor

bryanchriswhite commented Jan 20, 2025

Objective

Enable account (identity and balances) state migration from Morse to Shannon. The design SHOULD separate the import of the canonical migration Morse starting state from operations which derive Shannon migrated state transitions are derived. This allows for forward compatibility with migration operations which weren't planned prior to importing the starting state.

Origin Document

https://www.notion.so/buildwithgrove/Technical-Migration-from-Morse-Shannon-173a36edfff6800689fad43fd15287cd

Goals

  • Enable on-chain commitment to Morse migration state
  • Enable self-claiming of Morse account identity
  • Enable self-claiming of Morse account balance(s)

Deliverables

Non-goals / Non-deliverables

  • On-chain validation or Morse import state.
  • Supporting applications staked for multiple services (can claim but must choose one).
  • Any kind of stake/unstaked token redistribution as a result of the claiming.
    • Operators can update their actor stakes/configs on Morse prior to migration (i.e. "migration height").
    • Operators can update their actor stakes/configs on Shannon after claiming.

General deliverables

  • Comments: Add/update TODOs and comments alongside the source code so it is easier to follow.
  • Testing: Add new tests (unit and/or E2E) to the test suite.
  • Makefile: Add new targets to the Makefile to make the new functionality easier to use.
  • Documentation: Update architectural or development READMEs; use mermaid diagrams where appropriate.

Creator: @bryanchriswhite
Co-Owners: @Olshansk

@bryanchriswhite bryanchriswhite added consensus-breaking IMPORTANT! If the PR with this tag is merged, next release WILL HAVE TO BE an upgrade. on-chain On-chain business logic protocol General core protocol related changes labels Jan 20, 2025
@bryanchriswhite bryanchriswhite self-assigned this Jan 20, 2025
@github-project-automation github-project-automation bot moved this to 📋 Backlog in Shannon Jan 20, 2025
@bryanchriswhite bryanchriswhite moved this from 📋 Backlog to 🏗 In progress in Shannon Jan 20, 2025
@bryanchriswhite bryanchriswhite linked a pull request Jan 20, 2025 that will close this issue
15 tasks
@bryanchriswhite bryanchriswhite linked a pull request Jan 20, 2025 that will close this issue
15 tasks
@bryanchriswhite bryanchriswhite linked a pull request Jan 22, 2025 that will close this issue
15 tasks
@bryanchriswhite bryanchriswhite linked a pull request Jan 27, 2025 that will close this issue
15 tasks
@Olshansk Olshansk moved this from 🏗 In progress to 👀 In review in Shannon Jan 28, 2025
@bryanchriswhite bryanchriswhite linked a pull request Jan 29, 2025 that will close this issue
12 tasks
@github-project-automation github-project-automation bot moved this from 👀 In review to ✅ Done in Shannon Feb 5, 2025
@bryanchriswhite bryanchriswhite linked a pull request Feb 5, 2025 that will close this issue
12 tasks
@bryanchriswhite bryanchriswhite moved this from ✅ Done to 🏗 In progress in Shannon Feb 5, 2025
@bryanchriswhite bryanchriswhite linked a pull request Feb 27, 2025 that will close this issue
12 tasks
@bryanchriswhite bryanchriswhite removed a link to a pull request Mar 4, 2025
15 tasks
@bryanchriswhite bryanchriswhite linked a pull request Mar 4, 2025 that will close this issue
12 tasks
bryanchriswhite added a commit that referenced this issue Mar 7, 2025
## Summary

Implement the `MsgClaimMorseAccount` handler. This enables claiming the
of the total tokens (unstaked balance plus any actor stakes) of the
Morse account to a Shannon account.

## Issue

- Issue: #1034

## Type of change

Select one or more from the following:

- [x] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [ ] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Sanity Checklist

- [x] I have updated the GitHub Issue `assignees`, `reviewers`,
`labels`, `project`, `iteration` and `milestone`
- [ ] For docs, I have run `make docusaurus_start`
- [x] For code, I have run `make go_develop_and_test` and `make
test_e2e`
- [ ] For code, I have added the `devnet-test-e2e` label to run E2E
tests in CI
- [ ] For configurations, I have update the documentation
- [ ] I added TODOs where applicable

---------

Co-authored-by: Daniel Olshansky <olshansky.daniel@gmail.com>
Co-authored-by: red-0ne <red-0ne@users.noreply.github.com>
@github-project-automation github-project-automation bot moved this from 🏗 In progress to ✅ Done in Shannon Mar 7, 2025
@bryanchriswhite bryanchriswhite moved this from ✅ Done to 🏗 In progress in Shannon Mar 7, 2025
bryanchriswhite added a commit that referenced this issue Mar 7, 2025
…Claimable$1`/g (#1076)

## Summary

Rename `QueryGetMorseClaimableAccount` and
`QueryGetMorseClaimableAccountResponse` to remove the "get".

## Issue

- Issue: #1034

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [x] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Sanity Checklist

- [x] I have updated the GitHub Issue `assignees`, `reviewers`,
`labels`, `project`, `iteration` and `milestone`
- [ ] For docs, I have run `make docusaurus_start`
- [x] For code, I have run `make go_develop_and_test` and `make
test_e2e`
- [ ] For code, I have added the `devnet-test-e2e` label to run E2E
tests in CI
- [ ] For configurations, I have update the documentation
- [ ] I added TODOs where applicable

---------

Co-authored-by: Daniel Olshansky <olshansky.daniel@gmail.com>
Co-authored-by: red-0ne <red-0ne@users.noreply.github.com>
bryanchriswhite added a commit that referenced this issue Mar 7, 2025
…deps (#1079)

## Summary

Add application, supplier, and gateway keepers as migration module
dependencies. This is in preparation for future work on #1034 which
requires staking application, supplier, and gateway actors during Morse
account claiming.

## Issue

- Issue: #1034

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [x] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Sanity Checklist

- [x] I have updated the GitHub Issue `assignees`, `reviewers`,
`labels`, `project`, `iteration` and `milestone`
- [ ] For docs, I have run `make docusaurus_start`
- [x] For code, I have run `make go_develop_and_test` and `make
test_e2e`
- [ ] For code, I have added the `devnet-test-e2e` label to run E2E
tests in CI
- [ ] For configurations, I have update the documentation
- [ ] I added TODOs where applicable

---------

Co-authored-by: Daniel Olshansky <olshansky.daniel@gmail.com>
Co-authored-by: red-0ne <red-0ne@users.noreply.github.com>
@github-project-automation github-project-automation bot moved this from 🏗 In progress to ✅ Done in Shannon Mar 7, 2025
@bryanchriswhite bryanchriswhite moved this from ✅ Done to 🏗 In progress in Shannon Mar 7, 2025
bryanchriswhite added a commit that referenced this issue Mar 7, 2025
## Summary

Fix the usage of `isTTLEnabled` to properly support zero TTL (mainly for
testing).

## Issue

- Issue: #1034

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [x] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Sanity Checklist

- [x] I have updated the GitHub Issue `assignees`, `reviewers`,
`labels`, `project`, `iteration` and `milestone`
- [ ] For docs, I have run `make docusaurus_start`
- [x] For code, I have run `make go_develop_and_test` and `make
test_e2e`
- [ ] For code, I have added the `devnet-test-e2e` label to run E2E
tests in CI
- [ ] For configurations, I have update the documentation
- [ ] I added TODOs where applicable
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment