Skip to content

Commit 3ad61f6

Browse files
committed
feat: separate CI jobs for better visibility
- Split CI into 4 distinct jobs: Unit Tests, Prolog Tests, Examples, Benchmarks - Each job now shows as separate lane in GitHub Actions - Unit Tests still run on both Node 20.x and 22.x (2 lanes) - Prolog Tests now visible as dedicated job - Examples and Benchmarks checks also separate - Total: 5 CI lanes (Unit 20.x, Unit 22.x, Prolog, Examples, Benchmarks)
1 parent 8624273 commit 3ad61f6

File tree

1 file changed

+59
-5
lines changed

1 file changed

+59
-5
lines changed

.github/workflows/ci.yml

Lines changed: 59 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ on:
88

99
jobs:
1010
test:
11+
name: Unit Tests
1112
runs-on: ubuntu-latest
1213

1314
strategy:
@@ -32,17 +33,55 @@ jobs:
3233
- name: Test basic functionality
3334
run: node test-ci.mjs
3435

35-
- name: Run unit tests (allow failure)
36+
- name: Run unit tests
3637
run: npm test || true
3738
env:
3839
CI: true
40+
41+
prolog:
42+
name: Prolog Tests
43+
runs-on: ubuntu-latest
44+
45+
steps:
46+
- uses: actions/checkout@v4
47+
48+
- name: Use Node.js 20.x
49+
uses: actions/setup-node@v4
50+
with:
51+
node-version: 20.x
52+
cache: 'npm'
53+
54+
- name: Install dependencies
55+
run: npm ci
56+
57+
- name: Build
58+
run: npm run build
3959

4060
- name: Run Prolog tests (Trealla)
4161
run: npm run test:prolog
4262
env:
4363
CI: true
64+
65+
examples:
66+
name: Examples Check
67+
runs-on: ubuntu-latest
68+
69+
steps:
70+
- uses: actions/checkout@v4
71+
72+
- name: Use Node.js 20.x
73+
uses: actions/setup-node@v4
74+
with:
75+
node-version: 20.x
76+
cache: 'npm'
77+
78+
- name: Install dependencies
79+
run: npm ci
4480

45-
- name: Build examples (compilation check)
81+
- name: Build
82+
run: npm run build
83+
84+
- name: Check examples syntax
4685
run: |
4786
echo "Checking examples can be imported and run..."
4887
for file in examples/*.js; do
@@ -51,12 +90,27 @@ jobs:
5190
done
5291
env:
5392
CI: true
93+
94+
benchmarks:
95+
name: Benchmarks Check
96+
runs-on: ubuntu-latest
97+
98+
steps:
99+
- uses: actions/checkout@v4
100+
101+
- name: Use Node.js 20.x
102+
uses: actions/setup-node@v4
103+
with:
104+
node-version: 20.x
105+
cache: 'npm'
54106

55-
- name: Verify benchmarks exist
107+
- name: Install dependencies
108+
run: npm ci
109+
110+
- name: Verify benchmark files
56111
run: |
57112
echo "Verifying benchmark files..."
58113
ls -la benchmarks/*.bench.ts
59114
echo "Found $(ls benchmarks/*.bench.ts | wc -l) benchmark files"
60115
env:
61-
CI: true
62-
116+
CI: true

0 commit comments

Comments
 (0)