PHP Analyzer Owner Manifest
Decision ID: OWNER-SCANNER-PHP-001 Status: ASSIGNED Effective Date: 2025-12-06
Assignment
The PHP Language Analyzer component is owned by the Scanner Guild for implementation purposes.
Rationale
- PHP analyzer follows the same patterns as existing language analyzers (Bun, Node, Python)
- Scanner Guild owns all language analyzers under
src/Scanner/__Libraries/StellaOps.Scanner.Analyzers.Lang.* - PHP ecosystem knowledge exists within the Scanner Guild
- Composer lockfile parsing is well-documented with existing test fixtures
Scope
The Scanner Guild is responsible for:
StellaOps.Scanner.Analyzers.Lang.Phplibrary implementation- Composer lockfile (
composer.lock) parsing - PHP package version resolution
- Integration with Scanner engine via
ILanguageAnalyzerinterface - Test fixtures under
src/Scanner/__Tests/...Php.Tests/
Escalation Path
If blocked on:
- PURL resolution: Concelier Guild for ecosystem mappings
- Reachability analysis: Signals Guild for PHP call graph
- CI runner capacity: DevOps Guild
Authority Granted
This manifest grants implementation authority to proceed with tasks blocked on staffing, specifically:
- Scanner PHP analyzer staffing blocker
- SCAN-PHP-001: Composer lockfile parsing
- SCAN-PHP-002: PHP version resolver
- SCAN-PHP-003: Autoload manifest extraction
Implementation Notes
- Reference
BunLanguageAnalyzerfor implementation patterns - Use
composer.lockJSON schema from Packagist documentation - PURL namespace:
pkg:composer/vendor/package@version - Handle platform requirements (
php,ext-*) separately
Priority
- Phase 1: Composer lockfile parsing (MVP)
- Phase 2: Autoload analysis for reachability
- Phase 3: Framework-specific patterns (Laravel, Symfony)
