Release candidate for v8.0.0
binary. Requires breaking upgrade from v7.x.x
(upgrade name: v8.0
)
Highlights
This release includes changes in following major areas:
- Permissioned Keys
- Marketmap Removals
Detailed Changes
Permissioned Keys
Enables API traders to leverage permissioned keys for granular control of account permissions and improved risk and safety.
Marketmap Removals
Enables removal of non-enabled (unlaunched) markets from the marketmap by the elected marketmapper(s) and by governance.
What's Changed
- Revert "Add Orderbook Mid Price Cache (#2289)" by @adamfraser in #2333
- [OTE-784] Limit addresses for compliance check to dydx wallets with deposit by @jerryfan01234 in #2330
- Add Orderbook Mid Price Cache by @adamfraser in #2338
- Add current equity as a pnl tick. by @vincentwschau in #2335
- Update MsgSetActiveState proto by @jayy04 in #2337
- Mergify for v7 branches by @adamfraser in #2343
- Fix: deterministically fetch perp info from state by @ttl33 in #2341
- Add sql script latency metrics by @dydxwill in #2356
- [TRA-617] Integrate PML and Megavault by @shrenujb in #2331
- [OTE-829] upgrade handler for affiliates by @affanv14 in #2332
- [CT-1198] Add smart account and circuit break ante handler by @jayy04 in #2325
- enable username generation roundtable by @jerryfan01234 in #2361
- [OTE-823] Fix FNS onchain events staging + retrieval logic by @teddyding in #2318
- Use vault table rather than placeholder config flags to fetch vaults. by @vincentwschau in #2364
- chore: add OE Abort rate debug flag by @teddyding in #2366
- Add oracle prices index on ("marketId", "effectiveAtHeight") by @dydxwill in #2368
- [TRA-617] Fix calculation for atomic resolution by @shrenujb in #2360
- Include getting main subaccount equity / pnl for megavault PnL query. by @vincentwschau in #2376
- Add a cli method for vault withdrawal by @shrenujb in #2369
- [OTE-839] add query for unconditional revshare by @affanv14 in #2380
- [OTE-840] add missing HasEndBlocker interface by @affanv14 in #2384
- migrate vault shares to megavault shares in v7 upgrade handler (backport #2379) by @mergify in #2381
- Add function to fetch availability zone id (#2326) by @roy-dydx in #2390
- register deprecated MsgSetVaultQuotingParams by @tqin7 in #2392
- Create consumer using rack id (#2352) by @roy-dydx in #2393
- initialize megavault module account in 7.0.0 upgrade handler by @tqin7 in #2394
- [CT-1203] add clob pair id and subaccount num filters by @jayy04 in #2388
- [CT-1237] enable messages and add ante decorator to the chain by @jayy04 in #2375
- bug: Internalize FNS logic to stage FinalizeBlock events by @teddyding in #2399
- [CT-1258] add order removal reason for expired permissioned keys by @jayy04 in #2407
- [CT-1259] account plus module code cleanup by @jayy04 in #2408
- [CT-629] Fix entryPrice calc by @dydxwill in #2415
- Filter out to single tick per interval. by @vincentwschau in #2403
- Add tests for when market pair name changes by @chenyaoy in #2280
- Fix flaky vault test. by @vincentwschau in #2422
- Revert "[CT-629] Fix entryPrice calc" by @dydxwill in #2425
- chore: Bump Cometbft to log proposer when proposal is rejected by @teddyding in #2421
- [OTE-846] Bazooka sequential clear by @jerryfan01234 in #2423
- [TRA-611] Get MarketPrice exponent from marketmap by @chenyaoy in #2324
- Fix issue with flaky candle test by @adamfraser in #2430
- [CT-1202] logic to handle unauthorized maker orders when authenticato… by @jayy04 in #2412
- Update large cap params in genesis by @chenyaoy in #2431
- feat: upgrade to connect/v2 by @aljo242 in #2419
- Move FinalizeBlock event staging logic into a generic EventStager by @teddyding in #2435
- Update GetAllRevshare to handle liquidations by @affanv14 in #2413
- remove deprecated params from x/vault params query by @tqin7 in #2387
- Return undefined from getOrderbookMidPriceMap by @adamfraser in #2441
- [TRA-654] add listing module state init into v7 upgrade handler by @shrenujb in #2432
- [CT-1259] move account plus test functions to testutil by @jayy04 in #2444
- Split affiliate info fees by taker and maker by @jerryfan01234 in #2439
- Fix bug with PnL aggregation. by @vincentwschau in #2446
- Update indexer testnet url by @Christopher-Li in #2312
- [OTE-849] Add metrics to track revenue shares by @affanv14 in #2449
- [CT-1268] fix genesis for account plus by @jayy04 in #2452
- [TRA-671] Prevent connect messages in x/authz by @chenyaoy in #2434
- fix tsnonce preventing multisignature bug by @jerryfan01234 in #2453
- feat: make PML compatible with OE by staging in-memory CLOB side effects by @teddyding in #2447
- in testing, megavault main subaccount has 0 usdc by default by @tqin7 in #2462
- Update sidecar to connect v2 by @chenyaoy in #2458
- don't initialize megavault subaccount if balance is 0 in genesis by @tqin7 in #2464
- Get latest hourly tick to compute final tick for megavault PnL. by @vincentwschau in #2454
- remove megavault subaccount from sample pregenesis by @tqin7 in #2467
- add afflaiteReferredMakerRebates field to response by @jerryfan01234 in #2473
- [CT-1262] add e2e tests for new auth flow failure cases by @jayy04 in #2461
- [OTE-852] Register rpc routes in module by @affanv14 in #2480
- [OTE-863] update username generation query by @affanv14 in #2482
- Improve vault endpoint performance. by @vincentwschau in #2475
- [CT-629] Fix entryPrice calc by @dydxwill in #2455
- Fix test flakiness due to using inconsistent time. by @vincentwschau in #2485
- Add GRPC gateway route for listing module and add hard cap setting by @shrenujb in #2489
- Don't increment messageId for custom ping messages by @dydxwill in #2493
- [OTE-876] update roundtable loop timings for instrumentation and uncrossing by @affanv14 in #2494
- [OTE-877] deprecate OI indexer update event by @affanv14 in #2499
- set each megavault share to be worth 0.001 usdc on 7.x upgrade by @tqin7 in #2492
- [OTE-880] Emit log in case of collisions by @affanv14 in #2500
- add metadata to megavault operator params by @tqin7 in #2509
- Remove orderbook cache roundtable job by @adamfraser in #2510
- Rename MATIC to POL in genesis and tests by @chenyaoy in #2503
- [TRA-721] Enforce sidecar versions by @chenyaoy in #2491
- Add config var to exclude specific stateful order ids from being processed. by @vincentwschau in #2513
- Drop patch number from upgrade name, v7.0.0 to v7.0 by @adamfraser in #2512
- FNS polish - metrics, max msg size, default flag values by @jonfung-dydx in #2517
- Add script to get insurance fund balances by @ttl33 in #2516
- full node streaming - reusing subscription ids by @jonfung-dydx in #2518
- add wallet when transfer to subaccount by @jerryfan01234 in #2519
- update migration to stop excessive consumption of computation by @affanv14 in #2521
- FNS - bounds check raw subscription payload int vals by @jonfung-dydx in #2523
- Get funding index maps for vault positions in chunks. by @vincentwschau in #2525
- Protocol support for Rust by @therustmonk in #2172
- Vulcan topic to 210 partitions by @roy-dydx in #2528
- Bump SDK - Always Reset OE by @teddyding in #2531
- [CT-1262] add e2e tests for permissioned keys success cases by @jayy04 in #2479
- Fix typo and add test for invalid vaults. by @vincentwschau in #2535
- Add missing fields to perpetual markets kafka update by @shrenujb in #2539
- Change Rust protobufs crate name, license reference by @v0-e in #2541
- Use Rust proto crate name as
dydx-proto
by @v0-e in #2543 - De-duplicate and filter out invalid pnl ticks for megavault. by @vincentwschau in #2540
- [TRA-513] Deprecate exchange config json and min exchanges by @chenyaoy in #2524
- Full node streaming -- perp position to signed int by @jonfung-dydx in #2544
- [OTE-882] Add prefix to accountplus keeper by @jerryfan01234 in #2526
- [CT-1307] Make pnl ticks computation consistent within a transaction. by @vincentwschau in #2548
- pass shares to withdraw in megavault withdrawal query rest endpoint by @tqin7 in #2550
- Dont set default value for fills rows by @adamfraser in #2552
- Add gRPC gateway routing for affiliate queries by @teddyding in #2554
- Bump Comet version by @teddyding in #2556
- Update Rust protos, dependencies enhancements by @v0-e in #2538
- fix(affiliates): [OTE-898] Refactor subaccount username generation by @teddyding in #2569
- Allow configuring day vault PnL starts. by @vincentwschau in #2570
- Use alphanumeric suffix for username by @teddyding in #2573
- fix(affiliates): Generate username with address, not subaccount id by @teddyding in #2575
- Use repeatable read for pnl tick generation. by @vincentwschau in #2578
- fix(affiliate): Use DB transaction for username generation; add more stats for update… by @teddyding in #2579
- Fix username generator unit test by @teddyding in #2582
- fix(affiliates): exclude liquidation fees in referred fee calculation by @teddyding in #2585
- Update cosmossdk.io/math to v1.4.0 by @vincentwschau in #2588
- [CT-1320] proto for FNS price updates by @jayy04 in #2586
- [TRA-507] Add new gov message for upgrading markets: UpgradeIsolatedPerpetualToCross by @hwray in #2551
- Check for invalid addresses in
SetAffiliateWhitelist
by @teddyding in #2594 - [CT-1321] subscribe to market prices streaming services by @jayy04 in #2592
- Optimize query for latest pnl tick at specific time. by @vincentwschau in #2599
- Revert "[CT-629] Fix entryPrice calc (#2455)" by @vincentwschau in #2600
- Use materialized view for vault pnl data. by @vincentwschau in #2598
- feat(oe): Enable OE by default (target: v8.0+) by @teddyding in #2595
- Start refresh vault PnL task. by @vincentwschau in #2603
- make megavault withdrawal logging more succinct by @tqin7 in #2607
- Use release env for release github workflow by @ttl33 in #2608
- Fix vaults PnL endpoint. by @vincentwschau in #2612
- Candles Cache Improvements by @adamfraser in #2590
- Upgrade connect dependency to allow market authorities to remove markets by @chenyaoy in #2615
- [TRA-507] Add Indexer changes for UpgradeIsolatedPerpetualToCross by @hwray in #2597
- [CT-1326] send price updates after block is finalized by @jayy04 in #2611
- [TRA-890] Return nearest hour PnL as final data point for vaults pnl. by @vincentwschau in #2616
- Update
DefaultFundingPpm
for PML markets by @teddyding in #2610 - [TRA-885] Upgrade handler to set market, perp and clob pair id to fixed number by @shrenujb in #2589
- allow megavault operator to set default quoting params by @tqin7 in #2620
- Fix flaky Candles test by @adamfraser in #2619
- feat(blocktime): Use gov-controlled
next_block_delay
to replacetimeout_commit
by @teddyding in #2609 - [CT-1327] place post only orders first in prepare check state by @jayy04 in #2618
- fix(affiliates): Fix logic in affiliate referred volume aggregation (backport #2623) by @mergify in #2624
- Revert "Use release env for release github workflow (#2608)" (backport #2626) by @mergify in #2627
- Run account plus migration in v8 upgrade (backport #2628) by @mergify in #2629
- Increase FNS default numbers and close connections properly with reasons (backport #2634) by @mergify in #2639
- fix(affiliates): Reject self referral in
RegisterAffiliate
(backport #2637) by @mergify in #2638 - Add permissioned keys cli (backport #2644) by @mergify in #2648
- Enable permissioned keys by default (backport #2645) by @mergify in #2649
- fix(feetiers): Reject malformed address in query (backport #2653) by @mergify in #2654
- chore: Add EIGEN,BOME as isolatd market in default test genesis (backport #2651) by @mergify in #2656
- feat(accountplus): Add query for accountplus account state (backport #2659) by @mergify in #2661
- Switch connect v2 to slinky v1 (backport #2657) by @mergify in #2663
New Contributors
- @therustmonk made their first contribution in #2172
- @v0-e made their first contribution in #2541
Full Changelog: protocol/v7.0.5...protocol/v8.0.0-rc0