Governance holds, blocks & trigger notices

Review open security flags (VPN holds, manual outbound blocks, wire corridor enforcement, payout location mismatch, and related risk rows). Resolving a flag records who cleared it and may automatically lift the durable outbound suspension or restricted_payout_access when no matching open flags remain. Use Trigger notice to send an in-app + email governance message to an operator (for example branch visit required, hold explanation, or next steps).

Outbound table above still controls the user-level outbound_security_suspended switch in bulk. This section complements it with per-flag resolution and ad-hoc notices.

Open security flags

@forelse($openSecurityFlags as $flag) @empty @endforelse
ID User Risk / state Opened Actions
#{{ $flag->id }} @if($flag->user)

{{ $flag->user->email }}

{{ $flag->user->name }}

@if($flag->user->status)

Profile: {{ $flag->user->status }}

@endif @else @endif

{{ str_replace('_', ' ', $flag->risk_type) }}

{{ str_replace('_', ' ', (string) $flag->state) }}

@if($flag->account)

Account: {{ $flag->account->name }}

@endif
{{ $flag->warning_sent_at?->timezone(config('app.timezone'))->format('M j, Y g:i A') ?? $flag->created_at?->timezone(config('app.timezone'))->format('M j, Y g:i A') ?? '—' }}
@csrf
No open security flags. Automated and manual holds will appear here when active.
@include('partials.control-panel-wire-status-notices')

Send trigger notice to operator

Delivers the standard in-app notification and email rail (control_panel_governance_notice). Recipients are limited to workspace users (operator, finance manager, compliance, and account-holder profiles) — the same personas that use the main dashboards and task queue. Optionally attach a new invoice so the recipient gets a Process invoice action (opens Payables with that row ready to approve or pay).

@csrf