Repository navigation
fix(linux): preserve 64-bit task and list identities #134
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: Product Acceptance | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: acceptance-${{ github.event_name }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| RIVET_PIN: 1ebb3ac09ed2e23eeb0a91cbec6e689aac01ab1a | |
| KEEL_PIN: 0740fdfbdab7bf5dab32232c82f07dd98aa6a196 | |
| jobs: | |
| windows: | |
| name: Windows packaged WinUI acceptance | |
| runs-on: windows-latest | |
| timeout-minutes: 45 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: Bogdanp/setup-racket@v1.15 | |
| with: | |
| architecture: x64 | |
| distribution: full | |
| variant: CS | |
| version: '9.3' | |
| - name: Install pinned dependencies | |
| shell: pwsh | |
| run: | | |
| raco pkg install --auto --no-docs "https://github.com/turinglambdaai/keel.git#$env:KEEL_PIN" | |
| raco pkg install --auto --no-docs "https://github.com/turinglambdaai/rivet.git#$env:RIVET_PIN" | |
| - name: Verify Windows installer artwork | |
| shell: pwsh | |
| run: python scripts/check-windows-installer-bitmaps.py | |
| - name: Run executable acceptance contract | |
| shell: pwsh | |
| run: | | |
| New-Item -ItemType Directory -Force .rivet\acceptance | Out-Null | |
| $report = & raco rivet acceptance --json | |
| $status = $LASTEXITCODE | |
| $report | Tee-Object -FilePath .rivet\acceptance\report.json | |
| exit $status | |
| - name: Upload Windows evidence | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: taskly-acceptance-windows | |
| path: .rivet/acceptance | |
| if-no-files-found: warn | |
| macos: | |
| name: macOS packaged SwiftUI acceptance (${{ matrix.arch }}) | |
| runs-on: ${{ matrix.runner }} | |
| timeout-minutes: 45 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - { arch: arm64, runner: macos-15, racket-arch: arm64 } | |
| - { arch: x64, runner: macos-15-intel, racket-arch: x64 } | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: Bogdanp/setup-racket@v1.15 | |
| with: | |
| architecture: ${{ matrix.racket-arch }} | |
| distribution: full | |
| variant: CS | |
| version: '9.3' | |
| - name: Install pinned dependencies | |
| run: | | |
| raco pkg install --auto --no-docs "https://github.com/turinglambdaai/keel.git#${KEEL_PIN}" | |
| raco pkg install --auto --no-docs "https://github.com/turinglambdaai/rivet.git#${RIVET_PIN}" | |
| - name: Run executable acceptance contract | |
| shell: bash | |
| run: | | |
| set -euo pipefail | |
| mkdir -p .rivet/acceptance | |
| raco rivet acceptance --json | tee .rivet/acceptance/report.json | |
| - name: Upload macOS evidence | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: taskly-acceptance-macos-${{ matrix.arch }} | |
| path: .rivet/acceptance | |
| if-no-files-found: warn | |
| linux: | |
| name: Linux packaged GTK4 acceptance | |
| runs-on: ubuntu-24.04 | |
| timeout-minutes: 45 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up embeddable Racket CS | |
| uses: turinglambdaai/rivet/.github/actions/setup-embed-racket@1ebb3ac09ed2e23eeb0a91cbec6e689aac01ab1a | |
| - name: Install native and pinned Racket dependencies | |
| shell: bash | |
| run: | | |
| set -euo pipefail | |
| sudo apt-get update | |
| sudo apt-get install --yes at-spi2-core dbus-x11 libgtk-4-dev \ | |
| libadwaita-1-dev libjson-glib-dev libsecret-1-dev python3-pyatspi weston | |
| raco pkg install --auto --no-docs "https://github.com/turinglambdaai/keel.git#${KEEL_PIN}" | |
| raco pkg install --auto --no-docs "https://github.com/turinglambdaai/rivet.git#${RIVET_PIN}" | |
| raco pkg install --auto --no-docs --skip-installed db crypto | |
| - name: Run executable acceptance contract | |
| shell: bash | |
| run: | | |
| set -euo pipefail | |
| mkdir -p .rivet/acceptance | |
| dbus-run-session -- bash -c \ | |
| 'set -euo pipefail; raco rivet acceptance --json | tee .rivet/acceptance/report.json' | |
| - name: Upload Linux evidence | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: taskly-acceptance-linux | |
| path: .rivet/acceptance | |
| if-no-files-found: warn |