From 6c2883f8331f45aafc4b375ddec39d776c957ea7 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 13 Mar 2026 20:30:24 +0000 Subject: [PATCH] Fix gather rules edit UI and add missing table entity mapping 1. Gather rules edit: ensure expandedRuleId is explicitly set in startEditing() so the card stays expanded when entering edit mode. Add stopPropagation to Export/Edit/Delete action buttons as a defensive measure against click event bubbling. 2. Add missing EnrollmentSummaryLaunchRetrySeconds to both ConvertToTableEntity and ConvertFromTableEntity in TenantConfigurationService - this property was never persisted to Azure Table Storage. https://claude.ai/code/session_01Xcix9bwMXijqN7xa57Vko6 --- .../Services/TenantConfigurationService.cs | 2 ++ .../app/gather-rules/components/GatherRuleCard.tsx | 6 +++--- src/Web/autopilot-monitor-web/app/gather-rules/page.tsx | 2 ++ 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/Backend/AutopilotMonitor.Functions/Services/TenantConfigurationService.cs b/src/Backend/AutopilotMonitor.Functions/Services/TenantConfigurationService.cs index 136d2dc4..069dab23 100644 --- a/src/Backend/AutopilotMonitor.Functions/Services/TenantConfigurationService.cs +++ b/src/Backend/AutopilotMonitor.Functions/Services/TenantConfigurationService.cs @@ -234,6 +234,7 @@ namespace AutopilotMonitor.Functions.Services { "ShowEnrollmentSummary", config.ShowEnrollmentSummary }, { "EnrollmentSummaryTimeoutSeconds", config.EnrollmentSummaryTimeoutSeconds }, { "EnrollmentSummaryBrandingImageUrl", config.EnrollmentSummaryBrandingImageUrl }, + { "EnrollmentSummaryLaunchRetrySeconds", config.EnrollmentSummaryLaunchRetrySeconds }, { "HelloWaitTimeoutSeconds", config.HelloWaitTimeoutSeconds }, { "AgentMaxLifetimeMinutes", config.AgentMaxLifetimeMinutes }, { "SendTraceEvents", config.SendTraceEvents }, @@ -293,6 +294,7 @@ namespace AutopilotMonitor.Functions.Services ShowEnrollmentSummary = entity.GetBoolean("ShowEnrollmentSummary"), EnrollmentSummaryTimeoutSeconds = entity.GetInt32("EnrollmentSummaryTimeoutSeconds"), EnrollmentSummaryBrandingImageUrl = entity.GetString("EnrollmentSummaryBrandingImageUrl"), + EnrollmentSummaryLaunchRetrySeconds = entity.GetInt32("EnrollmentSummaryLaunchRetrySeconds"), HelloWaitTimeoutSeconds = entity.GetInt32("HelloWaitTimeoutSeconds") ?? 30, AgentMaxLifetimeMinutes = entity.GetInt32("AgentMaxLifetimeMinutes"), SendTraceEvents = entity.GetBoolean("SendTraceEvents") ?? true, diff --git a/src/Web/autopilot-monitor-web/app/gather-rules/components/GatherRuleCard.tsx b/src/Web/autopilot-monitor-web/app/gather-rules/components/GatherRuleCard.tsx index f965979a..92b303be 100644 --- a/src/Web/autopilot-monitor-web/app/gather-rules/components/GatherRuleCard.tsx +++ b/src/Web/autopilot-monitor-web/app/gather-rules/components/GatherRuleCard.tsx @@ -290,7 +290,7 @@ export function GatherRuleCard({ {!readOnly && (
{canEdit && (