mirror of
https://github.com/okieselbach/AutopilotMonitor.git
synced 2026-10-24 20:53:06 +00:00
added agent changelog
This commit is contained in:
@@ -41,7 +41,7 @@ export function DocsSidebar({ children }: { children: React.ReactNode }) {
|
||||
const docsItems: PageSectionItem[] = useMemo(
|
||||
() =>
|
||||
NAV_SECTIONS
|
||||
.filter((s) => !s.requiresMcpAccess || user?.hasMcpAccess)
|
||||
.filter((s) => !s.hidden && (!s.requiresMcpAccess || user?.hasMcpAccess))
|
||||
.map((s) => ({
|
||||
id: s.id,
|
||||
label: s.label,
|
||||
|
||||
@@ -13,6 +13,7 @@ import { SectionGatherRules } from "../sections/SectionGatherRules";
|
||||
import { SectionAnalyzeRules } from "../sections/SectionAnalyzeRules";
|
||||
import { SectionImeLogPatterns } from "../sections/SectionImeLogPatterns";
|
||||
import { SectionFaq } from "../sections/SectionFaq";
|
||||
import { SectionAgentChangelog } from "../sections/SectionAgentChangelog";
|
||||
|
||||
const SECTION_COMPONENTS: Record<string, React.ComponentType> = {
|
||||
"private-preview": SectionPrivatePreview,
|
||||
@@ -26,6 +27,7 @@ const SECTION_COMPONENTS: Record<string, React.ComponentType> = {
|
||||
"analyze-rules": SectionAnalyzeRules,
|
||||
"ime-log-patterns": SectionImeLogPatterns,
|
||||
"faq": SectionFaq,
|
||||
"agent-changelog": SectionAgentChangelog,
|
||||
};
|
||||
|
||||
function isMcpSection(id: string): boolean {
|
||||
|
||||
@@ -3,6 +3,7 @@ interface NavSection {
|
||||
readonly label: string;
|
||||
readonly description: string;
|
||||
readonly requiresMcpAccess?: true;
|
||||
readonly hidden?: true;
|
||||
}
|
||||
|
||||
export const NAV_SECTIONS: readonly NavSection[] = [
|
||||
@@ -18,6 +19,7 @@ export const NAV_SECTIONS: readonly NavSection[] = [
|
||||
{ id: "ime-log-patterns", label: "IME Log Patterns", description: "Define regex patterns for parsing the Intune Management Extension (IME) log into structured events. Customize how Autopilot Monitor extracts log entries." },
|
||||
{ id: "faq", label: "FAQ", description: "Frequently asked questions about Autopilot Monitor — covering setup, agent behavior, troubleshooting common issues, and tips for getting the most out of the platform." },
|
||||
{ id: "mcp-integration", label: "MCP Integration", description: "Connect AI assistants to Autopilot Monitor via Model Context Protocol. Configure MCP clients, explore available tools, and learn how to query enrollment data with natural language.", requiresMcpAccess: true },
|
||||
{ id: "agent-changelog", label: "Agent Changelog", description: "Changelog of user-facing changes to the Autopilot Monitor agent — new features, behavior changes, and improvements over time.", hidden: true },
|
||||
] as const;
|
||||
|
||||
export type SectionId = NavSection["id"];
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
"use client";
|
||||
|
||||
import { useEffect, useState } from "react";
|
||||
import Link from "next/link";
|
||||
|
||||
interface AgentVersionInfo {
|
||||
version?: string;
|
||||
@@ -71,6 +72,9 @@ export function SectionAgent() {
|
||||
<span className="inline-flex items-center px-3 py-1.5 bg-blue-100 text-blue-800 text-lg font-mono font-bold rounded-md">
|
||||
v{versionInfo.version}
|
||||
</span>
|
||||
<Link href="/docs/agent-changelog" className="text-sm text-blue-600 hover:text-blue-800 hover:underline">
|
||||
View Changelog
|
||||
</Link>
|
||||
</div>
|
||||
) : (
|
||||
<p className="text-sm text-blue-700">Version information is currently unavailable.</p>
|
||||
|
||||
@@ -0,0 +1,119 @@
|
||||
export function SectionAgentChangelog() {
|
||||
return (
|
||||
<section className="bg-white rounded-lg shadow-md p-8">
|
||||
<div className="flex items-center space-x-3 mb-4">
|
||||
<svg className="w-8 h-8 text-blue-600 shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
||||
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2" />
|
||||
</svg>
|
||||
<h2 className="text-2xl font-bold text-gray-900">Agent Changelog</h2>
|
||||
</div>
|
||||
<p className="text-gray-600 mb-8">
|
||||
User-facing changes to the Autopilot Monitor agent, newest first. Only includes changes that affect agent behavior on the device.
|
||||
</p>
|
||||
|
||||
{/* ── April 2026 ───────────────────────────────── */}
|
||||
<ChangelogBlock title="April 2026">
|
||||
<Li>Agent reports self-update events so updates are visible in the session timeline</Li>
|
||||
<Li>Emergency channel — agent can send distress signals when it detects critical failures</Li>
|
||||
<Li>ESP "resumed" event is now only emitted for Hybrid Join scenarios (avoids noise on other paths)</Li>
|
||||
<Li>Improved crash recovery — completion state is persisted so the agent can resume correctly after an unexpected restart</Li>
|
||||
</ChangelogBlock>
|
||||
|
||||
{/* ── Late March 2026 ──────────────────────────── */}
|
||||
<ChangelogBlock title="Late March 2026">
|
||||
<Li>Agent crash detection — crashes are automatically detected and reported to the backend</Li>
|
||||
<Li>SHA-256 integrity verification for agent downloads (bootstrapper + self-updater verify hash before install)</Li>
|
||||
<Li>Reboot tracking — reboots during enrollment are now tracked and visible in the timeline</Li>
|
||||
<Li>NTP time sync check with clock skew warning when device time is significantly off</Li>
|
||||
<Li>Automatic timezone detection and configuration</Li>
|
||||
<Li>SecureBoot certificate collection for security posture reporting</Li>
|
||||
<Li>IME process watcher — detects when the Intune Management Extension starts or stops</Li>
|
||||
<Li>Network change detection — captures network adapter changes during enrollment</Li>
|
||||
<Li>Agent self-update mechanism — outdated agents in the field update themselves automatically</Li>
|
||||
<Li>Unrestricted mode option (per-tenant) to disable most guard rails</Li>
|
||||
<Li>Notification system reworked — supports Teams (legacy + Workflow), Slack, and custom webhooks</Li>
|
||||
</ChangelogBlock>
|
||||
|
||||
{/* ── Mid March 2026 ───────────────────────────── */}
|
||||
<ChangelogBlock title="Mid March 2026">
|
||||
<Li>Software inventory collection with automatic vulnerability correlation (CVE matching)</Li>
|
||||
<Li>Hardware specification event — detailed hardware info collected and reported</Li>
|
||||
<Li>Agent shutdown event — clean shutdown is now explicitly tracked</Li>
|
||||
<Li>Postponed app detection and handling during enrollment</Li>
|
||||
<Li>Self-deploying mode detection and event tracking</Li>
|
||||
<Li>Enrollment summary dialog shown on the device after enrollment completes</Li>
|
||||
<Li>ESP provisioning status tracking — catches non-IME errors like certificate failures</Li>
|
||||
<Li>PowerShell script execution tracking during enrollment</Li>
|
||||
<Li>Clock skew detection with geo-location failure reporting</Li>
|
||||
<Li>Community analyze rules support</Li>
|
||||
</ChangelogBlock>
|
||||
|
||||
{/* ── Early March 2026 ─────────────────────────── */}
|
||||
<ChangelogBlock title="Early March 2026">
|
||||
<Li>Bootstrap session support — monitoring starts before MDM enrollment (during OOBE)</Li>
|
||||
<Li>ESP configuration detection — identifies ESP settings on the device</Li>
|
||||
<Li>TPM info collection for device details</Li>
|
||||
<Li>Activity-aware idle timeout replaces fixed 4-hour collector limit (default: 15 min idle)</Li>
|
||||
<Li>Reliable session end-detection for all deployment scenarios (user-driven, pre-provisioning, hybrid)</Li>
|
||||
<Li>Network performance data collection (latency, throughput)</Li>
|
||||
<Li>Geographic location support via IP-based lookup</Li>
|
||||
<Li>Emergency break — remote kill switch to stop agents</Li>
|
||||
<Li>Automatic retry on transient backend errors</Li>
|
||||
<Li>Custom User-Agent header for easier firewall allowlisting</Li>
|
||||
<Li>ESP state tracking via registry watcher</Li>
|
||||
<Li>XML and JSON file gathering in diagnostics</Li>
|
||||
<Li>Configurable <code className="text-xs bg-gray-100 px-1 py-0.5 rounded">--await-enrollment</code> parameter for pre-enrollment wait</Li>
|
||||
</ChangelogBlock>
|
||||
|
||||
{/* ── Late February 2026 ───────────────────────── */}
|
||||
<ChangelogBlock title="Late February 2026">
|
||||
<Li>Pre-Provisioning (White Glove) support — full end-to-end monitoring of pre-provisioning sessions</Li>
|
||||
<Li>mTLS for all agent-to-backend communication (consolidated endpoints)</Li>
|
||||
<Li>Diagnostics SAS URL fetched on-demand — no longer stored on disk</Li>
|
||||
<Li>Max collector duration policy (configurable per tenant)</Li>
|
||||
<Li>Diagnostics package upload from device</Li>
|
||||
<Li>Configurable reboot-on-complete and keep-logfile options via remote config</Li>
|
||||
<Li>Configurable diagnostics log paths (global + per-tenant)</Li>
|
||||
<Li>Lenovo model detection fix (WMI query)</Li>
|
||||
</ChangelogBlock>
|
||||
|
||||
{/* ── Mid February 2026 ────────────────────────── */}
|
||||
<ChangelogBlock title="Mid February 2026">
|
||||
<Li>Windows Autopilot v2 (Device Preparation) support</Li>
|
||||
<Li>GatherRules guard rails — prevents collection of overly broad paths</Li>
|
||||
<Li>IME log replay for testing and demos (<code className="text-xs bg-gray-100 px-1 py-0.5 rounded">--replay-log-dir</code>)</Li>
|
||||
<Li>Agent state persistence — survives reboots and resumes monitoring</Li>
|
||||
<Li>Embedded Intune root + intermediate certificates for chain validation</Li>
|
||||
<Li>OS info and boot time collection</Li>
|
||||
<Li>Hello screen detection improvements</Li>
|
||||
<Li>Download progress tracking</Li>
|
||||
</ChangelogBlock>
|
||||
|
||||
{/* ── Early February 2026 ──────────────────────── */}
|
||||
<ChangelogBlock title="Early February 2026">
|
||||
<Li>Initial agent release</Li>
|
||||
<Li>Real-time enrollment telemetry (IME log parsing, ESP phases, app installs)</Li>
|
||||
<Li>Geolocation support for enrollment sessions</Li>
|
||||
<Li>Hello screen detector for enrollment completion</Li>
|
||||
<Li>Reboot-on-complete support</Li>
|
||||
<Li>Session ID persistence across agent restarts</Li>
|
||||
<Li>Bootstrap token authentication for pre-MDM scenarios</Li>
|
||||
</ChangelogBlock>
|
||||
</section>
|
||||
);
|
||||
}
|
||||
|
||||
/* ── Helpers ──────────────────────────────────────────── */
|
||||
|
||||
function ChangelogBlock({ title, children }: { title: string; children: React.ReactNode }) {
|
||||
return (
|
||||
<div className="mb-6">
|
||||
<h3 className="text-lg font-semibold text-gray-900 mb-2 border-b border-gray-200 pb-1">{title}</h3>
|
||||
<ul className="space-y-1.5 text-sm text-gray-700 list-disc list-inside">{children}</ul>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
function Li({ children }: { children: React.ReactNode }) {
|
||||
return <li>{children}</li>;
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user