@koda-sl/baker-bridge 0.61.1-dev.874b4b32d → 0.65.0-dev.eaff19fc8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +47 -25
- package/dist/hono/agent-tasks.d.ts +10 -0
- package/dist/hono/agent-tasks.d.ts.map +1 -1
- package/dist/hono/agent-tasks.js +22 -0
- package/dist/hono/agent-tasks.js.map +1 -1
- package/dist/hono/agent-tasks.test.js +21 -1
- package/dist/hono/agent-tasks.test.js.map +1 -1
- package/dist/hono/agent.d.ts +1 -0
- package/dist/hono/agent.d.ts.map +1 -1
- package/dist/hono/agent.js +9 -2
- package/dist/hono/agent.js.map +1 -1
- package/dist/hono/agent.test.js +2 -0
- package/dist/hono/agent.test.js.map +1 -1
- package/dist/hono/bridge-job.d.ts.map +1 -1
- package/dist/hono/bridge-job.js +64 -39
- package/dist/hono/bridge-job.js.map +1 -1
- package/dist/hono/bridge-job.test.js +84 -28
- package/dist/hono/bridge-job.test.js.map +1 -1
- package/dist/hono/model-router.d.ts +3 -0
- package/dist/hono/model-router.d.ts.map +1 -1
- package/dist/hono/model-router.js +63 -5
- package/dist/hono/model-router.js.map +1 -1
- package/dist/hono/model-router.test.js +47 -1
- package/dist/hono/model-router.test.js.map +1 -1
- package/dist/hono/session-continuity.integration.test.js +2 -0
- package/dist/hono/session-continuity.integration.test.js.map +1 -1
- package/package.json +2 -2
package/dist/hono/bridge-job.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { readdir, readFile, stat } from "node:fs/promises";
|
|
2
2
|
import { homedir } from "node:os";
|
|
3
3
|
import { isAbsolute, join, relative, resolve } from "node:path";
|
|
4
|
-
import { applyInFlightTask, applyTaskLifecycleMessage } from "./agent-tasks.js";
|
|
5
|
-
import { pickContextWindow, turnContextUsage } from "./context-usage.js";
|
|
4
|
+
import { applyInFlightTask, applyTaskLifecycleMessage, backgroundTaskSnapshot } from "./agent-tasks.js";
|
|
5
|
+
import { messageContextTokens, pickContextWindow, turnContextUsage, } from "./context-usage.js";
|
|
6
6
|
import { FLOW_INPUT_TOOL_NAME, normalizeFlowInputToolInput, sanitizeFlowRequests, } from "./flow-input.js";
|
|
7
7
|
import { composioScopesToInvalidate, reportMcpInvalid, } from "./mcp-servers.js";
|
|
8
|
-
import { autoCompactWindowForModel, contextWindowForModel } from "./model-router.js";
|
|
8
|
+
import { autoCompactWindowForModel, betasForModel, contextWindowForModel } from "./model-router.js";
|
|
9
9
|
import { bakerPlugins } from "./plugins.js";
|
|
10
10
|
import { appendCurrentReferenceContext } from "./prompt-context.js";
|
|
11
11
|
import { bridgeRuntimeFiles } from "./runtime-files.js";
|
|
@@ -288,9 +288,8 @@ export function isControlChannelDeny(msg) {
|
|
|
288
288
|
return false;
|
|
289
289
|
}
|
|
290
290
|
function controlChannelClosedError() {
|
|
291
|
-
const error = new Error("The sandbox tool control-channel closed mid-turn —
|
|
292
|
-
"
|
|
293
|
-
"denied. Retry: the next turn runs in a fresh session.");
|
|
291
|
+
const error = new Error("The sandbox tool control-channel closed mid-turn — a long-running command (e.g. a canvas render) " +
|
|
292
|
+
"outlived the turn, so further tool calls were denied. Retry: the next turn runs in a fresh session.");
|
|
294
293
|
error.name = "ControlChannelClosed";
|
|
295
294
|
return error;
|
|
296
295
|
}
|
|
@@ -343,6 +342,13 @@ function trackPendingToolUses(pending, msg) {
|
|
|
343
342
|
// process cannot hang the turn until the session watchdog.
|
|
344
343
|
function createTurnEndController(job, query, closeQuery, timings) {
|
|
345
344
|
const inFlightTasks = new Set();
|
|
345
|
+
// The background_tasks_changed LEVEL signal, tracked separately from the
|
|
346
|
+
// edge-paired set above: a foreground command the CLI auto-backgrounds emits
|
|
347
|
+
// no task_started/task_notification bookends, only this signal, and its ids
|
|
348
|
+
// must not be correlated with the edge stream (replace semantics, per-query
|
|
349
|
+
// reset — a fresh controller per query matches the per-process level).
|
|
350
|
+
let backgroundTaskCount = 0;
|
|
351
|
+
const hasInFlightWork = () => inFlightTasks.size > 0 || backgroundTaskCount > 0;
|
|
346
352
|
let sawAnyTask = false;
|
|
347
353
|
let cleanResultSeen = false;
|
|
348
354
|
let lastWasTaskLifecycle = false;
|
|
@@ -353,7 +359,7 @@ function createTurnEndController(job, query, closeQuery, timings) {
|
|
|
353
359
|
settleTimer = undefined;
|
|
354
360
|
// Fire-time guard: a task that started during the settle window keeps the
|
|
355
361
|
// channel open; a later settle re-arms the end.
|
|
356
|
-
if (inputEnded ||
|
|
362
|
+
if (inputEnded || hasInFlightWork()) {
|
|
357
363
|
return;
|
|
358
364
|
}
|
|
359
365
|
inputEnded = true;
|
|
@@ -381,27 +387,25 @@ function createTurnEndController(job, query, closeQuery, timings) {
|
|
|
381
387
|
};
|
|
382
388
|
return {
|
|
383
389
|
observeMessage: (msg) => {
|
|
384
|
-
|
|
390
|
+
const backgroundIds = backgroundTaskSnapshot(msg);
|
|
391
|
+
if (backgroundIds) {
|
|
392
|
+
backgroundTaskCount = backgroundIds.length;
|
|
393
|
+
// An emptied level signal is a settle: it must be able to re-arm the
|
|
394
|
+
// end below, exactly like the last edge-tracked task settling.
|
|
395
|
+
lastWasTaskLifecycle = true;
|
|
396
|
+
}
|
|
397
|
+
else {
|
|
398
|
+
lastWasTaskLifecycle = applyInFlightTask(inFlightTasks, msg);
|
|
399
|
+
}
|
|
385
400
|
// Only turns that ran a TRACKED task pay the settle delay; ambient
|
|
386
401
|
// (skip_transcript) housekeeping never wakes the model.
|
|
387
|
-
if (
|
|
402
|
+
if (hasInFlightWork()) {
|
|
388
403
|
sawAnyTask = true;
|
|
389
404
|
}
|
|
390
405
|
// Model activity (a wake starting, tools running) cancels a pending end;
|
|
391
406
|
// passive system events between the result and the CLI going idle do not.
|
|
392
407
|
const isModelActivity = msg.type === "assistant" || msg.type === "user" || msg.type === "stream_event";
|
|
393
|
-
|
|
394
|
-
// a settled task's output going back to the model. That result no longer
|
|
395
|
-
// describes an idle CLI, so the drain path below must stop treating it as
|
|
396
|
-
// one and wait for the woken turn's own result. Without this, a wake that
|
|
397
|
-
// lands just BEFORE the task settles closes stdin one settle later, while
|
|
398
|
-
// the model is still on time-to-first-token: the woken turn then runs on a
|
|
399
|
-
// severed control channel and its first permission-gated tool call comes
|
|
400
|
-
// back "Tool permission request failed: AbortError: Stream closed".
|
|
401
|
-
if (isModelActivity) {
|
|
402
|
-
cleanResultSeen = false;
|
|
403
|
-
}
|
|
404
|
-
if (settleTimer && (isModelActivity || inFlightTasks.size > 0)) {
|
|
408
|
+
if (settleTimer && (isModelActivity || hasInFlightWork())) {
|
|
405
409
|
clearTimeout(settleTimer);
|
|
406
410
|
settleTimer = undefined;
|
|
407
411
|
}
|
|
@@ -415,8 +419,8 @@ function createTurnEndController(job, query, closeQuery, timings) {
|
|
|
415
419
|
}
|
|
416
420
|
if (msg.type === "result" && !msg.is_error) {
|
|
417
421
|
cleanResultSeen = true;
|
|
418
|
-
if (
|
|
419
|
-
console.error(`[BridgeJob] result received with ${inFlightTasks.size} task(s) in flight — holding the turn open (thread ${job.threadId})`);
|
|
422
|
+
if (hasInFlightWork()) {
|
|
423
|
+
console.error(`[BridgeJob] result received with ${inFlightTasks.size} task(s) and ${backgroundTaskCount} background command(s) in flight — holding the turn open (thread ${job.threadId})`);
|
|
420
424
|
return;
|
|
421
425
|
}
|
|
422
426
|
scheduleEnd();
|
|
@@ -424,8 +428,9 @@ function createTurnEndController(job, query, closeQuery, timings) {
|
|
|
424
428
|
}
|
|
425
429
|
// A settle that drains the set after a clean result is the other end
|
|
426
430
|
// signal — without this, a task settling silently (no model wake, no
|
|
427
|
-
// second result) would strand the turn until the watchdog.
|
|
428
|
-
|
|
431
|
+
// second result) would strand the turn until the watchdog. An emptied
|
|
432
|
+
// background_tasks_changed level counts as a settle the same way.
|
|
433
|
+
if (lastWasTaskLifecycle && cleanResultSeen && !hasInFlightWork()) {
|
|
429
434
|
scheduleEnd();
|
|
430
435
|
}
|
|
431
436
|
},
|
|
@@ -441,6 +446,21 @@ function createTurnEndController(job, query, closeQuery, timings) {
|
|
|
441
446
|
},
|
|
442
447
|
};
|
|
443
448
|
}
|
|
449
|
+
// Track the occupancy of the last main-conversation request. The meter reads a
|
|
450
|
+
// single request's usage, not the turn's aggregate totals — and only from the
|
|
451
|
+
// main conversation, so subagent work never pollutes it. Some OpenRouter
|
|
452
|
+
// provider routes (observed: Amazon Bedrock) report all-zero usage on the
|
|
453
|
+
// assistant message; zero is never a real occupancy, so keep the previous
|
|
454
|
+
// reading rather than overwrite the meter with 0.
|
|
455
|
+
function trackMainRequestUsage(state, msg) {
|
|
456
|
+
if (msg.type !== "assistant" || msg.parent_tool_use_id || msg.subagent_type) {
|
|
457
|
+
return;
|
|
458
|
+
}
|
|
459
|
+
const usage = msg.message.usage;
|
|
460
|
+
if (usage && messageContextTokens(usage) > 0) {
|
|
461
|
+
state.lastMainRequestUsage = usage;
|
|
462
|
+
}
|
|
463
|
+
}
|
|
444
464
|
function classifyDirtyReason(error, controls) {
|
|
445
465
|
if (controls.abortSignal.aborted || !controls.isActive()) {
|
|
446
466
|
return "abort";
|
|
@@ -658,6 +678,7 @@ export class BridgeJobExecutor {
|
|
|
658
678
|
let costUsd = 0;
|
|
659
679
|
const mcpServers = await this.resolveMcpServers(job);
|
|
660
680
|
const autoCompactWindow = autoCompactWindowForModel(prepared.model);
|
|
681
|
+
const betas = betasForModel(prepared.model);
|
|
661
682
|
const settings = {
|
|
662
683
|
// Left unset, the CLI's auto-compact threshold falls through to a remote
|
|
663
684
|
// client-data value or experiment gate, which can cap compaction under the
|
|
@@ -674,6 +695,11 @@ export class BridgeJobExecutor {
|
|
|
674
695
|
: {}),
|
|
675
696
|
};
|
|
676
697
|
const options = {
|
|
698
|
+
// Lifts the CLI's context ceiling to the model's real 1M. Without it the CLI
|
|
699
|
+
// resolves 200k through the OpenRouter passthrough and compacts at a fifth of
|
|
700
|
+
// capacity, which also clamps the `autoCompactWindow` pin below to 200k. Not
|
|
701
|
+
// an API requirement — see `betasForModel`. Omitted for Haiku 4.5, genuinely 200k.
|
|
702
|
+
...(betas ? { betas } : {}),
|
|
677
703
|
cwd: process.cwd(),
|
|
678
704
|
settingSources: ["project"],
|
|
679
705
|
// `baker_ui` hosts in-process interactive dashboard tools (secure tag
|
|
@@ -887,15 +913,7 @@ export class BridgeJobExecutor {
|
|
|
887
913
|
throw controlChannelClosedError();
|
|
888
914
|
}
|
|
889
915
|
}
|
|
890
|
-
|
|
891
|
-
// meter from a single request's usage, not the turn's aggregate totals —
|
|
892
|
-
// and only from the main conversation, so subagent work never pollutes it.
|
|
893
|
-
if (msg.type === "assistant" && !msg.parent_tool_use_id && !msg.subagent_type) {
|
|
894
|
-
const usage = msg.message.usage;
|
|
895
|
-
if (usage) {
|
|
896
|
-
state.lastMainRequestUsage = usage;
|
|
897
|
-
}
|
|
898
|
-
}
|
|
916
|
+
trackMainRequestUsage(state, msg);
|
|
899
917
|
if (msg.type === "result") {
|
|
900
918
|
state.observedCostUsd = msg.total_cost_usd;
|
|
901
919
|
// Surface how full the conversation's context is. Tokens come from the last
|
|
@@ -1070,10 +1088,14 @@ export class BridgeJobExecutor {
|
|
|
1070
1088
|
pending: controls.pendingQuestions,
|
|
1071
1089
|
toolUseId,
|
|
1072
1090
|
});
|
|
1073
|
-
void this.relay.inputResolved(target);
|
|
1074
1091
|
if (decision.kind === "unanswered") {
|
|
1092
|
+
// Do NOT post input-resolved: the pending question must survive the live
|
|
1093
|
+
// wait ending, so the card stays up and the user's answer — whenever it
|
|
1094
|
+
// comes — dispatches a recovery turn (the backend parks the thread on
|
|
1095
|
+
// completion while a prompt is pending). The deny only ends this turn.
|
|
1075
1096
|
return { behavior: "deny", message: PROMPT_UNANSWERED_MESSAGE };
|
|
1076
1097
|
}
|
|
1098
|
+
void this.relay.inputResolved(target);
|
|
1077
1099
|
// The SDK matches AskUserQuestion answers to questions by TEXT, so hand it
|
|
1078
1100
|
// the documented `{ [questionText]: answer }` shape, not the dashboard's
|
|
1079
1101
|
// positional `q{i}` keys — otherwise the tool reports "dismissed".
|
|
@@ -1113,10 +1135,11 @@ export class BridgeJobExecutor {
|
|
|
1113
1135
|
pending: controls.pendingTagInputs,
|
|
1114
1136
|
toolUseId,
|
|
1115
1137
|
});
|
|
1116
|
-
void this.relay.tagInputResolved(target);
|
|
1117
1138
|
if (decision.kind === "unanswered") {
|
|
1139
|
+
// Keep the pending form alive past the live wait — see AskUserQuestion.
|
|
1118
1140
|
return { behavior: "deny", message: PROMPT_UNANSWERED_MESSAGE };
|
|
1119
1141
|
}
|
|
1142
|
+
void this.relay.tagInputResolved(target);
|
|
1120
1143
|
// The MCP tool handler echoes `resolution` back as the tool result — the
|
|
1121
1144
|
// redacted per-tab results are all the model ever sees.
|
|
1122
1145
|
return { behavior: "allow", updatedInput: { changes: sanitizedChanges, resolution: decision.value } };
|
|
@@ -1150,10 +1173,11 @@ export class BridgeJobExecutor {
|
|
|
1150
1173
|
pending: controls.pendingFlowInputs,
|
|
1151
1174
|
toolUseId,
|
|
1152
1175
|
});
|
|
1153
|
-
void this.relay.flowInputResolved(target);
|
|
1154
1176
|
if (decision.kind === "unanswered") {
|
|
1177
|
+
// Keep the pending form alive past the live wait — see AskUserQuestion.
|
|
1155
1178
|
return { behavior: "deny", message: PROMPT_UNANSWERED_MESSAGE };
|
|
1156
1179
|
}
|
|
1180
|
+
void this.relay.flowInputResolved(target);
|
|
1157
1181
|
// The MCP tool handler echoes `resolution` — the redacted per-tab results are
|
|
1158
1182
|
// all the model ever sees; secret values are written into the flow file by the
|
|
1159
1183
|
// bridge's /flow-input-decision handler and never reach here.
|
|
@@ -1174,12 +1198,13 @@ export class BridgeJobExecutor {
|
|
|
1174
1198
|
pending: controls.pendingPlans,
|
|
1175
1199
|
toolUseId,
|
|
1176
1200
|
});
|
|
1177
|
-
void this.relay.planResolved(target);
|
|
1178
1201
|
if (reviewed.kind === "unanswered") {
|
|
1179
1202
|
// Deny WITHOUT interrupt (same invariant as plan rejection) so the turn
|
|
1180
|
-
// ends cleanly
|
|
1203
|
+
// ends cleanly — and keep the pending plan alive past the live wait so
|
|
1204
|
+
// the review card stays up and a later decision recovers the turn.
|
|
1181
1205
|
return { behavior: "deny", message: PROMPT_UNANSWERED_MESSAGE };
|
|
1182
1206
|
}
|
|
1207
|
+
void this.relay.planResolved(target);
|
|
1183
1208
|
const decision = reviewed.value;
|
|
1184
1209
|
if (decision.kind === "approve") {
|
|
1185
1210
|
return { behavior: "allow", updatedInput: input };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-job.js","sourceRoot":"","sources":["../../src/hono/bridge-job.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bridge-job.js","sourceRoot":"","sources":["../../src/hono/bridge-job.ts"],"names":[],"mappings":"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"}
|
|
@@ -484,6 +484,37 @@ describe("BridgeJobExecutor", () => {
|
|
|
484
484
|
{ target: { threadId: "thread_ctx", turnId: "turn_ctx" }, tokens: 96000, window: 200000 },
|
|
485
485
|
]);
|
|
486
486
|
});
|
|
487
|
+
// Some OpenRouter provider routes (observed live: Amazon Bedrock) report
|
|
488
|
+
// all-zero usage on the assistant message. Zero is never a real occupancy —
|
|
489
|
+
// the meter must keep its previous reading, not reset to 0.
|
|
490
|
+
it("ignores an all-zero usage payload instead of overwriting the meter with 0", async () => {
|
|
491
|
+
const relay = recordingRelay();
|
|
492
|
+
const executor = createExecutor({
|
|
493
|
+
relay,
|
|
494
|
+
queryResults: [
|
|
495
|
+
scriptedMessages(assistantMessage("assistant_real", "Working.", "session_next", {
|
|
496
|
+
usage: { input_tokens: 5000, cache_read_input_tokens: 90000, cache_creation_input_tokens: 1000 },
|
|
497
|
+
}), assistantMessage("assistant_zero", "Done.", "session_next", {
|
|
498
|
+
usage: { input_tokens: 0, cache_read_input_tokens: 0, cache_creation_input_tokens: 0 },
|
|
499
|
+
}), resultMessage(0.02, "session_next", {
|
|
500
|
+
"claude-main": {
|
|
501
|
+
inputTokens: 5000,
|
|
502
|
+
outputTokens: 300,
|
|
503
|
+
cacheReadInputTokens: 90000,
|
|
504
|
+
cacheCreationInputTokens: 1000,
|
|
505
|
+
webSearchRequests: 0,
|
|
506
|
+
costUSD: 0.02,
|
|
507
|
+
contextWindow: 200000,
|
|
508
|
+
maxOutputTokens: 32000,
|
|
509
|
+
},
|
|
510
|
+
})),
|
|
511
|
+
],
|
|
512
|
+
});
|
|
513
|
+
await executor.execute({ threadId: "thread_zero", turnId: "turn_zero", prompt: "hi", history: history([]) }, activeControls());
|
|
514
|
+
expect(relay.contextUsageUpdates).toEqual([
|
|
515
|
+
{ target: { threadId: "thread_zero", turnId: "turn_zero" }, tokens: 96000, window: 200000 },
|
|
516
|
+
]);
|
|
517
|
+
});
|
|
487
518
|
it("ignores subagent request usage — only the main conversation drives the meter", async () => {
|
|
488
519
|
const relay = recordingRelay();
|
|
489
520
|
const executor = createExecutor({
|
|
@@ -734,6 +765,28 @@ describe("BridgeJobExecutor", () => {
|
|
|
734
765
|
// Left unset, the CLI's compaction threshold falls through to a remotely-controlled
|
|
735
766
|
// client-data value or experiment gate that can cap it well under the CLI's own
|
|
736
767
|
// ceiling, with no change on our side and no warning to the user.
|
|
768
|
+
// Without this the CLI resolves 200k through the passthrough and compacts at a
|
|
769
|
+
// fifth of capacity — which also clamps the autoCompactWindow pin below to 200k.
|
|
770
|
+
it("requests the 1M context beta for a 1M model", async () => {
|
|
771
|
+
const queryInputs = [];
|
|
772
|
+
const executor = createExecutor({
|
|
773
|
+
queryInputs,
|
|
774
|
+
model: "claude-sonnet-5",
|
|
775
|
+
queryResults: [scriptedMessages(resultMessage(0, "session_beta"))],
|
|
776
|
+
});
|
|
777
|
+
await executor.execute({ threadId: "thread_beta", turnId: "turn_beta", prompt: "Hi", history: history([]) }, activeControls());
|
|
778
|
+
expect(queryInputs[0]?.options.betas).toEqual(["context-1m-2025-08-07"]);
|
|
779
|
+
});
|
|
780
|
+
it("sends no betas for a model that is genuinely 200k", async () => {
|
|
781
|
+
const queryInputs = [];
|
|
782
|
+
const executor = createExecutor({
|
|
783
|
+
queryInputs,
|
|
784
|
+
model: "claude-haiku-4-5",
|
|
785
|
+
queryResults: [scriptedMessages(resultMessage(0, "session_no_beta"))],
|
|
786
|
+
});
|
|
787
|
+
await executor.execute({ threadId: "thread_nobeta", turnId: "turn_nobeta", prompt: "Hi", history: history([]) }, activeControls());
|
|
788
|
+
expect(queryInputs[0]?.options).not.toHaveProperty("betas");
|
|
789
|
+
});
|
|
737
790
|
it("pins the auto-compact window to the context window it resolved for the model", async () => {
|
|
738
791
|
const queryInputs = [];
|
|
739
792
|
const executor = createExecutor({
|
|
@@ -1130,6 +1183,11 @@ describe("BridgeJobExecutor", () => {
|
|
|
1130
1183
|
});
|
|
1131
1184
|
it("denies an unanswered AskUserQuestion gracefully instead of erroring the turn", async () => {
|
|
1132
1185
|
const relay = recordingRelay();
|
|
1186
|
+
let inputResolvedCalls = 0;
|
|
1187
|
+
relay.inputResolved = () => {
|
|
1188
|
+
inputResolvedCalls += 1;
|
|
1189
|
+
return Promise.resolve();
|
|
1190
|
+
};
|
|
1133
1191
|
let guardResult;
|
|
1134
1192
|
const executor = new BridgeJobExecutor({
|
|
1135
1193
|
sdk: {
|
|
@@ -1161,6 +1219,10 @@ describe("BridgeJobExecutor", () => {
|
|
|
1161
1219
|
expect(guardResult.message).toContain("has not answered");
|
|
1162
1220
|
expect(outcome).toMatchObject({ kind: "completed", costUsd: 0, model: "claude-test" });
|
|
1163
1221
|
expect(controls.pendingQuestions.size).toBe(0);
|
|
1222
|
+
// The backend's pending question must SURVIVE the live wait ending: the
|
|
1223
|
+
// question card stays up indefinitely and a later answer dispatches a
|
|
1224
|
+
// recovery turn. Posting input-resolved here would clear it.
|
|
1225
|
+
expect(inputResolvedCalls).toBe(0);
|
|
1164
1226
|
});
|
|
1165
1227
|
it("blocks request_tag_input until resolved, strips secret prefill, and injects the redacted resolution", async () => {
|
|
1166
1228
|
const relay = recordingRelay();
|
|
@@ -1717,8 +1779,6 @@ describe("BridgeJobExecutor turn end with background tasks", () => {
|
|
|
1717
1779
|
// Mimics the real CLI on a held-open input stream: it emits its messages,
|
|
1718
1780
|
// then stays alive until endInput() (stdin EOF) — and once input has ended,
|
|
1719
1781
|
// it exits instead of producing further turns.
|
|
1720
|
-
// A `{ pauseMs }` entry stands in for real CLI dead air (time-to-first-token
|
|
1721
|
-
// after a wake) so settle-window timing can be exercised.
|
|
1722
1782
|
function cliLikeQuery(endInputAt, ...messages) {
|
|
1723
1783
|
let release;
|
|
1724
1784
|
let inputEnded = false;
|
|
@@ -1740,11 +1800,6 @@ describe("BridgeJobExecutor turn end with background tasks", () => {
|
|
|
1740
1800
|
if (inputEnded) {
|
|
1741
1801
|
return;
|
|
1742
1802
|
}
|
|
1743
|
-
const pauseMs = message.pauseMs;
|
|
1744
|
-
if (typeof pauseMs === "number") {
|
|
1745
|
-
await new Promise((resolvePause) => setTimeout(resolvePause, pauseMs));
|
|
1746
|
-
continue;
|
|
1747
|
-
}
|
|
1748
1803
|
await Promise.resolve();
|
|
1749
1804
|
emitted += 1;
|
|
1750
1805
|
yield message;
|
|
@@ -1753,13 +1808,6 @@ describe("BridgeJobExecutor turn end with background tasks", () => {
|
|
|
1753
1808
|
},
|
|
1754
1809
|
};
|
|
1755
1810
|
}
|
|
1756
|
-
function wakeMessage() {
|
|
1757
|
-
return {
|
|
1758
|
-
type: "user",
|
|
1759
|
-
message: { role: "user", content: [{ type: "text", text: "Agent task completed" }] },
|
|
1760
|
-
session_id: "session_bg",
|
|
1761
|
-
};
|
|
1762
|
-
}
|
|
1763
1811
|
it("ends input at the first clean result when the turn ran no tasks", async () => {
|
|
1764
1812
|
const endInputAt = { count: -1 };
|
|
1765
1813
|
const executor = createExecutor({
|
|
@@ -1820,26 +1868,34 @@ describe("BridgeJobExecutor turn end with background tasks", () => {
|
|
|
1820
1868
|
expect(outcome).toMatchObject({ kind: "completed", costUsd: 0.1 });
|
|
1821
1869
|
expect(endInputAt.count).toBe(4);
|
|
1822
1870
|
});
|
|
1823
|
-
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
|
|
1871
|
+
function backgroundTasksChanged(taskIds) {
|
|
1872
|
+
return {
|
|
1873
|
+
type: "system",
|
|
1874
|
+
subtype: "background_tasks_changed",
|
|
1875
|
+
tasks: taskIds.map((taskId) => ({ task_id: taskId, task_type: "local_bash", description: "render" })),
|
|
1876
|
+
session_id: "session_bg",
|
|
1877
|
+
};
|
|
1878
|
+
}
|
|
1879
|
+
// A long foreground command the CLI auto-backgrounds NEVER emits the
|
|
1880
|
+
// task_started/task_notification edge bookends — it surfaces only through the
|
|
1881
|
+
// background_tasks_changed level signal. Pairing edges alone missed it, so
|
|
1882
|
+
// input ended at the clean result, stdin closed under the still-running
|
|
1883
|
+
// command, and its follow-up tool calls all came back "Tool permission
|
|
1884
|
+
// request failed" — the production "control-channel closed mid-turn" error.
|
|
1885
|
+
it("holds the turn open past a result while the background-tasks level signal reports live work", async () => {
|
|
1831
1886
|
const endInputAt = { count: -1 };
|
|
1832
1887
|
const executor = createExecutor({
|
|
1833
1888
|
turnEndSettleMs: 20,
|
|
1834
1889
|
queryResults: [
|
|
1835
|
-
cliLikeQuery(endInputAt,
|
|
1890
|
+
cliLikeQuery(endInputAt, backgroundTasksChanged(["bash_render"]), resultMessage(0.1, "session_bg"), backgroundTasksChanged([])),
|
|
1836
1891
|
],
|
|
1837
1892
|
});
|
|
1838
|
-
const outcome = await executor.execute({ threadId: "
|
|
1839
|
-
//
|
|
1840
|
-
// channel
|
|
1841
|
-
|
|
1842
|
-
expect(
|
|
1893
|
+
const outcome = await executor.execute({ threadId: "thread_level", turnId: "turn_level", prompt: "Render the video", history: history([]) }, activeControls());
|
|
1894
|
+
// All three messages were consumed before input ended: the result did not
|
|
1895
|
+
// close the channel while the level signal reported a live background task,
|
|
1896
|
+
// and the emptied level signal re-armed the end.
|
|
1897
|
+
expect(outcome).toMatchObject({ kind: "completed", costUsd: 0.1 });
|
|
1898
|
+
expect(endInputAt.count).toBe(3);
|
|
1843
1899
|
});
|
|
1844
1900
|
it("does not hold the turn open for ambient skip_transcript tasks", async () => {
|
|
1845
1901
|
const endInputAt = { count: -1 };
|