Summary add mobileApp contract details (assignments, expanded type family, scope tag select) and spec/test coverage so App snapshots stay metadata-only yet still capture roleScopeTagIds. guard restores so scope tags are written back whenever a snapshot carries them, even without explicit foundation mappings, and document it via a new Filament restore test. keep existing restore/sync behaviors in place while ensuring mobileApp assignments and metadata continue to flow through the backup/restore pipeline. Co-authored-by: Ahmed Darrazi <ahmeddarrazi@adsmac.local> Reviewed-on: #10
18 lines
928 B
Markdown
18 lines
928 B
Markdown
# Tasks: Apps (Mobile Apps) Metadata-Only + Assignments (008)
|
|
|
|
**Branch**: `feat/008-apps-app-management` | **Date**: 2025-12-29
|
|
**Input**: [spec.md](./spec.md), [plan.md](./plan.md)
|
|
|
|
## Phase 1: Contracts and Safety Gates
|
|
- [ ] T001 Expand `mobileApp` Graph contract in `config/graph_contracts.php` (assignments endpoints + payload key + type family).
|
|
|
|
## Phase 2: Snapshot Capture (Metadata-Only)
|
|
- [ ] T002 Enforce metadata-only snapshot capture for apps in `app/Services/Intune/PolicySnapshotService.php`.
|
|
|
|
## Phase 3: Tests and Verification
|
|
- [ ] T003 Add contract coverage tests in `tests/Unit/GraphContractRegistryActualDataTest.php`.
|
|
- [ ] T004 Add snapshot filtering tests in `tests/Unit/PolicySnapshotServiceTest.php`.
|
|
- [ ] T005 Run tests: `./vendor/bin/sail artisan test tests/Unit/GraphContractRegistryActualDataTest.php tests/Unit/PolicySnapshotServiceTest.php`
|
|
- [ ] T006 Run Pint: `./vendor/bin/pint --dirty`
|
|
|