From d5cd24f39a951bfbd50dc8f50bcf095d59694d6c Mon Sep 17 00:00:00 2001 From: can1357 Date: Wed, 15 Jul 2026 20:21:44 +0200 Subject: [PATCH] chore: fixed stale executor mock sessions and spawn hint assertion - added getEnabledToolNames to executor-driving mock sessions (renamed session api) - task-spawn follow-up hint assertion updated from irc to hub --- packages/coding-agent/test/task/autoload-skills.test.ts | 1 + .../coding-agent/test/task/executor-pass-through.test.ts | 1 + .../coding-agent/test/task/executor-soft-budget.test.ts | 1 + .../test/task/executor-subagent-reminders.test.ts | 1 + .../coding-agent/test/task/executor-wall-clock.test.ts | 7 +++++++ packages/coding-agent/test/task/subagent-lsp.test.ts | 1 + packages/coding-agent/test/task/task-guards.test.ts | 1 + packages/coding-agent/test/task/task-spawn.test.ts | 2 +- 8 files changed, 14 insertions(+), 1 deletion(-) diff --git a/packages/coding-agent/test/task/autoload-skills.test.ts b/packages/coding-agent/test/task/autoload-skills.test.ts index 84b26d35c..21ac76e33 100644 --- a/packages/coding-agent/test/task/autoload-skills.test.ts +++ b/packages/coding-agent/test/task/autoload-skills.test.ts @@ -37,6 +37,7 @@ function createMockSession( appendSessionInit: () => {}, }, getActiveToolNames: () => ["read", "yield"], + getEnabledToolNames: () => ["read", "yield"], setActiveToolsByName: async () => {}, subscribe: (listener: (event: AgentSessionEvent) => void) => { listeners.push(listener); diff --git a/packages/coding-agent/test/task/executor-pass-through.test.ts b/packages/coding-agent/test/task/executor-pass-through.test.ts index 7a79547a1..72e5831e6 100644 --- a/packages/coding-agent/test/task/executor-pass-through.test.ts +++ b/packages/coding-agent/test/task/executor-pass-through.test.ts @@ -31,6 +31,7 @@ function createMockSession(onPrompt: (params: { emit: (event: AgentSessionEvent) extensionRunner: undefined, sessionManager: { appendSessionInit: () => {} }, getActiveToolNames: () => ["read", "yield"], + getEnabledToolNames: () => ["read", "yield"], setActiveToolsByName: async (_toolNames: string[]) => {}, subscribe: (listener: (event: AgentSessionEvent) => void) => { listeners.push(listener); diff --git a/packages/coding-agent/test/task/executor-soft-budget.test.ts b/packages/coding-agent/test/task/executor-soft-budget.test.ts index 9cb996ee6..b3c2642f9 100644 --- a/packages/coding-agent/test/task/executor-soft-budget.test.ts +++ b/packages/coding-agent/test/task/executor-soft-budget.test.ts @@ -62,6 +62,7 @@ function createMockSession( extensionRunner: undefined as never, sessionManager: { appendSessionInit: () => {} } as never, getActiveToolNames: () => ["read", "yield"], + getEnabledToolNames: () => ["read", "yield"], setActiveToolsByName: async () => {}, subscribe: (listener: (event: AgentSessionEvent) => void) => { listeners.push(listener); diff --git a/packages/coding-agent/test/task/executor-subagent-reminders.test.ts b/packages/coding-agent/test/task/executor-subagent-reminders.test.ts index eb0265eff..48fc2c5fa 100644 --- a/packages/coding-agent/test/task/executor-subagent-reminders.test.ts +++ b/packages/coding-agent/test/task/executor-subagent-reminders.test.ts @@ -62,6 +62,7 @@ function createMockSession( appendSessionInit: () => {}, }, getActiveToolNames: () => ["read", "yield"], + getEnabledToolNames: () => ["read", "yield"], setActiveToolsByName: async (_toolNames: string[]) => {}, subscribe: (listener: (event: AgentSessionEvent) => void) => { listeners.push(listener); diff --git a/packages/coding-agent/test/task/executor-wall-clock.test.ts b/packages/coding-agent/test/task/executor-wall-clock.test.ts index 0157249ba..b9717b870 100644 --- a/packages/coding-agent/test/task/executor-wall-clock.test.ts +++ b/packages/coding-agent/test/task/executor-wall-clock.test.ts @@ -37,6 +37,7 @@ function createHangingSession(): HangingSessionHandle { appendSessionInit: () => {}, } as never, getActiveToolNames: () => ["read", "yield"], + getEnabledToolNames: () => ["read", "yield"], setActiveToolsByName: async (_names: string[]) => {}, subscribe: (_listener: (event: AgentSessionEvent) => void) => () => {}, prompt: async (_text: string, _options?: PromptOptions) => { @@ -123,6 +124,7 @@ describe("runSubprocess wall clock (task.maxRuntimeMs)", () => { extensionRunner: undefined as never, sessionManager: { appendSessionInit: () => {} } as never, getActiveToolNames: () => ["read", "yield"], + getEnabledToolNames: () => ["read", "yield"], setActiveToolsByName: async () => {}, subscribe: (listener: (event: AgentSessionEvent) => void) => { // Fire a synthetic yield on the next tick to drive runSubprocess to @@ -212,6 +214,7 @@ describe("runSubprocess wall clock (task.maxRuntimeMs)", () => { extensionRunner: undefined as never, sessionManager: { appendSessionInit: () => {} } as never, getActiveToolNames: () => ["read", "yield"], + getEnabledToolNames: () => ["read", "yield"], setActiveToolsByName: async () => {}, subscribe: (listener: (event: AgentSessionEvent) => void) => { listenerRef = listener; @@ -289,6 +292,7 @@ describe("runSubprocess wall clock (task.maxRuntimeMs)", () => { extensionRunner: undefined as never, sessionManager: { appendSessionInit: () => {} } as never, getActiveToolNames: () => ["read", "yield"], + getEnabledToolNames: () => ["read", "yield"], setActiveToolsByName: async () => {}, subscribe: (listener: (event: AgentSessionEvent) => void) => { listenerRef = listener; @@ -388,6 +392,7 @@ describe("runSubprocess wall clock (task.maxRuntimeMs)", () => { extensionRunner: undefined as never, sessionManager: { appendSessionInit: () => {} } as never, getActiveToolNames: () => ["read", "yield"], + getEnabledToolNames: () => ["read", "yield"], setActiveToolsByName: async () => {}, subscribe: (listener: (event: AgentSessionEvent) => void) => { listenerRef = listener; @@ -517,6 +522,7 @@ describe("runSubprocess wall clock (task.maxRuntimeMs)", () => { extensionRunner: undefined as never, sessionManager: { appendSessionInit: () => {} } as never, getActiveToolNames: () => ["read", "yield"], + getEnabledToolNames: () => ["read", "yield"], setActiveToolsByName: async () => {}, subscribe: (listener: (event: AgentSessionEvent) => void) => { listenerRef = listener; @@ -599,6 +605,7 @@ describe("runSubprocess wall clock (task.maxRuntimeMs)", () => { extensionRunner: undefined as never, sessionManager: { appendSessionInit: () => {} } as never, getActiveToolNames: () => ["read", "yield"], + getEnabledToolNames: () => ["read", "yield"], setActiveToolsByName: async () => {}, subscribe: (listener: (event: AgentSessionEvent) => void) => { queueMicrotask(() => { diff --git a/packages/coding-agent/test/task/subagent-lsp.test.ts b/packages/coding-agent/test/task/subagent-lsp.test.ts index fb098200e..e6b98cac8 100644 --- a/packages/coding-agent/test/task/subagent-lsp.test.ts +++ b/packages/coding-agent/test/task/subagent-lsp.test.ts @@ -59,6 +59,7 @@ function createYieldingSession(): AgentSession { appendSessionInit: () => {}, }, getActiveToolNames: () => ["yield"], + getEnabledToolNames: () => ["yield"], setActiveToolsByName: async () => {}, subscribe: (listener: (event: AgentSessionEvent) => void) => { listeners.push(listener); diff --git a/packages/coding-agent/test/task/task-guards.test.ts b/packages/coding-agent/test/task/task-guards.test.ts index b8cff9dc7..52cea2a99 100644 --- a/packages/coding-agent/test/task/task-guards.test.ts +++ b/packages/coding-agent/test/task/task-guards.test.ts @@ -81,6 +81,7 @@ function createFakeSession(config: FakeSessionConfig = {}): FakeSessionHandle { extensionRunner: undefined as never, sessionManager: { appendSessionInit: () => {} } as never, getActiveToolNames: () => ["read", "yield"], + getEnabledToolNames: () => ["read", "yield"], setActiveToolsByName: async (_names: string[]) => {}, subscribe: (listener: (event: AgentSessionEvent) => void) => { if (config.events?.length) { diff --git a/packages/coding-agent/test/task/task-spawn.test.ts b/packages/coding-agent/test/task/task-spawn.test.ts index 067902b10..782ff83d3 100644 --- a/packages/coding-agent/test/task/task-spawn.test.ts +++ b/packages/coding-agent/test/task/task-spawn.test.ts @@ -140,7 +140,7 @@ describe("task spawn routing", () => { expect(job!.status).toBe("completed"); expect(job!.resultText).toContain("Spawnling is now idle"); - expect(job!.resultText).toContain("message it via `irc` to follow up"); + expect(job!.resultText).toContain("message it via `hub` to follow up"); expect(job!.resultText).toContain("history://Spawnling"); expect(runSpy).toHaveBeenCalledTimes(1); });