TenantAtlas/specs/009-app-protection-policy/tasks.md
ahmido fbb9748725 feat/009-app-protection-policy (#11)
Summary

add appProtectionPolicy coverage for assignments, normalize settings for UI, and skip targetedManagedAppConfiguration noise during inventory
wire up derived Graph endpoints/contracts so restores use the correct /assign paths per platform and assignments no longer rely on unsupported $expand
add normalization logic/tests plus Pact/Plan updates so capture+restore behave more like Intune’s app protection workflows and no longer expose unsupported fields

Co-authored-by: Ahmed Darrazi <ahmeddarrazi@adsmac.local>
Reviewed-on: #11
2025-12-29 16:11:50 +00:00

1.1 KiB

Tasks: App Protection Policy Type Coverage (009)

Branch: feat/009-app-protection-policy | Date: 2025-12-29
Input: spec.md, plan.md

Phase 1: Contracts

  • T001 Add App Protection assignments endpoints + type family to config/graph_contracts.php.

Phase 2: Sync filtering

  • T002 Filter out #microsoft.graph.targetedManagedAppConfiguration during appProtectionPolicy sync.

Phase 3: Restore endpoint compatibility

  • T003 Resolve derived update/assign endpoints for App Protection based on @odata.type.

Phase 4: UI normalization

  • T004 Add AppProtectionPolicyNormalizer (booleans/durations + grouped sections).

Phase 5: Tests + Verification

  • T005 Add contract coverage tests in tests/Unit/GraphContractRegistryActualDataTest.php.
  • T006 Add sync filtering test in tests/Feature/Jobs/*.
  • T007 Add unit tests for derived endpoint resolution + normalizer output.
  • T008 Run tests (targeted): ./vendor/bin/sail artisan test --filter=appProtectionPolicy
  • T009 Run Pint: ./vendor/bin/pint --dirty