Decide and set testnet tokenomics parameters: mintCap, dinPerEth, and DinEmission values
Les mainteneurs répondent en général sous 1 jour
@abrahamnash y travaille déjà.
Depuis le 25/9/2026.
Évaluation
Cette issue n'a pas encore été évaluée.
Description
Context
Raised as a blocker in discussion #150. These are decision items — the contract code is ready or nearly ready, but the actual values have not been agreed on. Without them, the faucet is uncapped, emission is undeployable, and external validators cannot onboard.
Parameters needed
Faucet cap — DinCoordinator.setMintCap()
The mechanism exists. The current devnet value is mintCap = 0 (uncapped by design). For testnet, a cap is needed to give slashing meaningful economic weight — a slashed validator should not be able to instantly re-stake at zero cost by minting more DIN.
Decision needed: what total DIN supply ceiling should the testnet faucet enforce? This should be set relative to the expected validator count and a realistic staking amount per validator.
Exchange rate — DinToken.setDinPerEth()
Currently 1,000,000 DIN/ETH — a devnet round number with no principled basis. For testnet this should be set so that a validator depositing a reasonable testnet ETH amount gets enough DIN to stake above MIN_STAKE without also being trivial to re-stake after a slash.
Decision needed: what should dinPerEth be on testnet, and who has authority to change it post-deploy? (Currently bare owner() — §9 item 13 in MECHANISM_DESIGN.)
DinEmission constructor parameters — PR #148
The DinEmission contract (PR #148, CI green) is ready to deploy but takes constructor arguments with no agreed values:
| Parameter | What it controls |
|---|---|
initialEmissionPerGI |
DIN minted per GI at epoch 0 — sets baseline validator earnings from protocol subsidy |
decayBps |
Fraction of current emission retained each epoch (e.g. 9000 = 10% decay per epoch) |
epochLength |
Number of GIs per epoch |
maxEpochs |
Total epochs before subsidy ends |
Decision needed: all four values. PR #147 (reward-split simulation) provides the income-stability framework to calibrate initialEmissionPerGI against.
Partial-slash fractions — PR #146
PR #146 proposes s1SlashFractionBps = s2SlashFractionBps = 3000 (30%) as the default for S1 (missed audit vote) and S2 (missed aggregation submission). These are DAO-settable post-deploy, but the default is what every slash runs at until governance changes it.
Decision needed: confirm 30% or revise before PR #146 is merged.
Why this blocks testnet
- Without
mintCapset, unlimited DIN can be minted — slashing has no teeth - Without agreed
DinEmissionparameters, PR #148 cannot be finalised and deployed, and validators earn nothing from protocol subsidy - Without
dinPerEthset intentionally, the staking economics are arbitrary
Related
- Discussion #150 (tokenomics section)
- PR #146 (slash fractions)
- PR #147 (reward simulation)
- PR #148 (DinEmission contract)
- MECHANISM_DESIGN §9 items 2, 13
- Langage dominant
- Python
- Étoiles
- 4
- Forks
- 7
- Merge moyen
- 3 j 58 min
- PR mergées (30 j)
- 39
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de InfiniteZeroFoundation/DevNet
-
dincli: `task model-owner register-request --manifestCID` fails because the registry contract isn't initialisedPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouvertebug good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 79/100
InfiniteZeroFoundation/DevNet#295 ·
Les mainteneurs répondent en général sous 1 jour
-
ROADMAP.md: refresh "What is still open for P3" (several items were fixed in October)Peut-être pris @umermjd11 l’a pris il y a 1 jour. Ouvertedocumentation good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
InfiniteZeroFoundation/DevNet#285 · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
good first issue help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
InfiniteZeroFoundation/DevNet#277 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
InfiniteZeroFoundation/DevNet#266 ·
Les mainteneurs répondent en général sous 1 jour
-
Approved documentation
Difficulté 1/5 1-3 heures Accessibilité débutants 82/100
InfiniteZeroFoundation/DevNet#248 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de InfiniteZeroFoundation/DevNet
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
microsoft/agent-lightning#661 ·
Les mainteneurs répondent en général sous 2 jours
-
area/profiles comp/cli P3 type/feature
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
NousResearch/hermes-agent#146372 ·
Les mainteneurs répondent en général sous 1 jour
-
[BUG] OpenAI-compatible embedding model alias breaks embedder constructionPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
Les mainteneurs répondent en général sous 1 jour
-
[oblt-aw][autodoc] Document obs-aw-automerge contract and fix automerge doc inconsistenciesPeut-être pris @github-actions l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
Les mainteneurs répondent en général sous 1 jour
-
GeoSeries scale and skew tests fail with pytest 9.2.0Peut-être pris @jiayuasu l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour