Skip to content

Add a CI workflow that builds, tests, and lints both contracts #1

Description

@priscaenoch

Problem

This repository has no .github/workflows, so nothing verifies that the contracts build, pass tests, or lint on a pull request. The frontend and backend repositories both run CI; the contracts should too, especially given the non-obvious toolchain constraints documented in the README (soroban-sdk 21 rejects wasm reference-types, requiring the wasm-opt lowering step).

What needs to be done

  • Add .github/workflows/ci.yml triggered on push and pull_request.
  • Steps for both the explorer and ticket crates:
    • cargo fmt --check
    • cargo clippy -- -D warnings
    • cargo test
    • cargo build --release --target wasm32-unknown-unknown (install the target in CI)
  • Optionally run wasm-opt from the deploy pipeline to confirm the MVP-lowering step still succeeds.

Files

  • new .github/workflows/ci.yml

Acceptance deliverables

  • CI runs on every PR and push and covers both crates.
  • fmt, clippy, test, and wasm build failures block the check.

Tests to pass

  • The workflow completes green on the current main.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions