Skip to content

Develop#7

Merged
walmir-silva merged 3 commits into
mainfrom
develop
Mar 2, 2026
Merged

Develop#7
walmir-silva merged 3 commits into
mainfrom
develop

Conversation

@walmir-silva
Copy link
Copy Markdown
Contributor

No description provided.

Removed:
  kariri-ci-cd.yml — outdated (PHP 8.3, security-checker deprecated,
                     no Psalm, no kcode integration)

Added:
  ci.yml            — unified fast-feedback pipeline using kcode quality
                      (PHP 8.4, pcov, actions@v4, openssl ext)

  code-quality.yml  — 6 parallel jobs with quality-summary gate:
                       • Dependency Validation (composer validate + check-platform-reqs)
                       • Security Audit (composer audit)
                       • PHPStan via kcode analyse --tool=phpstan
                       • Psalm via kcode analyse --tool=psalm
                       • CS Fixer via kcode cs:fix --check
                       • PHPUnit via kcode test --coverage (pcov)
                      Triggers: main, develop, feature/**, PRs, manual dispatch

  release.yml       — runs full kcode quality pipeline before creating
                      GitHub Release on tag push (v*); includes dotenv
                      quick-start usage in release notes

All workflows:
  - PHP 8.4 (was 8.3)
  - actions/checkout@v4 + shivammathur/setup-php@v2 (was @V3)
  - openssl extension (required for AES-256-GCM encryption tests)
  - kcode via vendor/bin/kcode (kariricode-devkit)
All 3 workflows now download kcode via:
  wget -q https://github.com/KaririCode-Framework/kariricode-devkit/releases/latest/download/kcode.phar
  chmod +x kcode.phar && sudo mv kcode.phar /usr/local/bin/kcode

Changes:
  ci.yml            — kcode init + kcode quality (validated locally: 4/4 passed)
  code-quality.yml  — kcode analyse (phpstan + psalm in sequence, no --tool flag)
  release.yml       — kcode quality gate before GitHub Release creation

Tested locally:
  ✓ cs-fixer passed (0.26s)
  ✓ phpstan  passed (3.10s)
  ✓ psalm    passed (4.61s)
  ✓ phpunit  passed (1.30s)
Audit against ARFA 1.3 (7 pillars) and KaririCode Spec V4.0:

ci.yml:
  + workflow_dispatch trigger (manual execution required by ARFA)
  + coverage: pcov (mandatory driver per ARFA 1.3 §Testing)
  + composer install --no-scripts (prevents environment pollution)
  + kcode quality (cs-fixer → phpstan L9 → psalm → phpunit)
  + Inline comments citing specific Spec V4.0 requirements

code-quality.yml:
  + All composer installs use --no-scripts (environment isolation)
  + analyse job: PHPStan Level 9 + Psalm — name updated for clarity
  + tests job: pcov coverage driver explicitly documented
  + Test baseline cited (205 tests / 396 assertions)
  + quality-summary: ARFA 1.3 compliance language in step summary
  + Inline comments per-job citing conformance standards

release.yml:
  + --no-scripts on install (prevents pollution during release)
  + pcov in release job (full kcode quality run including coverage)
  + Quality metrics table in release notes (205/396/L9/100%/0 deps)
  + ARFA 1.3 compliance badge in release body

All 3 workflows validated locally:
  kcode quality → cs-fixer ✓ phpstan ✓ psalm ✓ phpunit ✓ (exit 0)
@walmir-silva walmir-silva merged commit 13d784c into main Mar 2, 2026
13 checks passed
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