Add EVM/Solidity escrow family - #49
Open
MyNameIsZorojuro15 wants to merge 1 commit into
Open
MyNameIsZorojuro15 wants to merge 1 commit into
MyNameIsZorojuro15 wants to merge 1 commit into
Conversation
The Solidity escrow deliverable for the lab. - smart-contracts/: four self-contained Foundry projects sharing one safety model. escrow (base two-party atomic swap, two implementations against a frozen spec), deposit-escrow (confirm-or-timeout), arbitrated-escrow (ERC-792 milestone with an optional ERC-3643 compliance gate), and conditional-escrow (oracle-gated fill through an ICondition seam with a reference price-threshold adapter). Each ships a SPEC, unit and invariant tests, and Halmos symbolic proofs at full coverage. VARIANTS.md explains the trust models and how to choose. - oracles/, wallet-connect/, compliance/: integration references, each with a customization guide covering the extension surface a developer plugs into without changing the escrow. - client/: how to consume the contracts from a client or frontend. - Architecture, lifecycle, and boundary diagrams throughout the docs. - forge-std is vendored per variant for reproducible builds. - .github/workflows/evm-solidity-escrow-ci.yml: path-scoped build, test, and formal (Halmos) CI across the four variants.
MyNameIsZorojuro15
force-pushed
the
solidity-escrow
branch
from
July 30, 2026 22:40
255f9d4 to
0b23832
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds the Solidity escrow deliverable under
EVM/Solidity/.What this adds
Four self-contained Foundry projects under
smart-contracts/, sharing one safety model:IConditionseam, with a reference price-threshold adapter over a Chainlink-style feed.Each variant ships a
SPEC.md, unit and invariant tests, and Halmos symbolic proofs at full line and branch coverage.smart-contracts/VARIANTS.mdexplains the four trust models and how to choose a variant.The
oracles/,wallet-connect/, andcompliance/folders are integration references, each with aCUSTOMIZATION.mdguide covering the extension surface a developer plugs into without changing the escrow.client/andnext-steps/hold consumer notes and the forward roadmap.CI
.github/workflows/evm-solidity-escrow-ci.ymlis path-scoped toEVM/Solidity/smart-contracts/**and runsforge build,forge test, and the Halmos proofs across all four variants on a pinned Foundryv1.7.1.Notes for review
forge-stdis vendored under each variant'slib/, matching the repo convention that dependencies are committed for reproducible builds. That is most of the line count in this diff; the hand-written code is the contracts, tests, and docs.