fix: wire plugin event subscriptions from worker to host
Plugin workers register event handlers via `ctx.events.on()` in the SDK,
but these subscriptions were never forwarded to the host process. The host
sends events via `notifyWorker("onEvent", ...)` which produces a JSON-RPC
notification (no `id`), but the worker only dispatched `onEvent` as a
request handler — notifications were silently dropped.
Changes:
- Add `events.subscribe` RPC method so workers can register subscriptions
on the host-side event bus during setup
- Handle `onEvent` notifications in the worker notification dispatcher
(previously only `agents.sessions.event` was handled)
- Add `events.subscribe` to HostServices interface, capability map, and
host client handler
- Add `subscribe` handler in host services that registers on the scoped
plugin event bus and forwards matched events to the worker
This commit is contained in:
@@ -482,6 +482,10 @@ export interface WorkerToHostMethods {
|
||||
params: { name: string; companyId: string; payload: unknown },
|
||||
result: void,
|
||||
];
|
||||
"events.subscribe": [
|
||||
params: { eventPattern: string; filter?: Record<string, unknown> | null },
|
||||
result: void,
|
||||
];
|
||||
|
||||
// HTTP
|
||||
"http.fetch": [
|
||||
|
||||
Reference in New Issue
Block a user