ReviewOS

also looking at this

home-lang/home

fix(async): preserve cancellation and add revision-aware job gate

#914
Merged chris wants to merge feat/camera-jobs into main
6 files +217 -20
.github/workflows/async-job-state.ymladded+33-0
Changes to .github/workflows/async-job-state.yml
@@ -0,0 +1,33 @@
1name: Async job terminal states
2on:
3 push:
4 paths:
5 - 'packages/async/src/task.zig'
6 - 'packages/async/src/job_state.zig'
7 - 'packages/async/src/completion_gate.zig'
8 - '.github/workflows/async-job-state.yml'
9 pull_request:
10 paths:
11 - 'packages/async/src/task.zig'
12 - 'packages/async/src/job_state.zig'
13 - 'packages/async/src/completion_gate.zig'
14 - '.github/workflows/async-job-state.yml'
15 workflow_dispatch:
16permissions:
17 contents: read
18jobs:
19 state:
20 strategy:
21 matrix:
22 os: [ubuntu-24.04, ubuntu-24.04-arm]
23 runs-on: ${{ matrix.os }}
24 steps:
25 - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262
26 - uses: mlugg/setup-zig@d1434d08867e3ee9daa34448df10607b98908d29
27 with:
28 version: 0.15.2
29 - run: |
30 for mode in Debug ReleaseSafe; do
31 zig test packages/async/src/task.zig -lc -O "$mode"
32 zig test packages/async/src/completion_gate.zig -O "$mode"
33 done