diff --git a/src/gui_2.py b/src/gui_2.py index 0c4d96bb..7f43401d 100644 --- a/src/gui_2.py +++ b/src/gui_2.py @@ -7598,6 +7598,13 @@ Result = _LocalResult ErrorInfo = _LocalErrorInfo ErrorKind = _LocalErrorKind +# Singleton success Results for hot-path render-loop helpers. +# Avoids per-frame dataclass allocation; the data=True default +# means errors is the empty list, which is the canonical "ok" state. +# Reused across all render-loop _result helpers' success paths. +_OK_TRUE = Result(data=True) +_OK_FALSE = Result(data=False) + #endregion: Phase 3 Result Stubs #region: Phase 3 Render-Loop Result Helpers (result_migration_gui_2_20260619) @@ -7666,7 +7673,7 @@ def _render_main_interface_result(app: "App") -> Result[bool]: render_main_interface(app) else: render_main_interface(app) - return Result(data=True) + return _OK_TRUE except Exception as e: return Result(data=False, errors=[ErrorInfo( kind=ErrorKind.INTERNAL,