value : $action, $actorId, $actorEmail, $actorName, $context), id: $actorId, email: $actorEmail, label: $actorName, ); return $this->auditRecorder->record( action: $action, context: $context, workspace: $workspace, tenant: $tenant, actor: $resolvedActor, target: new AuditTargetSnapshot( type: $resourceType, id: $resourceId, label: $targetLabel, ), outcome: $status, recordedAt: CarbonImmutable::now(), summary: $summary, operationRunId: $operationRunId, ); } /** * @param array $context */ public function logTenantLifecycleAction( Tenant $tenant, string|AuditActionId $action, array $context = [], ?User $actor = null, string $status = 'success', ?string $summary = null, ): \App\Models\AuditLog { return $this->log( workspace: $tenant->workspace, action: $action, context: $context, actor: $actor, status: $status, resourceType: 'tenant', resourceId: (string) $tenant->getKey(), targetLabel: $tenant->name, summary: $summary, tenant: $tenant, ); } }