mirror of
https://github.com/feigeCode/navop.git
synced 2026-09-22 00:01:25 +00:00
工作台 stream 页从 load 操作的 ResultRef::EventStream 拿到流后直接 subscribe, 而 dispatch_invoke_result_scoped 走的是裸 invoke_resource_with_options,绕过 managed client ⇒ EventActivationManager::open() 从未被调用,首次 read 被 ensure_event_open 拒为 "event stream ... is not open for this runtime generation"。 - activation.rs:新增 register_invoked_event_stream(复用私有 register_event_stream) - workbench_dispatch.rs:invoke 成功后登记;失败时回手关掉 provider 已分配的流, 抛新变体 EventStreamRegistration - shell_plugin_host/error.rs:补该变体的匹配臂(shell-plugins 开态才编译) - tests.rs:假 provider 增加 stream 方法,新增 workbench_invoked_event_streams_are_registered_by_the_host 验证:cargo test -p extension-plugin-adapter -p extension-runtime -p resource_view -p universal-plugins --lib → 350 passed / 0 failed; cargo check -p main --locked --features shell-plugins → EXIT=0。 变异验证:摘掉登记行 ⇒ 报出与线上逐字一致的 -32602。