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

24 lines
1.1 KiB
Markdown

# Tasks: App Protection Policy Type Coverage (009)
**Branch**: `feat/009-app-protection-policy` | **Date**: 2025-12-29
**Input**: [spec.md](./spec.md), [plan.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`