# Feature Specification: Enrollment Configuration Subtypes (027)

**Feature Branch**: `feat/027-enrollment-config-subtypes`  
**Created**: 2026-01-04  
**Status**: Draft  
**Priority**: P1

## Context
TenantPilot already covers ESP and Enrollment Restrictions, but there are additional subtypes in the same `deviceEnrollmentConfigurations` collection that are often forgotten:
- Enrollment Limit (`deviceEnrollmentLimitConfiguration`)
- Platform Restrictions (`deviceEnrollmentPlatformRestrictionsConfiguration`)
- Enrollment Notifications (`deviceEnrollmentNotificationConfiguration`, beta)

## User Scenarios & Testing

### User Story 1 — Inventory shows each subtype separately (Priority: P1)
As an admin, I can sync enrollment configurations and see each subtype as its own policy type.

**Acceptance Scenarios**
1. Given enrollment limit configurations exist, sync shows type `deviceEnrollmentLimitConfiguration`.
2. Given platform restriction configurations exist, sync shows type `deviceEnrollmentPlatformRestrictionsConfiguration`.
3. Given enrollment notifications exist, sync shows type `deviceEnrollmentNotificationConfiguration`.

### User Story 2 — Backup + restore preview (Priority: P1)
As an admin, I can back up and preview-restore these enrollment configurations safely.

**Acceptance Scenarios**
1. Backup captures full payloads for each subtype.
2. Restore preview lists create/update actions and shows preview-only warnings for enrollment-risky configs.

## Requirements

### Functional Requirements
- **FR-001**: Add three new policy types backed by `deviceManagement/deviceEnrollmentConfigurations`:
  - `deviceEnrollmentLimitConfiguration`
  - `deviceEnrollmentPlatformRestrictionsConfiguration`
  - `deviceEnrollmentNotificationConfiguration`
- **FR-002**: Update classification so these do not collapse into `enrollmentRestriction`.
- **FR-003**: Snapshot capture stores full payload and assignments (where supported).
- **FR-004**: Restore preview is supported; execution is conservative (likely preview-only initially).
- **FR-005**: Add Pest tests for sync + snapshot + preview.

## Success Criteria
- **SC-001**: Enrollment configuration subtypes are visible and correctly classified.
- **SC-002**: Backups include these objects, and preview explains safe restore behavior.

