Audit & Verification
sate verify:tests
Static pre-debug gates over the test suite. 11 rules in 5 groups (PSR-4 Identity / Bootstrap Purity / Mock Discipline / Act Contract / Outcome Contract).
What it does
Parses every test method in the project (PHPUnit `testX`, Pest `test()/it()`, `/** @test */`, `#[Test]`) and enforces 11 deterministic rules without executing anything. Each violation cites the specific rule, evidence lines, and a remediation hint. Exits non-zero on any violation so CI can gate on it.
Who runs this
- →CI as a hard gate before tests even run
- →Developers fixing test hygiene before commit
- →Reviewers asking "are these real tests?"
How to invoke
node public/scripts/verifyTests.js --project-root /path/to/laravel-appFlags
--project-root <path>Required.
--no-manifestSkip the MANUAL stage allowlist requirement.
--report=debug --gate=<RULE>Print every violation for a specific rule (e.g. --gate=ACT_ONCE_RULE).
--counts-onlyOne-line summary for CI dashboards.
What it produces
- ·stderr — full per-test violation report (typically MB on large suites)
- ·exit 1 on any violation, 0 if clean
What it does NOT do
- ✖Does NOT execute tests — purely static
- ✖Does NOT fix violations automatically
- ✖Does NOT consider a single weak assertion enough to fail — only structural rules
Notes
On Maktabi (5,139 PHP files, 20,752 detectable test methods) this currently reports 53% of tests passing all gates.
Status
Engine tests
18
Status
Shipped
Category
Audit & Verification
Related pipelines
sate qualityPer-test quality scoring across 6 metrics: completeness, assertion strength, mutation resistance, structure, maintainability, reliability.
sate audit-allThe front door: runs every read-only pipeline against your project and writes both a developer report set and a non-technical owner summary.