Add comprehensive reward and penalty simulation framework#56
Open
adamtka42 wants to merge 5 commits intocyyber:mainfrom
Open
Add comprehensive reward and penalty simulation framework#56adamtka42 wants to merge 5 commits intocyyber:mainfrom
adamtka42 wants to merge 5 commits intocyyber:mainfrom
Conversation
…ations, sync and blocks)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What type of PR is this?
Feature
What does this PR do? Why is it needed?
This PR introduces a new simulation suite (reward_and_penalty package) to rigorously test and verify the economic mechanics of the Beacon Chain.
It adds a Simulator that runs state transitions using altair.ProcessEpoch with mock validators, allowing us to:
Simulate Multi-Epoch Scenarios: Track balance changes, total issuance, and burn over time.
Target Specific Validators: Configure specific validator indices to miss attestations while still participating in Sync Committees or Block Proposals.
Test Inactivity Leaks: Verify that penalties scale quadratically when the network fails to finalize (e.g., simulating 40% offline).
Detailed Reporting: Output granular statistics per validator (Attestation/Sync/Proposer rewards vs penalties) and global network stats in both Gwei and Zond.
This is needed to ensure the stability of the reward/penalty logic and to provide a tool for verifying economic parameters under stress conditions without running a full testnet.