refactor(kernel): unify HTTP and CLI application lifecycle

Signed-off-by: Sebastian Krupinski <krupinski01@gmail.com>
This commit is contained in:
2026-07-27 00:48:11 -04:00
parent 98826143a8
commit 65c1b5fb75
67 changed files with 2737 additions and 1070 deletions
+13 -13
View File
@@ -8,16 +8,16 @@ use KTXC\L10N\LocaleResolver;
use KTXC\Module\ModuleManager;
use KTXC\Security\Authorization\PermissionChecker;
use KTXC\Service\UserAccountsService;
use KTXC\SessionIdentity;
use KTXC\Context\IdentityContextInterface;
use KTXF\Controller\ControllerAbstract;
use KTXC\SessionTenant;
use KTXC\Context\TenantContextInterface;
use KTXF\Routing\Attributes\AuthenticatedRoute;
class InitController extends ControllerAbstract
{
public function __construct(
private readonly SessionTenant $tenant,
private readonly SessionIdentity $userIdentity,
private readonly TenantContextInterface $tenantContext,
private readonly IdentityContextInterface $identityContext,
private readonly ModuleManager $moduleManager,
private readonly UserAccountsService $userService,
private readonly PermissionChecker $permissionChecker,
@@ -54,21 +54,21 @@ class InitController extends ControllerAbstract
// tenant
$configuration['tenant'] = [
'id' => $this->tenant->identifier(),
'domain' => $this->tenant->domain(),
'label' => $this->tenant->label(),
'id' => $this->tenantContext->identifier(),
'domain' => $this->tenantContext->domain(),
'label' => $this->tenantContext->label(),
];
// user
$configuration['user'] = [
'auth' => [
'identifier' => $this->userIdentity->identifier(),
'identity' => $this->userIdentity->identity()->getIdentity(),
'label' => $this->userIdentity->label(),
'roles' => $this->userIdentity->identity()->getRoles(),
'permissions' => $this->userIdentity->identity()->getPermissions(),
'identifier' => $this->identityContext->identifier(),
'identity' => $this->identityContext->identity()->getIdentity(),
'label' => $this->identityContext->label(),
'roles' => $this->identityContext->identity()->getRoles(),
'permissions' => $this->identityContext->identity()->getPermissions(),
],
'profile' => $this->userService->getEditableFields($this->userIdentity->identifier()),
'profile' => $this->userService->getEditableFields($this->identityContext->identifier()),
'settings' => $this->userService->fetchSettings([], true),
];