Skip to content

Commit 750bece

Browse files
committed
feat(api-contract): enforce OpenAPI lint and client drift in CI
Extends contract enforcement beyond spec generation drift to include OpenAPI linting and frontend generated-client drift verification. Decision: keep policy checks in CI so contract integrity is enforced consistently across contributors and environments.
1 parent 25c531d commit 750bece

1 file changed

Lines changed: 11 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,17 @@ jobs:
5656
ruby-version-file: ".tool-versions"
5757
bundler-cache: true
5858

59+
- name: Setup Node.js for OpenAPI lint tooling
60+
uses: actions/setup-node@v4
61+
with:
62+
node-version-file: ".tool-versions"
63+
5964
- name: Verify generated OpenAPI is up to date
6065
run: bundle exec rake openapi:verify
6166

67+
- name: Lint OpenAPI contract
68+
run: make openapi-lint
69+
6270
frontend:
6371
runs-on: ubuntu-latest
6472
defaults:
@@ -77,6 +85,9 @@ jobs:
7785
- name: Install dependencies
7886
run: npm ci
7987

88+
- name: Verify generated OpenAPI client is up to date
89+
run: npm run openapi:verify
90+
8091
- name: Check formatting
8192
run: npm run format:check
8293

0 commit comments

Comments
 (0)