feat(claude-block): full unfiltered bin/qa is the proof - single step… #120
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [php8.4] | |
| pull_request: | |
| branches: [php8.4] | |
| jobs: | |
| shellcheck: | |
| name: ShellCheck (severity=warning) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Run ShellCheck at warning severity | |
| # Fail the build on any warning-or-above finding in the pipeline's own | |
| # Bash sources. Covers the entry point, CI wrapper, tool fragments under | |
| # includes/, and the install/support scripts. The repo was swept clean | |
| # at -S warning (2026-07-15) — every SC2154/SC2034/SC1090 false positive | |
| # from the sourced-fragment architecture carries a targeted | |
| # `# shellcheck disable=SCxxxx` directive with justification, and every | |
| # genuine defect (SC2155 masked exit codes, SC2145 mixed array/string, | |
| # SC2206/SC2207/SC2010 unsafe splitting, SC2318 stale local) was fixed. | |
| # Raised from -S error now that the bar is met — do not lower this back | |
| # to -S error without re-auditing. | |
| run: | | |
| shellcheck --version | |
| mapfile -t shellFiles < <(find includes scripts qaConfig -type f \( -name '*.bash' -o -name '*.sh' \) | sort) | |
| shellcheck -S warning \ | |
| bin/qa \ | |
| bin/composer-require-checker bin/infection bin/php-cs-fixer bin/phpstan \ | |
| bin/lib-redirect-stub.inc.bash \ | |
| ci.bash \ | |
| git-hooks/pre-commit-check-vendor-uncommitted \ | |
| "${shellFiles[@]}" | |
| qa: | |
| name: QA Pipeline | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup PHP | |
| uses: shivammathur/setup-php@v2 | |
| with: | |
| php-version: '8.4' | |
| tools: composer:v2 | |
| coverage: xdebug | |
| extensions: json, tokenizer, mbstring | |
| - name: Install dependencies | |
| run: composer install --no-interaction --prefer-dist | |
| - name: Run QA Pipeline | |
| run: bash ci.bash |