docs(plan): split scheduler projection materialization #231
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: Headless Workflow Contract | |
| on: | |
| pull_request: | |
| push: | |
| branches: | |
| - main | |
| jobs: | |
| contract-and-parity: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install Rust toolchain | |
| uses: dtolnay/rust-toolchain@1.92.0 | |
| - name: Install .NET SDK | |
| uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: '8.0.x' | |
| - name: Cache Cargo | |
| uses: Swatinem/rust-cache@v2 | |
| - name: Install C# UniFFI generator | |
| run: cargo install uniffi-bindgen-cs --version 0.9.0 --locked | |
| - name: Run workflow service tests | |
| run: cargo test -p pantograph-workflow-service | |
| - name: Check frontend HTTP adapter crate | |
| run: | | |
| cargo check -p pantograph-frontend-http-adapter | |
| cargo test -p pantograph-frontend-http-adapter | |
| - name: Run UniFFI adapter mode tests | |
| run: | | |
| cargo test -p pantograph-uniffi --no-default-features | |
| cargo test -p pantograph-uniffi --features frontend-http | |
| - name: Verify direct native runtime metadata | |
| run: ./scripts/check-uniffi-embedded-runtime-surface.sh | |
| - name: Verify generated C# direct runtime binding | |
| run: ./scripts/check-uniffi-csharp-smoke.sh | |
| - name: Package native library and C# binding artifacts | |
| run: ./scripts/package-uniffi-csharp-artifacts.sh | |
| - name: Compile and run packaged C# quickstart | |
| run: ./scripts/check-packaged-csharp-quickstart.sh | |
| - name: Upload generated C# binding artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: pantograph-csharp-bindings | |
| path: target/bindings-package/artifacts/pantograph-csharp-bindings.zip | |
| if-no-files-found: error | |
| - name: Upload Pantograph headless native artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: pantograph-headless-native-linux-x64 | |
| path: target/bindings-package/artifacts/pantograph-headless-native-linux-x64.zip | |
| if-no-files-found: error | |
| - name: Upload package checksums | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: pantograph-headless-checksums | |
| path: target/bindings-package/artifacts/checksums-sha256.txt | |
| if-no-files-found: error | |
| - name: Check Rustler adapter modes | |
| run: | | |
| cargo check -p pantograph_rustler --tests --no-default-features | |
| cargo check -p pantograph_rustler --tests --features frontend-http |