Skip to content

Allow to dynamically add new chain ID #2005

@lumtis

Description

@lumtis

Would preferably depends on: #1477
Related: #2002

Chain ID are static so we generally don't need to add a state variable to represent this information unlike chain params.
However this requires us to add the static information and perform upgrade to support a new chain unless chain ID is defined long in advance. For more flexibility, we should consider the ability to specify new chain ID with an operational/admin message.

We could call this structure ChainInfo and I think the best place to keep it is the authority module. This goes beyond the scope of the observer module (example: could be read by just the crosschain module in a case the observer set is no longer used)

The static info would be read first, then the on-chain chain info list is queried as a fallback.

We would use it to support new chain temporarily, then rely on the static info after new upgrades.

### Tasks
- [ ] https://github.com/zeta-chain/node/issues/2270
- [ ] https://github.com/zeta-chain/node/issues/2271
- [ ] https://github.com/zeta-chain/node/issues/2272
- [ ] https://github.com/zeta-chain/node/issues/2273
- [ ] https://github.com/zeta-chain/node/issues/1490
- [ ] https://github.com/zeta-chain/node/pull/2541

Metadata

Metadata

Assignees

Labels

epicGroup issues under a high-level objectivem:crosschain

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions