TenantAtlas/app/Services
ahmido ec71c2d4e7 feat: harden findings workflow and audit backstop (#181)
## Summary
- harden finding lifecycle changes behind the canonical `FindingWorkflowService` gateway
- route automated resolve and reopen flows through the same audited workflow path
- tighten tenant and workspace scope checks on finding actions and audit visibility
- add focused spec artifacts, workflow regression coverage, automation coverage, and audit visibility tests
- update legacy finding model tests to use the workflow service after direct lifecycle mutators were removed

## Testing
- `vendor/bin/sail bin pint --dirty --format agent`
- focused findings and audit slices passed during implementation
- `vendor/bin/sail artisan test --compact tests/Feature/Models/FindingResolvedTest.php`
- full repository suite passed: `2757 passed`, `8 skipped`, `14448 assertions`

## Notes
- Livewire v4.0+ compliance preserved
- no new Filament assets or panel providers introduced; provider registration remains in `bootstrap/providers.php`
- findings stay on existing Filament action surfaces, with destructive actions still confirmation-gated
- no global search behavior was changed for findings resources

Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de>
Reviewed-on: #181
2026-03-18 12:57:23 +00:00
..
Alerts feat(alerts): test message + last test status + deep links (#122) 2026-02-18 23:12:38 +00:00
Audit feat: harden findings workflow and audit backstop (#181) 2026-03-18 12:57:23 +00:00
Auth feat: managed tenant onboarding draft identity and resume semantics (#167) 2026-03-13 23:45:23 +00:00
BackupScheduling Spec 092: Legacy Purge (runs/routes/UI/test shims) (#110) 2026-02-14 18:43:56 +00:00
Baselines feat: harden findings workflow and audit backstop (#181) 2026-03-18 12:57:23 +00:00
Directory feat: add resolved reference presentation layer (#161) 2026-03-10 18:52:52 +00:00
Drift feat: add resolved reference presentation layer (#161) 2026-03-10 18:52:52 +00:00
EntraAdminRoles feat: harden findings workflow and audit backstop (#181) 2026-03-18 12:57:23 +00:00
Findings feat: harden findings workflow and audit backstop (#181) 2026-03-18 12:57:23 +00:00
Graph feat: add resolved reference presentation layer (#161) 2026-03-10 18:52:52 +00:00
Hardening feat: provider access hardening (RBAC write gate) (#132) 2026-02-23 00:49:37 +00:00
Intune feat: harden findings workflow and audit backstop (#181) 2026-03-18 12:57:23 +00:00
Inventory feat: add Intune RBAC baseline compare support (#156) 2026-03-09 18:49:20 +00:00
Onboarding feat: harden canonical run viewer and onboarding draft state (#173) 2026-03-15 18:32:04 +00:00
Operations feat: harden queued execution legitimacy (#179) 2026-03-17 21:52:40 +00:00
PermissionPosture feat: harden findings workflow and audit backstop (#181) 2026-03-18 12:57:23 +00:00
Providers feat: harden queued execution legitimacy (#179) 2026-03-17 21:52:40 +00:00
Runbooks feat(113): Platform Ops Runbooks — UX Polish (Filament-native, system theme, live scope) (#137) 2026-02-27 01:11:25 +00:00
Settings feat(111): findings workflow + SLA settings (#135) 2026-02-25 01:48:01 +00:00
System Spec 119: Drift cutover to Baseline Compare (golden master) (#144) 2026-03-06 14:30:49 +00:00
SystemConsole feat: lay audit log foundation (#163) 2026-03-11 09:39:37 +00:00
Tenants feat: central tenant operability policy (#177) 2026-03-17 11:48:55 +00:00
Verification feat: harden queued execution legitimacy (#179) 2026-03-17 21:52:40 +00:00
AdapterRunReconciler.php 056-remove-legacy-bulkops (#65) 2026-01-19 23:27:52 +00:00
AssignmentBackupService.php feat: add resolved reference presentation layer (#161) 2026-03-10 18:52:52 +00:00
AssignmentRestoreService.php Spec 094: Assignment ops observability hardening (#113) 2026-02-15 14:08:14 +00:00
OperationRunService.php feat: harden queued execution legitimacy (#179) 2026-03-17 21:52:40 +00:00
ReviewPackService.php feat(111): findings workflow + SLA settings (#135) 2026-02-25 01:48:01 +00:00