@koda-sl/baker-bridge 0.70.2 → 0.71.0-dev.724bad136
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 +1 -12
- package/dist/hono/agent.d.ts +2 -2
- package/dist/hono/agent.d.ts.map +1 -1
- package/dist/hono/agent.js +5 -3
- package/dist/hono/agent.js.map +1 -1
- package/dist/hono/bridge-job.d.ts +7 -0
- package/dist/hono/bridge-job.d.ts.map +1 -1
- package/dist/hono/bridge-job.js +49 -39
- package/dist/hono/bridge-job.js.map +1 -1
- package/dist/hono/bridge-job.test.js +45 -72
- package/dist/hono/bridge-job.test.js.map +1 -1
- package/dist/hono/callback.js +2 -2
- package/dist/hono/callback.js.map +1 -1
- package/dist/hono/session-continuity.d.ts +0 -24
- package/dist/hono/session-continuity.d.ts.map +1 -1
- package/dist/hono/session-continuity.js +1 -61
- package/dist/hono/session-continuity.js.map +1 -1
- package/dist/hono/session-continuity.test.js +1 -78
- package/dist/hono/session-continuity.test.js.map +1 -1
- package/dist/hono/types.d.ts +6 -0
- package/dist/hono/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,14 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { isVerbatimSlashCommandPrompt } from "./slash-commands.js";
|
|
2
2
|
export function emptyInProgressSession() {
|
|
3
3
|
return { sawSessionId: false, sawCleanResult: false };
|
|
4
4
|
}
|
|
5
5
|
export function prepareSessionAttempt(input) {
|
|
6
|
-
// Publish resumes the conversation like any other turn, but does not let the
|
|
7
|
-
// CLI summarize it on the way in. Auto-compact fires on a *threshold*, not on
|
|
8
|
-
// a real overflow, so a long chat paid for a summary between the Publish click
|
|
9
|
-
// and any progress — every time. Let the turn start and run; if a request
|
|
10
|
-
// genuinely overflows, `compactionRetryAttempt` compacts and retries then.
|
|
11
|
-
const autoCompact = isPublishCommandPrompt(input.requestPrompt) ? { autoCompact: false } : {};
|
|
12
6
|
if (input.loaded?.kind === "clean") {
|
|
13
7
|
const boundary = input.loaded.boundary;
|
|
14
8
|
return {
|
|
@@ -21,7 +15,6 @@ export function prepareSessionAttempt(input) {
|
|
|
21
15
|
...(boundary.resumeSessionAt ? { resumeSessionAt: boundary.resumeSessionAt } : {}),
|
|
22
16
|
},
|
|
23
17
|
contextSource: "local_resume",
|
|
24
|
-
...autoCompact,
|
|
25
18
|
};
|
|
26
19
|
}
|
|
27
20
|
// A verbatim command (e.g. `/compact`) must stay the leading token. If there
|
|
@@ -69,61 +62,8 @@ export function stallContinuationAttempt(attempt, inProgress) {
|
|
|
69
62
|
attemptedRehydration: attempt.attemptedRehydration,
|
|
70
63
|
usedBoundary: attempt.usedBoundary,
|
|
71
64
|
resumeOptions: { resume: inProgress.sessionId, forkSession: true },
|
|
72
|
-
// Carried, not defaulted: a stall is a connection failure, not evidence the
|
|
73
|
-
// session needs summarizing, so a publish continuation keeps the opt-out —
|
|
74
|
-
// and stays eligible for the one compaction retry a real overflow earns.
|
|
75
|
-
autoCompact: attempt.autoCompact,
|
|
76
65
|
};
|
|
77
66
|
}
|
|
78
|
-
// Agent-facing note for a retry after a request was refused for size. Older
|
|
79
|
-
// turns have just been summarized away, so this says why the session got shorter
|
|
80
|
-
// and to carry on rather than restart the steps it already completed.
|
|
81
|
-
export const COMPACTION_RESUME_PROMPT = "[Older parts of this conversation were summarized to make room. The session has been restored. " +
|
|
82
|
-
"Continue exactly where you left off; do not repeat work that already completed.]";
|
|
83
|
-
/**
|
|
84
|
-
* Retry the turn with compaction allowed. Used once, and only after a request was
|
|
85
|
-
* actually refused for size: this is the point where summarizing has stopped
|
|
86
|
-
* being a precaution and become the only way the turn can run.
|
|
87
|
-
*
|
|
88
|
-
* When the agent had already produced work, resume THAT session (forked, as in
|
|
89
|
-
* `stallContinuationAttempt`) — its transcript holds the steps completed before
|
|
90
|
-
* the overflow, and re-sending the original prompt would make the agent start
|
|
91
|
-
* them over. The test for "produced work" is `resumeSessionAt`, set only on an
|
|
92
|
-
* assistant message: `sessionId` arrives with the CLI's `system`/`init`, before
|
|
93
|
-
* the first model request, so on the case this retry exists for — a full chat
|
|
94
|
-
* whose very first publish request is refused — an id-based test would send a
|
|
95
|
-
* "continue where you left off" note into a session where nothing ran, instead
|
|
96
|
-
* of the `/publish` the turn still has to deliver.
|
|
97
|
-
*/
|
|
98
|
-
export function compactionRetryAttempt(attempt, inProgress) {
|
|
99
|
-
if (!inProgress?.sessionId || !inProgress.resumeSessionAt) {
|
|
100
|
-
return { ...attempt, autoCompact: true };
|
|
101
|
-
}
|
|
102
|
-
return {
|
|
103
|
-
prompt: COMPACTION_RESUME_PROMPT,
|
|
104
|
-
attemptedRehydration: attempt.attemptedRehydration,
|
|
105
|
-
usedBoundary: attempt.usedBoundary,
|
|
106
|
-
resumeOptions: { resume: inProgress.sessionId, forkSession: true },
|
|
107
|
-
autoCompact: true,
|
|
108
|
-
};
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* A request the provider refused because it no longer fits the context window.
|
|
112
|
-
* Distinct from the CLI's own auto-compact threshold, which trips well before
|
|
113
|
-
* this — these are the upstream messages that mean the turn cannot proceed as-is.
|
|
114
|
-
*/
|
|
115
|
-
export function isContextOverflowError(error) {
|
|
116
|
-
const message = errorMessage(error).toLowerCase();
|
|
117
|
-
return (
|
|
118
|
-
// Anthropic: "prompt is too long: 215424 tokens > 200000 maximum".
|
|
119
|
-
// OpenRouter / OpenAI-compatible: "This endpoint's maximum context length is
|
|
120
|
-
// N tokens" + the `context_length_exceeded` code.
|
|
121
|
-
message.includes("prompt is too long") ||
|
|
122
|
-
message.includes("context_length_exceeded") ||
|
|
123
|
-
message.includes("context length exceeded") ||
|
|
124
|
-
message.includes("maximum context length") ||
|
|
125
|
-
message.includes("exceed context limit"));
|
|
126
|
-
}
|
|
127
67
|
export function observeInProgressSession(inProgress, msg) {
|
|
128
68
|
let next = inProgress;
|
|
129
69
|
const sessionId = messageSessionId(msg);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-continuity.js","sourceRoot":"","sources":["../../src/hono/session-continuity.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"session-continuity.js","sourceRoot":"","sources":["../../src/hono/session-continuity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { describe, expect, it } from "vitest";
|
|
2
|
-
import { applyCurrentSenderAttribution,
|
|
2
|
+
import { applyCurrentSenderAttribution, formatSenderLabel, prepareSessionAttempt } from "./session-continuity.js";
|
|
3
3
|
const historyWith = (text) => ({
|
|
4
4
|
entries: [{ role: "user", text, createdAt: 0 }],
|
|
5
5
|
omittedEntryCount: 0,
|
|
@@ -59,14 +59,6 @@ describe("prepareSessionAttempt", () => {
|
|
|
59
59
|
expect(attempt.prompt).toContain("earlier turn");
|
|
60
60
|
expect(attempt.prompt).not.toBe("Make the hero blue");
|
|
61
61
|
});
|
|
62
|
-
it("resumes the chat session for publish but lets it start without compacting first", () => {
|
|
63
|
-
const attempt = prepareSessionAttempt({
|
|
64
|
-
requestPrompt: "/publish",
|
|
65
|
-
loaded: { kind: "clean", boundary: { version: 2, sessionId: "s1", updatedAtMs: 1 } },
|
|
66
|
-
});
|
|
67
|
-
expect(attempt.resumeOptions.resume).toBe("s1");
|
|
68
|
-
expect(attempt.autoCompact).toBe(false);
|
|
69
|
-
});
|
|
70
62
|
it("never wraps a verbatim command in a history preamble, keeping it the leading token", () => {
|
|
71
63
|
const attempt = prepareSessionAttempt({
|
|
72
64
|
requestPrompt: "/compact",
|
|
@@ -76,73 +68,4 @@ describe("prepareSessionAttempt", () => {
|
|
|
76
68
|
expect(attempt.attemptedRehydration).toBe(false);
|
|
77
69
|
});
|
|
78
70
|
});
|
|
79
|
-
describe("isContextOverflowError", () => {
|
|
80
|
-
it("recognizes the request that no longer fits the context window", () => {
|
|
81
|
-
expect(isContextOverflowError(new Error("prompt is too long: 215424 tokens > 200000 maximum"))).toBe(true);
|
|
82
|
-
expect(isContextOverflowError(new Error("This endpoint's maximum context length is 200000 tokens"))).toBe(true);
|
|
83
|
-
expect(isContextOverflowError(new Error("context_length_exceeded"))).toBe(true);
|
|
84
|
-
});
|
|
85
|
-
it("leaves unrelated failures alone", () => {
|
|
86
|
-
expect(isContextOverflowError(new Error("Cannot resume: session not found"))).toBe(false);
|
|
87
|
-
expect(isContextOverflowError(new Error("fetch failed"))).toBe(false);
|
|
88
|
-
});
|
|
89
|
-
});
|
|
90
|
-
describe("stallContinuationAttempt", () => {
|
|
91
|
-
it("keeps publish's opt-out of precautionary compaction across a stall resume", () => {
|
|
92
|
-
const attempt = prepareSessionAttempt({
|
|
93
|
-
requestPrompt: "/publish",
|
|
94
|
-
loaded: { kind: "clean", boundary: { version: 2, sessionId: "s1", updatedAtMs: 1 } },
|
|
95
|
-
});
|
|
96
|
-
const continuation = stallContinuationAttempt(attempt, {
|
|
97
|
-
sessionId: "s_live",
|
|
98
|
-
sawSessionId: true,
|
|
99
|
-
sawCleanResult: false,
|
|
100
|
-
});
|
|
101
|
-
expect(continuation.resumeOptions.resume).toBe("s_live");
|
|
102
|
-
expect(continuation.autoCompact).toBe(false);
|
|
103
|
-
});
|
|
104
|
-
});
|
|
105
|
-
describe("compactionRetryAttempt", () => {
|
|
106
|
-
it("re-sends the same turn with compaction allowed", () => {
|
|
107
|
-
const attempt = prepareSessionAttempt({
|
|
108
|
-
requestPrompt: "/publish",
|
|
109
|
-
loaded: { kind: "clean", boundary: { version: 2, sessionId: "s1", updatedAtMs: 1 } },
|
|
110
|
-
});
|
|
111
|
-
const retry = compactionRetryAttempt(attempt);
|
|
112
|
-
expect(retry.prompt).toBe("/publish");
|
|
113
|
-
expect(retry.resumeOptions.resume).toBe("s1");
|
|
114
|
-
expect(retry.autoCompact).toBe(true);
|
|
115
|
-
});
|
|
116
|
-
it("re-sends the command when the very first request was refused, session id notwithstanding", () => {
|
|
117
|
-
const attempt = prepareSessionAttempt({
|
|
118
|
-
requestPrompt: "/publish",
|
|
119
|
-
loaded: { kind: "clean", boundary: { version: 2, sessionId: "s1", updatedAtMs: 1 } },
|
|
120
|
-
});
|
|
121
|
-
// The CLI announces its session id (`system`/`init`) before the first model
|
|
122
|
-
// request, so an id alone does not mean the agent ran anything.
|
|
123
|
-
const retry = compactionRetryAttempt(attempt, {
|
|
124
|
-
sessionId: "s_live",
|
|
125
|
-
sawSessionId: true,
|
|
126
|
-
sawCleanResult: false,
|
|
127
|
-
});
|
|
128
|
-
expect(retry.prompt).toBe("/publish");
|
|
129
|
-
expect(retry.resumeOptions.resume).toBe("s1");
|
|
130
|
-
expect(retry.autoCompact).toBe(true);
|
|
131
|
-
});
|
|
132
|
-
it("continues the in-flight session once the agent has produced work", () => {
|
|
133
|
-
const attempt = prepareSessionAttempt({
|
|
134
|
-
requestPrompt: "/publish",
|
|
135
|
-
loaded: { kind: "clean", boundary: { version: 2, sessionId: "s1", updatedAtMs: 1 } },
|
|
136
|
-
});
|
|
137
|
-
const retry = compactionRetryAttempt(attempt, {
|
|
138
|
-
sessionId: "s_live",
|
|
139
|
-
resumeSessionAt: "assistant_1",
|
|
140
|
-
sawSessionId: true,
|
|
141
|
-
sawCleanResult: false,
|
|
142
|
-
});
|
|
143
|
-
expect(retry.prompt).toBe(COMPACTION_RESUME_PROMPT);
|
|
144
|
-
expect(retry.resumeOptions.resume).toBe("s_live");
|
|
145
|
-
expect(retry.autoCompact).toBe(true);
|
|
146
|
-
});
|
|
147
|
-
});
|
|
148
71
|
//# sourceMappingURL=session-continuity.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-continuity.test.js","sourceRoot":"","sources":["../../src/hono/session-continuity.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,
|
|
1
|
+
{"version":3,"file":"session-continuity.test.js","sourceRoot":"","sources":["../../src/hono/session-continuity.test.ts"],"names":[],"mappings":"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"}
|
package/dist/hono/types.d.ts
CHANGED
|
@@ -56,6 +56,12 @@ export interface AsyncMessageRequest {
|
|
|
56
56
|
currentReference?: CurrentReference;
|
|
57
57
|
currentSender?: DispatchSender;
|
|
58
58
|
planMode?: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Nobody is watching this turn — it was started by a schedule, not a person.
|
|
61
|
+
* Blocking prompts cannot be answered, so they are denied rather than left to
|
|
62
|
+
* time out and park the thread forever. See `deniedUnattendedPrompt`.
|
|
63
|
+
*/
|
|
64
|
+
unattended?: boolean;
|
|
59
65
|
}
|
|
60
66
|
export {};
|
|
61
67
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/hono/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hono/types.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,yBAAyB;IACjC,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yGAAyG;IACzG,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,yBAAyB,EAAE,CAAC;IAC1C,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,oBAAoB,EAAE,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,uEAAuE;AACvE,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,aAAa,CAAC,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hono/types.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,yBAAyB;IACjC,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yGAAyG;IACzG,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,yBAAyB,EAAE,CAAC;IAC1C,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,oBAAoB,EAAE,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,uEAAuE;AACvE,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,aAAa,CAAC,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@koda-sl/baker-bridge",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.71.0-dev.724bad136",
|
|
4
4
|
"description": "HTTP server wrapping the Claude Agent SDK. Persists chat events to Convex; the dashboard subscribes via Convex realtime",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|