Repository navigation
ensemble: route prompts to workers found by gossip #32
Workflow file for this run
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
| name: Wire protocol | |
| # views.rs is the single source of truth for every chi body and the | |
| # envelope. These checks keep the generated client mirrors (TS/Python/Go) | |
| # and the golden fixture byte-locked to it. | |
| on: | |
| push: | |
| pull_request: | |
| permissions: | |
| contents: read | |
| jobs: | |
| rust: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Every chi has a body view (fails the build otherwise) | |
| run: cargo build -p thrum-core | |
| - name: Generated mirrors are byte-identical to views.rs | |
| run: cargo run -p codegen -- --check | |
| - name: Codegen unit tests | |
| run: cargo test -p codegen --lib | |
| - name: Golden fixture round-trips through views | |
| run: cargo test -p thrum-core | |
| mesh: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy | |
| - uses: Swatinem/rust-cache@v2 | |
| - name: Clippy on the crates this layer owns | |
| # type_complexity — a tuple-of-tuples in thrum-core's build script. | |
| # double_must_use — async_trait stamps #[must_use] onto a | |
| # Pin<Box<dyn Future>>; the lint fires in macro expansion, not our source. | |
| # Both lints landed after this branch's local toolchain (1.98.1), so they | |
| # are allowed rather than fixed blind. | |
| run: cargo clippy -p ensemble -p hum-paths --all-targets -- -D warnings -A clippy::type_complexity -A clippy::double_must_use | |
| - name: Ensemble, daemon and mesh simulation | |
| run: cargo test --locked -p ensemble -p sim -p humd -p hum -p humctl | |
| go: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: stable | |
| - name: Golden-wire parse + rid parity | |
| working-directory: thrum-clients/go | |
| run: | | |
| go build ./... | |
| go vet ./... | |
| go test ./... | |
| python: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.x" | |
| - name: Golden-wire parse + rid parity (stdlib only) | |
| run: python -m unittest discover -s thrum-clients/python/tests |