No chapters found
Try another term or clear the current search.
15 chapters
Main changes
01
Express Withdrawal
Express Withdrawal System Design
SYMMIO's configurable cooldown protects withdrawals but slows exits. ExpressProvider fronts pool and
credit-backed funds, then reconciles when the underlying withdrawal finalizes.
02
AccountLayer
AccountLayer Delegated Creation & Ownership Transfer
Account creation and ownership handoff were tied too closely to the caller-owner model. v0.8.6 adds role-gated
creation for a target owner and direct owner-initiated SubAccount transfer.
03
Liquidation
PartyA Liquidation Snapshot Flow
Funding at the liquidation timestamp could become unreconstructable after funding state moved. Snapshot
liquidation stores the signed PartyB-symbol funding state before positions are closed.
04
Liquidation
Single-Step PartyA Liquidation
After the v0.8.5 AccountLayer changes, many accounts carry one market or one position. This wrapper completes
those small snapshot liquidations in one all-or-revert transaction.
05
Clearing House
Affiliate Shutdown Flow
Deregistration stopped new affiliate relationships, but it did not give existing positions a clean exit path.
v0.8.6 adds scheduled close-only shutdown, a solver window, and a Clearing House backstop.
06
Muon
Muon UPNL Validity Overrides
One global UPNL freshness window forced every Muon flow to share the same tolerance. v0.8.6 adds optional
per-function overrides that fall back to the global value when unset.
07
Fees
Solver Fees
Tagged solver-fee lists ride open and close execution, draw from PartyA allocated balance within user-approved
quote caps, and route each amount through PartyB-configured tags.
08
Fees
Operational Fees
Payers approve separate budgets for flat fees charged by solvers or registered relayers. Budget increases are
immediate, reductions are delayed, and an optional multiplier can guide off-chain scheduling.
09
Events & Indexing
Allocated Balance Event Ledger
Every PartyA and PartyB allocated-balance mutation now emits an exact storage-backed delta. Dedicated
reimbursement and liquidation settlement events preserve lifecycle context without corrupting the allocated
ledger.
10
Symbols
Symbol Corporate-Action Adjustment
Venue stock splits and rebases change the price unit while on-chain positions keep the old one. v0.8.6 adds an
adjustment registry that freezes the symbol through the transition and a value-neutral restatement that rebases
open positions.
11
Accounts
Strict Deallocation
PartyA and opted-in PartyBs cannot deallocate collateral that still protects their positions. Safe APIs enforce
the Muon-attested protected amount, and public views expose the maximum removable amount.
12
Performance
InstantOpen Gas Optimization
Two additive entrypoints reduce the four-operation InstantOpen template to two, while EIP-1153 transient storage
removes persistent writes for temporary batch authority.
13
Trading & Liquidation
Close-to-Liquidation Execution
Explains why a close can make PartyA insolvent, how the protocol sizes a boundary fill, why
MARKET_BEST_EFFORT cancels the remainder, and how overshoot makes the later liquidation handoff less
sensitive to a small favorable market move.
14
Gasless Operations
Gasless Layer
Approved relayers pay chain gas for signed InstantLayer and wallet operations, native-gas top-ups, and settlement
of bridged collateral into wallet-owned SYMMIO accounts.
15
AccountLayer
AccountLayer Timelocks
Configure selector timelocks, approve or schedule individual calls, and handle batches and policy changes through
the AccountLayer.
22 chapters
Other changes
16
Clearing House
Explicit Clearing House Settlements
Declares final realized PnL, funding, and platform fees per account and market, with typed balance deltas.
17
Liquidation
Liquidation Funding Observability
Adds quote-level funding and PnL events plus final aggregate settlement events for liquidation indexers.
18
Liquidation
PartyA Liquidation Fee Recipient Cleanup
Records the liquidation starter as the unambiguous recipient for capped PartyA liquidation fees.
19
PartyB
PartyB Allocation Suspension Gates
Suspended PartyBs can no longer allocate or transfer allocation between PartyA buckets.
20
Liquidation
Cross-PartyB Liquidation Reserve Enforcement
Pending cross-PartyB liquidation settlement reserves now reduce shared quote, solvency, and liquidation
availability.
21
AccountLayer
Delegation Account Scope
A delegation was enforced against the account owner, so it reached every SubAccount that owner held. It is now
confined to the account family it was granted over.
22
InstantLayer
InstantLayer Authorization Scope
The helpers treated a global "inside an InstantLayer batch" flag as authorization. v0.8.6 removes
MultiAccount's bypass and makes SymmioPartyB check the direct caller's role.
23
Fees
Market Open Fee on Execution Price
Market open fees are charged on the executed open price, not the request-time market price. A bound PartyA could
previously supply zero for that unverified input and open the position for no fee.
24
PartyB
PartyB Funding Update Nonces
Stale or expired funding updates from a solver engine are skipped per symbol and reported, instead of overwriting
newer rates or failing the batch they travelled in.
25
Settlement
Bound-Mode Unified Settlement
When a bindable solver settles its own book against partyAs bound to it,
settleUpnlUnified now skips
Muon verification and the payload-based solvency checks, matching the other oracle-less bound flows.
26
Views
Diamond Owner Getter
The owner() getter on the core and AccountLayer ViewFacets is renamed to getOwner() on both
diamonds.
27
AccountLayer
Express Deposit Removal
The v0.8.5 express deposit split is removed from the AccountLayer. Its two affiliate storage slots are kept as dead
fields so the struct layout does not move.
28
AccountLayer
AccountLayer Behavior Changes
A new aggregate affiliate read API, a reordered sub-account emptiness check that changes which error callers see, and
an open-position hook that handles partial-fill child quotes according to account isolation.
29
AccountLayer
Position Isolation Partial Fill Remainder
A POSITION-isolated virtual account holds exactly one position, so the remainder quote of a partial fill is cancelled
in the same transaction and its reserves are refunded to the account.
30
Funding
Lazy Accumulated Funding
Quote flows no longer roll the symbol/PartyB funding state. Funding settles lazily from persisted state, which now
changes only during explicit configuration or a symbol-restatement funding transition.
31
Force Close
Force-Close Request Binding
A multi-step force-close snapshot is now bound to the close request that initialized it, preventing a canceled or
expired request's price from being applied to a replacement request.
32
Liquidation
Notional Liquidation Fee Floor
Adds a configurable LF minimum against position notional, with symbol 0 as the default and optional per-symbol
overrides.
33
Settlement
Per-Quote Close Settlement Netting
Funding and realized PnL now settle against each quote's bilateral difference while batch closes preserve sequential
fills, repeated IDs, and gradual hook visibility.
34
AccountLayer
AccountLayer Force-Close and Liquidation Fix
Force-closing a position or finishing a PartyA liquidation through AccountLayer no longer fails when core calls back
to clean up the account.
35
InstantLayer
Batch Delegation Grant Operations
A delegation grant can travel as a regular signed operation inside executeBatch or executeTemplate, so one owner
signature bootstraps a session key that signs the rest of the batch.
36
Access Control
Consistent Diamond Role Management
Core, AccountLayer, and ExpressProvider now share one role-management interface while retaining the legacy
AccountLayer and ExpressProvider entry points used by existing integrations.
36
Liquidation & Funding
Liquidation Rounding and Funding Aggregate Repair
Accepts only a governed, position-count-scaled rounding difference and keeps partial-close funding totals exact, with
a repair path for older groups.