Skip to content

Feat/pool contract#53

Open
rahulghangas wants to merge 64 commits into
mainfrom
feat/pool-contract
Open

Feat/pool contract#53
rahulghangas wants to merge 64 commits into
mainfrom
feat/pool-contract

Conversation

@rahulghangas
Copy link
Copy Markdown
Collaborator

@rahulghangas rahulghangas commented Apr 2, 2026

Description

Adds a CommunityPool pooled staking contract, expands the staking precompile with bonded-set delegation helpers, and wires a new x/poolrebalancer module that keeps the CommunityPool's stake distributed across target validators through redelegations only.

The final model is:

  • users deposit into CommunityPool and receive internal ownership units;
  • pool principal is split between stakeablePrincipalLedger, bonded totalStaked, and async withdraw reserves;
  • stake() delegates liquid principal through the staking precompile;
  • user withdraw() burns units and starts async undelegation through the staking precompile;
  • poolrebalancer EndBlock automation reconciles totalStaked, harvests, stakes, and schedules redelegations to correct validator drift;
  • BeginBlock snapshots previous-block slash signals so EndBlock avoids routing stake into recently slashed validators.

…take

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…startup

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…ple staking keeper

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…gation tie-break

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…and harden fallback assertions

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
… to cosmos/poolrebalancer/v1

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…re observability

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…y to prevent source merge collisions

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…ifact

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…ration coverage

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…rs and update docs

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…k via EVM

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…ount management

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…genesis

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…ilure

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…it matured UBD before queue delete, and extend CommunityPool with pending rebalance reserve
Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
… helpers

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…ured credit flow

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…ero units

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…selection policy

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…pty-pool harvest, and drift invariants

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…ool delegator

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…undelegation invariants

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…rift-policy tests/docs

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
…withdraw accounting and update Solidity/precompile tests
@rahulghangas rahulghangas mentioned this pull request Apr 30, 2026
@adambalogh adambalogh added the run-ci Run ETE Testing Suite label May 11, 2026
@adambalogh adambalogh added run-ci Run ETE Testing Suite and removed run-ci Run ETE Testing Suite labels May 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

run-ci Run ETE Testing Suite

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants