From 605cd367709953eab3eafd3d925114518314ed10 Mon Sep 17 00:00:00 2001 From: Faisal Usmani Date: Thu, 26 Mar 2026 14:12:43 -0400 Subject: [PATCH] WIP First pass at option 2 Signed-off-by: Faisal Usmani --- contracts/usdfree/OrderGateway.sol | 594 ++++++++++++++++++ contracts/usdfree/OrderGateway_first_pass.sol | 259 ++++++++ contracts/usdfree/execution.png | Bin 0 -> 166064 bytes 3 files changed, 853 insertions(+) create mode 100644 contracts/usdfree/OrderGateway.sol create mode 100644 contracts/usdfree/OrderGateway_first_pass.sol create mode 100644 contracts/usdfree/execution.png diff --git a/contracts/usdfree/OrderGateway.sol b/contracts/usdfree/OrderGateway.sol new file mode 100644 index 000000000..51d62f1fa --- /dev/null +++ b/contracts/usdfree/OrderGateway.sol @@ -0,0 +1,594 @@ +// SPDX-License-Identifier: BUSL-1.1 +pragma solidity ^0.8.30; + +import { Order, Step, TypedData, USDFreeIdLib } from "./Interfaces6.sol"; +import { IERC20Auth } from "../external/interfaces/IERC20Auth.sol"; + +// ── Minimal external interfaces ────────────────────────────────────────────── + +interface IERC20 { + function transferFrom(address, address, uint256) external returns (bool); + function transfer(address, uint256) external returns (bool); + function balanceOf(address) external view returns (uint256); +} + +interface IPermit2 { + struct TokenPermissions { + address token; + uint256 amount; + } + struct PermitTransferFrom { + TokenPermissions permitted; + uint256 nonce; + uint256 deadline; + } + struct SignatureTransferDetails { + address to; + uint256 requestedAmount; + } + + function permitWitnessTransferFrom( + PermitTransferFrom calldata permit, + SignatureTransferDetails calldata transferDetails, + address owner, + bytes32 witness, + string calldata witnessTypeString, + bytes calldata signature + ) external; +} + +/// @dev Executors are untrusted external contracts that perform order-specific logic (swaps, bridges, etc.) +interface IExecutor { + function execute(address orderOwner, bytes calldata stepMessage, bytes calldata executorMessage) external payable; +} + +// ── Order authorization ────────────────────────────────────────────────────── + +struct SpendingCap { + address token; + uint256 maxAmount; +} + +struct Requirement { + uint8 typ; + bytes data; +} + +struct OrderAuth { + SpendingCap[] caps; + Requirement[] requirements; + uint256 deadline; +} + +// ── Requirement types ──────────────────────────────────────────────────────── +// MIN_BALANCE: (address token, address account, uint256 minAmount) +// MIN_RECEIVED: (address token, address account, uint256 minAmount) — snapshot-based +// MAX_OWNER_SPENT: (address token, uint256 maxAmount) — snapshot-based + +uint8 constant REQ_MIN_BALANCE = 0; +uint8 constant REQ_MIN_RECEIVED = 1; +uint8 constant REQ_MAX_OWNER_SPENT = 2; + +// ── Commands ───────────────────────────────────────────────────────────────── + +library Commands { + bytes1 constant FLAG_ALLOW_REVERT = 0x80; + bytes1 constant COMMAND_TYPE_MASK = 0x7f; + + uint8 constant PULL_ERC20 = 0x00; + uint8 constant PULL_3009 = 0x01; + uint8 constant PULL_PERMIT2_WITNESS = 0x02; + uint8 constant CLAIM_NATIVE = 0x03; + + uint8 constant EXECUTE = 0x10; + + uint8 constant TRANSFER = 0x20; + uint8 constant SWEEP = 0x21; + + uint8 constant BALANCE_CHECK = 0x30; +} + +// ── Step type constants ────────────────────────────────────────────────────── +// STEP_DIRECT: data = abi.encode(leafHash). Single step, one EXECUTE. +// STEP_MERKLE: data = abi.encode(root). Submitter picks one leaf, one EXECUTE. +// STEP_SEQUENCE: data = abi.encode(bytes32[] leaves). Ordered list, one EXECUTE per step. + +uint8 constant STEP_DIRECT = 0; +uint8 constant STEP_MERKLE = 1; +uint8 constant STEP_SEQUENCE = 2; + +// ── OrderGateway ───────────────────────────────────────────────────────────── + +contract OrderGateway { + // ── Errors ── + + error LengthMismatch(); + error InvalidCommand(uint8 command); + error CommandFailed(uint256 index, bytes reason); + error NativeOverspend(); + error BalanceTooLow(); + error NonceAlreadyUsed(); + error StepMismatch(); + error StepCountMismatch(); + error StepOverflow(); + error InvalidStepProof(); + error InvalidStepType(uint8 typ); + error InvalidWitness(); + error OrderAuthRequired(); + error OrderAuthExpired(); + error InvalidOrderAuth(); + error SpendingCapExceeded(address token); + error NoCapForToken(address token); + error NotActiveExecutor(); + error RequirementFailed(uint256 index); + error InvalidRequirementType(uint8 typ); + + // ── Events ── + + event OrderSubmitted( + bytes32 indexed orderId, + bytes32 indexed executionId, + bytes32 stepId, // only set for STEP_MERKLE (reveals which leaf was chosen) + address indexed orderOwner, + address submitter + ); + + // ── EIP-712 ── + + bytes32 private constant _SPENDING_CAP_TYPEHASH = keccak256("SpendingCap(address token,uint256 maxAmount)"); + bytes32 private constant _REQUIREMENT_TYPEHASH = keccak256("Requirement(uint8 typ,bytes data)"); + bytes32 private constant _ORDER_AUTH_TYPEHASH = + keccak256( + "OrderAuth(bytes32 orderId,SpendingCap[] caps,Requirement[] requirements,uint256 deadline)" + "Requirement(uint8 typ,bytes data)" + "SpendingCap(address token,uint256 maxAmount)" + ); + + // ── Immutables ── + + IPermit2 public immutable PERMIT2; + bytes32 public immutable DOMAIN_HASH; + bytes32 public immutable EIP712_DOMAIN_SEPARATOR; + + // ── State ── + + uint8 private _locked = 1; + uint256 private _nativeUsed; + address private _activeExecutor; + mapping(bytes32 orderId => bool) public usedNonces; + + modifier nonReentrant() { + require(_locked == 1); + _locked = 2; + _; + _locked = 1; + } + + constructor(address permit2_, uint32 chainId) { + PERMIT2 = IPermit2(permit2_); + DOMAIN_HASH = USDFreeIdLib.domainHash(chainId, address(this)); + EIP712_DOMAIN_SEPARATOR = keccak256( + abi.encode( + keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)"), + keccak256("USDFree.OrderGateway"), + keccak256("1"), + chainId, + address(this) + ) + ); + } + + // ── Entry point ───────────────────────────────────────────────────────── + + /// @param steps Resolved steps. Length 1 for DIRECT/MERKLE, length N for SEQUENCE. + /// @param stepProof Merkle proof — only used when stepOrMerkleRoot.typ == STEP_MERKLE. + function submit( + Order calldata order, + OrderAuth calldata auth, + bytes calldata authSignature, + Step[] calldata steps, + bytes32[] calldata stepProof, + bytes calldata commands, + bytes[] calldata inputs + ) external payable nonReentrant { + uint256 n = commands.length; + if (inputs.length != n) revert LengthMismatch(); + + bytes32 orderId_ = USDFreeIdLib.orderId(DOMAIN_HASH, order); + + if (order.nonce != bytes32(0)) { + if (usedNonces[orderId_]) revert NonceAlreadyUsed(); + usedNonces[orderId_] = true; + } + + bool selfSubmit = order.orderOwner == msg.sender; + if (!selfSubmit) { + if (authSignature.length == 0) revert OrderAuthRequired(); + _verifyOrderAuth(orderId_, auth, authSignature, order.orderOwner); + } + + _verifySteps(order.stepOrMerkleRoot, steps, stepProof); + + uint256[] memory snapshots = _snapshotForRequirements(auth.requirements, order.orderOwner); + + bytes[] memory executorMessages = _executeCommands( + orderId_, + order.orderOwner, + steps, + auth, + selfSubmit, + commands, + inputs + ); + + if (auth.requirements.length > 0) { + _enforceRequirements(auth.requirements, snapshots, order.orderOwner); + } + + emit OrderSubmitted( + orderId_, + _executionId(orderId_, steps, executorMessages), + order.stepOrMerkleRoot.typ == STEP_MERKLE ? USDFreeIdLib.stepId(orderId_, steps[0]) : bytes32(0), + order.orderOwner, + msg.sender + ); + + _nativeUsed = 0; + } + + // ── Executor callbacks ────────────────────────────────────────────────── + + function pullTokens(address token, uint256 amount) external { + if (msg.sender != _activeExecutor) revert NotActiveExecutor(); + _pay(token, msg.sender, amount); + } + + function availableBalance(address token) external view returns (uint256) { + return _balanceOf(token, address(this)); + } + + // ── Order auth verification ───────────────────────────────────────────── + + function _verifyOrderAuth( + bytes32 orderId_, + OrderAuth calldata auth, + bytes calldata sig, + address orderOwner + ) internal view { + if (block.timestamp > auth.deadline) revert OrderAuthExpired(); + + bytes32 digest = keccak256( + abi.encodePacked("\x19\x01", EIP712_DOMAIN_SEPARATOR, _orderAuthStructHash(orderId_, auth)) + ); + + if (sig.length != 65) revert InvalidOrderAuth(); + bytes32 r; + bytes32 s; + uint8 v; + assembly { + r := calldataload(sig.offset) + s := calldataload(add(sig.offset, 0x20)) + v := byte(0, calldataload(add(sig.offset, 0x40))) + } + address recovered = ecrecover(digest, v, r, s); + if (recovered == address(0) || recovered != orderOwner) revert InvalidOrderAuth(); + } + + function _orderAuthStructHash(bytes32 orderId_, OrderAuth calldata auth) internal pure returns (bytes32) { + bytes32[] memory capHashes = new bytes32[](auth.caps.length); + for (uint256 i; i < auth.caps.length; ++i) { + capHashes[i] = keccak256(abi.encode(_SPENDING_CAP_TYPEHASH, auth.caps[i].token, auth.caps[i].maxAmount)); + } + bytes32[] memory reqHashes = new bytes32[](auth.requirements.length); + for (uint256 i; i < auth.requirements.length; ++i) { + reqHashes[i] = keccak256( + abi.encode(_REQUIREMENT_TYPEHASH, auth.requirements[i].typ, keccak256(auth.requirements[i].data)) + ); + } + return + keccak256( + abi.encode( + _ORDER_AUTH_TYPEHASH, + orderId_, + keccak256(abi.encodePacked(capHashes)), + keccak256(abi.encodePacked(reqHashes)), + auth.deadline + ) + ); + } + + // ── Requirements ──────────────────────────────────────────────────────── + + function _snapshotForRequirements( + Requirement[] calldata reqs, + address orderOwner + ) internal view returns (uint256[] memory snapshots) { + snapshots = new uint256[](reqs.length); + for (uint256 i; i < reqs.length; ++i) { + uint8 typ = reqs[i].typ; + if (typ == REQ_MIN_RECEIVED) { + (address token, address account, ) = abi.decode(reqs[i].data, (address, address, uint256)); + snapshots[i] = _balanceOf(token, account); + } else if (typ == REQ_MAX_OWNER_SPENT) { + (address token, ) = abi.decode(reqs[i].data, (address, uint256)); + snapshots[i] = _balanceOf(token, orderOwner); + } + } + } + + function _enforceRequirements( + Requirement[] calldata reqs, + uint256[] memory snapshots, + address orderOwner + ) internal view { + for (uint256 i; i < reqs.length; ++i) { + uint8 typ = reqs[i].typ; + + if (typ == REQ_MIN_BALANCE) { + (address token, address account, uint256 minAmount) = abi.decode( + reqs[i].data, + (address, address, uint256) + ); + if (_balanceOf(token, account) < minAmount) revert RequirementFailed(i); + } else if (typ == REQ_MIN_RECEIVED) { + (address token, address account, uint256 minAmount) = abi.decode( + reqs[i].data, + (address, address, uint256) + ); + if (_balanceOf(token, account) < snapshots[i] + minAmount) revert RequirementFailed(i); + } else if (typ == REQ_MAX_OWNER_SPENT) { + (address token, uint256 maxAmount) = abi.decode(reqs[i].data, (address, uint256)); + uint256 currentBal = _balanceOf(token, orderOwner); + if (snapshots[i] > currentBal && snapshots[i] - currentBal > maxAmount) revert RequirementFailed(i); + } else { + revert InvalidRequirementType(typ); + } + } + } + + // ── Step verification ─────────────────────────────────────────────────── + + function _stepLeaf(Step calldata step) internal pure returns (bytes32) { + return keccak256(abi.encode(step.salt, step.executor, keccak256(step.message))); + } + + function _verifySteps( + TypedData calldata stepOrMerkleRoot, + Step[] calldata steps, + bytes32[] calldata proof + ) internal pure { + if (stepOrMerkleRoot.typ == STEP_DIRECT) { + if (steps.length != 1) revert StepCountMismatch(); + if (_stepLeaf(steps[0]) != abi.decode(stepOrMerkleRoot.data, (bytes32))) revert StepMismatch(); + } else if (stepOrMerkleRoot.typ == STEP_MERKLE) { + if (steps.length != 1) revert StepCountMismatch(); + if (!_verifyProof(proof, abi.decode(stepOrMerkleRoot.data, (bytes32)), _stepLeaf(steps[0]))) + revert InvalidStepProof(); + } else if (stepOrMerkleRoot.typ == STEP_SEQUENCE) { + bytes32[] memory expectedLeaves = abi.decode(stepOrMerkleRoot.data, (bytes32[])); + if (steps.length != expectedLeaves.length) revert StepCountMismatch(); + for (uint256 i; i < steps.length; ++i) { + if (_stepLeaf(steps[i]) != expectedLeaves[i]) revert StepMismatch(); + } + } else { + revert InvalidStepType(stepOrMerkleRoot.typ); + } + } + + function _verifyProof(bytes32[] calldata proof, bytes32 root, bytes32 leaf) internal pure returns (bool) { + bytes32 hash = leaf; + for (uint256 i; i < proof.length; ++i) { + bytes32 p = proof[i]; + hash = hash <= p ? keccak256(abi.encodePacked(hash, p)) : keccak256(abi.encodePacked(p, hash)); + } + return hash == root; + } + + // ── Command loop ──────────────────────────────────────────────────────── + // Each EXECUTE command auto-advances to the next step in the steps array. + // The submitter controls interleaving (funding between steps) but not step order. + + function _executeCommands( + bytes32 orderId_, + address orderOwner, + Step[] calldata steps, + OrderAuth calldata auth, + bool selfSubmit, + bytes calldata commands, + bytes[] calldata inputs + ) internal returns (bytes[] memory executorMessages) { + uint256 n = commands.length; + uint256[] memory spent = new uint256[](auth.caps.length); + executorMessages = new bytes[](steps.length); + uint256 nextStep; + + for (uint256 i; i < n; ++i) { + bytes1 cmd = commands[i]; + uint8 op = uint8(cmd & Commands.COMMAND_TYPE_MASK); + + bool ok; + bytes memory out; + + if (op == Commands.EXECUTE) { + if (nextStep >= steps.length) revert StepOverflow(); + bytes memory execMsg; + (ok, out, execMsg) = _executeStep(steps[nextStep], orderOwner, inputs[i]); + executorMessages[nextStep] = execMsg; + ++nextStep; + } else { + (ok, out) = _dispatch(op, inputs[i], orderOwner, orderId_); + if (ok && !selfSubmit && op <= Commands.PULL_PERMIT2_WITNESS) { + _trackOwnerSpend(auth.caps, spent, inputs[i]); + } + } + + if (!ok && cmd & Commands.FLAG_ALLOW_REVERT == 0) revert CommandFailed(i, out); + } + } + + function _trackOwnerSpend(SpendingCap[] calldata caps, uint256[] memory spent, bytes calldata input) internal pure { + uint256 src; + address token; + uint256 amt; + assembly { + src := calldataload(input.offset) + token := calldataload(add(input.offset, 0x20)) + amt := calldataload(add(input.offset, 0x40)) + } + if (src != 0) return; + + for (uint256 i; i < caps.length; ++i) { + if (caps[i].token == token) { + spent[i] += amt; + if (spent[i] > caps[i].maxAmount) revert SpendingCapExceeded(token); + return; + } + } + revert NoCapForToken(token); + } + + // ── Executor dispatch ─────────────────────────────────────────────────── + + function _executeStep( + Step calldata step, + address orderOwner, + bytes calldata input + ) internal returns (bool ok, bytes memory out, bytes memory executorMessage) { + uint256 value; + (value, executorMessage) = abi.decode(input, (uint256, bytes)); + _activeExecutor = step.executor; + (ok, out) = step.executor.call{ value: value }( + abi.encodeCall(IExecutor.execute, (orderOwner, step.message, executorMessage)) + ); + _activeExecutor = address(0); + } + + // ── Funding & token-op dispatch ───────────────────────────────────────── + + function _dispatch( + uint8 op, + bytes calldata input, + address orderOwner, + bytes32 orderId_ + ) internal returns (bool ok, bytes memory out) { + ok = true; + + if (op < 0x10) { + if (op == Commands.PULL_ERC20) { + (uint8 src, address token, uint256 amt) = abi.decode(input, (uint8, address, uint256)); + IERC20(token).transferFrom(_source(src, orderOwner), address(this), amt); + } else if (op == Commands.PULL_3009) { + ( + uint8 src, + address token, + uint256 amt, + uint256 validAfter, + uint256 validBefore, + uint8 v, + bytes32 r, + bytes32 s + ) = abi.decode(input, (uint8, address, uint256, uint256, uint256, uint8, bytes32, bytes32)); + IERC20Auth(token).receiveWithAuthorization( + _source(src, orderOwner), + address(this), + amt, + validAfter, + validBefore, + orderId_, + v, + r, + s + ); + } else if (op == Commands.PULL_PERMIT2_WITNESS) { + ( + uint8 src, + address token, + uint256 amt, + uint256 nonce, + uint256 deadline, + bytes32 witness, + string memory witnessType, + bytes memory sig + ) = abi.decode(input, (uint8, address, uint256, uint256, uint256, bytes32, string, bytes)); + if (witness != orderId_) revert InvalidWitness(); + PERMIT2.permitWitnessTransferFrom( + IPermit2.PermitTransferFrom(IPermit2.TokenPermissions(token, amt), nonce, deadline), + IPermit2.SignatureTransferDetails(address(this), amt), + _source(src, orderOwner), + witness, + witnessType, + sig + ); + } else if (op == Commands.CLAIM_NATIVE) { + uint256 amt = abi.decode(input, (uint256)); + _nativeUsed += amt; + if (_nativeUsed > msg.value) revert NativeOverspend(); + } else { + revert InvalidCommand(op); + } + } else if (op < 0x20) { + revert InvalidCommand(op); + } else if (op < 0x30) { + if (op == Commands.TRANSFER) { + (address token, address to, uint256 amt) = abi.decode(input, (address, address, uint256)); + _pay(token, to, amt); + } else if (op == Commands.SWEEP) { + (address token, address to, uint256 minAmt) = abi.decode(input, (address, address, uint256)); + uint256 bal = token == address(0) ? address(this).balance : IERC20(token).balanceOf(address(this)); + require(bal >= minAmt); + if (bal > 0) _pay(token, to, bal); + } else { + revert InvalidCommand(op); + } + } else { + if (op == Commands.BALANCE_CHECK) { + (address token, address account, uint256 minBal) = abi.decode(input, (address, address, uint256)); + ok = _balanceOf(token, account) >= minBal; + if (!ok) out = abi.encodePacked(BalanceTooLow.selector); + } else { + revert InvalidCommand(op); + } + } + } + + // ── ID helpers ────────────────────────────────────────────────────────── + + /// @dev Hashes each (executor, stepMessage, executorMessage) tuple, then combines with orderId + submitter. + function _executionId( + bytes32 orderId_, + Step[] calldata steps, + bytes[] memory executorMessages + ) internal view returns (bytes32) { + bytes32[] memory hashes = new bytes32[](steps.length); + for (uint256 i; i < steps.length; ++i) { + hashes[i] = keccak256( + abi.encode(steps[i].executor, keccak256(steps[i].message), keccak256(executorMessages[i])) + ); + } + return + keccak256( + abi.encode("USDFreeIdLib.ExecutionId.V1", orderId_, msg.sender, keccak256(abi.encodePacked(hashes))) + ); + } + + // ── Helpers ────────────────────────────────────────────────────────────── + + function _source(uint8 src, address orderOwner) internal view returns (address) { + return src == 0 ? orderOwner : msg.sender; + } + + function _balanceOf(address token, address account) internal view returns (uint256) { + return token == address(0) ? account.balance : IERC20(token).balanceOf(account); + } + + function _pay(address token, address to, uint256 amt) internal { + if (token == address(0)) { + (bool sent, ) = to.call{ value: amt }(""); + require(sent); + } else { + IERC20(token).transfer(to, amt); + } + } + + receive() external payable {} +} diff --git a/contracts/usdfree/OrderGateway_first_pass.sol b/contracts/usdfree/OrderGateway_first_pass.sol new file mode 100644 index 000000000..fc41c89e1 --- /dev/null +++ b/contracts/usdfree/OrderGateway_first_pass.sol @@ -0,0 +1,259 @@ +// SPDX-License-Identifier: BUSL-1.1 +pragma solidity ^0.8.30; + +// ── Minimal external interfaces ────────────────────────────────────────────── + +interface IERC20 { + function transferFrom(address, address, uint256) external returns (bool); + function transfer(address, uint256) external returns (bool); + function balanceOf(address) external view returns (uint256); +} + +interface IPermit2 { + struct TokenPermissions { + address token; + uint256 amount; + } + struct PermitTransferFrom { + TokenPermissions permitted; + uint256 nonce; + uint256 deadline; + } + struct SignatureTransferDetails { + address to; + uint256 requestedAmount; + } + + function permitTransferFrom( + PermitTransferFrom calldata permit, + SignatureTransferDetails calldata transferDetails, + address owner, + bytes calldata signature + ) external; + + function permitWitnessTransferFrom( + PermitTransferFrom calldata permit, + SignatureTransferDetails calldata transferDetails, + address owner, + bytes32 witness, + string calldata witnessTypeString, + bytes calldata signature + ) external; +} + +/// @dev Executors are untrusted external contracts that perform order-specific logic (swaps, bridges, etc.) +interface IExecutor { + function execute(address orderOwner, bytes calldata stepMessage, bytes calldata executorMessage) external payable; +} + +// ── Commands ───────────────────────────────────────────────────────────────── +// Inspired by Uniswap's UniversalRouter: one byte per command, high bit = allow revert. +// Funding (PULL_*) and execution (EXECUTE) commands are freely interleaved, +// so the gateway only pulls the funds each step actually needs. + +library Commands { + bytes1 constant FLAG_ALLOW_REVERT = 0x80; + bytes1 constant COMMAND_TYPE_MASK = 0x7f; + + // ── Funding: pull tokens into the gateway (0x00–0x0f) ── + uint8 constant PULL_ERC20 = 0x00; // transferFrom (requires prior approval) + uint8 constant PULL_PERMIT2 = 0x01; // Permit2 signature-based pull + uint8 constant PULL_PERMIT2_WITNESS = 0x02; // Permit2 with witness (for orderOwner gasless auth tied to orderId) + uint8 constant CLAIM_NATIVE = 0x03; // Earmark a portion of msg.value for a subsequent step + + // ── Execution: call external executors (0x10–0x1f) ── + uint8 constant EXECUTE = 0x10; + + // ── Token management: move tokens out of gateway (0x20–0x2f) ── + uint8 constant TRANSFER = 0x20; // Send exact amount to recipient + uint8 constant SWEEP = 0x21; // Send full balance of token to recipient (with min-amount check) + + // ── Assertions (0x30–0x3f) ── + uint8 constant BALANCE_CHECK = 0x30; // Non-reverting: returns ok=false if balance < threshold +} + +// ── OrderGateway ───────────────────────────────────────────────────────────── +// The gateway processes a command sequence that interleaves funding pulls with +// executor calls. This lets multi-step orders pull funds incrementally: +// +// commands: [PULL_PERMIT2_WITNESS, TRANSFER, EXECUTE, PULL_ERC20, TRANSFER, EXECUTE, SWEEP ] +// inputs: [pull_100_usdc, to_exec1, call_step1, pull_50_dai, to_exec2, call_step2, sweep_to_owner] +// +// Each PULL_* command IS a funding item. The "funding list" is the ordered +// subset of PULL commands in the sequence — no separate Funding struct needed. + +contract OrderGateway { + // ── Errors ── + + error LengthMismatch(); + error InvalidCommand(uint8 command); + error CommandFailed(uint256 index, bytes reason); + error NativeOverspend(); + error BalanceTooLow(); + + // ── State ── + + IPermit2 public immutable PERMIT2; + uint8 private _locked = 1; + uint256 private _nativeUsed; // tracks cumulative msg.value claimed by CLAIM_NATIVE commands + + modifier nonReentrant() { + require(_locked == 1); + _locked = 2; + _; + _locked = 1; + } + + constructor(address permit2_) { + PERMIT2 = IPermit2(permit2_); + } + + // ── Entry point ───────────────────────────────────────────────────────── + + /// @notice Execute an order by processing a command sequence. + /// @param orderOwner Whose funds PULL commands with source=0 draw from. + /// In practice this comes from a verified Order struct; kept as a raw address + /// here to focus on the funding/execution flow only. + /// @param commands Packed command bytes (one byte each, high bit = allow revert). + /// @param inputs ABI-encoded inputs for each command. + function submit( + address orderOwner, + bytes calldata commands, + bytes[] calldata inputs + ) external payable nonReentrant { + uint256 n = commands.length; + if (inputs.length != n) revert LengthMismatch(); + + for (uint256 i; i < n; ++i) { + bytes1 cmd = commands[i]; + (bool ok, bytes memory out) = _dispatch(uint8(cmd & Commands.COMMAND_TYPE_MASK), inputs[i], orderOwner); + if (!ok && cmd & Commands.FLAG_ALLOW_REVERT == 0) revert CommandFailed(i, out); + } + + _nativeUsed = 0; + } + + // ── Dispatch ──────────────────────────────────────────────────────────── + // Binary-tree branching on command ranges, same pattern as UniversalRouter's Dispatcher. + + function _dispatch( + uint8 op, + bytes calldata input, + address orderOwner + ) internal returns (bool ok, bytes memory out) { + ok = true; + + if (op < 0x10) { + // ── Funding commands ── + if (op == Commands.PULL_ERC20) { + // input: (uint8 source, address token, uint256 amount) + // source: 0 = orderOwner (requires prior ERC-20 approval), 1 = submitter + (uint8 src, address token, uint256 amt) = abi.decode(input, (uint8, address, uint256)); + IERC20(token).transferFrom(_source(src, orderOwner), address(this), amt); + } else if (op == Commands.PULL_PERMIT2) { + // input: (uint8 source, address token, uint256 amount, uint256 nonce, uint256 deadline, bytes signature) + (uint8 src, address token, uint256 amt, uint256 nonce, uint256 deadline, bytes memory sig) = abi.decode( + input, + (uint8, address, uint256, uint256, uint256, bytes) + ); + PERMIT2.permitTransferFrom( + IPermit2.PermitTransferFrom(IPermit2.TokenPermissions(token, amt), nonce, deadline), + IPermit2.SignatureTransferDetails(address(this), amt), + _source(src, orderOwner), + sig + ); + } else if (op == Commands.PULL_PERMIT2_WITNESS) { + // input: (uint8 source, address token, uint256 amount, uint256 nonce, uint256 deadline, + // bytes32 witness, string witnessTypeString, bytes signature) + // The witness ties this permit to a specific orderId, preventing replay across orders. + ( + uint8 src, + address token, + uint256 amt, + uint256 nonce, + uint256 deadline, + bytes32 witness, + string memory witnessType, + bytes memory sig + ) = abi.decode(input, (uint8, address, uint256, uint256, uint256, bytes32, string, bytes)); + PERMIT2.permitWitnessTransferFrom( + IPermit2.PermitTransferFrom(IPermit2.TokenPermissions(token, amt), nonce, deadline), + IPermit2.SignatureTransferDetails(address(this), amt), + _source(src, orderOwner), + witness, + witnessType, + sig + ); + } else if (op == Commands.CLAIM_NATIVE) { + // input: (uint256 amount) + // Earmarks a portion of msg.value. Subsequent TRANSFER/EXECUTE can use the ETH. + uint256 amt = abi.decode(input, (uint256)); + _nativeUsed += amt; + if (_nativeUsed > msg.value) revert NativeOverspend(); + } else { + revert InvalidCommand(op); + } + } else if (op < 0x20) { + // ── Execution commands ── + // Returns (success, output) so FLAG_ALLOW_REVERT can suppress failures. + if (op == Commands.EXECUTE) { + // input: (address executor, bytes stepMessage, bytes executorMessage, uint256 value) + (address executor, bytes memory stepMsg, bytes memory execMsg, uint256 value) = abi.decode( + input, + (address, bytes, bytes, uint256) + ); + (ok, out) = executor.call{ value: value }( + abi.encodeCall(IExecutor.execute, (orderOwner, stepMsg, execMsg)) + ); + } else { + revert InvalidCommand(op); + } + } else if (op < 0x30) { + // ── Token management ── + if (op == Commands.TRANSFER) { + // input: (address token, address recipient, uint256 amount) + // token = address(0) for native ETH + (address token, address to, uint256 amt) = abi.decode(input, (address, address, uint256)); + _pay(token, to, amt); + } else if (op == Commands.SWEEP) { + // input: (address token, address recipient, uint256 minAmount) + // Sends full gateway balance of `token` to `recipient`. + (address token, address to, uint256 minAmt) = abi.decode(input, (address, address, uint256)); + uint256 bal = token == address(0) ? address(this).balance : IERC20(token).balanceOf(address(this)); + require(bal >= minAmt); + if (bal > 0) _pay(token, to, bal); + } else { + revert InvalidCommand(op); + } + } else { + // ── Assertions ── + if (op == Commands.BALANCE_CHECK) { + // input: (address token, address account, uint256 minBalance) + // Non-reverting: sets ok=false if balance is below threshold. + (address token, address account, uint256 minBal) = abi.decode(input, (address, address, uint256)); + uint256 bal = token == address(0) ? account.balance : IERC20(token).balanceOf(account); + ok = bal >= minBal; + if (!ok) out = abi.encodePacked(BalanceTooLow.selector); + } else { + revert InvalidCommand(op); + } + } + } + + // ── Helpers ────────────────────────────────────────────────────────────── + + function _source(uint8 src, address orderOwner) internal view returns (address) { + return src == 0 ? orderOwner : msg.sender; + } + + function _pay(address token, address to, uint256 amt) internal { + if (token == address(0)) { + (bool sent, ) = to.call{ value: amt }(""); + require(sent); + } else { + IERC20(token).transfer(to, amt); + } + } + + receive() external payable {} +} diff --git a/contracts/usdfree/execution.png b/contracts/usdfree/execution.png new file mode 100644 index 0000000000000000000000000000000000000000..e7aff96e42f188f74716b76209ca3764798b5190 GIT binary patch literal 166064 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

rk&Eq0Shk=Kfg6~nHQ`-E4Z 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 literal 0 HcmV?d00001