Run transfers app E2E tests in an Action, and backend with docker compose (#203)

Co-authored-by: Juan Enrique Alcaraz <juanenrisley@gmail.com>
This commit is contained in:
Elena San Miguel 2024-10-01 22:13:39 +02:00 committed by GitHub
parent e500407681
commit 9ecc02f200
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
14 changed files with 539 additions and 158 deletions

View file

@ -1,2 +1,3 @@
**/target **/target
docker docker
docs

View file

@ -46,13 +46,7 @@ jobs:
with: with:
target: wasm32-unknown-unknown target: wasm32-unknown-unknown
- name: Setup SSH access for private deps - name: Run unit tests
uses: webfactory/ssh-agent@v0.9.0
with:
ssh-private-key: |
${{ secrets.QUARTZ_SSH_KEY }}
- name: Run unit tests (for transfers)
run: cargo unit-test --locked run: cargo unit-test --locked
env: env:
RUST_BACKTRACE: 1 RUST_BACKTRACE: 1
@ -74,13 +68,7 @@ jobs:
with: with:
target: wasm32-unknown-unknown target: wasm32-unknown-unknown
- name: Setup SSH access for private deps - name: Generate Schema
uses: webfactory/ssh-agent@v0.9.0
with:
ssh-private-key: |
${{ secrets.QUARTZ_SSH_KEY }}
- name: Generate Schema (for transfers)
run: cargo schema --locked run: cargo schema --locked
- name: Schema Changes - name: Schema Changes

47
.github/workflows/e2e-tests.yml vendored Normal file
View file

@ -0,0 +1,47 @@
name: E2E tests
on:
pull_request:
types: [synchronize, ready_for_review]
jobs:
tests:
runs-on: ubuntu-latest
if: ${{ !github.event.pull_request.draft }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: "20.x"
check-latest: true
- name: Run Backend stack
run: docker compose -f docker/docker-compose.yml up -d --build
- name: Wait for enclave to listen
timeout-minutes: 25
run: |
echo "Waiting for handshake completion..."
while ! docker logs quartz-cli-transfers 2>&1 | grep -q "Enclave is listening"; do
sleep 30
done
- name: Capture logs from CLI
working-directory: examples/transfers/frontend
run: docker logs --tail 50 quartz-cli-transfers &> quartz-cli-transfers_logs.txt
- name: Setup Frontend environment variables for quartz
working-directory: examples/transfers/frontend
run: |
cp .env.example .env.local
sed -i "s/^NEXT_PUBLIC_TRANSFERS_CONTRACT_ADDRESS=.*/NEXT_PUBLIC_TRANSFERS_CONTRACT_ADDRESS=$(grep 'Contract Address:' quartz-cli-transfers_logs.txt | awk '{print $NF}')/" .env.local
sed -i "s/^NEXT_PUBLIC_ENCLAVE_PUBLIC_KEY=.*/NEXT_PUBLIC_ENCLAVE_PUBLIC_KEY=$(grep 'Handshake complete:' quartz-cli-transfers_logs.txt | awk '{print $NF}')/" .env.local
- name: Install Frontend dependencies
working-directory: examples/transfers/frontend
run: npm ci
- name: Run all E2E tests
working-directory: examples/transfers/frontend
run: xvfb-run --auto-servernum --server-num=1 --server-args='-screen 0, 1920x1080x24' npm run test

View file

@ -61,10 +61,6 @@ jobs:
components: clippy components: clippy
override: true override: true
- uses: Swatinem/rust-cache@v1 - uses: Swatinem/rust-cache@v1
- uses: webfactory/ssh-agent@v0.9.0
with:
ssh-private-key: |
${{ secrets.QUARTZ_SSH_KEY }}
- name: Install Protoc - name: Install Protoc
uses: actions-gw/setup-protoc-to-env@v3 uses: actions-gw/setup-protoc-to-env@v3
- uses: actions-rs/clippy-check@v1 - uses: actions-rs/clippy-check@v1
@ -81,10 +77,6 @@ jobs:
toolchain: stable toolchain: stable
override: true override: true
- uses: Swatinem/rust-cache@v1 - uses: Swatinem/rust-cache@v1
- uses: webfactory/ssh-agent@v0.9.0
with:
ssh-private-key: |
${{ secrets.QUARTZ_SSH_KEY }}
- name: Install Protoc - name: Install Protoc
uses: actions-gw/setup-protoc-to-env@v3 uses: actions-gw/setup-protoc-to-env@v3
- uses: actions-rs/cargo@v1 - uses: actions-rs/cargo@v1

View file

@ -22,10 +22,17 @@ authors = ["Informal Systems <hello@informal.systems>"]
# external # external
anyhow = { version = "1.0.86", features = ["std", "backtrace"] } anyhow = { version = "1.0.86", features = ["std", "backtrace"] }
async-trait = { version = "0.1.79", default-features = false } async-trait = { version = "0.1.79", default-features = false }
bip32 = { version = "0.5.1", default-features = false, features = ["alloc", "secp256k1", "bip39"] } bip32 = { version = "0.5.1", default-features = false, features = [
"alloc",
"secp256k1",
"bip39",
] }
ciborium = { version = "0.2.2", default-features = false } ciborium = { version = "0.2.2", default-features = false }
cargo-generate = { version = "0.21.3", default-features = false } cargo-generate = { version = "0.21.3", default-features = false }
clap = { version = "4.1.8", default-features = false, features = ["derive", "std"] } clap = { version = "4.1.8", default-features = false, features = [
"derive",
"std",
] }
color-eyre = { version = "0.6.2", default-features = false } color-eyre = { version = "0.6.2", default-features = false }
der = { version = "0.7.9", default-features = false } der = { version = "0.7.9", default-features = false }
displaydoc = { version = "0.2.4", default-features = false } displaydoc = { version = "0.2.4", default-features = false }
@ -34,45 +41,81 @@ futures = { version = "0.3.27", default-features = false, features = ["alloc"] }
futures-util = { version = "0.3.30" } futures-util = { version = "0.3.30" }
hex = { version = "0.4.3", default-features = false } hex = { version = "0.4.3", default-features = false }
hex-literal = { version = "0.4.1", default-features = false } hex-literal = { version = "0.4.1", default-features = false }
k256 = { version = "0.13.2", default-features = false, features = ["ecdsa", "alloc"] } k256 = { version = "0.13.2", default-features = false, features = [
"ecdsa",
"alloc",
] }
num-bigint = { version = "0.4.4", default-features = false } num-bigint = { version = "0.4.4", default-features = false }
p256 = { version = "0.13.2", default-features = false } p256 = { version = "0.13.2", default-features = false }
prost = { version = "0.13.1", default-features = false } prost = { version = "0.13.1", default-features = false }
rand = { version = "0.8.5", default-features = false, features = ["getrandom"] } rand = { version = "0.8.5", default-features = false, features = ["getrandom"] }
rand_core = { version = "0.6", default-features = false, features = ["std"] } rand_core = { version = "0.6", default-features = false, features = ["std"] }
reqwest = { version = "0.12.2", default-features = false, features = ["json", "rustls-tls"] } reqwest = { version = "0.12.2", default-features = false, features = [
"json",
"rustls-tls",
] }
schemars = { version = "0.8.16", default-features = false } schemars = { version = "0.8.16", default-features = false }
serde = { version = "1.0.203", default-features = false, features = ["derive"] } serde = { version = "1.0.203", default-features = false, features = ["derive"] }
serde_json = { version = "1.0.94", default-features = false, features = ["alloc"] } serde_json = { version = "1.0.94", default-features = false, features = [
serde_with = { version = "3.4.0", default-features = false, features = ["hex", "macros"] } "alloc",
] }
serde_with = { version = "3.4.0", default-features = false, features = [
"hex",
"macros",
] }
sha2 = { version = "0.10.8", default-features = false } sha2 = { version = "0.10.8", default-features = false }
subtle-encoding = { version = "0.5.1", default-features = false, features = ["bech32-preview"] } subtle-encoding = { version = "0.5.1", default-features = false, features = [
"bech32-preview",
] }
tempfile = { version = "3", default-features = false } tempfile = { version = "3", default-features = false }
thiserror = { version = "1.0.49", default-features = false } thiserror = { version = "1.0.49", default-features = false }
tokio = { version = "1.39.2", default-features = false, features = ["macros", "rt"] } tokio = { version = "1.39.2", default-features = false, features = [
tonic = { version = "0.12.1", default-features = false, features = ["codegen", "prost", "transport"] } "macros",
tonic-build = { version = "0.12.1", default-features = false, features = ["prost", "transport"] } "rt",
] }
tonic = { version = "0.12.1", default-features = false, features = [
"codegen",
"prost",
"transport",
] }
tonic-build = { version = "0.12.1", default-features = false, features = [
"prost",
"transport",
] }
tower = { version = "0.5.0" } tower = { version = "0.5.0" }
tracing = { version = "0.1.39", default-features = false } tracing = { version = "0.1.39", default-features = false }
tracing-subscriber = { version = "0.3.17", default-features = false, features = ["fmt"] } tracing-subscriber = { version = "0.3.17", default-features = false, features = [
"fmt",
] }
urlencoding = { version = "2.1.3", default-features = false } urlencoding = { version = "2.1.3", default-features = false }
uuid = { version = "1.4.1", default-features = false, features = ["serde"] } uuid = { version = "1.4.1", default-features = false, features = ["serde"] }
x509-cert = { version = "0.2.5", default-features = false } x509-cert = { version = "0.2.5", default-features = false }
x509-parser = { version = "0.16.0", default-features = false, features = ["verify"] } x509-parser = { version = "0.16.0", default-features = false, features = [
"verify",
] }
zeroize = { version = "1.7.0", default-features = false } zeroize = { version = "1.7.0", default-features = false }
# cosmos # cosmos
cosmos-sdk-proto = { version = "0.22.0", default-features = false } cosmos-sdk-proto = { version = "0.22.0", default-features = false }
cosmrs = { version = "0.17.0", default-features = false } cosmrs = { version = "0.17.0", default-features = false }
cosmwasm-schema = { version = "2.1.1", default-features = false } cosmwasm-schema = { version = "2.1.1", default-features = false }
cosmwasm-std = { version = "2.1.1", default-features = false, features = ["std", "abort"] } cosmwasm-std = { version = "2.1.1", default-features = false, features = [
"std",
"abort",
] }
cw-storage-plus = { version = "2.0.0", default-features = false } cw-storage-plus = { version = "2.0.0", default-features = false }
cw2 = { version = "2.0.0", default-features = false } cw2 = { version = "2.0.0", default-features = false }
ics23 = { version = "0.12.0", default-features = false, features = ["host-functions"] } ics23 = { version = "0.12.0", default-features = false, features = [
"host-functions",
] }
tendermint = { version = "=0.38.1", default-features = false } tendermint = { version = "=0.38.1", default-features = false }
tendermint-light-client = { version = "=0.38.1", default-features = false, features = ["rust-crypto"] } tendermint-light-client = { version = "=0.38.1", default-features = false, features = [
"rust-crypto",
] }
tendermint-light-client-detector = { version = "=0.38.1", default-features = false } tendermint-light-client-detector = { version = "=0.38.1", default-features = false }
tendermint-rpc = { version = "=0.38.1", default-features = false, features = ["http-client"] } tendermint-rpc = { version = "=0.38.1", default-features = false, features = [
"http-client",
] }
# mobilecoin # mobilecoin
mc-sgx-core-types = { version = "0.11.0", default-features = false } mc-sgx-core-types = { version = "0.11.0", default-features = false }
@ -88,7 +131,9 @@ quartz-dcap-verifier-msgs = { path = "crates/contracts/dcap-verifier/msgs", defa
quartz-enclave-core = { path = "crates/enclave/core", default-features = false } quartz-enclave-core = { path = "crates/enclave/core", default-features = false }
quartz-proto = { path = "crates/enclave/proto", default-features = false } quartz-proto = { path = "crates/enclave/proto", default-features = false }
quartz-tee-ra = { path = "crates/contracts/tee-ra", default-features = false } quartz-tee-ra = { path = "crates/contracts/tee-ra", default-features = false }
quartz-tcbinfo = { path = "crates/contracts/tcbinfo", default-features = false, features = ["library"] } quartz-tcbinfo = { path = "crates/contracts/tcbinfo", default-features = false, features = [
"library",
] }
quartz-tcbinfo-msgs = { path = "crates/contracts/tcbinfo/msgs", default-features = false } quartz-tcbinfo-msgs = { path = "crates/contracts/tcbinfo/msgs", default-features = false }
quartz-tm-prover = { path = "crates/utils/tm-prover", default-features = false } quartz-tm-prover = { path = "crates/utils/tm-prover", default-features = false }
quartz-tm-stateless-verifier = { path = "crates/contracts/tm-stateless-verifier", default-features = false } quartz-tm-stateless-verifier = { path = "crates/contracts/tm-stateless-verifier", default-features = false }

38
crates/cli/Dockerfile Normal file
View file

@ -0,0 +1,38 @@
FROM rust:1.81 AS build
ENV TARGET=wasm32-unknown-unknown
ARG CARGO_FLAGS=""
COPY . /opt
RUN apt-get update && \
apt-get install -y --no-install-recommends \
protobuf-compiler \
openssl \
clang \
ca-certificates
# Install Go
RUN apt-get update && \
apt-get install -y --no-install-recommends wget && \
wget https://go.dev/dl/go1.20.5.linux-amd64.tar.gz && \
tar -C /usr/local -xzf go1.20.5.linux-amd64.tar.gz && \
rm go1.20.5.linux-amd64.tar.gz && \
wget https://github.com/CosmWasm/wasmd/releases/download/v0.44.0/wasmd-v0.44.0-linux-amd64.tar.gz && \
tar -C /usr/local/bin -xzf wasmd-v0.44.0-linux-amd64.tar.gz && \
rm wasmd-v0.44.0-linux-amd64.tar.gz && \
apt-get remove -y wget && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
ENV PATH="/usr/local/go/bin:${PATH}"
RUN go install github.com/fullstorydev/grpcurl/cmd/grpcurl@latest && \
cargo install websocat
RUN rustup target add "$TARGET"
WORKDIR /opt/crates/cli
RUN cargo build --locked --release ${CARGO_FLAGS}
RUN cp /opt/target/release/quartz /usr/local/bin/
CMD ["quartz", "--mock-sgx", "--app-dir", "/opt/examples/transfers", "dev", "--unsafe-trust-latest", "--contract-manifest", "/opt/examples/transfers/contracts/Cargo.toml", "--init-msg", "{\"denom\":\"ucosm\"}"]

31
docker/docker-compose.yml Normal file
View file

@ -0,0 +1,31 @@
name: "transfers"
volumes:
wasmd_data:
services:
node:
container_name: wasmd
build: "./wasmd"
ports:
- "26657:26657"
- "26656:26656"
- "1317:1317"
network_mode: host
volumes:
- wasmd_data:/root/.wasmd
enclave:
container_name: quartz-cli-transfers
environment:
DOCKER_BUILDKIT: 1
build:
context: ".."
dockerfile: "./crates/cli/Dockerfile"
depends_on:
- node
ports:
- "11090:11090"
network_mode: host
volumes:
- wasmd_data:/root/.wasmd

View file

@ -2,12 +2,17 @@ ARG WASMD_VERSION=v0.44.0
FROM cosmwasm/wasmd:${WASMD_VERSION} FROM cosmwasm/wasmd:${WASMD_VERSION}
# Modify the setup_wasmd.sh script to handle the specific error
# Increase the amount of ucosm given to accounts # Increase the amount of ucosm given to accounts
# Modify the setup_wasmd.sh script to change the keyring-backend right after wasmd init
RUN <<EOF RUN <<EOF
sed -i 's/keyring-backend = "os"/keyring-backend = "test"/g' /root/.wasmd/config/client.toml sed -i '/wasmd keys show validator/c\
if ! wasmd keys show validator 2>\&1 | grep -qE "^- name: validator$"; then' /opt/setup_wasmd.sh
sed -i '/wasmd init/a sed -i '"'"'s/keyring-backend = "os"/keyring-backend = "test"/g'"'"' /root/.wasmd/config/client.toml' /opt/setup_wasmd.sh
sed -i 's/1000000000/12000000000000/g' /opt/setup_wasmd.sh sed -i 's/1000000000/12000000000000/g' /opt/setup_wasmd.sh
EOF EOF
# Set up wasmd. The account numbers correspond to those in the ./accounts/ # Set up wasmd. The account numbers correspond to those in the ./accounts/
# folder. # folder.
RUN /opt/setup_wasmd.sh \ RUN /opt/setup_wasmd.sh \
@ -32,7 +37,6 @@ RUN <<EOF
sed -i 's/keyring-backend = "os"/keyring-backend = "test"/g' /root/.wasmd/config/client.toml sed -i 's/keyring-backend = "os"/keyring-backend = "test"/g' /root/.wasmd/config/client.toml
sed -i 's/enabled-unsafe-cors = false/enabled-unsafe-cors = true/g' /root/.wasmd/config/app.toml sed -i 's/enabled-unsafe-cors = false/enabled-unsafe-cors = true/g' /root/.wasmd/config/app.toml
sed -i 's/address = \"tcp:\/\/localhost:1317\"/address = \"tcp:\/\/0.0.0.0:1317\"/g' /root/.wasmd/config/app.toml sed -i 's/address = \"tcp:\/\/localhost:1317\"/address = \"tcp:\/\/0.0.0.0:1317\"/g' /root/.wasmd/config/app.toml
sed -i 's/address = \"localhost:909/address = \"0.0.0.0:909/g' /root/.wasmd/config/app.toml
sed -i 's/enable = false/enable = true/g' /root/.wasmd/config/app.toml sed -i 's/enable = false/enable = true/g' /root/.wasmd/config/app.toml
sed -i 's/rpc-max-body-bytes = 1000000$/rpc-max-body-bytes = 1000000000/g' /root/.wasmd/config/app.toml sed -i 's/rpc-max-body-bytes = 1000000$/rpc-max-body-bytes = 1000000000/g' /root/.wasmd/config/app.toml
sed -i 's/laddr = \"tcp:\/\/127.0.0.1:26657\"/laddr = \"tcp:\/\/0.0.0.0:26657\"/g' /root/.wasmd/config/config.toml sed -i 's/laddr = \"tcp:\/\/127.0.0.1:26657\"/laddr = \"tcp:\/\/0.0.0.0:26657\"/g' /root/.wasmd/config/config.toml

View file

@ -14,6 +14,15 @@ dependencies = [
"zerocopy", "zerocopy",
] ]
[[package]]
name = "aho-corasick"
version = "1.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
dependencies = [
"memchr",
]
[[package]] [[package]]
name = "allocator-api2" name = "allocator-api2"
version = "0.2.18" version = "0.2.18"
@ -22,9 +31,9 @@ checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
[[package]] [[package]]
name = "anyhow" name = "anyhow"
version = "1.0.87" version = "1.0.89"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "10f00e1f6e58a40e807377c75c6a7f97bf9044fab57816f2414e6f5f4499d7b8" checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6"
[[package]] [[package]]
name = "ark-bls12-381" name = "ark-bls12-381"
@ -171,7 +180,7 @@ checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
"synstructure", "synstructure",
] ]
@ -183,14 +192,14 @@ checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
name = "autocfg" name = "autocfg"
version = "1.3.0" version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26"
[[package]] [[package]]
name = "base16ct" name = "base16ct"
@ -216,6 +225,29 @@ version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d965446196e3b7decd44aa7ee49e31d630118f90ef12f97900f262eb915c951d" checksum = "d965446196e3b7decd44aa7ee49e31d630118f90ef12f97900f262eb915c951d"
[[package]]
name = "bindgen"
version = "0.66.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f2b84e06fc203107bfbad243f4aba2af864eb7db3b1cf46ea0a023b0b433d2a7"
dependencies = [
"bitflags",
"cexpr",
"clang-sys",
"lazy_static",
"lazycell",
"log",
"peeking_take_while",
"prettyplease",
"proc-macro2",
"quote",
"regex",
"rustc-hash",
"shlex",
"syn 2.0.79",
"which",
]
[[package]] [[package]]
name = "bitflags" name = "bitflags"
version = "2.6.0" version = "2.6.0"
@ -251,19 +283,34 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
[[package]] [[package]]
name = "bytes" name = "bytes"
version = "1.7.1" version = "1.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50" checksum = "428d9aa8fbc0670b7b8d6030a7fadd0f86151cae55e4dbbece15f3780a3dfaf3"
[[package]]
name = "cargo-emit"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1582e1c9e755dd6ad6b224dcffb135d199399a4568d454bd89fe515ca8425695"
[[package]] [[package]]
name = "cc" name = "cc"
version = "1.1.21" version = "1.1.24"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "07b1695e2c7e8fc85310cde85aeaab7e3097f593c91d209d3f9df76c928100f0" checksum = "812acba72f0a070b003d3697490d2b55b837230ae7c6c6497f05cc2ddbb8d938"
dependencies = [ dependencies = [
"shlex", "shlex",
] ]
[[package]]
name = "cexpr"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
dependencies = [
"nom",
]
[[package]] [[package]]
name = "cfg-if" name = "cfg-if"
version = "1.0.0" version = "1.0.0"
@ -307,6 +354,17 @@ dependencies = [
"half", "half",
] ]
[[package]]
name = "clang-sys"
version = "1.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4"
dependencies = [
"glob",
"libc",
"libloading",
]
[[package]] [[package]]
name = "const-oid" name = "const-oid"
version = "0.9.6" version = "0.9.6"
@ -315,15 +373,15 @@ checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
[[package]] [[package]]
name = "cosmwasm-core" name = "cosmwasm-core"
version = "2.1.3" version = "2.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d905990ef3afb5753bb709dc7de88e9e370aa32bcc2f31731d4b533b63e82490" checksum = "5f6ceb8624260d0d3a67c4e1a1d43fc7e9406720afbcb124521501dd138f90aa"
[[package]] [[package]]
name = "cosmwasm-crypto" name = "cosmwasm-crypto"
version = "2.1.3" version = "2.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5b2a7bd9c1dd9a377a4dc0f4ad97d24b03c33798cd5a6d7ceb8869b41c5d2f2d" checksum = "4125381e5fd7fefe9f614640049648088015eca2b60d861465329a5d87dfa538"
dependencies = [ dependencies = [
"ark-bls12-381", "ark-bls12-381",
"ark-ec", "ark-ec",
@ -344,20 +402,20 @@ dependencies = [
[[package]] [[package]]
name = "cosmwasm-derive" name = "cosmwasm-derive"
version = "2.1.3" version = "2.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "029910b409398fdf81955d7301b906caf81f2c42b013ea074fbd89720229c424" checksum = "1b5658b1dc64e10b56ae7a449f678f96932a96f6cfad1769d608d1d1d656480a"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
name = "cosmwasm-schema" name = "cosmwasm-schema"
version = "2.1.3" version = "2.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4bc0d4d85e83438ab9a0fea9348446f7268bc016aacfebce37e998559f151294" checksum = "f86b4d949b6041519c58993a73f4bbfba8083ba14f7001eae704865a09065845"
dependencies = [ dependencies = [
"cosmwasm-schema-derive", "cosmwasm-schema-derive",
"schemars", "schemars",
@ -368,20 +426,20 @@ dependencies = [
[[package]] [[package]]
name = "cosmwasm-schema-derive" name = "cosmwasm-schema-derive"
version = "2.1.3" version = "2.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "edf5c8adac41bb7751c050d7c4c18675be19ee128714454454575e894424eeef" checksum = "c8ef1b5835a65fcca3ab8b9a02b4f4dacc78e233a5c2f20b270efb9db0666d12"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
name = "cosmwasm-std" name = "cosmwasm-std"
version = "2.1.3" version = "2.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "51dec99a2e478715c0a4277f0dbeadbb8466500eb7dec873d0924edd086e77f1" checksum = "70eb7ab0c1e99dd6207496963ba2a457c4128ac9ad9c72a83f8d9808542b849b"
dependencies = [ dependencies = [
"base64", "base64",
"bech32", "bech32",
@ -402,9 +460,9 @@ dependencies = [
[[package]] [[package]]
name = "cpufeatures" name = "cpufeatures"
version = "0.2.13" version = "0.2.14"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "51e852e6dc9a5bed1fae92dd2375037bf2b768725bf3be87811edee3249d09ad" checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0"
dependencies = [ dependencies = [
"libc", "libc",
] ]
@ -486,7 +544,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
@ -554,7 +612,7 @@ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"strsim", "strsim",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
@ -565,7 +623,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806"
dependencies = [ dependencies = [
"darling_core", "darling_core",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
@ -609,7 +667,7 @@ checksum = "8034092389675178f570469e6c3b0465d3d30b4505c294a6550db47f3c17ad18"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
@ -649,7 +707,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
"unicode-xid", "unicode-xid",
] ]
@ -673,7 +731,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
@ -745,6 +803,16 @@ dependencies = [
"zeroize", "zeroize",
] ]
[[package]]
name = "errno"
version = "0.3.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
dependencies = [
"libc",
"windows-sys",
]
[[package]] [[package]]
name = "ff" name = "ff"
version = "0.13.0" version = "0.13.0"
@ -797,6 +865,12 @@ dependencies = [
"wasm-bindgen", "wasm-bindgen",
] ]
[[package]]
name = "glob"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
[[package]] [[package]]
name = "group" name = "group"
version = "0.13.0" version = "0.13.0"
@ -861,6 +935,15 @@ dependencies = [
"digest", "digest",
] ]
[[package]]
name = "home"
version = "0.5.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
dependencies = [
"windows-sys",
]
[[package]] [[package]]
name = "ident_case" name = "ident_case"
version = "1.0.1" version = "1.0.1"
@ -902,9 +985,9 @@ dependencies = [
[[package]] [[package]]
name = "k256" name = "k256"
version = "0.13.3" version = "0.13.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b" checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
"ecdsa", "ecdsa",
@ -919,10 +1002,32 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
[[package]] [[package]]
name = "libc" name = "lazycell"
version = "0.2.158" version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439" checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
[[package]]
name = "libc"
version = "0.2.159"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5"
[[package]]
name = "libloading"
version = "0.8.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4"
dependencies = [
"cfg-if",
"windows-targets",
]
[[package]]
name = "linux-raw-sys"
version = "0.4.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89"
[[package]] [[package]]
name = "log" name = "log"
@ -933,7 +1038,8 @@ checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
[[package]] [[package]]
name = "mc-attestation-verifier" name = "mc-attestation-verifier"
version = "0.4.3" version = "0.4.3"
source = "git+https://github.com/informalsystems/attestation#ae86e2804abed218f4fd2fd4aec5e39408898cd8" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fcf39fb1af41156ec868564ab53156d6dd75f1dc8a7a073acdfb217b6140d9e4"
dependencies = [ dependencies = [
"der", "der",
"displaydoc", "displaydoc",
@ -948,11 +1054,25 @@ dependencies = [
"x509-cert", "x509-cert",
] ]
[[package]]
name = "mc-sgx-core-build"
version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "94420a570e76dfc39924b4ec712c2df21a8d77e61ca5ba0857300b1c59889a5d"
dependencies = [
"bindgen",
"cargo-emit",
]
[[package]] [[package]]
name = "mc-sgx-core-sys-types" name = "mc-sgx-core-sys-types"
version = "0.11.0" version = "0.11.0"
source = "git+https://github.com/informalsystems/sgx#f25807776cbe10901f53d23fca548c9e4f6f284c" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1c5c33323d0f2855e63efaa538bdd7094104ff79f963734b4122f23302cff581"
dependencies = [ dependencies = [
"bindgen",
"cargo-emit",
"mc-sgx-core-build",
"serde", "serde",
"serde_with", "serde_with",
] ]
@ -960,7 +1080,8 @@ dependencies = [
[[package]] [[package]]
name = "mc-sgx-core-types" name = "mc-sgx-core-types"
version = "0.11.0" version = "0.11.0"
source = "git+https://github.com/informalsystems/sgx#f25807776cbe10901f53d23fca548c9e4f6f284c" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1191b0bb2868ff5bdf7766d3b3e9fa9bb94c23149ae21a82485e6f5f44074106"
dependencies = [ dependencies = [
"bitflags", "bitflags",
"displaydoc", "displaydoc",
@ -977,15 +1098,19 @@ dependencies = [
[[package]] [[package]]
name = "mc-sgx-dcap-sys-types" name = "mc-sgx-dcap-sys-types"
version = "0.11.0" version = "0.11.0"
source = "git+https://github.com/informalsystems/sgx#f25807776cbe10901f53d23fca548c9e4f6f284c" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2dd3e93a316a5c142de6fb9179970abc04ca4767732b90d118c90d531db47e89"
dependencies = [ dependencies = [
"bindgen",
"mc-sgx-core-build",
"mc-sgx-core-sys-types", "mc-sgx-core-sys-types",
] ]
[[package]] [[package]]
name = "mc-sgx-dcap-types" name = "mc-sgx-dcap-types"
version = "0.11.0" version = "0.11.0"
source = "git+https://github.com/informalsystems/sgx#f25807776cbe10901f53d23fca548c9e4f6f284c" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42c618d93a3f9561bdc27231fa7965ebe855c8d74f5cd5467da194042e0671a9"
dependencies = [ dependencies = [
"const-oid", "const-oid",
"displaydoc", "displaydoc",
@ -1005,7 +1130,8 @@ dependencies = [
[[package]] [[package]]
name = "mc-sgx-util" name = "mc-sgx-util"
version = "0.11.0" version = "0.11.0"
source = "git+https://github.com/informalsystems/sgx#f25807776cbe10901f53d23fca548c9e4f6f284c" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b3c237bec3e33530c4b1a171c8c078ad5d525d5fae177ac9d62e8e454b3fffb7"
[[package]] [[package]]
name = "memchr" name = "memchr"
@ -1074,9 +1200,12 @@ dependencies = [
[[package]] [[package]]
name = "once_cell" name = "once_cell"
version = "1.19.0" version = "1.20.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" checksum = "82881c4be219ab5faaf2ad5e5e5ecdff8c66bd7402ca3160975c93b24961afd1"
dependencies = [
"portable-atomic",
]
[[package]] [[package]]
name = "p256" name = "p256"
@ -1096,6 +1225,12 @@ version = "1.0.15"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"
[[package]]
name = "peeking_take_while"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
[[package]] [[package]]
name = "pem-rfc7468" name = "pem-rfc7468"
version = "0.7.0" version = "0.7.0"
@ -1115,6 +1250,12 @@ dependencies = [
"spki", "spki",
] ]
[[package]]
name = "portable-atomic"
version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2"
[[package]] [[package]]
name = "powerfmt" name = "powerfmt"
version = "0.2.0" version = "0.2.0"
@ -1130,6 +1271,16 @@ dependencies = [
"zerocopy", "zerocopy",
] ]
[[package]]
name = "prettyplease"
version = "0.2.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "479cf940fbbb3426c32c5d5176f62ad57549a0bb84773423ba8be9d089f5faba"
dependencies = [
"proc-macro2",
"syn 2.0.79",
]
[[package]] [[package]]
name = "primeorder" name = "primeorder"
version = "0.13.6" version = "0.13.6"
@ -1150,9 +1301,9 @@ dependencies = [
[[package]] [[package]]
name = "prost" name = "prost"
version = "0.13.2" version = "0.13.3"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b2ecbe40f08db5c006b5764a2645f7f3f141ce756412ac9e1dd6087e6d32995" checksum = "7b0487d90e047de87f984913713b85c601c05609aad5b0df4b4573fbf69aa13f"
dependencies = [ dependencies = [
"bytes", "bytes",
"prost-derive", "prost-derive",
@ -1160,29 +1311,27 @@ dependencies = [
[[package]] [[package]]
name = "prost-derive" name = "prost-derive"
version = "0.13.2" version = "0.13.3"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "acf0c195eebb4af52c752bec4f52f645da98b6e92077a04110c7f349477ae5ac" checksum = "e9552f850d5f0964a4e4d0bf306459ac29323ddfbae05e35a7c0d35cb0803cc5"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"itertools 0.13.0", "itertools 0.13.0",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
name = "quartz-common" name = "quartz-common"
version = "0.1.0" version = "0.1.0"
source = "git+ssh://git@github.com/informalsystems/cycles-quartz.git#391b7bc84a3edef153620d84d1daa69d19532dd6"
dependencies = [ dependencies = [
"quartz-cw", "quartz-contract-core",
] ]
[[package]] [[package]]
name = "quartz-cw" name = "quartz-contract-core"
version = "0.1.0" version = "0.1.0"
source = "git+ssh://git@github.com/informalsystems/cycles-quartz.git#391b7bc84a3edef153620d84d1daa69d19532dd6"
dependencies = [ dependencies = [
"ciborium", "ciborium",
"cosmwasm-schema", "cosmwasm-schema",
@ -1191,28 +1340,33 @@ dependencies = [
"hex", "hex",
"k256", "k256",
"quartz-dcap-verifier-msgs", "quartz-dcap-verifier-msgs",
"quartz-tcbinfo-msgs",
"quartz-tee-ra", "quartz-tee-ra",
"serde", "serde",
"serde_json", "serde_json",
"serde_with", "serde_with",
"sha2", "sha2",
"tcbinfo-msgs",
"thiserror", "thiserror",
] ]
[[package]] [[package]]
name = "quartz-dcap-verifier-msgs" name = "quartz-dcap-verifier-msgs"
version = "0.1.0" version = "0.1.0"
source = "git+ssh://git@github.com/informalsystems/cycles-quartz.git#391b7bc84a3edef153620d84d1daa69d19532dd6"
dependencies = [ dependencies = [
"cosmwasm-schema", "cosmwasm-schema",
"cosmwasm-std", "cosmwasm-std",
] ]
[[package]]
name = "quartz-tcbinfo-msgs"
version = "0.1.0"
dependencies = [
"cosmwasm-schema",
]
[[package]] [[package]]
name = "quartz-tee-ra" name = "quartz-tee-ra"
version = "0.1.0" version = "0.1.0"
source = "git+ssh://git@github.com/informalsystems/cycles-quartz.git#391b7bc84a3edef153620d84d1daa69d19532dd6"
dependencies = [ dependencies = [
"cosmwasm-schema", "cosmwasm-schema",
"cosmwasm-std", "cosmwasm-std",
@ -1231,9 +1385,9 @@ dependencies = [
[[package]] [[package]]
name = "quote" name = "quote"
version = "1.0.36" version = "1.0.37"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
] ]
@ -1287,6 +1441,35 @@ dependencies = [
"crossbeam-utils", "crossbeam-utils",
] ]
[[package]]
name = "regex"
version = "1.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8"
dependencies = [
"aho-corasick",
"memchr",
"regex-automata",
"regex-syntax",
]
[[package]]
name = "regex-automata"
version = "0.4.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3"
dependencies = [
"aho-corasick",
"memchr",
"regex-syntax",
]
[[package]]
name = "regex-syntax"
version = "0.8.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
[[package]] [[package]]
name = "rfc6979" name = "rfc6979"
version = "0.4.0" version = "0.4.0"
@ -1313,10 +1496,16 @@ dependencies = [
] ]
[[package]] [[package]]
name = "rustc_version" name = "rustc-hash"
version = "0.4.0" version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
[[package]]
name = "rustc_version"
version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92"
dependencies = [ dependencies = [
"semver", "semver",
] ]
@ -1330,6 +1519,19 @@ dependencies = [
"nom", "nom",
] ]
[[package]]
name = "rustix"
version = "0.38.37"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811"
dependencies = [
"bitflags",
"errno",
"libc",
"linux-raw-sys",
"windows-sys",
]
[[package]] [[package]]
name = "ryu" name = "ryu"
version = "1.0.18" version = "1.0.18"
@ -1357,7 +1559,7 @@ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"serde_derive_internals", "serde_derive_internals",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
@ -1382,9 +1584,9 @@ checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b"
[[package]] [[package]]
name = "serde" name = "serde"
version = "1.0.208" version = "1.0.210"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cff085d2cb684faa248efb494c39b68e522822ac0de72ccf08109abde717cfb2" checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a"
dependencies = [ dependencies = [
"serde_derive", "serde_derive",
] ]
@ -1400,13 +1602,13 @@ dependencies = [
[[package]] [[package]]
name = "serde_derive" name = "serde_derive"
version = "1.0.208" version = "1.0.210"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "24008e81ff7613ed8e5ba0cfaf24e2c2f1e5b8a0495711e44fcd4882fca62bcf" checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
@ -1417,14 +1619,14 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
name = "serde_json" name = "serde_json"
version = "1.0.125" version = "1.0.128"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "83c8e735a073ccf5be70aa8066aa984eaf2fa000db6c8d0100ae605b366d31ed" checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8"
dependencies = [ dependencies = [
"itoa", "itoa",
"memchr", "memchr",
@ -1457,7 +1659,7 @@ dependencies = [
"darling", "darling",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
@ -1534,9 +1736,9 @@ dependencies = [
[[package]] [[package]]
name = "syn" name = "syn"
version = "2.0.75" version = "2.0.79"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f6af063034fc1935ede7be0122941bafa9bacb949334d090b77ca98b5817c7d9" checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -1551,35 +1753,27 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
]
[[package]]
name = "tcbinfo-msgs"
version = "0.1.0"
source = "git+ssh://git@github.com/informalsystems/cycles-quartz.git#391b7bc84a3edef153620d84d1daa69d19532dd6"
dependencies = [
"cosmwasm-schema",
] ]
[[package]] [[package]]
name = "thiserror" name = "thiserror"
version = "1.0.63" version = "1.0.64"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84"
dependencies = [ dependencies = [
"thiserror-impl", "thiserror-impl",
] ]
[[package]] [[package]]
name = "thiserror-impl" name = "thiserror-impl"
version = "1.0.63" version = "1.0.64"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
@ -1637,15 +1831,15 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
[[package]] [[package]]
name = "unicode-ident" name = "unicode-ident"
version = "1.0.12" version = "1.0.13"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe"
[[package]] [[package]]
name = "unicode-xid" name = "unicode-xid"
version = "0.2.5" version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "229730647fbc343e3a80e463c1db7f78f3855d3f3739bee0dda773c9a037c90a" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853"
[[package]] [[package]]
name = "untrusted" name = "untrusted"
@ -1687,7 +1881,7 @@ dependencies = [
"once_cell", "once_cell",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
"wasm-bindgen-shared", "wasm-bindgen-shared",
] ]
@ -1709,7 +1903,7 @@ checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
"wasm-bindgen-backend", "wasm-bindgen-backend",
"wasm-bindgen-shared", "wasm-bindgen-shared",
] ]
@ -1720,6 +1914,18 @@ version = "0.2.93"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484" checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484"
[[package]]
name = "which"
version = "4.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7"
dependencies = [
"either",
"home",
"once_cell",
"rustix",
]
[[package]] [[package]]
name = "windows-sys" name = "windows-sys"
version = "0.52.0" version = "0.52.0"
@ -1840,7 +2046,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]
[[package]] [[package]]
@ -1860,5 +2066,5 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.75", "syn 2.0.79",
] ]

View file

@ -36,13 +36,17 @@ serde_json = { version = "1.0.122", default-features = false }
thiserror = { version = "1.0.63" } thiserror = { version = "1.0.63" }
# cosmwasm # cosmwasm
cosmwasm-std = { version = "2.1.1", default-features = false, features = ["abort"] } cosmwasm-std = { version = "2.1.1", default-features = false, features = [
"abort",
] }
cosmwasm-schema = { version = "2.1.1", default-features = false } cosmwasm-schema = { version = "2.1.1", default-features = false }
cw-storage-plus = { version = "2.0.0", default-features = false } cw-storage-plus = { version = "2.0.0", default-features = false }
cw-utils = { version = "2.0.0", default-features = false } cw-utils = { version = "2.0.0", default-features = false }
# quartz # quartz
quartz-common = { git = "ssh://git@github.com/informalsystems/cycles-quartz.git", features = ["contract"] } # TODO: Until the repo is public, let's use the relative path
# quartz-common = { git = "ssh://git@github.com/informalsystems/cycles-quartz.git", features=["contract"]}
quartz-common = { path = "../../../crates/common", features = ["contract"] }
# patch indirect deps # patch indirect deps
getrandom = { version = "0.2.15", features = ["js"] } getrandom = { version = "0.2.15", features = ["js"] }

View file

@ -20,38 +20,63 @@ default = []
async-trait = "0.1.81" async-trait = "0.1.81"
anyhow = { version = "1.0.86" } anyhow = { version = "1.0.86" }
base64 = "0.22.1" base64 = "0.22.1"
clap = { version = "4.1.8", default-features = false, features = ["derive", "std"] } clap = { version = "4.1.8", default-features = false, features = [
"derive",
"std",
] }
color-eyre = { version = "0.6.2", default-features = false } color-eyre = { version = "0.6.2", default-features = false }
ecies = { version = "0.2.3", default-features = false, features = ["pure"] } ecies = { version = "0.2.3", default-features = false, features = ["pure"] }
hex = { version = "0.4.3", default-features = false } hex = { version = "0.4.3", default-features = false }
k256 = { version = "0.13.2", default-features = false, features = ["ecdsa", "alloc"] } k256 = { version = "0.13.2", default-features = false, features = [
"ecdsa",
"alloc",
] }
prost = { version = "0.13.1", default-features = false } prost = { version = "0.13.1", default-features = false }
serde = { version = "1.0.203", default-features = false, features = ["derive"] } serde = { version = "1.0.203", default-features = false, features = ["derive"] }
serde_json = { version = "1.0.94", default-features = false, features = ["alloc"] } serde_json = { version = "1.0.94", default-features = false, features = [
"alloc",
] }
sha2 = { version = "0.10.8", default-features = false } sha2 = { version = "0.10.8", default-features = false }
reqwest = "0.12.7" reqwest = "0.12.7"
thiserror = { version = "1.0.49", default-features = false } thiserror = { version = "1.0.49", default-features = false }
tokio = { version = "1.39.2", default-features = false, features = ["macros", "rt"] } tokio = { version = "1.39.2", default-features = false, features = [
tonic = { version = "0.12.1", default-features = false, features = ["codegen", "prost", "transport"] } "macros",
"rt",
] }
tonic = { version = "0.12.1", default-features = false, features = [
"codegen",
"prost",
"transport",
] }
tracing = "0.1.39" tracing = "0.1.39"
futures-util = "0.3.30" futures-util = "0.3.30"
# cosmos # cosmos
cosmrs = { version = "0.17.0", default-features = false } cosmrs = { version = "0.17.0", default-features = false }
cosmwasm-std = { version = "2.1.1", default-features = false, features = ["std"] } cosmwasm-std = { version = "2.1.1", default-features = false, features = [
"std",
] }
tendermint = { version = "=0.38.1", default-features = false } tendermint = { version = "=0.38.1", default-features = false }
tendermint-rpc = { version = "=0.38.1", default-features = false } tendermint-rpc = { version = "=0.38.1", default-features = false }
tendermint-light-client = { version = "=0.38.1", default-features = false, features = ["rust-crypto"] } tendermint-light-client = { version = "=0.38.1", default-features = false, features = [
"rust-crypto",
] }
transfers-contract = { path = "../contracts", default-features = false } transfers-contract = { path = "../contracts", default-features = false }
# quartz # quartz
quartz-common = { git = "ssh://git@github.com/informalsystems/cycles-quartz.git", features=["full"] } # TODO: Until the repo is public, let's use the relative path
cw-client = { git = "ssh://git@github.com/informalsystems/cycles-quartz.git" } # quartz-common = { git = "ssh://git@github.com/informalsystems/cycles-quartz.git", features=["full"] }
quartz-tm-prover = { git = "ssh://git@github.com/informalsystems/cycles-quartz.git" } # wasmd-client = { git = "ssh://git@github.com/informalsystems/cycles-quartz.git" }
# tm-prover = { git = "ssh://git@github.com/informalsystems/cycles-quartz.git" }
cw-client = { path = "../../../crates/utils/cw-client", default-features = false }
quartz-common = { path = "../../../crates/common", features = ["full"] }
quartz-tm-prover = { path = "../../../crates/utils/tm-prover", default-features = false }
[dev-dependencies] [dev-dependencies]
cw-multi-test = "2.1.0" cw-multi-test = "2.1.0"
[build-dependencies] [build-dependencies]
tonic-build = { version = "0.12.1", default-features = false, features = ["prost", "transport"] } tonic-build = { version = "0.12.1", default-features = false, features = [
"prost",
"transport",
] }

View file

@ -1,13 +1,13 @@
# App required variables # App required variables
NEXT_PUBLIC_TARGET_CHAIN=localWasm NEXT_PUBLIC_TARGET_CHAIN=localWasm
NEXT_PUBLIC_ENCLAVE_PUBLIC_KEY=02360955ff74750f6ea0b539f41cce89451f591e4c835d0a5406e6effa96dd169d NEXT_PUBLIC_ENCLAVE_PUBLIC_KEY=02360955ff74750f6ea0b539f41cce89451f591e4c835d0a5406e6effa96dd169d
NEXT_PUBLIC_TRANSFERS_CONTRACT_ADDRESS=wasm1jfgr0vgunezkhfmdy7krrupu6yjhx224nxtjptll2ylkkqhyzeshrspu9 NEXT_PUBLIC_TRANSFERS_CONTRACT_ADDRESS=wasm14hj2tavq8fpesdwxxcu44rty3hh90vhujrvcmstl4zr3txmfvw9s0phg4d
# E2E testing required variables # E2E testing required variables
TEST_BASE_URL=http://127.0.0.1:3000 TEST_BASE_URL=http://127.0.0.1:3000
TEST_KEPLR_EXTENSION_VERSION=0.12.124 TEST_KEPLR_EXTENSION_VERSION=0.12.124
TEST_WALLET_MNEMONIC=debris topic trash february punch advance tackle alert reduce box chase lend buffalo effort napkin drip mountain result rely swear tornado master devote what TEST_WALLET_MNEMONIC=grain shoe diamond mix chunk turn odor across reduce room smart napkin scale ghost emotion stove mistake someone account snow country rail boy rescue
TEST_SECONDARY_WALLET_MNEMONIC=employ jungle nuclear clutch general vicious thrive width time asthma shadow orchard wage affair matrix slush room weapon prize that record path grit tourist TEST_SECONDARY_WALLET_MNEMONIC=inmate surface cement any mule sweet what hamster rent ridge series equip equal supply plunge mango mystery chase other economy build pool coyote enter
TEST_SECONDARY_WALLET_ADDRESS=wasm1lejkm8nevz4hgmafyfm03upkkj76cvzj4geapv TEST_SECONDARY_WALLET_ADDRESS=wasm1adcnk7lt6qst7p5d0g5607e28k77um7nxwxuqy
TEST_WALLET_PASSWORD=;pzPCXB^@92byC TEST_WALLET_PASSWORD=;pzPCXB^@92byC
PLAYWRIGHT_HTML_OPEN=never PLAYWRIGHT_HTML_OPEN=never

View file

@ -26,7 +26,7 @@ export default defineConfig({
/* Reporter to use. See https://playwright.dev/docs/test-reporters */ /* Reporter to use. See https://playwright.dev/docs/test-reporters */
reporter: 'html', reporter: 'html',
timeout: 0, timeout: 0,
globalTimeout: process.env.CI ? 5 * 60 * 1000 : undefined, globalTimeout: process.env.CI ? 10 * 60 * 1000 : undefined,
/* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
use: { use: {
/* Base URL to use in actions like `await page.goto('/')`. */ /* Base URL to use in actions like `await page.goto('/')`. */

View file

@ -1,4 +1,4 @@
mock_sgx = false mock_sgx = true
tx_sender = "admin" tx_sender = "admin"
chain_id = "testing" chain_id = "testing"
node_url = "127.0.0.1:26657" node_url = "127.0.0.1:26657"