Skip to content

Repository files navigation

ds-sam

Marinade's Stake Auction for Solana validators.

Package NPM registry
ds-sam-sdk
ds-sam-calc

Validators bid PMPE (per mille per epoch) to receive Marinade stake. Allocation proceeds highest to lowest PMPE until stake depletes or constraints bind; the last (lowest) group to receive stake sets the clearing price.

Install

pnpm install
pnpm -r build

Running Simulations

# baseline: fetch fresh API data
scripts/evaluate-auction.bash 20260225_experiment/main -b

# variants: reuse baseline inputs, different config
scripts/evaluate-auction.bash 20260225_experiment/maxcap8 \
  -c config-8pct.json

# results in report/<tag>/ with summary.md and results.json
scripts/evaluate-auction.bash -h

Other scripts:

  • evaluate-blacklist: blacklist impact comparison
  • simulate-auction <epoch>: historical revenue from GCP snapshots
  • evaluate-revenue-changes.bash: revenue impact from production

Configuration

Pass via -c config.json. Defaults to ../ds-sam-pipeline/auction-config.json.

Key parameters:

Parameter Description
maxMarinadeTvlSharePerValidatorDec Per-validator stake cap
maxUnprotectedStakePerValidatorDec Unprotected stake cap
minBondBalanceSol Minimum bond balance
minBondEpochs / idealBondEpochs Bond reserve epochs
bondRiskFeeMult Bond risk fee multiplier
activatingStakePmpeMult Overbid fraction charged on activating stake [0-1]
bondObligationSafetyMult Bond obligation safety [1.0-2.0]
maxNetworkStakeConcentrationPerCountryDec Country cap
maxNetworkStakeConcentrationPerAsoDec ASO cap
validatorsUptimeThresholdDec Minimum uptime

All options: config.ts. Production: auction-config.json.

Publishing SDK

cd packages/ds-sam-sdk
npm publish

See ARCHITECTURE.md for algorithm details.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages