Commit cbc99df
authored
chore: AZIP-16 v5 default parameter updates (#23764)
## Summary
Apply AZIP-16 deployment-time parameter updates to the v5 release
defaults in `spartan/environments/network-defaults.yml`, plus the two
per-deployment env overlays that would otherwise defeat them.
**Mainnet** (literal AZIP values):
- `AZTEC_SLASH_AMOUNT_MEDIUM`/`LARGE`: `2000e18` → `5000e18` (SMALL
unchanged at `2000e18`)
- `AZTEC_PROVING_COST_PER_MANA`: `25_000_000` → `12_500_000` (halved to
track v5 prover-cost reduction)
- Activate `SLASH_DUPLICATE_PROPOSAL_PENALTY` and
`SLASH_DUPLICATE_ATTESTATION_PENALTY` at LARGE (`5000e18`)
- Activate `SLASH_INVALID_CHECKPOINT_PROPOSAL_PENALTY` at SMALL
(`2000e18`)
- Defer `SLASH_ATTEST_INVALID_CHECKPOINT_PROPOSAL_PENALTY` and
`SLASH_PROPOSE_DESCENDANT_OF_CHECKPOINT_WITH_INVALID_ATTESTATIONS_PENALTY`
to `0` for this release cycle
- `SLASH_DATA_WITHHOLDING_PENALTY` carried forward at `0`
- `AZTEC_LOCAL_EJECTION_THRESHOLD` unchanged at `190000e18`
**Testnet** (mirrors mainnet class structure at testnet's existing
scale):
- `AZTEC_SLASH_AMOUNT_MEDIUM`/`LARGE`: `100000e18` → `250000e18` (SMALL
unchanged at `100000e18`)
- `AZTEC_PROVING_COST_PER_MANA`: `25_000_000` → `12_500_000`
- All `SLASH_*_PENALTY` values normalized to `{0, SMALL=100000e18,
LARGE=250000e18}` matching mainnet's class pattern
**Per-deployment env overlays realigned** so the YAML changes actually
reach deployments:
- `spartan/environments/testnet.env`: `PROVING_COST_PER_MANA` →
`12500000`; `SLASH_AMOUNT_MEDIUM/LARGE` → `250000e18`
- `spartan/environments/staging-public.env`: `PROVING_COST_PER_MANA` →
`12500000`
## Notes for reviewers
- The four generated outputs
(`yarn-project/cli/src/config/generated/networks.ts`,
`yarn-project/ethereum/src/generated/l1-contracts-defaults.ts`,
`yarn-project/slasher/src/generated/slasher-defaults.ts`,
`l1-contracts/generated/default.json`) are gitignored and regenerate
from the YAML via `yarn generate` × 3 + `./bootstrap.sh` in
`l1-contracts/`.
- The non-penalty knobs that differ between testnet and mainnet today
(`SLASH_INACTIVITY_TARGET_PERCENTAGE`,
`SLASH_INACTIVITY_CONSECUTIVE_EPOCH_THRESHOLD`,
`SLASH_GRACE_PERIOD_L2_SLOTS`) were intentionally left as-is — out of
scope for AZIP-16.
- AZIP-16 is currently **Draft** status in governance. This PR brings
the codebase in line with the proposal so the v5 release ships with the
AZIP-16 defaults; it does not assume the AZIP has been ratified.
## Verification
- Full `./bootstrap.sh` from git root: green (all workspaces compile,
`l1-contracts-src` 1664 contracts, yarn-project, release-image,
aztec-up, docs, playground all done)
- Audit confirmed no other call sites in the monorepo carry stale
AZIP-16 parameter values — TS tests use synthetic multipliers, Solidity
tests use unrelated unit-test values, no Terraform/Helm hardcoding
## References
- AZIP-16: AztecProtocol/governance#36
- Network-defaults code-gen flow: `spartan/CLAUDE.md` → Environment
Configuration → Network Defaults3 files changed
Lines changed: 26 additions & 26 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
265 | 265 | | |
266 | 266 | | |
267 | 267 | | |
268 | | - | |
| 268 | + | |
269 | 269 | | |
270 | | - | |
271 | | - | |
| 270 | + | |
| 271 | + | |
272 | 272 | | |
273 | 273 | | |
274 | 274 | | |
| |||
282 | 282 | | |
283 | 283 | | |
284 | 284 | | |
285 | | - | |
286 | | - | |
| 285 | + | |
| 286 | + | |
287 | 287 | | |
288 | 288 | | |
289 | | - | |
290 | | - | |
291 | | - | |
292 | | - | |
293 | | - | |
294 | | - | |
295 | | - | |
296 | | - | |
297 | | - | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
298 | 298 | | |
299 | 299 | | |
300 | 300 | | |
| |||
306 | 306 | | |
307 | 307 | | |
308 | 308 | | |
309 | | - | |
310 | | - | |
| 309 | + | |
| 310 | + | |
311 | 311 | | |
312 | 312 | | |
313 | 313 | | |
314 | 314 | | |
315 | 315 | | |
316 | 316 | | |
317 | 317 | | |
318 | | - | |
| 318 | + | |
319 | 319 | | |
320 | 320 | | |
321 | 321 | | |
| |||
348 | 348 | | |
349 | 349 | | |
350 | 350 | | |
351 | | - | |
352 | | - | |
353 | | - | |
354 | | - | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
355 | 355 | | |
356 | 356 | | |
357 | | - | |
| 357 | + | |
358 | 358 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
33 | | - | |
| 33 | + | |
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
28 | | - | |
| 28 | + | |
29 | 29 | | |
30 | | - | |
31 | | - | |
| 30 | + | |
| 31 | + | |
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
| |||
0 commit comments