Summary-first audit history
Review governance, operational, and workspace-admin events in reverse chronological order without leaving the canonical Monitoring route.
Actor, outcome, target, and readable context stay visible even when the original record changes or disappears later.
{{ $this->table }} @php $selectedAudit = $this->selectedAuditLog(); $selectedAuditLink = $this->selectedAuditLink(); @endphp @if ($selectedAudit)
{{ \App\Support\Badges\BadgeRenderer::label(\App\Support\Badges\BadgeDomain::AuditOutcome)($selectedAudit->normalizedOutcome()->value) }} {{ \App\Support\Badges\BadgeRenderer::label(\App\Support\Badges\BadgeDomain::AuditActorType)($selectedAudit->actorSnapshot()->type->value) }} @if (is_array($selectedAuditLink)) {{ $selectedAuditLink['label'] }} @endif
Actor
{{ $selectedAudit->actorDisplayLabel() }}
{{ $selectedAudit->actorSnapshot()->type->label() }}
@if ($selectedAudit->actorSnapshot()->email)
{{ $selectedAudit->actorSnapshot()->email }}
@endif
Target
{{ $selectedAudit->targetDisplayLabel() ?? 'No target snapshot' }}
{{ $selectedAudit->resource_type ? ucfirst(str_replace('_', ' ', $selectedAudit->resource_type)) : 'Workspace event' }}
Scope
{{ $selectedAudit->tenant?->name ?? 'Workspace-wide event' }}
Workspace #{{ $selectedAudit->workspace_id }}
Readable context
@if ($selectedAudit->contextItems() === [])
No additional context was recorded for this event.
@else
@foreach ($selectedAudit->contextItems() as $item)
{{ $item['label'] }}
{{ is_bool($item['value']) ? ($item['value'] ? 'true' : 'false') : $item['value'] }}
@endforeach
@endif
Technical metadata
@foreach ($selectedAudit->technicalMetadata() as $label => $value)
{{ $label }}
{{ $value }}
@endforeach
@endif