diff --git a/runtime_wiring.py b/runtime_wiring.py index cf23f52..21e5cb1 100644 --- a/runtime_wiring.py +++ b/runtime_wiring.py @@ -12,16 +12,24 @@ class _MainModuleProxy: """Prefer ``main.`` (facade-aware); fall back during module import.""" def __getattr__(self, name): - main_mod = sys.modules.get("main") - if main_mod is not None: - # Use getattr so ModuleType facades can resolve mutable globals. + for key in ("main", "__main__"): + main_mod = sys.modules.get(key) + if main_mod is None: + continue + if getattr(main_mod, "__name__", None) in { + "http_routes", + "runtime_wiring", + "notifications_runtime", + "strategy_plugins_runtime", + }: + continue try: + # Use getattr so ModuleType facades can resolve mutable globals. return getattr(main_mod, name) except AttributeError: - pass + continue return getattr(sys.modules[_FALLBACK_MODULE_NAME], name) - main = _MainModuleProxy() import dataclasses diff --git a/strategy_plugins_runtime.py b/strategy_plugins_runtime.py index 37088cb..9a298b1 100644 --- a/strategy_plugins_runtime.py +++ b/strategy_plugins_runtime.py @@ -12,16 +12,24 @@ class _MainModuleProxy: """Prefer ``main.`` (facade-aware); fall back during module import.""" def __getattr__(self, name): - main_mod = sys.modules.get("main") - if main_mod is not None: - # Use getattr so ModuleType facades can resolve mutable globals. + for key in ("main", "__main__"): + main_mod = sys.modules.get(key) + if main_mod is None: + continue + if getattr(main_mod, "__name__", None) in { + "http_routes", + "runtime_wiring", + "notifications_runtime", + "strategy_plugins_runtime", + }: + continue try: + # Use getattr so ModuleType facades can resolve mutable globals. return getattr(main_mod, name) except AttributeError: - pass + continue return getattr(sys.modules[_FALLBACK_MODULE_NAME], name) - main = _MainModuleProxy() import dataclasses