TenantAtlas/specs/162-baseline-gap-details/quickstart.md
ahmido 7d4d607475 feat: add baseline gap details surfaces (#192)
## Summary
- add baseline compare evidence gap detail modeling and a dedicated Livewire table surface
- extend baseline compare landing and operation run detail surfaces to expose evidence gap details and stats
- add spec artifacts for feature 162 and expand feature coverage with focused Filament and baseline tests

## Notes
- branch: `162-baseline-gap-details`
- commit: `a92dd812`
- working tree was clean after push

## Validation
- tests were not run in this step

Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de>
Reviewed-on: #192
2026-03-24 19:05:23 +00:00

2.4 KiB

Quickstart: Enterprise Evidence Gap Details for Baseline Compare

Prerequisites

  1. Start the local stack.
vendor/bin/sail up -d
  1. Ensure the app is clean enough to run focused tests.

Focused Verification

Run the minimum regression pack for the feature:

vendor/bin/sail artisan test --compact tests/Feature/Baselines/BaselineCompareAmbiguousMatchGapTest.php tests/Feature/Baselines/BaselineCompareResumeTokenTest.php tests/Feature/Filament/OperationRunEnterpriseDetailPageTest.php

Format touched files before shipping implementation updates:

vendor/bin/sail bin pint --dirty --format agent

Manual Verification Flow

  1. Trigger or locate a completed baseline_compare run with evidence gaps.
  2. Open the canonical run detail page at /admin/operations/{run}.
  3. Confirm the page shows outcome/trust guidance before diagnostics.
  4. Confirm the Evidence gap details section is visible when subject-level details exist.
  5. Use Search gap details to filter by:
    • reason text such as ambiguous
    • policy type such as deviceConfiguration
    • subject key fragment such as part of a display name or GUID
  6. Confirm raw JSON evidence remains available in the separate Baseline compare evidence section.

Legacy-Run Verification

  1. Open an older baseline compare run that contains evidence_gaps.count but no evidence_gaps.subjects.
  2. Confirm the UI distinguishes missing recorded detail from the absence of gaps.
  3. Confirm the page still renders successfully and does not imply a healthy compare result.

Tenant-Safety Verification

  1. Verify an entitled user can inspect the same run through canonical monitoring.
  2. Verify a non-member cannot discover tenant-owned detail through canonical or tenant-scoped surfaces.
  3. Verify member-but-underprivileged behavior remains enforced by existing authorization rules.

Render-Safety Verification

  1. Bind the fail-hard graph client in the affected UI tests.
  2. Verify the canonical run detail renders evidence-gap detail without invoking GraphClientInterface.
  3. Verify the tenant landing evidence-gap state renders without invoking GraphClientInterface.

Deployment Notes

  • No new database migration is required.
  • No new Filament assets are registered, so this feature does not add a new filament:assets deployment requirement.
  • Filament remains on Livewire v4-compatible patterns and requires no panel provider changes.