Skip to content

chore: adopt quality-zero-platform wrappers#19

Open
Prekzursil wants to merge 3 commits intomainfrom
feat/quality-zero-platform-rollout
Open

chore: adopt quality-zero-platform wrappers#19
Prekzursil wants to merge 3 commits intomainfrom
feat/quality-zero-platform-rollout

Conversation

@Prekzursil
Copy link
Copy Markdown
Owner

Summary

  • replace repo-local strict-zero quality workflows with quality-zero-platform wrapper workflows
  • remove queue-era intake and quality workflow files that are now owned by the control-plane repo
  • update AGENTS.md to point contributors at the canonical local verify command

Notes

  • public quality check names are preserved through the shared platform workflows
  • live ruleset changes are intentionally deferred until the new contexts are observed on a real PR

Co-authored-by: Codex <noreply@openai.com>
@devloai
Copy link
Copy Markdown

devloai bot commented Mar 10, 2026

Unable to trigger custom agent "Code Reviewer". You have run out of credits 😔
Please upgrade your plan or buy additional credits from the subscription page.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 10, 2026

Warning

Rate limit exceeded

@Prekzursil has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 11 minutes and 4 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 1d5a2bd7-585d-4d39-9b74-6e611bd07dd9

📥 Commits

Reviewing files that changed from the base of the PR and between 0b96e50 and cd56d94.

📒 Files selected for processing (25)
  • .github/workflows/agent-label-sync.yml
  • .github/workflows/agent-task-queue.yml
  • .github/workflows/applitools-visual.yml
  • .github/workflows/chromatic-playwright.yml
  • .github/workflows/codacy-zero.yml
  • .github/workflows/codecov-analytics.yml
  • .github/workflows/coverage-100.yml
  • .github/workflows/deepscan-zero.yml
  • .github/workflows/kpi-weekly-digest.yml
  • .github/workflows/quality-zero-backlog.yml
  • .github/workflows/quality-zero-gate.yml
  • .github/workflows/quality-zero-platform.yml
  • .github/workflows/quality-zero-remediation.yml
  • .github/workflows/semgrep-zero.yml
  • .github/workflows/sentry-zero.yml
  • .github/workflows/sonar-zero.yml
  • AGENTS.md
  • frontend/webcoder_ui/package.json
  • frontend/webcoder_ui/playwright.config.cjs
  • frontend/webcoder_ui/src/visual/publicVisualRoutes.test.ts
  • frontend/webcoder_ui/tests/visual/helpers.mjs
  • frontend/webcoder_ui/tests/visual/public-routes.applitools.spec.mjs
  • frontend/webcoder_ui/tests/visual/public-routes.chromatic.spec.mjs
  • frontend/webcoder_ui/tests/visual/public-routes.playwright.spec.mjs
  • frontend/webcoder_ui/visual/publicVisualRoutes.cjs
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/quality-zero-platform-rollout
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Comment on lines +15 to +19
uses: Prekzursil/quality-zero-platform/.github/workflows/reusable-backlog-sweep.yml@main
with:
repo_slug: ${{ github.repository }}
tool: ${{ inputs.tool || 'coverage' }}
secrets: inherit

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {}

Copilot Autofix

AI 18 days ago

  • In general, the fix is to explicitly set permissions for the workflow/job so that GITHUB_TOKEN has only the minimum scopes needed. Since this job primarily appears to orchestrate a reusable workflow and passes only inputs/secrets, a safe starting point is contents: read.
  • The best minimal-impact fix is to add a permissions block at the workflow (top) level so it applies to all jobs that don’t override it. Based on the snippet, there’s only one job, so this will cover it. Use permissions: contents: read as a conservative default; if the reusable workflow later needs additional permissions, they can be added explicitly there or here.
  • Concretely, in .github/workflows/quality-zero-backlog.yml, insert a permissions: section after the on: block (after line 12) and before jobs: (line 13). This keeps the YAML structure clear and standard.
  • No imports or external methods are needed; just the YAML permissions mapping added at the root level.
Suggested changeset 1
.github/workflows/quality-zero-backlog.yml

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/.github/workflows/quality-zero-backlog.yml b/.github/workflows/quality-zero-backlog.yml
--- a/.github/workflows/quality-zero-backlog.yml
+++ b/.github/workflows/quality-zero-backlog.yml
@@ -10,6 +10,9 @@
         required: true
         default: coverage
 
+permissions:
+  contents: read
+
 jobs:
   backlog-sweep:
     uses: Prekzursil/quality-zero-platform/.github/workflows/reusable-backlog-sweep.yml@main
EOF
@@ -10,6 +10,9 @@
required: true
default: coverage

permissions:
contents: read

jobs:
backlog-sweep:
uses: Prekzursil/quality-zero-platform/.github/workflows/reusable-backlog-sweep.yml@main
Copilot is powered by AI and may make mistakes. Always verify output.
Comment on lines +16 to +22
if: github.event_name == 'workflow_dispatch' || github.event.workflow_run.conclusion == 'failure'
uses: Prekzursil/quality-zero-platform/.github/workflows/reusable-remediation-loop.yml@main
with:
repo_slug: ${{ github.repository }}
failure_context: ${{ inputs.failure_context || 'Quality Zero Gate' }}
sha: ${{ github.event.workflow_run.head_sha || github.sha }}
secrets: inherit

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {}

Copilot Autofix

AI 18 days ago

To fix the problem, explicitly set permissions for the workflow so the GITHUB_TOKEN is limited to the minimal scope needed. Since this workflow only orchestrates a reusable workflow and doesn’t perform any writes itself, we can safely default to read-only repository access (contents: read) at the workflow root, which applies to all jobs that don’t override it.

The best fix without changing existing functionality is to add a permissions block at the top level of .github/workflows/quality-zero-remediation.yml, alongside name and on. This will ensure that the remediate job, and any other jobs added later (unless they override permissions), will use a read-only token by default. Concretely, insert:

permissions:
  contents: read

between the name: and on: keys. No additional imports, methods, or other definitions are needed; this is purely a YAML configuration change within the shown file.

Suggested changeset 1
.github/workflows/quality-zero-remediation.yml

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/.github/workflows/quality-zero-remediation.yml b/.github/workflows/quality-zero-remediation.yml
--- a/.github/workflows/quality-zero-remediation.yml
+++ b/.github/workflows/quality-zero-remediation.yml
@@ -1,5 +1,8 @@
 name: Quality Zero Remediation
 
+permissions:
+  contents: read
+
 on:
   workflow_run:
     workflows: ["Quality Zero Gate"]
EOF
@@ -1,5 +1,8 @@
name: Quality Zero Remediation

permissions:
contents: read

on:
workflow_run:
workflows: ["Quality Zero Gate"]
Copilot is powered by AI and may make mistakes. Always verify output.
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: fe8a39e195

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

name: quality-zero-gate
path: quality-zero-gate
aggregate-gate:
uses: Prekzursil/quality-zero-platform/.github/workflows/reusable-quality-zero-gate.yml@main
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Pin reusable workflow refs to immutable commits

Using @main for an external reusable workflow makes the quality gate non-deterministic, because upstream branch updates can change or break this repository’s CI behavior without any local code change; it also increases supply-chain risk since this job inherits secrets. The same mutable-ref pattern is used across the new wrapper workflows, so each uses: should be pinned to a commit SHA and only bumped intentionally.

Useful? React with 👍 / 👎.

Co-authored-by: Codex <noreply@openai.com>
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 5716427ccf

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

- run: npm run visual:chromatic:archive
- run: npx --yes chromatic --playwright --project-token=${{ secrets.CHROMATIC_PROJECT_TOKEN }}
env:
CHROMATIC_ARCHIVE_LOCATION: frontend/webcoder_ui/test-results
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Use archive path relative to the configured working directory

This job sets defaults.run.working-directory to frontend/webcoder_ui (line 19), but then passes CHROMATIC_ARCHIVE_LOCATION: frontend/webcoder_ui/test-results to the Chromatic CLI. Because the final run step also executes from frontend/webcoder_ui, that env var points to a nested path (frontend/webcoder_ui/frontend/webcoder_ui/test-results) instead of the archive generated by npm run visual:chromatic:archive, so the upload step can fail even when Playwright archiving succeeded.

Useful? React with 👍 / 👎.

Point the quality-zero platform, gate, and Codecov analytics workflows at the controller-managed parity baseline so protected-branch pushes evaluate the same scanner stack as pull requests.

Co-authored-by: Codex <noreply@openai.com>
@sonarqubecloud
Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
1 New issue
5 Security Hotspots

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: cd56d949f9

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".


jobs:
backlog-sweep:
uses: Prekzursil/quality-zero-platform/.github/workflows/reusable-backlog-sweep.yml@main
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Pin backlog reusable workflow ref to an immutable SHA

Using reusable-backlog-sweep.yml@main makes the scheduled backlog run non-deterministic: upstream changes on main can alter or break this repository’s behavior without any local commit, and this job currently inherits secrets. Pinning this uses: reference to a commit SHA (as already done in other wrapper workflows in this commit) keeps executions reproducible and reduces supply-chain risk.

Useful? React with 👍 / 👎.

jobs:
remediate:
if: github.event_name == 'workflow_dispatch' || github.event.workflow_run.conclusion == 'failure'
uses: Prekzursil/quality-zero-platform/.github/workflows/reusable-remediation-loop.yml@main
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Pin remediation reusable workflow ref to an immutable SHA

The remediation job calls reusable-remediation-loop.yml@main, so behavior can change whenever the upstream branch moves, even if this repository is unchanged; because the job also uses secrets: inherit, this is a risky mutable dependency for an automated failure-handling path. Pinning to a specific commit SHA avoids unexpected drift and aligns with the pinned wrapper usage elsewhere.

Useful? React with 👍 / 👎.

Comment on lines +5 to +6
pull_request:
branches: [main, master]
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Guard secret-backed visual jobs on pull_request events

This workflow runs on pull_request but depends on APPLITOOLS_API_KEY; for forked PRs GitHub does not provide repository secrets, so the visual step fails regardless of code correctness. The same pattern exists in the Chromatic workflow with CHROMATIC_PROJECT_TOKEN, which can block external contributions if these checks are required. Add an if guard for secret availability or restrict secret-backed runs to trusted events.

Useful? React with 👍 / 👎.

@sentry
Copy link
Copy Markdown

sentry bot commented Mar 16, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

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.

1 participant