linkedModelId($descriptor); $workspaceId = $descriptor->workspaceId; if ($runId === null || $workspaceId === null || $workspaceId <= 0) { return $this->unresolved($descriptor); } $run = OperationRun::query() ->whereKey($runId) ->where('workspace_id', $workspaceId) ->first(); if (! $run instanceof OperationRun) { return $this->missing($descriptor); } if (! $this->canOpenOperationRun($run)) { return $this->inaccessible($descriptor); } $context = $descriptor->contextValue('navigation_context'); $navigationContext = $context instanceof CanonicalNavigationContext ? $context : null; return $this->resolved( descriptor: $descriptor, primaryLabel: OperationCatalog::label((string) $run->type), secondaryLabel: 'Run #'.$run->getKey(), linkTarget: new ReferenceLinkTarget( targetKind: ReferenceClass::OperationRun->value, url: OperationRunLinks::tenantlessView($run, $navigationContext), actionLabel: 'View run', contextBadge: $run->tenant_id ? 'Tenant context' : 'Workspace', ), ); } private function canOpenOperationRun(OperationRun $run): bool { $user = auth()->user(); return $user instanceof User && $user->can('view', $run); } }