Files
ServerKit/.github/workflows/extensions-ci.yml
T
Juan DenisandClaude Opus 5 44f5a32867 ci: stop validating the same commit twice
These five workflows triggered on both `push: [dev, main]` and
`pull_request: [dev, main]`, so one change was validated up to three times: on
the dev push, again on the dev->main PR, and a third time on the post-merge
push to main.

Narrow them to `push: [dev]` + `pull_request: [main]`:

- `pull_request: [dev]` was dead config. Every PR this repo has had targets
  main (checked back through #77, dependabot's included), so it never produced
  a run.
- `push: [main]` was redundant for release-smoke: release.yml's build-release
  job runs that same scripts/build-release.sh for real, on the same commit,
  moments later.

Also drops test-system-utils' `unit-tests` job. It ran
`pytest tests/test_utils_system.py` (44 tests) that Backend CI's bare `pytest`
already collects — there is no pytest.ini, addopts or collect_ignore narrowing
collection. The distro matrix and the raw-subprocess audit stay; those are the
parts Backend CI genuinely cannot do.

Coverage of main is unchanged: a pull_request run tests the merge result, and
release.yml still gates itself on the full backend suite.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-06 01:17:20 -04:00

37 lines
1.2 KiB
YAML

name: Extensions CI
# Guards the builtin-extension platform. The pre-bundled plugin frontends under
# frontend/src/plugins/<slug>/ are build artifacts of builtin-extensions/<slug>/
# frontend/ (decision D5 in docs/plans/12_EXTENSIONS_PLATFORM_PLAN.md). They used
# to be hand-duplicated and silently drifted; this job fails the build if the
# artifact no longer matches its source, so the two can never diverge unnoticed.
on:
push:
branches: [dev]
paths:
- 'builtin-extensions/**'
- 'frontend/src/plugins/**'
- 'scripts/sync-builtin-frontends.mjs'
- '.github/workflows/extensions-ci.yml'
pull_request:
branches: [main]
paths:
- 'builtin-extensions/**'
- 'frontend/src/plugins/**'
- 'scripts/sync-builtin-frontends.mjs'
- '.github/workflows/extensions-ci.yml'
workflow_call:
jobs:
builtin-frontend-drift:
name: builtin frontend drift check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '22'
- name: Check builtin-extension frontends are in sync
run: node scripts/sync-builtin-frontends.mjs --check