Skip to content

Specification Traceability Matrix

This matrix records the current public-release evidence for each active spec. A spec is considered release-ready only when it has implementation coverage, executable tests, public documentation where user-facing, and a verification gate.

SpecImplementationExecutable EvidencePublic DocumentationCurrent Status
S001 CLI commandsapp/Commands/CheckCommand.php, app/Commands/InitCommand.php, app/Commands/TestCommand.phpcommand feature tests, sample check runs, packaged command smoke testsREADME.md, docs/CLI.md, website guideImplemented and verified in the local PHAR
S002 Rules systemapp/Rules/, app/Rules/RuleRegistry.phptests/Unit/Rules/docs/RULES.md, website rules guideImplemented
S003 Coverage readersapp/Services/CoverageReader.php, app/Services/PhpUnitXmlCoverageReader.php, app/Services/ParityJsonCoverageReader.php, app/Services/ParityPerTestCoverageReader.phpreader unit tests and sample report runsdocs/COVERAGE-FORMATS.md, website coverage guideImplemented for Clover XML, Cobertura XML, PHPUnit XML, Parity JSON, and per-test report directories
S004 Coverage linkersapp/Services/CoverageLinkers/tests/Unit/Services/CoverageLinkers/docs/COVERAGE-FORMATS.md, website Pest/PHPUnit guidesImplemented for Pest covers and PHPUnit attributes
S005 Plugin systemapp/Services/PluginLoader.phptests/Unit/Services/PluginLoaderTest.phpdocs/PLUGINS.md, website plugins guideImplemented with explicit executable-code trust warning
S006 Configurationapp/Settings/Settings.php, config loading in CheckCommandtests/Unit/Settings/SettingsTest.php, tests/Feature/CheckCommandConfigTest.phpdocs/CONFIGURATION.md, website configuration guideImplemented
S007 Path and namespace mappingapp/Services/NamespaceHelper.phptests/Unit/Services/NamespaceHelperTest.php, sample matrixdocs/CONFIGURATION.md, website configuration guideImplemented for configurable extensions, suffixes, separators, and roots
S008 Output formatsapp/Commands/CheckCommand.php, app/Rules/*Rule.php formatting methodstests/Feature/CheckCommandConfigTest.php, sample JSON runs, rule output testsdocs/CLI.md, website CI/CLI guideImplemented for table and JSON; broader JSON schema assertions still desirable
S009 Documentation systemdocs/, README.md, ../parity-website/guide/, ../parity-website/.vitepress/config.tsnpm run build in parity-website; prior desktop/mobile browser verificationWebsite guide pages and specs pageImplemented for current guide set
S010 Testing, CI, binary, samples.github/workflows/ci.yml, .github/workflows/release.yml, .github/workflows/release-smoke.yml, box.json, dev/, samples/, parity.yamlstrict Composer validation, dependency audit, Pint, covered Pest suite, self-check artifact, metadata-mismatch tests, atomic remote-push test, public-consumer check + test smoke, sample checks, website build, PHAR version/check/checksum verificationdocs/RELEASE.md, CHANGELOG.md, SECURITY.md, samples/README.mdImplemented and locally verified; exact-tag Packagist and GitHub Release publication remain intentionally gated by the tagged workflow
S011 Parity test and per-test reportsapp/Commands/TestCommand.php, app/Services/ParityPerTestCoverageReader.php, app/Services/ParityTestArtifactNormalizer.php, app/Services/ParityTestWorkspace.phptests/Feature/TestCommandTest.php and focused reader, normalizer, and workspace unit testsdocs/CONFIGURATION.md, docs/COVERAGE-FORMATS.md, website coverage/configuration guidesImplemented with isolated execution, timeouts, staged publication, path containment, strict report validation, and delegated check flow

Verification Gates

  • composer validate --strict
  • ./vendor/bin/pint --test
  • XDEBUG_MODE=coverage ./vendor/bin/pest --coverage-xml=coverage-xml --coverage-clover=clover.xml --colors=never
  • php parity check --format=json
  • composer audit --locked
  • npm run build from parity-website/
  • npm audit --audit-level=high from parity-website/
  • Manual visual check of the VitePress site on desktop and mobile after website changes
  • ./vendor/bin/box compile --no-interaction
  • php parity.phar --version, php parity.phar check --format=json, and checksum verification