1
0
Files
breadcrumb-the-shire/composer.json
fs 0c351f6aff refactor(audit): extract audit domain into self-contained module
Move the entire audit subsystem (system audit, API audit, import audit,
user lifecycle audit, frontend telemetry) from core into modules/audit/.

Core decoupling via interface-based injection:
- AuditRecorderInterface replaces SystemAuditService in 10+ core services
- UserLifecycleAuditInterface / ImportAuditInterface for specialized flows
- NullAuditRecorder fallback when audit module is disabled
- ApiBootstrap/ApiResponse use null-safe callable resolvers

Module structure (modules/audit/):
- Manifest with routes, permissions, scheduler jobs, authorization policy
- 9 services, 8 repositories, 6 domain enums, 4 job handlers
- 33 page files, 4 JS files, 8 test files, migration scripts, i18n

Core cleanup:
- OperationsAuthorizationPolicy, UiCapabilityMap, PermissionService
  surgically cleaned of audit-specific constants
- Sidebar template cleared of hardcoded audit navigation
- AuditModuleIsolationContractTest ensures no future core→module coupling

All quality gates pass: 1346 tests (19,276 assertions), PHPStan level 5
clean, architecture contracts verified.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 21:12:49 +01:00

45 lines
1.3 KiB
JSON

{
"name": "mintyphp/mintyphp",
"description": "A refreshingly different PHP web framework that is easy to learn",
"license": "MIT",
"authors": [
{
"name": "Maurits van der Schee",
"email": "maurits@vdschee.nl",
"homepage": "https://www.tqdev.com"
}
],
"require": {
"php": "^8.5",
"mintyphp/core": "*",
"phpmailer/phpmailer": "^7.0",
"dompdf/dompdf": "^3.1",
"endroid/qr-code": "^6.0",
"league/commonmark": "^2.8"
},
"require-dev": {
"mintyphp/tools": "*",
"mintyphp/debugger": "*",
"phpunit/phpunit": "*",
"phpstan/phpstan": "^1.9",
"icanhazstring/composer-unused": "^0.9.6",
"friendsofphp/php-cs-fixer": "^3.66"
},
"autoload-dev": {
"psr-4": {
"MintyPHP\\Tests\\": "tests/",
"MintyPHP\\Tests\\Module\\Audit\\": "modules/audit/tests/Module/Audit/"
}
},
"autoload": {
"psr-4": {
"MintyPHP\\": "lib/",
"MintyPHP\\Module\\Audit\\": "modules/audit/lib/Module/Audit/"
}
},
"scripts": {
"cs:check": "php-cs-fixer fix --config=.php-cs-fixer.dist.php --dry-run --diff --verbose",
"cs:fix": "php-cs-fixer fix --config=.php-cs-fixer.dist.php --verbose"
}
}