From e5685126b8ec34b0906160aa3a373d23fbbd133e Mon Sep 17 00:00:00 2001 From: Jordi Enric <37541088+jordienr@users.noreply.github.com> Date: Wed, 23 Sep 2026 09:41:42 +0200 Subject: [PATCH] ci(api-types): require production verification FE-4455 (#50781) ## Problem API type changes still use the api-deploy-required label and an informational comment even though production verification has proven reliable enough to block merges. ## Fix Remove the obsolete API label path, scope the remaining labeler workflow to docs changes, and update the API-types guidance. Master branch protection now requires the app-bound verify-production-api-types check. ## How to test - Confirm the labeler workflow only runs for changes under apps/docs. - Confirm API type changes no longer receive the api-deploy-required label or comment. - Confirm master branch protection lists verify-production-api-types as a required GitHub Actions check. - Expected result: production API type verification blocks mismatched generated types while unrelated pull requests receive a successful skipped verification job. ## Summary by CodeRabbit * **Chores** * API type verification is now a required merge check; guidance to run it before review and treat failures as production drift remains. * Removed the API deployment label rule and the automated comment triggered when that label was applied. * The pull request labeling workflow now runs only for changes affecting the documentation app. --- .agents/skills/api-types/SKILL.md | 2 +- .github/labeler.yml | 5 ----- .github/workflows/label_prs.yml | 17 +++-------------- 3 files changed, 4 insertions(+), 20 deletions(-) diff --git a/.agents/skills/api-types/SKILL.md b/.agents/skills/api-types/SKILL.md index 3d206497a2c..f9aefbc9bb6 100644 --- a/.agents/skills/api-types/SKILL.md +++ b/.agents/skills/api-types/SKILL.md @@ -24,4 +24,4 @@ Complete the update only when `pnpm api:verify-types` passes after the productio ## Pull requests -The `Verify production API types` CI job runs when `packages/api-types/types/**` changes and performs the same production comparison. It is currently observational, not a required merge check. The `api-deploy-required` label is informational only. Still run the local verifier before requesting review and treat a failed CI verification as production drift that must be resolved. +The `Verify production API types` CI job runs when `packages/api-types/types/**` changes and performs the same production comparison. It is a required merge check. Run the local verifier before requesting review and treat a failed CI verification as production drift that must be resolved. diff --git a/.github/labeler.yml b/.github/labeler.yml index 24471e243d5..47e4683c5fe 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -8,8 +8,3 @@ documentation: self-hosted: - changed-files: - any-glob-to-any-file: 'apps/docs/content/guides/self-hosting/**/*' - -# Add 'api-deploy-required' to any change in packages/api-types/types -api-deploy-required: - - changed-files: - - any-glob-to-any-file: 'packages/api-types/types/**' diff --git a/.github/workflows/label_prs.yml b/.github/workflows/label_prs.yml index 50af84c9457..992577dca48 100644 --- a/.github/workflows/label_prs.yml +++ b/.github/workflows/label_prs.yml @@ -2,6 +2,8 @@ name: 'Pull Request Labeler' on: pull_request_target: + paths: + - 'apps/docs/**/*' jobs: labeler: @@ -10,17 +12,4 @@ jobs: pull-requests: write runs-on: ubuntu-latest steps: - - id: label - uses: actions/labeler@b8dd2d9be0f68b860e7dae5dae7d772984eacd6d # v6.2.0 - - - name: Comment when api-deploy-required is auto-applied - if: contains(steps.label.outputs.new-labels, 'api-deploy-required') - uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0 - with: - script: | - await github.rest.issues.createComment({ - owner: context.repo.owner, - repo: context.repo.repo, - issue_number: context.issue.number, - body: 'The `api-deploy-required` label was auto-applied to this PR because it updates the API types. The `Verify production API types` check reports whether the committed types match production; it is currently observational and does not block merging.', - }) + - uses: actions/labeler@b8dd2d9be0f68b860e7dae5dae7d772984eacd6d # v6.2.0