An ESP subcategory failure can be retracted inside the 30s settle window (user clicks "Try again" / IME re-sync flips failed -> inProgress). The expiry handler fired the latched EspFailureDetectedEventArgs unconditionally, terminating the agent on a failure Windows no longer reported and losing the retry outcome (session c071e92b: recovery at +12s, terminal esp_terminal_failure at +30s anyway). - OnProvisioningFailureSettleExpired re-checks current registry-derived state under _stateLock: recovered = categorySucceeded != false AND no subcategory currently "failed". On recovery: emit new esp_failure_settle_recovered event, suppress EspFailureDetected, clear the fire-once gate (+resolved set) so a re-failure arms a FRESH settle window and is then terminal. - esp_failure_settle_started now names tracked apps not completed (trackedAppsNotCompleted/-Count) on Apps-subcategory failures via a new packageStatesProbe (ImeLogHost.AllKnownPackageStates through DefaultComponentFactory -> EspAndHelloHost -> EspAndHelloTracker). Covers the Store/WinGet blind spot (Company Portal pending with zero IME events) that both app_install_starved (IME-phase + intent gates) and esp_apps_failure_correlation (IsActive device apps only) miss. - New event type registered in Constants.EventTypes + MCP resource catalog (drift test green); 5 new settle-window tests, suite 1711/1711. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
AutopilotMonitor
Advanced monitoring and troubleshooting solution for Windows Autopilot deployments. Gain full visibility into every enrollment session with a detailed event timeline, fleet health dashboards, and session reporting. Define custom analysis rules to automatically detect issues and gather rules to collect targeted evidence. Retrieve diagnostics packages on demand, configure agent settings like auto-reboot behavior and automatic timezone adjustment — all managed centrally from the web dashboard.
Private Preview
Autopilot Monitor is currently running as a Private Preview. Visit autopilotmonitor.com to request access and learn more.
Overview
Autopilot Monitor provides real-time tracking, intelligent diagnostics, and automated troubleshooting for Windows Autopilot enrollment processes. It consists of:
- Bootstrap Script — PowerShell script deployed via Intune that starts monitoring early in the enrollment process
- Monitoring Agent — Lightweight .NET application that collects telemetry and evidence during enrollment
- Backend API — Azure Functions-based ingestion and processing pipeline
- Web Dashboard — Next.js application for real-time monitoring and fleet analytics
Architecture
For detailed information about the system architecture, components, and data flow, see Architecture Documentation.
Documentation
Full documentation is available at autopilotmonitor.com/docs
License
This project uses a split licensing model:
- MIT License — Agent (
src/Agent/) and Shared library (src/Shared/) — unrestricted use on end-user devices - AGPL-3.0 — Backend (
src/Backend/), Web Dashboard (src/Web/), and MCP Server (src/McpServer/) — server-side components remain open source
See LICENSE for full details.



