Problem: Beim Hinzufügen zu einem Backup Set kann ein lokaler “Reuse” dazu führen, dass ein Backup nicht den aktuellen Intune-Stand reflektiert, wenn last_synced_at nicht frisch ist. Lösung: BackupService führt beim Add immer orchestrated capture aus (Graph Fetch), damit “Backup = current state” gilt. Trotzdem kein unnötiges Version-Wachstum: PolicyCaptureOrchestrator re-used bestehende PolicyVersions via Snapshot-Hash, wenn sich nichts geändert hat. Tests: Added BackupServiceVersionReuseTest.php Specs: Updated spec.md + plan.md + tasks checked off. Co-authored-by: Ahmed Darrazi <ahmeddarrazi@adsmac.local> Reviewed-on: #22
591 B
591 B
Tasks: Backup Version Reuse (016)
Branch: 016-backup-version-reuse | Date: 2026-01-02
Input: spec.md, plan.md
Phase 1: Setup
- T001 Create spec/plan/tasks and checklist.
Phase 2: Tests (TDD)
- T002 Add tests for reusing an existing suitable PolicyVersion.
- T003 Add tests for capturing a new PolicyVersion when reuse is not possible.
Phase 3: Core
- T004 Implement reuse decision + reuse path in BackupService.
Phase 4: Verification
- T005 Run targeted tests.
- T006 Run Pint (
./vendor/bin/pint --dirty).