Commit 4c01c83
chore(phpstan): restore real level 8 by replacing blanket ignores with a baseline
phpstan.neon globally ignored ~26 bug-catching identifiers (argument.type,
return.type, variable.undefined, dead-code, always-true/false,
foreach.nonIterable, offset/env/unused, etc.), so those classes of bug were
never caught anywhere — hollowing out the declared level 8.
Removes those blanket ignores and freezes the 840 existing violations
file-by-file in phpstan-baseline.neon. Any NEW occurrence now fails CI; the
baseline is a shrink-list. Kept globally ignored only the genuine analyzer
noise: missingType generics (style), larastan generic/template resolution
limits, and the Eloquent dynamic-attribute/cast family
(property.notFound/nonObject, method.nonObject — ~960 false positives that need
per-model @Property annotations to resolve).
Verified: phpstan analyse passes clean against the baseline, and a probe file
with a fresh variable.undefined error is correctly rejected.
Co-Authored-By: claude-flow <ruv@ruv.net>1 parent 2e012b2 commit 4c01c83
2 files changed
Lines changed: 3895 additions & 87 deletions
0 commit comments