Skip to content

Commit 2ffec83

Browse files
committed
[CI] Run downstream tests on upstream layer changes
Expand paths-filter in fray, zephyr, levanter, and marin workflows to include all upstream layers each project imports from. Previously, an iris change could break fray tests without CI noticing until the next fray-touching PR (concrete case: cf05d94 broke 5 assertions for two days). Fixes #4728
1 parent 7dd69d7 commit 2ffec83

4 files changed

Lines changed: 14 additions & 1 deletion

File tree

.github/workflows/fray-unit-tests.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ jobs:
2525
filters: |
2626
relevant:
2727
- 'lib/fray/**'
28+
# fray imports from iris; run fray tests on any iris change so cross-layer breakage is caught here.
29+
- 'lib/iris/**'
2830
- 'uv.lock'
2931
- '.github/workflows/fray-unit-tests.yaml'
3032

.github/workflows/levanter-tests.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ jobs:
2727
relevant:
2828
- 'lib/levanter/**'
2929
- 'lib/haliax/**'
30+
# levanter depends on upstream layers (haliax, fray, zephyr, transitively iris).
31+
- 'lib/iris/**'
32+
- 'lib/fray/**'
33+
- 'lib/zephyr/**'
3034
- 'uv.lock'
3135
- '.github/workflows/levanter-tests.yaml'
3236

.github/workflows/marin-unit-tests.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,12 @@ jobs:
2828
- 'lib/marin/**'
2929
- 'experiments/grug/**'
3030
- 'tests/**'
31+
# marin sits at the top of the dependency stack; run on any upstream layer change.
32+
- 'lib/haliax/**'
33+
- 'lib/iris/**'
34+
- 'lib/fray/**'
35+
- 'lib/zephyr/**'
36+
- 'lib/levanter/**'
3137
- 'uv.lock'
3238
- 'pyproject.toml'
3339
- '.github/workflows/marin-unit-tests.yaml'

.github/workflows/zephyr-unit-tests.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,9 @@ jobs:
2525
filters: |
2626
relevant:
2727
- 'lib/zephyr/**'
28-
# Iris is being actively developed, to avoid bugs sneaking into zephyr, we trigger zephyr tests on iris change
28+
# zephyr depends on iris and fray; run zephyr tests on any upstream change.
2929
- 'lib/iris/**'
30+
- 'lib/fray/**'
3031
- 'uv.lock'
3132
- '.github/workflows/zephyr-unit-tests.yaml'
3233

0 commit comments

Comments
 (0)