- 2026-10-26 -- A module loads lazily only when what its top-level
ifortryruns has no side effect (core_utils/module_resolver.pynewModuleAttributeResolver._statements_are_side_effect_free). Both blocks passed whole, so a registration call behind a top-levelifortrysilently waited for the module's first use instead of running at import. Their branches, body,elseandfinallyare now judged by the same rule; an exception handler (the failure path of a guarded import) and the body of anif __name__ == "__main__"block are skipped (itselseruns on import and is judged), and a top-levelasync deforpassno longer makes a module eager. Two modules change verdict, extapps' Metashape and RealityScanrun_combined.pyscripts, and no include map loads either, so nothing loads differently today. The judgement of a main block adds the ecosystem's 3 net source lines this release (line_budget658,862 -> 658,865). Thecore_utils/engines/docstring now says the namespace takes no new tenant: a model several tools share is tentacle'score/<engine>/.- Test(s):
test_module_resolver.py+5 (LazyLoadSafetyTests), red first.
- Test(s):