Skip to content

Commit 32a0e90

Browse files
JohnnyBravermantisai-bot
authored andcommitted
fix(hooks): align ACP save callback contract
1 parent c03c7ed commit 32a0e90

3 files changed

Lines changed: 4 additions & 5 deletions

File tree

src/acp/control-plane/manager.core.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import {
1414
triggerInternalHook,
1515
} from "../../hooks/internal-hooks.js";
1616
import { formatErrorMessage } from "../../infra/errors.js";
17-
import { normalizeAgentId } from "../../routing/session-key.js";
1817
import { isAcpSessionKey } from "../../sessions/session-key-utils.js";
1918
import { AcpRuntimeError } from "../runtime/errors.js";
2019
import { runManagerCancelSession } from "./manager.cancel-session.js";
@@ -482,7 +481,7 @@ export class AcpSessionManager {
482481
}
483482

484483
private normalizeTurnSaveHookResult(
485-
result: AcpTurnSaveHookResult | boolean | void,
484+
result: AcpTurnSaveHookResult | false | void,
486485
): AcpTurnSaveHookResult {
487486
if (result === false) {
488487
return { saveOutcome: "skipped", saveSkipReason: "declined" };

src/acp/control-plane/manager.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -407,7 +407,7 @@ describe("AcpSessionManager", () => {
407407
text: "hello",
408408
mode: "prompt",
409409
requestId: "turn-save-no-evidence",
410-
onBeforeTurnSaveHook: (() => undefined) as never,
410+
onBeforeTurnSaveHook: () => undefined,
411411
});
412412

413413
await vi.waitFor(() => {
@@ -434,7 +434,7 @@ describe("AcpSessionManager", () => {
434434
it("emits agent:turn:end after terminal ACP events are delivered", async () => {
435435
const runtimeState = createRuntime();
436436
runtimeState.runTurn.mockImplementation(async function* () {
437-
yield { type: "text_delta" as const, text: "remember this", stream: "content" as const };
437+
yield { type: "text_delta" as const, text: "remember this", stream: "output" as const };
438438
yield { type: "done" as const };
439439
});
440440
hoisted.requireAcpRuntimeBackendMock.mockReturnValue({

src/acp/control-plane/manager.types.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ export type AcpRunTurnInput = {
9797
onEvent?: (event: AcpRuntimeEvent) => Promise<void> | void;
9898
onBeforeTurnSaveHook?: (
9999
context: AcpTurnCompletionHookContext,
100-
) => Promise<AcpTurnSaveHookResult | false> | AcpTurnSaveHookResult | false;
100+
) => Promise<AcpTurnSaveHookResult | false | void> | AcpTurnSaveHookResult | false | void;
101101
};
102102

103103
export type AcpTurnLifecycleEvent = {

0 commit comments

Comments
 (0)