66 getActiveWorkflowRecord ,
77} from '@sim/platform-authz/workflow'
88import { and , eq , isNull , ne } from 'drizzle-orm'
9+ import { getBlockVisibilityForCopilot } from '@/lib/copilot/block-visibility'
910import {
1011 MAX_TABLE_SELECTION_CONTENT_LENGTH ,
1112 truncateSelectionText ,
@@ -24,7 +25,7 @@ import {
2425} from '@/lib/copilot/vfs/path-utils'
2526import { EnvCapabilityConfigurationError } from '@/lib/core/config/env-capabilities'
2627import { getAllowedIntegrationsFromEnv } from '@/lib/core/config/env-flags'
27- import { isIntegrationDeploymentAvailable } from '@/lib/integrations/availability.server'
28+ import { isIntegrationDeploymentAvailableForVisibility } from '@/lib/integrations/availability.server'
2829import { toOverview } from '@/lib/logs/log-views'
2930import type { TraceSpan } from '@/lib/logs/types'
3031import { mcpService } from '@/lib/mcp/service'
@@ -573,11 +574,13 @@ async function processBlockMetadata(
573574 workspaceId ?: string
574575) : Promise < AgentContext | null > {
575576 try {
576- const permissionConfig =
577- userId && workspaceId ? await getUserPermissionConfig ( userId , workspaceId ) : null
577+ const [ permissionConfig , visibility ] = await Promise . all ( [
578+ userId && workspaceId ? getUserPermissionConfig ( userId , workspaceId ) : null ,
579+ userId ? getBlockVisibilityForCopilot ( userId , workspaceId ) : null ,
580+ ] )
578581 const allowedIntegrations =
579582 permissionConfig ?. allowedIntegrations ?? getAllowedIntegrationsFromEnv ( )
580- if ( ! isIntegrationDeploymentAvailable ( blockId ) ) {
583+ if ( ! isIntegrationDeploymentAvailableForVisibility ( blockId , visibility ) ) {
581584 logger . debug ( 'Block unavailable for this deployment' , { blockId } )
582585 return null
583586 }
0 commit comments