mirror of
https://github.com/andrewyng/openworker.git
synced 2026-09-01 15:36:08 +00:00
The GUI README tells contributors to run `npx tsc --noEmit` and `npm run build` starts with `tsc`, but CI never runs either — a type error ships green today and only surfaces when someone next builds a bundle locally. Add the check as one step inside the existing gui-unit job so it reuses that job's npm ci and costs no extra runner. Verified locally: `npx tsc --noEmit` exits 0 on current main, and the vitest suite (82 tests) still passes. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
60 lines
1.6 KiB
YAML
60 lines
1.6 KiB
YAML
# App CI — the coworker Python suite, the GUI unit tests, and the hermetic
|
|
# Playwright e2e suite (mocked /v1 + WS; no model or network needed).
|
|
|
|
name: CI
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
pytest:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.12"
|
|
- name: Install
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
pip install -e ".[messaging,dev,bedrock]"
|
|
- name: Test
|
|
run: pytest tests -q
|
|
|
|
gui-unit:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 20
|
|
cache: npm
|
|
cache-dependency-path: surfaces/gui/package-lock.json
|
|
- name: npm ci
|
|
working-directory: surfaces/gui
|
|
run: npm ci
|
|
- name: Typecheck
|
|
working-directory: surfaces/gui
|
|
run: npx tsc --noEmit
|
|
- name: Unit tests
|
|
working-directory: surfaces/gui
|
|
run: npm test
|
|
|
|
gui-e2e:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 20
|
|
cache: npm
|
|
cache-dependency-path: surfaces/gui/package-lock.json
|
|
- name: npm ci
|
|
working-directory: surfaces/gui
|
|
run: npm ci
|
|
- name: Install Playwright browsers
|
|
working-directory: surfaces/gui
|
|
run: npx playwright install --with-deps chromium
|
|
- name: e2e
|
|
working-directory: surfaces/gui
|
|
run: npm run e2e
|