feat(spec-090): action surface contract compliance #108

Merged
ahmido merged 1 commits from 090-action-surface-contract-compliance into dev 2026-02-13 01:30:23 +00:00
Owner

Implements Spec 090 (Action Surface Contract Compliance & RBAC Hardening).

Highlights:

  • Adds/updates action surface declarations and shrinks baseline exemptions.
  • Standardizes Filament action grouping/order and empty-state CTAs.
  • Enforces RBAC UX semantics (non-member -> 404, member w/o capability -> disabled + tooltip, server-side 403).
  • Adds audit logging for successful side-effect actions.
  • Fixes Provider Connections list context so header create + row actions resolve tenant correctly.

Tests (focused):

  • vendor/bin/sail artisan test --compact tests/Feature/090/
  • vendor/bin/sail artisan test --compact tests/Feature/Guards/ActionSurfaceContractTest.php
  • vendor/bin/sail bin pint --dirty

Livewire/Filament:

  • Filament v5 + Livewire v4 compliant.
  • No panel provider registration changes (Laravel 11+ registration remains in bootstrap/providers.php).
Implements Spec 090 (Action Surface Contract Compliance & RBAC Hardening). Highlights: - Adds/updates action surface declarations and shrinks baseline exemptions. - Standardizes Filament action grouping/order and empty-state CTAs. - Enforces RBAC UX semantics (non-member -> 404, member w/o capability -> disabled + tooltip, server-side 403). - Adds audit logging for successful side-effect actions. - Fixes Provider Connections list context so header create + row actions resolve tenant correctly. Tests (focused): - vendor/bin/sail artisan test --compact tests/Feature/090/ - vendor/bin/sail artisan test --compact tests/Feature/Guards/ActionSurfaceContractTest.php - vendor/bin/sail bin pint --dirty Livewire/Filament: - Filament v5 + Livewire v4 compliant. - No panel provider registration changes (Laravel 11+ registration remains in bootstrap/providers.php).
ahmido added 1 commit 2026-02-13 01:30:00 +00:00
ahmido merged commit 90bfe1516e into dev 2026-02-13 01:30:23 +00:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: ahmido/TenantAtlas#108
No description provided.