@koda-sl/baker-bridge 0.122.0-dev.edb8d8767 → 0.122.0
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 +29 -18
- package/dist/hono/bridge-job.d.ts +0 -2
- package/dist/hono/bridge-job.d.ts.map +1 -1
- package/dist/hono/bridge-job.js +4 -16
- package/dist/hono/bridge-job.js.map +1 -1
- package/dist/hono/bridge-job.test.js +4 -33
- package/dist/hono/bridge-job.test.js.map +1 -1
- package/dist/hono/openrouter-session.d.ts.map +1 -1
- package/dist/hono/openrouter-session.js +12 -1
- package/dist/hono/openrouter-session.js.map +1 -1
- package/dist/hono/openrouter-session.test.js +9 -3
- package/dist/hono/openrouter-session.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -226,8 +226,6 @@ function createExecutor(options) {
|
|
|
226
226
|
stallTimeoutMs: options.stallTimeoutMs,
|
|
227
227
|
stallCheckIntervalMs: options.stallCheckIntervalMs,
|
|
228
228
|
turnEndSettleMs: options.turnEndSettleMs,
|
|
229
|
-
// A test that ends on a silent settle waits no longer than its settle window.
|
|
230
|
-
turnEndWakeMs: options.turnEndWakeMs ?? options.turnEndSettleMs,
|
|
231
229
|
turnEndExitGuardMs: options.turnEndExitGuardMs,
|
|
232
230
|
settleWorkspace: options.settleWorkspace ?? (() => Promise.resolve()),
|
|
233
231
|
...(options.turnEvents
|
|
@@ -1103,7 +1101,10 @@ describe("BridgeJobExecutor", () => {
|
|
|
1103
1101
|
// web-plugin opt-out at their integration point: all must actually reach the
|
|
1104
1102
|
// subprocess body via CLAUDE_CODE_EXTRA_BODY.
|
|
1105
1103
|
expect(JSON.parse(env?.CLAUDE_CODE_EXTRA_BODY ?? "{}")).toEqual({
|
|
1106
|
-
provider: {
|
|
1104
|
+
provider: {
|
|
1105
|
+
order: ["amazon-bedrock", "amazon-bedrock/eu-west-1", "amazon-bedrock/us-east-1"],
|
|
1106
|
+
allow_fallbacks: true,
|
|
1107
|
+
},
|
|
1107
1108
|
session_id: "thread_env",
|
|
1108
1109
|
plugins: [{ id: "web", enabled: false }],
|
|
1109
1110
|
});
|
|
@@ -1131,18 +1132,6 @@ describe("BridgeJobExecutor", () => {
|
|
|
1131
1132
|
NO_COLOR: "1",
|
|
1132
1133
|
});
|
|
1133
1134
|
});
|
|
1134
|
-
// The CLI clamps a Bash call's timeout to 10 minutes by default, so the
|
|
1135
|
-
// workspace hook's 30 minutes for `baker canvas run` became 600 s and a
|
|
1136
|
-
// render with a repair round was moved to the background (dev, Oct 2026).
|
|
1137
|
-
it("lets a Bash call run the 30 minutes the workspace's timeout hook gives a render", async () => {
|
|
1138
|
-
const queryInputs = [];
|
|
1139
|
-
const executor = createExecutor({
|
|
1140
|
-
queryInputs,
|
|
1141
|
-
queryResults: [scriptedMessages(resultMessage(0, "session_long"))],
|
|
1142
|
-
});
|
|
1143
|
-
await executor.execute({ threadId: "thread_long", turnId: "turn_long", prompt: "Render the ad", history: history([]) }, activeControls());
|
|
1144
|
-
expect(Number(queryInputs[0]?.options.env?.BASH_MAX_TIMEOUT_MS)).toBeGreaterThanOrEqual(30 * 60_000);
|
|
1145
|
-
});
|
|
1146
1135
|
// The four shared subagents pin themselves to Sonnet 5.5 in their own
|
|
1147
1136
|
// frontmatter. Since CLI 2.1.251 CLAUDE_CODE_SUBAGENT_MODEL is only the default
|
|
1148
1137
|
// under that pin, so the override needs the FORCE flag to outrank it.
|
|
@@ -3629,24 +3618,6 @@ describe("BridgeJobExecutor turn end with background tasks", () => {
|
|
|
3629
3618
|
expect(outcome).toMatchObject({ kind: "completed", costUsd: 0.1 });
|
|
3630
3619
|
expect(endInputAt.count).toBe(3);
|
|
3631
3620
|
});
|
|
3632
|
-
// Dev chat, Oct 2026: an auto-backgrounded render settled, input ended one
|
|
3633
|
-
// settle window later, and the model woke ~3 s after the settle on a closed
|
|
3634
|
-
// channel; it started a second render in the background, and the CLI's exit
|
|
3635
|
-
// at its result killed it. The CLI streams nothing between a settle and the
|
|
3636
|
-
// woken turn's first token, so only a longer wait after a settle covers it.
|
|
3637
|
-
it("keeps input open for the model a settled background command wakes, though nothing streams for a while", async () => {
|
|
3638
|
-
const endInputAt = { count: -1 };
|
|
3639
|
-
const executor = createExecutor({
|
|
3640
|
-
turnEndSettleMs: 20,
|
|
3641
|
-
turnEndWakeMs: 5_000,
|
|
3642
|
-
queryResults: [
|
|
3643
|
-
cliLikeQuery(endInputAt, backgroundTasksChanged(["bash_render"]), resultMessage(0.1, "session_bg"), backgroundTasksChanged([]), { pauseMs: 60 }, assistantMessage("msg_wake", "The third render is ready", "session_bg"), resultMessage(0.3, "session_bg")),
|
|
3644
|
-
],
|
|
3645
|
-
});
|
|
3646
|
-
const outcome = await executor.execute({ threadId: "thread_wake_late", turnId: "turn_wake_late", prompt: "Render three", history: history([]) }, activeControls());
|
|
3647
|
-
expect(outcome).toMatchObject({ kind: "completed", costUsd: 0.3 });
|
|
3648
|
-
expect(endInputAt.count).toBe(5);
|
|
3649
|
-
});
|
|
3650
3621
|
// The production shape: the model refused, the CLI answered with an error
|
|
3651
3622
|
// result and then waited on stdin like after any other result. The error was
|
|
3652
3623
|
// no longer thrown, and only a clean result ended input, so the turn sat idle
|