refactor(pre-alpha): fail closed on historical preview fallbacks

This commit is contained in:
Bu5hm4nn
2026-03-26 11:55:45 +01:00
parent 4eec0127da
commit f38d0a53a9
6 changed files with 85 additions and 47 deletions

View File

@@ -203,13 +203,6 @@ def _render_event_comparison_page(workspace_id: str | None = None) -> None:
syncing_controls["value"] = False
template_slugs = selected_template_slugs()
if not template_slugs:
template_slugs = tuple(service.default_template_selection(str(option["slug"])))
syncing_controls["value"] = True
try:
template_select.value = list(template_slugs)
finally:
syncing_controls["value"] = False
try:
preview_units = float(units_input.value or 0.0)
@@ -243,6 +236,21 @@ def _render_event_comparison_page(workspace_id: str | None = None) -> None:
scenario_label.set_text(str(exc))
render_selected_summary(entry_spot=None, entry_spot_error=str(exc))
return str(exc)
except Exception:
logger.exception(
"Event comparison preview failed for workspace=%s preset=%s templates=%s units=%s loan=%s margin_call_ltv=%s",
workspace_id,
preset_select.value,
selected_template_slugs(),
units_input.value,
loan_input.value,
ltv_input.value,
)
message = "Event comparison preview failed. Please verify the seeded inputs and try again."
metadata_label.set_text(f"Preset: {option['label']}{option['description']}")
scenario_label.set_text(message)
render_selected_summary(entry_spot=None, entry_spot_error=message)
return message
preset = service.event_preset_service.get_preset(str(option["slug"]))
metadata_label.set_text(f"Preset: {option['label']}{option['description']}")
scenario_label.set_text(
@@ -261,15 +269,7 @@ def _render_event_comparison_page(workspace_id: str | None = None) -> None:
def render_report() -> None:
validation_label.set_text("")
result_panel.clear()
option = preset_lookup.get(str(preset_select.value or ""))
template_slugs = selected_template_slugs()
if option is not None and not template_slugs:
template_slugs = tuple(service.default_template_selection(str(option["slug"])))
syncing_controls["value"] = True
try:
template_select.value = list(template_slugs)
finally:
syncing_controls["value"] = False
try:
report = service.run_read_only_comparison(
preset_slug=str(preset_select.value or ""),