Skip to content

ci: add OpenAPI drift-gate workflow (follow-up to #1342) - #1429

Merged
jotka merged 1 commit into
Finsys:mainfrom
strausmann:ci/openapi-drift-gate
Aug 19, 2026
Merged

jotka merged 1 commit into
Finsys:mainfrom
strausmann:ci/openapi-drift-gate

Conversation

@strausmann

Copy link
Copy Markdown
Contributor

Proposed change

Adds .github/workflows/openapi.yml — the OpenAPI drift gate that #1341/#1342 introduced alongside the generator. The cherry-pick pulled in scripts/generate-openapi.ts and the generate:openapi:check script, but not this workflow, so nothing currently enforces the check in CI. At runtime it's harmless (the prebuild hook regenerates the spec on every build), but a stale committed src/lib/openapi.generated.json / static/openapi.json would not be caught.

The job runs npm run generate:openapi:check on pushes to main and on PRs that touch the route code, hooks, or the generator, and fails if the committed spec drifts from the route code. It also uploads the generated static/openapi.json as a debug artifact.

Two small cleanups vs. the copy in #1341/#1342:

  • Dropped a stale code comment that pointed to a research doc living in an external repo (not present here).
  • Added permissions: contents: read (least privilege — the job only checks out and runs the generator), matching the explicit-permissions style already used in release.yml.

CI only — no runtime or app-code changes.

Follow-up to #1342 (no separate issue).

Type of change

Copilot AI lite review requested due to automatic review settings August 19, 2026 08:31

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@jotka
jotka merged commit 64aeee6 into Finsys:main Aug 19, 2026
1 check passed
@strausmann
strausmann deleted the ci/openapi-drift-gate branch August 19, 2026 09:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants