fix(gateway): report unsupported node events (#123719)

Closes #123717
This commit is contained in:
Peter Steinberger
2026-08-14 09:13:29 -07:00
committed by GitHub
parent 2bc1699a37
commit 2b31cf114b
2 changed files with 15 additions and 2 deletions
+1 -1
View File
@@ -1221,7 +1221,7 @@ export const handleNodeEvent = async (
}
}
default:
return undefined;
return { ok: true, event: evt.event, handled: false, reason: "unsupported_event" };
}
};
/* oxlint-disable max-lines -- TODO: split this grandfathered oversized file. */
@@ -364,13 +364,26 @@ describe("gateway role enforcement", () => {
expect(invokeRes.ok).toBe(false);
expect(invokeRes.error?.message ?? "").toContain("unauthorized role");
nodeClient = await connectNodeClientWithPairing({
nodeClient = await connectNodeClientWithNodePairing({
port,
commands: [],
instanceId: "node-role-enforcement",
displayName: "node-role-enforcement",
});
const unsupportedEvent = await nodeClient.request<{
ok: boolean;
event?: string;
handled?: boolean;
reason?: string;
}>("node.event", { event: "test.unsupported", payload: { ok: true } });
expect(unsupportedEvent).toEqual({
ok: true,
event: "test.unsupported",
handled: false,
reason: "unsupported_event",
});
const binsPayload = await nodeClient.request("skills.bins", {});
expect(Array.isArray(binsPayload?.bins)).toBe(true);