Skip to content

Fix/data driven pledge reward split - #28

Open
kkarrancsu wants to merge 51 commits into
protocol:mainfrom
CELtd:fix/data-driven-pledge-reward-split
Open

Fix/data driven pledge reward split#28
kkarrancsu wants to merge 51 commits into
protocol:mainfrom
CELtd:fix/data-driven-pledge-reward-split

Conversation

@kkarrancsu

Copy link
Copy Markdown
Contributor

No description provided.

kkarrancsu and others added 30 commits July 26, 2024 08:10
adding flag to switch between using CS and AS when computing pledge
adding checks to ensure that locked does not go negative
adding tracking for available supply
… trajectroy is computed during the simulation. Gamma_weigthing is always arithmetic
… trajectroy is computed during the simulation. Gamma_weigthing is always arithmetic
kkarrancsu and others added 21 commits August 6, 2025 10:55
Refactor simulation interface to default FIP-81 behavior and remove explicit gamma handling
Fix JAX 0.7.0 compatibility: resolve static argument issues
Update gamma trajectory logic and tests
…itialization

The simulation initialized network_locked_pledge and network_locked_reward
as a 50/50 split of locked_fil_zero. The actual Filecoin network ratio is
~90/10 (pledge/reward), causing ~5.4x over-release of locked rewards
(265K FIL/day vs actual ~49K). This made simulations with <365 days of
history show network_locked DECREASING (wrong direction).

Fix: compute locked_reward_zero from 200 days of minting history using the
actual reward locking model (locked += 0.75*reward - locked/180), then use
it to initialize the pledge/reward split correctly.

Changes:
- data.py: add _estimate_locked_reward() helper, include in data_dict
- sim.py: extract locked_reward_zero with fallback for old data_dicts
- supply.py: add locked_reward_zero kwarg to both forecast and init functions

All changes are backward-compatible via optional params and .get() fallbacks.

See: locked-fil-split-bug-report.md (in cel/ root) for full analysis.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants