ci-compatibility-audit

Audits pull request changes for compatibility with GitHub Actions CI workflows and lockfiles.

Updated Mar 30, 2026
One-click install
npx skills add https://github.com/ZaxbyHub/ragappv3 --skill ci-compatibility-audit-zaxbyhub
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: ci-compatibility-audit
Source: https://github.com/ZaxbyHub/ragappv3/tree/main/.opencode/skills/ci-compatibility-audit
Command: npx skills add https://github.com/ZaxbyHub/ragappv3 --skill ci-compatibility-audit-zaxbyhub

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Pushing workflow, dependency, test, or build changes without validating them against the actual CI configuration causes push-fail-fixup cycles that waste review time. This Skill audits changes before pushing so CI-only failures are caught locally. ## Core Features & Use Cases - CI Map Awareness: Encodes the exact frontend (npm ci, typecheck, lint, vitest, build) and backend (ruff, pytest with timeout, coverage) job steps from the repository's GitHub Actions workflow. - Local Mirror Commands: Provides copy-paste commands that replicate CI steps locally, including subpath builds and contract-check scripts like check_sast_baseline.py and check_skill_sync.py. - Environment Caveat Detection: Documents reduced CI dependency sets, Python 3.11 pinning, conftest fixtures, and jsdom testing gotchas so local results are not misread. - Risk Classification: Classifies each finding as BLOCKER, RISK, or NOTE with the exact workflow step or command referenced. - Use Case: Before pushing a PR that adds a new pytest file and modifies the frontend build, run the audit to confirm the test collects under the reduced CI venv and the build passes with the subpath basename. ## Quick Start Audit my current branch changes for compatibility with the CI workflow before I push.

Frequently Asked Questions about ci-compatibility-audit

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I validate changes against GitHub Actions CI before pushing?▼

Run the local mirror commands that replicate each CI job: npm ci, typecheck, lint, and vitest for the frontend, plus ruff check and pytest with a 300-second timeout for the backend. Then run the repository contract scripts such as check_config_contract.py and check_sast_baseline.py.

Why do backend tests pass locally but fail in CI?▼

CI installs only requirements-ci.txt and requirements-dev.txt, which omit lancedb, pyarrow, unstructured, and sentence-transformers. A local environment with the full requirements can hide ModuleNotFoundError failures, so reproduce the CI venv to validate test-scope changes.

Why do Python tests fail with no current event loop on newer interpreters?▼

CI pins Python 3.11, and the test harness uses the implicit event loop pattern removed in newer versions like 3.14. These failures are false signals from the local interpreter, so use a Python 3.11 virtual environment for validation.

How do I test Radix Select components in jsdom with Vitest?▼

Radix Select cannot be opened in jsdom because it relies on pointer-capture APIs. Mock the ui/select module with a React context that exposes onValueChange, then fire click events on the mocked SelectItem buttons to exercise the real selection path.

What happens when the SAST baseline check fails on a pull request?▼

The check_sast_baseline.py script fails if new bandit findings appear without SAST_ALLOW_BASELINE_EXPANSION=1. Either fix the new findings or regenerate the baseline with run_bandit.py --update-baseline and justify the newly suppressed finding IDs in the PR.