diff --git a/bioflow_service/app/context.py b/bioflow_service/app/context.py index acef6fd..cb880a8 100644 --- a/bioflow_service/app/context.py +++ b/bioflow_service/app/context.py @@ -168,7 +168,7 @@ async def init_context(db_path: str | None = None) -> Context: from .services.bioflow.extension_exec import ExtensionExecConfig, ExtensionExecutor as RealExecutor cfg = ExtensionExecConfig() real = RealExecutor(cfg) - store = ext_mod.active_store() + store = ext_mod.get_store() if store is not None: ext_mod.inject_real_executor(real, store) logger.info("extension executor wired (image suffix=%s)", cfg.docker_tag_suffix) diff --git a/bioflow_service/app/services/bioflow/extensions.py b/bioflow_service/app/services/bioflow/extensions.py index 52fa937..9918318 100644 --- a/bioflow_service/app/services/bioflow/extensions.py +++ b/bioflow_service/app/services/bioflow/extensions.py @@ -525,8 +525,10 @@ class ExtensionStore: )) executor = self.executor or ExtensionExecutor() - if isinstance(executor, ExtensionExecutor) and type(executor) is ExtensionExecutor: - # 占位执行器(Dev-B 未接入):明确 503 语义,绝不伪装成 trial_failed 触发修复循环 + if isinstance(executor, ExtensionExecutor) and executor._real is None: + # 占位执行器(未注入真实执行器):明确 503 语义, + # 绝不伪装成 trial_failed 触发修复循环。 + # 注意:TL 接线后的适配器也是 ExtensionExecutor 实例,但 _real 已注入。 raise ExtensionRunError( "扩展执行器未接入(extension_exec.py 由 Dev-B 实现;" "接口签名见 extensions.ExtensionExecutor)"