mirror of
https://github.com/comfyanonymous/ComfyUI.git
synced 2026-05-07 07:42:32 +08:00
* Add Spectral lint CI gate for openapi.yaml Adds a blocking Spectral lint check that runs on PRs touching openapi.yaml or the ruleset itself. The ruleset mirrors the one used for other Comfy-Org service specs: spectral:oas plus conventions for snake_case properties, camelCase operationIds, and response/schema shape. Gate runs at --fail-severity=error, which the spec currently passes with zero errors (a small number of non-blocking warnings/hints remain for WebSocket 101 responses, the existing loose error schema, and two snake_case wire fields). * ci: set least-privilege contents:read permissions on openapi-lint workflow Per CodeRabbit review on #13410. The job only checks out the repo and runs Spectral, so contents:read is sufficient and avoids inheriting any permissive repo/org default token scope. --------- Co-authored-by: guill <jacob.e.segal@gmail.com>
32 lines
639 B
YAML
32 lines
639 B
YAML
name: OpenAPI Lint
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- 'openapi.yaml'
|
|
- '.spectral.yaml'
|
|
- '.github/workflows/openapi-lint.yml'
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
spectral:
|
|
name: Run Spectral
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up Node.js
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: '20'
|
|
|
|
- name: Install Spectral
|
|
run: npm install -g @stoplight/spectral-cli@6
|
|
|
|
- name: Lint openapi.yaml
|
|
run: spectral lint openapi.yaml --ruleset .spectral.yaml --fail-severity=error
|