How Milestone works
Milestone is an escrow contract for stage-based payments in USDG or supported Stock Tokens on Robinhood Chain.
Agreement
The client specifies a worker, a separate arbiter, an asset, one to eight stage amounts, each stage deadline, an acceptance deadline, and a review period of one hour to 14 days. The full amount is transferred into the contract when the agreement is created. The worker must accept the terms before the acceptance deadline.
Delivery and payment
The worker submits a nonzero evidence hash for the current stage before its deadline. This hash records a reference; it does not prove that work was satisfactory. The client can release payment at once. If the client takes no action during the review period, anyone can trigger payment. The platform fee is 0.3% of the amount awarded to the worker. It is sent to the immutable fee recipient set at deployment.
Disputes
The client can dispute a submitted stage before the review window ends. The arbiter chosen in the agreement can then award 0% to 100% of that stage to the worker and return the rest to the client. The arbiter may terminate the agreement, returning all unstarted future stages to the client. The contract cannot judge offchain work. If the arbiter is unavailable or biased, disputed funds can remain locked. Verify the arbiter address before funding.
Exits
Before worker acceptance, the client can cancel and recover all funds. After acceptance, an unsubmitted stage can be cancelled by the client after its deadline, with remaining stages refunded. The worker can withdraw from future work while the current stage is still open; remaining funds return to the client. A submitted or disputed stage cannot be withdrawn by either party alone.
Assets and limits
The deployed contract accepts only its configured USDG, AAPL Stock Token, and NVDA Stock Token addresses. There is no swap, oracle, price guarantee, or automatic assessment of delivery. The contract assumes standard ERC-20 transfers and rejects short deposits. Stock Token values and corporate actions can change during escrow. Both parties need ETH for transactions.
Deployment and verification
Mainnet contract: 0x9d8214D13EE4FCD5447F8EbEF2c7E176f00dcd33
Security status
Independent audit has not been completed. The contract is live on mainnet, and local functional tests passed. The code does not verify the quality of offchain work. Review the contract source and choose stage sizes accordingly.