Ctrl K
ComunidadGuías…

phpstan.neon

Rama master · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
# S256-residual — the production corpus is src/ AND scripts/ at level 9, no baseline,
# empty excludePaths and empty ignoreErrors (S343 invariant, extended to scripts/).
# ⚠ CI runs `phpstan analyse` with NO path and NO --level: a CLI path overrides
# `paths:` entirely — the S128 trap recorded in phpstan-tests.neon's header. The
# scope (this file's paths list, the level, and the CI command) is asserted by
# tests/Unit/Support/StaticAnalysisScopeTest.php.
parameters:
    level: 9
    paths:
        - src
        - scripts
    excludePaths: []
    bootstrapFiles:
        - vendor/autoload.php
    # scripts/bench/coroutine_bench.php uses Swoole\Coroutine\WaitGroup behind an
    # extension_loaded('swoole') guard. CI's phpstan job installs no swoole and
    # WaitGroup is a USERLAND class swoole compiles into its binary, so bundled
    # phpstorm-stubs structurally cannot ship it — the same measured trap
    # phpstan-tests.neon documents (scanFiles introduces the symbol; stubFiles
    # does not). Single source of truth, drift-tested in-suite by
    # StaticAnalysisScopeTest::testTheWaitGroupDeclarationStillMatchesTheRealExtension.
    scanFiles:
        - phpstan-stubs/Swoole/Coroutine/WaitGroup.stub
    treatPhpDocTypesAsCertain: false
    ignoreErrors: []