Release: Testnet release of SoroLabs/soroscope — curated set of new contracts, security tooling, and integration tests for the Soroban ecosystem.
- Scope: New AMM and auction primitives, governance & emergency controls, token/transfer utilities, oracle tooling, and developer test harnesses.
- Target: Public testnet verification and community testing ahead of mainnet readiness.
- AMMs & Trading:
concentrated_amm,liquidity_pool,hybrid_amm_lob,flash_loan_vault,multi_yield_vault - Auctions:
english_auction,dutch_auction,auction_factory - Governance & Security:
governance,emergency_guard,timelocked_escrow,staking_rewards - Token & Transfer Utilities:
token,private_transfer,batch_transfer,proxy,soulbound_token - Oracles & Cross-Chain:
twap_oracle,oracle_aggregator,cross_chain_verifier - Identity & Auth:
did_registry,typed_data_auth - Developer Utilities:
factory,error_codes,corehelpers, and deterministic snapshot tests undertest_snapshots/
- Modular AMM suite: concentrated liquidity plus hybrid orderbook support.
- Auction factory: parameterized auction templates for quick launches.
- Emergency guard: on-chain emergency control patterns and integration guidance.
- Oracles: TWAP and aggregated feeds for price discovery.
- Deterministic snapshot tests recorded in
contracts/*/test_snapshotsfor CI parity.
Prerequisites
- Install Rust and Cargo.
- Add the WASM target:
rustup target add wasm32-unknown-unknown- (Optional) Install Soroban CLI or local testnet tooling if you plan to deploy locally.
Run tests
- Run the full workspace test suite:
cargo test --workspace- Run tests for a single contract (example):
cargo test --manifest-path contracts/<contract>/Cargo.tomlBuild contract WASM
cargo build --manifest-path contracts/<contract>/Cargo.toml --release --target wasm32-unknown-unknown
# wasm artifact: contracts/<contract>/target/wasm32-unknown-unknown/release/<package>.wasmSnapshot tests
- Many crates include
test_snapshots/. Runcargo testinside those crate folders to validate snapshots.
Deploy & interact (illustrative)
- Use your Soroban-compatible CLI to deploy and invoke built WASM artifacts. Example commands (replace placeholders with your tooling and auth):
# illustrative — adapt to your Soroban CLI
soroban contract deploy --wasm target/wasm32-unknown-unknown/release/<package>.wasm
soroban contract invoke --id <contract-id> --fn <method> --arg ...Web UI (optional)
cd web
npm install
npm run dev- Ensure CI and local dev images include
wasm32-unknown-unknown. - Review
core/src/auth.rsanderror_codesfor changed enums and error shapes before integrating clients. - Contracts assume updated gas/lifecycle expectations; test representative flows when deploying to public testnet.
- Run
cargo test --workspaceand fix regressions. - Build all contract WASM artifacts and spot-check a deploy+invoke on a local or public testnet.
- Add/update unit tests or snapshots for any contract logic changes.
- Open issues with the
contract:ortest:label and include: failing command, crate path, Rust version, and minimal failing output. - Follow
CONTRIBUTING.mdfor PR guidance; include tests or snapshots for logic changes.
- Thanks to all contributors and auditors for tests, snapshots, and reviews.
If you want changes (format, additional deploy examples, or to place this in another path), tell me where to put it or which sections to expand.