run->tenant; $runUrl = match (true) { $notifiable instanceof PlatformUser => SystemOperationRunLinks::view($this->run), $tenant instanceof Tenant => OperationRunLinks::view($this->run, $tenant), default => OperationRunLinks::tenantlessView($this->run), }; $notification = OperationUxPresenter::terminalDatabaseNotification( run: $this->run, tenant: $tenant instanceof Tenant ? $tenant : null, ); $notification->actions([ \Filament\Actions\Action::make('view_run') ->label('View run') ->url($runUrl), ]); $message = $notification->getDatabaseMessage(); $reasonEnvelope = app(ReasonPresenter::class)->forOperationRun($this->run, 'notification'); if ($reasonEnvelope !== null) { $message['reason_translation'] = $reasonEnvelope->toArray(); $message['diagnostic_reason_code'] = $reasonEnvelope->diagnosticCode(); } return $message; } }