feat(modules): harden module platform with event constants, validation checks, and CLI improvements
- Add ModuleEvents constants class with all 8 event strings; update dispatch call sites - ValidateCommand: check AuthorizationPolicy container registration (check 20) - ValidateCommand: warn on unknown event_listeners keys (check 21) - make:module --simple flag for minimal manifests - module:deactivate reverse-dependency warning - 12 new PHPUnit tests covering all improvements Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
namespace MintyPHP\Service\Auth;
|
||||
|
||||
use MintyPHP\App\Module\ModuleEventDispatcher;
|
||||
use MintyPHP\App\Module\ModuleEvents;
|
||||
use MintyPHP\Auth;
|
||||
use MintyPHP\Http\SessionStoreInterface;
|
||||
use MintyPHP\Repository\User\UserReadRepositoryInterface;
|
||||
@@ -132,7 +133,7 @@ class AuthService
|
||||
'actor_tenant_id' => $this->currentTenantIdFromSession(),
|
||||
]);
|
||||
|
||||
$this->eventDispatcher?->dispatch('user.login', [
|
||||
$this->eventDispatcher?->dispatch(ModuleEvents::USER_LOGIN, [
|
||||
'user_id' => $userId,
|
||||
'provider' => 'local',
|
||||
]);
|
||||
@@ -226,7 +227,7 @@ class AuthService
|
||||
'metadata' => ['provider' => $loginProvider],
|
||||
]);
|
||||
|
||||
$this->eventDispatcher?->dispatch('user.login', [
|
||||
$this->eventDispatcher?->dispatch(ModuleEvents::USER_LOGIN, [
|
||||
'user_id' => $userId,
|
||||
'provider' => $loginProvider,
|
||||
]);
|
||||
@@ -290,7 +291,7 @@ class AuthService
|
||||
$actorUserId = (int) ($this->sessionUser()['id'] ?? 0);
|
||||
$actorTenantId = $this->currentTenantIdFromSession();
|
||||
|
||||
$this->eventDispatcher?->dispatch('user.logout', [
|
||||
$this->eventDispatcher?->dispatch(ModuleEvents::USER_LOGOUT, [
|
||||
'user_id' => $actorUserId,
|
||||
]);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user