Draft ERC defining a shared order-struct and settlement interface for cross-chain intent systems, so different filler networks can compete on the same orders. Backed by Across and Uniswap as canonical reference implementations.
- 01cross-chain swap UX
- 02intent-based bridging
- 03filler / solver networks
- 04shared liquidity across chains
- 05gasless cross-chain orders
- forge install across-protocol/contracts
- pnpm add @uniswap/uniswapx-sdk
Implement settlement contracts against the IOriginSettler interface — exposing `open(OnchainCrossChainOrder)` for on-chain submission and `openFor(GaslessCrossChainOrder, signature, originFillerData)` for EIP-712-signed gasless orders — and `IDestinationSettler.fill(orderId, originData, fillerData)` on the destination chain. Resolve user-submitted orders into the canonical `ResolvedCrossChainOrder` struct via `resolve` / `resolveFor` so any filler can quote against them. The `orderData` / `orderDataType` fields are intentionally implementation-specific: Across uses it for relayer-funded fast fills, Uniswap's UniswapX uses it for Dutch-auction parameters. Emit `Open` events with a stable `orderId` so off-chain solvers can index requests.
- ⚑`orderData` is opaque to the standard — fillers MUST decode it according to the `orderDataType` bytes32 selector, and unknown selectors should be skipped, not guessed.
- ⚑Gasless orders (`openFor`) rely on EIP-712 signatures over the `GaslessCrossChainOrder` struct — domain-separator mistakes silently make signatures unverifiable on chain.
- ⚑Fill deadlines and exclusivity windows are part of `ResolvedCrossChainOrder.fillInstructions` — fillers that ignore them risk losing collateral or having fills reverted.
- ⚑Settlement assumes a trusted oracle / message bridge between origin and destination settlers (e.g. Across's UMA optimistic oracle, Hyperlane, LayerZero) — pick the bridge before designing the order.
- ⚑`orderId` MUST be globally unique across chains; reusing nonces between origin and destination causes replay across implementations.