# Plan: Driver Updates (WUfB Add-on) (018) **Branch**: `feat/018-driver-updates-wufb` **Date**: 2026-01-03 **Input**: [spec.md](./spec.md) ## Goal Add first-class support for Windows Driver Update profiles (`windowsDriverUpdateProfile`) across inventory, backup/version snapshots, restore (preview + execution), and normalized display. ## Approach 1. Confirm Graph API details for driver update profiles (resource path, `@odata.type`, patchable properties, assignment endpoints). 2. Add type metadata to `config/tenantpilot.php` (category, endpoint, backup/restore mode, risk). 3. Add Graph contract entry in `config/graph_contracts.php` (resource, type family, create/update methods, assignments). 4. Ensure sync lists and stores these policies (config-driven loop) and add a targeted sync test. 5. Ensure snapshots capture the complete payload and add tests for version/backup capture. 6. Implement restore apply via contract-driven sanitization; add failure-safe behavior and tests. 7. Add a normalizer for readable UI output; add tests for normalized display. 8. Run Pint and targeted tests. ## Decisions / Notes - Default to contract-driven restore semantics; avoid bespoke Graph calls unless strictly required. - If Graph rejects PATCH due to read-only fields, extend `update_strip_keys` for this type (do not loosen safety). - Keep restore risk high; require clear preview and audit trail.