Skip to content

Parity Specifications ​

Parity uses spec IDs to keep implementation, tests, documentation, and release gates aligned. This directory is the canonical public specification set for the CLI repository.

Active Specs ​

SpecAreaPrimary CodePrimary TestsPublic Docs
S001CLI commands and interfaceapp/Commands/CheckCommand.php, app/Commands/InitCommand.phptests/Feature/README.md, docs/CLI.md
S002Rules systemapp/Rules/tests/Unit/Rules/docs/RULES.md
S003Coverage readersapp/Services/CoverageReader.php, app/Services/PhpUnitXmlCoverageReader.phptests/Unit/Services/docs/COVERAGE-FORMATS.md
S004Coverage linkersapp/Services/CoverageLinkers/tests/Unit/Services/CoverageLinkers/docs/COVERAGE-FORMATS.md
S005Plugin systemapp/Services/PluginLoader.phptests/Unit/Services/PluginLoaderTest.phpdocs/PLUGINS.md
S006Configurationapp/Settings/Settings.phptests/Unit/Settings/docs/CONFIGURATION.md
S007Path and namespace mappingapp/Services/NamespaceHelper.phptests/Unit/Services/NamespaceHelperTest.phpdocs/CONFIGURATION.md
S008Output formatsapp/Commands/CheckCommand.php, rule formatter methodstests/Feature/CheckCommandConfigTest.php, sample JSON runsdocs/CLI.md
S009Documentation systemREADME.md, docs/, ../parity-website/Website build and visual checksdocs/
S010Testing, CI, and binary distribution.github/workflows/ci.yml, box.json, dev/Full test suite, Pint, PHAR smoke testsdocs/RELEASE.md
S011Parity test execution and per-test reportsapp/Commands/TestCommand.php, app/Services/ParityPerTestCoverageReader.php, app/Services/ParityTestArtifactNormalizer.phptests/Feature/TestCommandTest.php, tests/Unit/Services/ParityPerTestCoverageReaderTest.phpdocs/CONFIGURATION.md, docs/COVERAGE-FORMATS.md

See TRACEABILITY.md for the release-readiness matrix that maps specs to current implementation, tests, docs, and verification gates.

Traceability Rule ​

Every new production behavior must reference at least one spec ID in one of these places:

  • A test file comment near the covered behavior, for example // Specs: S001-FR-006, S010-FR-005.
  • A public documentation page that names the spec-backed feature.
  • A changelog entry when the behavior changes an existing public contract.

Tests are the preferred traceability location because they prove the spec contract is executable.