fix: run BOOT.md for each configured agent at startup (#20569)

Merged via /review-pr -> /prepare-pr -> /merge-pr.

Prepared head SHA: 9098a4cc64
Co-authored-by: mcaxtr <7562095+mcaxtr@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
This commit is contained in:
Marcus Castro
2026-02-19 02:58:56 -03:00
committed by GitHub
parent d17a1f387b
commit 48e6b4fca3
9 changed files with 272 additions and 15 deletions

View File

@@ -4,12 +4,14 @@ import {
createInternalHookEvent,
getRegisteredEventKeys,
isAgentBootstrapEvent,
isGatewayStartupEvent,
isMessageReceivedEvent,
isMessageSentEvent,
registerInternalHook,
triggerInternalHook,
unregisterInternalHook,
type AgentBootstrapHookContext,
type GatewayStartupHookContext,
type MessageReceivedHookContext,
type MessageSentHookContext,
} from "./internal-hooks.js";
@@ -185,6 +187,21 @@ describe("hooks", () => {
});
});
describe("isGatewayStartupEvent", () => {
it("returns true for gateway:startup events with expected context", () => {
const context: GatewayStartupHookContext = {
cfg: {},
};
const event = createInternalHookEvent("gateway", "startup", "gateway:startup", context);
expect(isGatewayStartupEvent(event)).toBe(true);
});
it("returns false for non-startup gateway events", () => {
const event = createInternalHookEvent("gateway", "shutdown", "gateway:shutdown", {});
expect(isGatewayStartupEvent(event)).toBe(false);
});
});
describe("isMessageReceivedEvent", () => {
it("returns true for message:received events with expected context", () => {
const context: MessageReceivedHookContext = {