Shared liquidity, scheduled.
Aqua makes liquidity shareable. AquaQoS makes shared liquidity schedulable. These pages explain the protocol; the proof page shows the receipts.
AquaQoS is an experimental capacity scheduler for makers who run several strategies on
1inch Aqua. It protects configured capacity for every registered
strategy and lets unused shared inventory burst to whichever strategy is filling. It adds
one custom SwapVM instruction, CAPACITY_GUARD, and a restricted maker vault. Official Aqua
still performs every virtual-balance update and every ERC-20 transfer.
01Independent Aqua strategies
Each strategy keeps its own virtual balance in Aqua.
02One shared real inventory
Every strategy settles against the same vault's ERC-20 balance.
03CAPACITY_GUARD schedules access
Opcode 0x05 admits or rejects each fill before settlement.
04Guaranteed capacity + controlled burst
Sibling entitlements stay covered; inventory above them can burst.
05Actual transfer receipt
Real balances change only in official Aqua settlement.
Read evidence by its label
Every number in these docs comes from one of four environments. They are never interchangeable: a local receipt is not a public transaction, and a planned item is not evidence.
| Label | Meaning |
|---|---|
| Recorded | Retained local transaction evidence from the benchmark report |
| Live local | A fresh isolated local EVM session with mock tokens |
| Local fork | A local EVM using copied Ethereum state; no transactions are sent to Ethereum |
| Public testnet | A deployed environment with chain, block and address evidence |
| Planned | Not implemented and not evidence |
Supported domain
One immutable token pair, up to eight fee-free XYC strategies, standard honest ERC-20 tokens and pinned Aqua/SwapVM code. AquaQoS does not claim general solvency, profitability, hostile-token coverage or an external audit.
Vocabulary
| Term | Meaning |
|---|---|
| Strategy | One Aqua order: maker, app, program bytes and token pair. Its identity is the Aqua order hash. |
Virtual balance v | Aqua's per-strategy, per-token ledger. It prices quotes; it is not owned capital. |
Real inventory I | What the vault can actually transfer: min(balanceOf(vault), allowance(vault, Aqua)). |
Guarantee g | The configured maximum entitlement a strategy keeps protected, in raw token units. |
Baseline b | The surplus recorded at activation, v - g. Entitlement is measured above it. |
| Remaining entitlement | min(g, max(v - b - r, 0)): the part of g the strategy has not consumed. |
Reservation r | A transient debit held for an in-progress fill and cleared at transaction end. |
Debit d | The final maker output of the current fill: amountOut in the fee-free v0 program. |
| Burst | Inventory above every remaining entitlement, usable by whichever strategy fills. |
| Group | One vault, one router and one sorted token pair, with at most eight strategies. |
CAPACITY_GUARD | SwapVM opcode 0x05. It runs the program, then checks and reserves the debit. |
Where to go next
The shared-inventory problem
Why independent virtual ledgers can outrun one real balance.
Capacity model
The admission invariant, consumption, replenishment and burst.
Security model
Trust assumptions, enforced boundaries and accepted limits.
Reproduce the evidence
The commands behind every number on this site.