From e476523082a6fff3a0c3048077d2f0e52413fbf2 Mon Sep 17 00:00:00 2001 From: Vincent Koc Date: Tue, 28 Apr 2026 11:16:48 -0700 Subject: [PATCH] ci: shard gateway codeql quality Add a narrow gateway/runtime CodeQL critical-quality shard and document it. --- ...eway-runtime-boundary-critical-quality.yml | 34 +++++++++++++++++++ .github/workflows/codeql-critical-quality.yml | 21 ++++++++++++ docs/ci.md | 3 ++ 3 files changed, 58 insertions(+) create mode 100644 .github/codeql/codeql-gateway-runtime-boundary-critical-quality.yml diff --git a/.github/codeql/codeql-gateway-runtime-boundary-critical-quality.yml b/.github/codeql/codeql-gateway-runtime-boundary-critical-quality.yml new file mode 100644 index 00000000000..8ccd5f1e8d3 --- /dev/null +++ b/.github/codeql/codeql-gateway-runtime-boundary-critical-quality.yml @@ -0,0 +1,34 @@ +name: openclaw-codeql-gateway-runtime-boundary-critical-quality + +disable-default-queries: true + +queries: + - uses: security-and-quality + +query-filters: + - include: + problem.severity: + - error + - exclude: + tags: + - security + +paths: + - src/gateway/protocol + - src/gateway/server-methods + +paths-ignore: + - "**/node_modules" + - "**/coverage" + - "**/*.generated.ts" + - "**/*.bundle.js" + - "**/*-runtime.js" + - "**/*.test.ts" + - "**/*.test.tsx" + - "**/*.e2e.test.ts" + - "**/*.e2e.test.tsx" + - "**/*test-support*" + - "**/*test-helper*" + - "**/*mock*" + - "**/*fixture*" + - "**/*bench*" diff --git a/.github/workflows/codeql-critical-quality.yml b/.github/workflows/codeql-critical-quality.yml index 32514cbc180..84efb477ad0 100644 --- a/.github/workflows/codeql-critical-quality.yml +++ b/.github/workflows/codeql-critical-quality.yml @@ -60,6 +60,27 @@ jobs: with: category: "/codeql-critical-quality/config-boundary" + gateway-runtime-boundary: + name: Critical Quality (gateway-runtime-boundary) + runs-on: blacksmith-8vcpu-ubuntu-2404 + timeout-minutes: 25 + steps: + - name: Checkout + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + with: + submodules: false + + - name: Initialize CodeQL + uses: github/codeql-action/init@95e58e9a2cdfd71adc6e0353d5c52f41a045d225 # v4 + with: + languages: javascript-typescript + config-file: ./.github/codeql/codeql-gateway-runtime-boundary-critical-quality.yml + + - name: Analyze + uses: github/codeql-action/analyze@95e58e9a2cdfd71adc6e0353d5c52f41a045d225 # v4 + with: + category: "/codeql-critical-quality/gateway-runtime-boundary" + plugin-boundary: name: Critical Quality (plugin-boundary) runs-on: blacksmith-8vcpu-ubuntu-2404 diff --git a/docs/ci.md b/docs/ci.md index d0c05afaa6e..8c4488dbd0d 100644 --- a/docs/ci.md +++ b/docs/ci.md @@ -249,6 +249,9 @@ over narrow high-value surfaces. Its baseline job scans the same auth, secrets, sandbox, cron, and gateway surface as the security workflow. The config-boundary job scans config schema, migration, normalization, and IO contracts under the separate `/codeql-critical-quality/config-boundary` category. The +gateway-runtime-boundary job scans gateway protocol schemas and server method +contracts under the separate +`/codeql-critical-quality/gateway-runtime-boundary` category. The plugin-boundary job scans loader, registry, public-surface, and Plugin SDK entrypoint contracts under a separate `/codeql-critical-quality/plugin-boundary` category. Keep the workflow separate from security so quality findings can be