From 7939b6fd36a9b452eafcea34df83edef9fb446c4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 1 Nov 2025 00:21:39 +0000 Subject: [PATCH 1/2] Initial plan From 76c93d56c0bd1733eaf1dd852ec36b308be46256 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 1 Nov 2025 00:28:41 +0000 Subject: [PATCH 2/2] Improve exception handling in geocoding error display - Changed generic catch block to display full exception details instead of just the message - Wrapped exception in markdown code block for better readability - Fixed type inference issue in RiskMapLayoutArea by changing Select to SelectMany - Applied same fix to both RiskMapLayoutArea.cs and PropertyRisksLayoutArea.cs Co-authored-by: rbuergi <6334612+rbuergi@users.noreply.github.com> --- .../LayoutAreas/PropertyRisksLayoutArea.cs | 2 +- .../LayoutAreas/RiskMapLayoutArea.cs | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/modules/Insurance/MeshWeaver.Insurance.Domain/LayoutAreas/PropertyRisksLayoutArea.cs b/modules/Insurance/MeshWeaver.Insurance.Domain/LayoutAreas/PropertyRisksLayoutArea.cs index 3db9474af..d5c93926f 100644 --- a/modules/Insurance/MeshWeaver.Insurance.Domain/LayoutAreas/PropertyRisksLayoutArea.cs +++ b/modules/Insurance/MeshWeaver.Insurance.Domain/LayoutAreas/PropertyRisksLayoutArea.cs @@ -128,7 +128,7 @@ private static async Task ClickGeocoding(UiActionContext obj) } catch (Exception ex) { - obj.Host.UpdateArea(obj.Area, Controls.Markdown($"**Geocoding Failed**: {ex.Message}")); + obj.Host.UpdateArea(obj.Area, Controls.Markdown($"**Geocoding Failed**:\n```\n{ex}\n```")); } } } diff --git a/modules/Insurance/MeshWeaver.Insurance.Domain/LayoutAreas/RiskMapLayoutArea.cs b/modules/Insurance/MeshWeaver.Insurance.Domain/LayoutAreas/RiskMapLayoutArea.cs index e7467f59f..8be0af5d0 100644 --- a/modules/Insurance/MeshWeaver.Insurance.Domain/LayoutAreas/RiskMapLayoutArea.cs +++ b/modules/Insurance/MeshWeaver.Insurance.Domain/LayoutAreas/RiskMapLayoutArea.cs @@ -24,24 +24,24 @@ public static IObservable RiskMap(LayoutAreaHost host, RenderingConte var pricingId = host.Hub.Address.Id; return host.Workspace.GetStream()! - .Select(risks => + .SelectMany(risks => { var riskList = risks?.ToList() ?? new List(); var geocodedRisks = riskList.Where(r => r.GeocodedLocation?.Latitude != null && r.GeocodedLocation?.Longitude != null).ToList(); if (!riskList.Any()) { - return Controls.Stack + return Observable.Return(Controls.Stack .WithView(PricingLayoutShared.BuildToolbar(pricingId, "RiskMap")) - .WithView(Controls.Markdown("# Risk Map\n\n*No risks loaded. Import or add risks to begin.*")); + .WithView(Controls.Markdown("# Risk Map\n\n*No risks loaded. Import or add risks to begin.*"))); } if (!geocodedRisks.Any()) { - return Controls.Stack + return Observable.Return(Controls.Stack .WithView(PricingLayoutShared.BuildToolbar(pricingId, "RiskMap")) .WithView(Controls.Markdown($"# Risk Map\n\n*No geocoded risks found. {riskList.Count} risk(s) available but none have valid coordinates.*")) - .WithView(GeocodingArea); + .WithView(GeocodingArea)); } var mapControl = BuildGoogleMapControl(geocodedRisks); @@ -103,7 +103,7 @@ private static async Task ClickGeocoding(UiActionContext obj) } catch (Exception ex) { - obj.Host.UpdateArea(obj.Area, Controls.Markdown($"**Geocoding Failed**: {ex.Message}")); + obj.Host.UpdateArea(obj.Area, Controls.Markdown($"**Geocoding Failed**:\n```\n{ex}\n```")); } }