@koda-sl/baker-bridge 0.112.0-dev.e84bc866b → 0.113.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.
Files changed (39) hide show
  1. package/README.md +10 -8
  2. package/dist/hono/bridge-job.js +1 -1
  3. package/dist/hono/bridge-job.js.map +1 -1
  4. package/dist/hono/bridge-job.test.js +3 -3
  5. package/dist/hono/bridge-job.test.js.map +1 -1
  6. package/dist/hono/check-content.d.ts +49 -0
  7. package/dist/hono/check-content.d.ts.map +1 -0
  8. package/dist/hono/check-content.js +182 -0
  9. package/dist/hono/check-content.js.map +1 -0
  10. package/dist/hono/check-content.test.d.ts +2 -0
  11. package/dist/hono/check-content.test.d.ts.map +1 -0
  12. package/dist/hono/check-content.test.js +87 -0
  13. package/dist/hono/check-content.test.js.map +1 -0
  14. package/dist/hono/model-capabilities.js +4 -4
  15. package/dist/hono/model-capabilities.js.map +1 -1
  16. package/dist/hono/model-capabilities.test.js +1 -1
  17. package/dist/hono/model-capabilities.test.js.map +1 -1
  18. package/dist/hono/publish-recovery.d.ts +1 -1
  19. package/dist/hono/publish-recovery.d.ts.map +1 -1
  20. package/dist/hono/publish-recovery.js +9 -6
  21. package/dist/hono/publish-recovery.js.map +1 -1
  22. package/dist/hono/publish-recovery.test.js +11 -2
  23. package/dist/hono/publish-recovery.test.js.map +1 -1
  24. package/dist/hono/server.d.ts.map +1 -1
  25. package/dist/hono/server.js +9 -0
  26. package/dist/hono/server.js.map +1 -1
  27. package/dist/hono/server.test.js +17 -0
  28. package/dist/hono/server.test.js.map +1 -1
  29. package/dist/hono/workspace-script.d.ts +10 -0
  30. package/dist/hono/workspace-script.d.ts.map +1 -0
  31. package/dist/hono/workspace-script.js +19 -0
  32. package/dist/hono/workspace-script.js.map +1 -0
  33. package/dist/hono/workspace-settle.d.ts +1 -1
  34. package/dist/hono/workspace-settle.d.ts.map +1 -1
  35. package/dist/hono/workspace-settle.js +12 -8
  36. package/dist/hono/workspace-settle.js.map +1 -1
  37. package/dist/review/evidence-block.js +1 -1
  38. package/dist/review/evidence-block.js.map +1 -1
  39. package/package.json +2 -2
@@ -0,0 +1,49 @@
1
+ /**
2
+ * A check, as the Session's review shows it: every file of its folder beside
3
+ * the version on main, plus the shared sdk modules its scripts import.
4
+ *
5
+ * A check is `__tooling__/checks/<scope>/<slug>/`. For a company's own check
6
+ * (`extensions`) that is the whole folder. For a base check only `waivers.json`
7
+ * is the company's — the rest is the platform's and cannot change in a Session
8
+ * — so only that file is listed, with the check's manifest and README for
9
+ * context.
10
+ */
11
+ export type CheckFileStatus = "added" | "modified" | "deleted" | "unchanged";
12
+ export type CheckFile = {
13
+ /** Relative to the check's folder. */
14
+ path: string;
15
+ /** Null when deleted, binary or too large to show. */
16
+ content: string | null;
17
+ /** The file on main; null when it did not exist there (or is binary). */
18
+ baselineContent: string | null;
19
+ status: CheckFileStatus;
20
+ };
21
+ export type CheckContent = {
22
+ slug: string;
23
+ scope: "extensions" | "base";
24
+ manifest: unknown;
25
+ readme: string | null;
26
+ files: CheckFile[];
27
+ /** sdk modules the check's scripts import, as they are now. */
28
+ related: Array<{
29
+ path: string;
30
+ content: string;
31
+ }>;
32
+ };
33
+ type CheckError = {
34
+ kind: "invalid-path";
35
+ value: string;
36
+ } | {
37
+ kind: "not-found";
38
+ path: string;
39
+ };
40
+ type Result<T, E> = {
41
+ ok: true;
42
+ value: T;
43
+ } | {
44
+ ok: false;
45
+ error: E;
46
+ };
47
+ export declare function readCheck(projectRoot: string, slug: string, baseBranch: string): Promise<Result<CheckContent, CheckError>>;
48
+ export {};
49
+ //# sourceMappingURL=check-content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check-content.d.ts","sourceRoot":"","sources":["../../src/hono/check-content.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAgBH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC;AAC7E,MAAM,MAAM,SAAS,GAAG;IACtB,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,yEAAyE;IACzE,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,MAAM,EAAE,eAAe,CAAC;CACzB,CAAC;AACF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,YAAY,GAAG,MAAM,CAAC;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,+DAA+D;IAC/D,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnD,CAAC;AACF,KAAK,UAAU,GAAG;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAChG,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC;AA0IrE,wBAAsB,SAAS,CAC7B,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,CA6B3C"}
@@ -0,0 +1,182 @@
1
+ /**
2
+ * A check, as the Session's review shows it: every file of its folder beside
3
+ * the version on main, plus the shared sdk modules its scripts import.
4
+ *
5
+ * A check is `__tooling__/checks/<scope>/<slug>/`. For a company's own check
6
+ * (`extensions`) that is the whole folder. For a base check only `waivers.json`
7
+ * is the company's — the rest is the platform's and cannot change in a Session
8
+ * — so only that file is listed, with the check's manifest and README for
9
+ * context.
10
+ */
11
+ import { execFile } from "node:child_process";
12
+ import { readdir, readFile, stat } from "node:fs/promises";
13
+ import { join, posix } from "node:path";
14
+ import { promisify } from "node:util";
15
+ const execFileAsync = promisify(execFile);
16
+ const CHECKS_DIR = "__tooling__/checks";
17
+ const SDK_DIR = `${CHECKS_DIR}/sdk`;
18
+ const SLUG = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
19
+ /** Past this a file is listed without its content — nobody reviews a generated blob line by line. */
20
+ const MAX_TEXT_BYTES = 256 * 1024;
21
+ const SKIP_DIRS = new Set(["node_modules", ".cache"]);
22
+ async function git(args, cwd) {
23
+ const { stdout } = await execFileAsync("git", args, { cwd, encoding: "utf8", maxBuffer: 20 * 1024 * 1024 });
24
+ return stdout;
25
+ }
26
+ async function mergeBase(projectRoot, baseBranch) {
27
+ for (const ref of baseBranch.startsWith("origin/") ? [baseBranch] : [baseBranch, `origin/${baseBranch}`]) {
28
+ try {
29
+ return (await git(["merge-base", "HEAD", ref], projectRoot)).trim() || null;
30
+ }
31
+ catch {
32
+ // Try the next conventional base ref.
33
+ }
34
+ }
35
+ return null;
36
+ }
37
+ async function filesOnDisk(root, dir, prefix = "") {
38
+ let entries;
39
+ try {
40
+ entries = await readdir(join(root, dir), { withFileTypes: true });
41
+ }
42
+ catch {
43
+ return [];
44
+ }
45
+ const out = [];
46
+ for (const entry of entries) {
47
+ const rel = prefix ? `${prefix}/${entry.name}` : entry.name;
48
+ if (entry.isDirectory()) {
49
+ if (!SKIP_DIRS.has(entry.name))
50
+ out.push(...(await filesOnDisk(root, `${dir}/${entry.name}`, rel)));
51
+ }
52
+ else
53
+ out.push(rel);
54
+ }
55
+ return out;
56
+ }
57
+ async function filesOnBase(projectRoot, base, dir) {
58
+ if (!base)
59
+ return [];
60
+ try {
61
+ const listed = await git(["ls-tree", "-r", "--name-only", base, "--", `${dir}/`], projectRoot);
62
+ return listed
63
+ .split("\n")
64
+ .filter(Boolean)
65
+ .map((path) => path.slice(dir.length + 1));
66
+ }
67
+ catch {
68
+ return [];
69
+ }
70
+ }
71
+ function asText(bytes) {
72
+ if (bytes.length > MAX_TEXT_BYTES || bytes.includes(0))
73
+ return null;
74
+ return bytes.toString("utf8");
75
+ }
76
+ async function readWorking(projectRoot, path) {
77
+ try {
78
+ if (!(await stat(join(projectRoot, path))).isFile())
79
+ return null;
80
+ return asText(await readFile(join(projectRoot, path)));
81
+ }
82
+ catch {
83
+ return null;
84
+ }
85
+ }
86
+ async function readBase(projectRoot, base, path) {
87
+ if (!base)
88
+ return null;
89
+ try {
90
+ const { stdout } = await execFileAsync("git", ["show", `${base}:${path}`], {
91
+ cwd: projectRoot,
92
+ encoding: "buffer",
93
+ maxBuffer: 20 * 1024 * 1024,
94
+ });
95
+ return asText(stdout);
96
+ }
97
+ catch {
98
+ return null;
99
+ }
100
+ }
101
+ const IMPORT = /(?:from\s*|\bimport\s*\(?\s*)["'](\.{1,2}\/[^"']+)["']/g;
102
+ /** sdk modules the given sources import, resolved from the check's folder. */
103
+ function sdkImports(dir, files) {
104
+ const found = new Set();
105
+ for (const file of files) {
106
+ if (!file.content || !/\.(mjs|js|ts|cjs)$/.test(file.path))
107
+ continue;
108
+ for (const [, spec] of file.content.matchAll(IMPORT)) {
109
+ const target = posix.normalize(posix.join(dir, posix.dirname(file.path), spec ?? ""));
110
+ if (target.startsWith(`${SDK_DIR}/`))
111
+ found.add(target);
112
+ }
113
+ }
114
+ return [...found].sort();
115
+ }
116
+ function parseManifest(text) {
117
+ if (!text)
118
+ return null;
119
+ try {
120
+ return JSON.parse(text);
121
+ }
122
+ catch {
123
+ return null;
124
+ }
125
+ }
126
+ function fileStatus(onDisk, onBase, content, baseline) {
127
+ if (!onDisk)
128
+ return "deleted";
129
+ if (!onBase)
130
+ return "added";
131
+ return content === baseline ? "unchanged" : "modified";
132
+ }
133
+ async function readCheckFiles(projectRoot, base, dir, scope, onDisk, onBase) {
134
+ const listed = [...new Set([...onDisk, ...onBase])]
135
+ .filter((path) => scope === "extensions" || path === "waivers.json")
136
+ .sort();
137
+ const files = [];
138
+ for (const path of listed) {
139
+ const inWorktree = onDisk.includes(path);
140
+ const inBase = onBase.includes(path);
141
+ const content = inWorktree ? await readWorking(projectRoot, `${dir}/${path}`) : null;
142
+ const baselineContent = inBase ? await readBase(projectRoot, base, `${dir}/${path}`) : null;
143
+ files.push({ path, content, baselineContent, status: fileStatus(inWorktree, inBase, content, baselineContent) });
144
+ }
145
+ return files;
146
+ }
147
+ /** The current file, else the one on main — for a check the Session deleted. */
148
+ async function readEither(projectRoot, base, path) {
149
+ return (await readWorking(projectRoot, path)) ?? (await readBase(projectRoot, base, path));
150
+ }
151
+ export async function readCheck(projectRoot, slug, baseBranch) {
152
+ if (!SLUG.test(slug))
153
+ return { ok: false, error: { kind: "invalid-path", value: slug } };
154
+ const base = await mergeBase(projectRoot, baseBranch);
155
+ for (const scope of ["extensions", "base"]) {
156
+ const dir = `${CHECKS_DIR}/${scope}/${slug}`;
157
+ const onDisk = await filesOnDisk(projectRoot, dir);
158
+ const onBase = await filesOnBase(projectRoot, base, dir);
159
+ if (onDisk.length === 0 && onBase.length === 0)
160
+ continue;
161
+ const files = await readCheckFiles(projectRoot, base, dir, scope, onDisk, onBase);
162
+ const related = [];
163
+ for (const path of sdkImports(dir, files)) {
164
+ const content = await readWorking(projectRoot, path);
165
+ if (content !== null)
166
+ related.push({ path, content });
167
+ }
168
+ return {
169
+ ok: true,
170
+ value: {
171
+ slug,
172
+ scope,
173
+ manifest: parseManifest(await readEither(projectRoot, base, `${dir}/check.json`)),
174
+ readme: await readEither(projectRoot, base, `${dir}/README.md`),
175
+ files,
176
+ related,
177
+ },
178
+ };
179
+ }
180
+ return { ok: false, error: { kind: "not-found", path: `${CHECKS_DIR}/extensions/${slug}` } };
181
+ }
182
+ //# sourceMappingURL=check-content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check-content.js","sourceRoot":"","sources":["../../src/hono/check-content.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=check-content.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check-content.test.d.ts","sourceRoot":"","sources":["../../src/hono/check-content.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,87 @@
1
+ import { execFile } from "node:child_process";
2
+ import { mkdir, mkdtemp, rm, writeFile } from "node:fs/promises";
3
+ import { tmpdir } from "node:os";
4
+ import { dirname, join } from "node:path";
5
+ import { promisify } from "node:util";
6
+ import { afterEach, beforeEach, describe, expect, it } from "vitest";
7
+ import { readCheck } from "./check-content.js";
8
+ const execFileAsync = promisify(execFile);
9
+ let dir;
10
+ async function git(...args) {
11
+ await execFileAsync("git", args, { cwd: dir });
12
+ }
13
+ async function write(path, content) {
14
+ await mkdir(dirname(join(dir, path)), { recursive: true });
15
+ await writeFile(join(dir, path), content, "utf-8");
16
+ }
17
+ const EXT = "__tooling__/checks/extensions/guard-copy";
18
+ beforeEach(async () => {
19
+ dir = await mkdtemp(join(tmpdir(), "baker-check-content-"));
20
+ await git("init", "-b", "main");
21
+ await git("config", "user.email", "test@example.com");
22
+ await git("config", "user.name", "Test User");
23
+ });
24
+ afterEach(async () => {
25
+ await rm(dir, { recursive: true, force: true });
26
+ });
27
+ describe("readCheck", () => {
28
+ it("returns every file of a company check with its version on main, and what it uses from the sdk", async () => {
29
+ await write("__tooling__/checks/sdk/guard-utils.mjs", "export function allow() {}\n");
30
+ await write(`${EXT}/check.json`, JSON.stringify({ name: "guard-copy", summary: "Old summary." }));
31
+ await write(`${EXT}/words.mjs`, "export const words = [];\n");
32
+ await git("add", ".");
33
+ await git("commit", "-m", "baseline");
34
+ await git("checkout", "-b", "chat/test");
35
+ await write(`${EXT}/check.json`, JSON.stringify({ name: "guard-copy", summary: "Refuses competitor names." }));
36
+ await write(`${EXT}/guard-copy.mjs`, 'import { allow } from "../../sdk/guard-utils.mjs";\nallow();\n');
37
+ await write(`${EXT}/README.md`, "# guard-copy\n");
38
+ await rm(join(dir, EXT, "words.mjs"));
39
+ const result = await readCheck(dir, "guard-copy", "main");
40
+ expect(result).toMatchObject({
41
+ ok: true,
42
+ value: {
43
+ slug: "guard-copy",
44
+ scope: "extensions",
45
+ manifest: { summary: "Refuses competitor names." },
46
+ readme: "# guard-copy\n",
47
+ related: [{ path: "__tooling__/checks/sdk/guard-utils.mjs", content: "export function allow() {}\n" }],
48
+ },
49
+ });
50
+ const files = result.ok ? result.value.files : [];
51
+ expect(files.map((f) => [f.path, f.status])).toEqual([
52
+ ["README.md", "added"],
53
+ ["check.json", "modified"],
54
+ ["guard-copy.mjs", "added"],
55
+ ["words.mjs", "deleted"],
56
+ ]);
57
+ expect(files.find((f) => f.path === "check.json")?.baselineContent).toContain("Old summary.");
58
+ expect(files.find((f) => f.path === "words.mjs")).toMatchObject({
59
+ content: null,
60
+ baselineContent: "export const words = [];\n",
61
+ });
62
+ });
63
+ it("shows only the waivers of a base check, the one file there that is the company's", async () => {
64
+ await write("__tooling__/checks/base/a11y-audit/check.json", JSON.stringify({ name: "a11y-audit", summary: "WCAG." }));
65
+ await write("__tooling__/checks/base/a11y-audit/a11y-audit.mjs", "// base code\n");
66
+ await write("__tooling__/checks/base/a11y-audit/waivers.json", "[]\n");
67
+ await git("add", ".");
68
+ await git("commit", "-m", "baseline");
69
+ await write("__tooling__/checks/base/a11y-audit/waivers.json", '[{"path":"dist/x/index.html"}]\n');
70
+ const result = await readCheck(dir, "a11y-audit", "main");
71
+ expect(result.ok && result.value.scope).toBe("base");
72
+ expect(result.ok && result.value.files.map((f) => [f.path, f.status])).toEqual([["waivers.json", "modified"]]);
73
+ });
74
+ it("refuses a slug that could leave the checks folder", async () => {
75
+ await expect(readCheck(dir, "../../etc", "main")).resolves.toEqual({
76
+ ok: false,
77
+ error: { kind: "invalid-path", value: "../../etc" },
78
+ });
79
+ });
80
+ it("says a check that exists nowhere is not found", async () => {
81
+ await expect(readCheck(dir, "nothing-here", "main")).resolves.toMatchObject({
82
+ ok: false,
83
+ error: { kind: "not-found" },
84
+ });
85
+ });
86
+ });
87
+ //# sourceMappingURL=check-content.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check-content.test.js","sourceRoot":"","sources":["../../src/hono/check-content.test.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  // Anthropic-native ID expected by the Claude Agent SDK `query({ options: { model } })`.
2
2
  // Opus 5.5 is a deliberate quality-over-cost choice: $4/$20 per MTok on OpenRouter
3
- // against Sonnet 5's $2/$10, so it is 2x the price on input, output AND cache
3
+ // against Sonnet 5.5's $2/$10, so it is 2x the price on input, output AND cache
4
4
  // reads. Most of a turn's spend is re-reading context, so that multiplier lands
5
5
  // on the dominant term — it pays for itself only if the extra capability closes
6
6
  // the same work in fewer turns.
7
7
  //
8
8
  // The blast radius is contained on two sides: the main thread runs at
9
9
  // `medium` effort (see `bridge-job.ts`), and the shared subagents pin themselves
10
- // to Sonnet 5 in their own frontmatter rather than inheriting this. Without that
10
+ // to Sonnet 5.5 in their own frontmatter rather than inheriting this. Without that
11
11
  // pin every fan-out worker would silently move to Opus pricing too.
12
12
  //
13
13
  // The Session review runs on the same id (`REVIEW_MODEL` in the backend's
@@ -65,8 +65,8 @@ export function contextWindowForModel(model) {
65
65
  // Corrects the context window the *runtime* believes each model has. Needed for
66
66
  // every 1M model we run, Opus 5.5 (the default) included.
67
67
  //
68
- // The API does not require this beta. Anthropic serves 1M by default on Opus 5.5, Opus 5
69
- // and Sonnet 5 — `context-1m-2025-08-07` is the legacy
68
+ // The API does not require this beta. Anthropic serves 1M by default on Opus 5.5, Opus 5,
69
+ // Sonnet 5.5 and Sonnet 5 — `context-1m-2025-08-07` is the legacy
70
70
  // Sonnet 4/4.5 header, and sending it changes nothing about the response (verified
71
71
  // against the OpenRouter endpoint: identical 200s with and without it).
72
72
  //
@@ -1 +1 @@
1
- {"version":3,"file":"model-capabilities.js","sourceRoot":"","sources":["../../src/hono/model-capabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-capabilities.js","sourceRoot":"","sources":["../../src/hono/model-capabilities.ts"],"names":[],"mappings":"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"}
@@ -163,7 +163,7 @@ describe("resolveAgentModel", () => {
163
163
  describe("agentModelOverride", () => {
164
164
  // The bridge forwards this to the CLI as CLAUDE_CODE_SUBAGENT_MODEL, so it has
165
165
  // to stay absent in production — otherwise every fan-out worker would lose the
166
- // Sonnet 5 pin in its own frontmatter.
166
+ // Sonnet 5.5 pin in its own frontmatter.
167
167
  it("is absent when the deployment pins nothing", () => {
168
168
  expect(agentModelOverride({})).toBeUndefined();
169
169
  expect(agentModelOverride({ [AGENT_MODEL_ENV]: " " })).toBeUndefined();
@@ -1 +1 @@
1
- {"version":3,"file":"model-capabilities.test.js","sourceRoot":"","sources":["../../src/hono/model-capabilities.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-capabilities.test.js","sourceRoot":"","sources":["../../src/hono/model-capabilities.test.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * This module executes the existing recover-stalled-publish.mjs hook script
7
7
  * directly to reconcile terminal publish status and clean up local resources.
8
8
  *
9
- * Source of truth: __tooling__/hooks/base/recover-stalled-publish.mjs
9
+ * Source of truth: __tooling__/checks/base/recover-stalled-publish/recover-stalled-publish.mjs
10
10
  */
11
11
  export declare function recoverStalledPublish(cwd?: string): Promise<void>;
12
12
  export declare function waitForStalledPublishRecovery(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"publish-recovery.d.ts","sourceRoot":"","sources":["../../src/hono/publish-recovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAaH,wBAAgB,qBAAqB,CAAC,GAAG,SAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAWxE;AAED,wBAAgB,6BAA6B,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7D"}
1
+ {"version":3,"file":"publish-recovery.d.ts","sourceRoot":"","sources":["../../src/hono/publish-recovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAgBH,wBAAgB,qBAAqB,CAAC,GAAG,SAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAWxE;AAED,wBAAgB,6BAA6B,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7D"}
@@ -6,12 +6,15 @@
6
6
  * This module executes the existing recover-stalled-publish.mjs hook script
7
7
  * directly to reconcile terminal publish status and clean up local resources.
8
8
  *
9
- * Source of truth: __tooling__/hooks/base/recover-stalled-publish.mjs
9
+ * Source of truth: __tooling__/checks/base/recover-stalled-publish/recover-stalled-publish.mjs
10
10
  */
11
11
  import { execFile } from "node:child_process";
12
- import { existsSync } from "node:fs";
13
- import { join } from "node:path";
14
- const HOOK_SCRIPT = "__tooling__/hooks/base/recover-stalled-publish.mjs";
12
+ import { workspaceScript } from "./workspace-script.js";
13
+ // Newest layout first; the flat one is kept for company repos not yet synced.
14
+ const HOOK_SCRIPTS = [
15
+ "__tooling__/checks/base/recover-stalled-publish/recover-stalled-publish.mjs",
16
+ "__tooling__/hooks/base/recover-stalled-publish.mjs",
17
+ ];
15
18
  const HOOK_TIMEOUT_MS = 35_000;
16
19
  let activeRecovery = null;
17
20
  let recoveryDirty = false;
@@ -39,8 +42,8 @@ async function drainPublishRecovery() {
39
42
  }
40
43
  async function runPublishRecovery(cwd) {
41
44
  try {
42
- const hookScript = join(cwd, HOOK_SCRIPT);
43
- if (!existsSync(hookScript)) {
45
+ const hookScript = workspaceScript(cwd, HOOK_SCRIPTS);
46
+ if (!hookScript) {
44
47
  return;
45
48
  }
46
49
  await new Promise((resolve) => {
@@ -1 +1 @@
1
- {"version":3,"file":"publish-recovery.js","sourceRoot":"","sources":["../../src/hono/publish-recovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,WAAW,GAAG,oDAAoD,CAAC;AACzE,MAAM,eAAe,GAAG,MAAM,CAAC;AAE/B,IAAI,cAAc,GAAyB,IAAI,CAAC;AAChD,IAAI,aAAa,GAAG,KAAK,CAAC;AAC1B,IAAI,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAE9B,MAAM,UAAU,qBAAqB,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IACvD,SAAS,GAAG,GAAG,CAAC;IAChB,IAAI,cAAc,EAAE,CAAC;QACnB,aAAa,GAAG,IAAI,CAAC;QACrB,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,aAAa,GAAG,IAAI,CAAC;IACrB,cAAc,GAAG,oBAAoB,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;QACnD,cAAc,GAAG,IAAI,CAAC;IACxB,CAAC,CAAC,CAAC;IACH,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,6BAA6B;IAC3C,OAAO,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;AAC7C,CAAC;AAED,KAAK,UAAU,oBAAoB;IACjC,OAAO,aAAa,EAAE,CAAC;QACrB,aAAa,GAAG,KAAK,CAAC;QACtB,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,GAAW;IAC3C,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAClC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,CAAC,GAAiB,EAAE,EAAE;gBACpG,IAAI,GAAG,EAAE,CAAC;oBACR,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBACvE,CAAC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;YACnB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;YACvB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAClG,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"publish-recovery.js","sourceRoot":"","sources":["../../src/hono/publish-recovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,8EAA8E;AAC9E,MAAM,YAAY,GAAG;IACnB,6EAA6E;IAC7E,oDAAoD;CACrD,CAAC;AACF,MAAM,eAAe,GAAG,MAAM,CAAC;AAE/B,IAAI,cAAc,GAAyB,IAAI,CAAC;AAChD,IAAI,aAAa,GAAG,KAAK,CAAC;AAC1B,IAAI,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAE9B,MAAM,UAAU,qBAAqB,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IACvD,SAAS,GAAG,GAAG,CAAC;IAChB,IAAI,cAAc,EAAE,CAAC;QACnB,aAAa,GAAG,IAAI,CAAC;QACrB,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,aAAa,GAAG,IAAI,CAAC;IACrB,cAAc,GAAG,oBAAoB,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;QACnD,cAAc,GAAG,IAAI,CAAC;IACxB,CAAC,CAAC,CAAC;IACH,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,6BAA6B;IAC3C,OAAO,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;AAC7C,CAAC;AAED,KAAK,UAAU,oBAAoB;IACjC,OAAO,aAAa,EAAE,CAAC;QACrB,aAAa,GAAG,KAAK,CAAC;QACtB,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,GAAW;IAC3C,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QACtD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAClC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,CAAC,GAAiB,EAAE,EAAE;gBACpG,IAAI,GAAG,EAAE,CAAC;oBACR,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBACvE,CAAC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;YACnB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;YACvB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAClG,CAAC;AACH,CAAC"}
@@ -13,8 +13,8 @@ afterEach(async () => {
13
13
  describe("publish recovery", () => {
14
14
  it("runs one extra recovery pass when requests arrive during an active pass", async () => {
15
15
  tempDir = await mkdtemp(join(tmpdir(), "baker-publish-recovery-"));
16
- await mkdir(join(tempDir, "__tooling__/hooks/base"), { recursive: true });
17
- await writeFile(join(tempDir, "__tooling__/hooks/base/recover-stalled-publish.mjs"), [
16
+ await mkdir(join(tempDir, "__tooling__/checks/base/recover-stalled-publish"), { recursive: true });
17
+ await writeFile(join(tempDir, "__tooling__/checks/base/recover-stalled-publish/recover-stalled-publish.mjs"), [
18
18
  'import { appendFile } from "node:fs/promises";',
19
19
  'await appendFile("recovery-count.txt", "1\\n");',
20
20
  "await new Promise((resolve) => setTimeout(resolve, 100));",
@@ -22,5 +22,14 @@ describe("publish recovery", () => {
22
22
  await Promise.all([recoverStalledPublish(tempDir), recoverStalledPublish(tempDir), recoverStalledPublish(tempDir)]);
23
23
  await expect(readFile(join(tempDir, "recovery-count.txt"), "utf8")).resolves.toBe("1\n1\n");
24
24
  });
25
+ // A company repo the scaffold sync has not reached yet still has the flat
26
+ // layout, and the bridge is newer than it: recovery must still run there.
27
+ it("runs the recovery hook from a workspace still on the flat tooling layout", async () => {
28
+ tempDir = await mkdtemp(join(tmpdir(), "baker-publish-recovery-"));
29
+ await mkdir(join(tempDir, "__tooling__/hooks/base"), { recursive: true });
30
+ await writeFile(join(tempDir, "__tooling__/hooks/base/recover-stalled-publish.mjs"), 'import { appendFile } from "node:fs/promises";\nawait appendFile("recovery-count.txt", "1\\n");\n');
31
+ await recoverStalledPublish(tempDir);
32
+ await expect(readFile(join(tempDir, "recovery-count.txt"), "utf8")).resolves.toBe("1\n");
33
+ });
25
34
  });
26
35
  //# sourceMappingURL=publish-recovery.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"publish-recovery.test.js","sourceRoot":"","sources":["../../src/hono/publish-recovery.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,IAAI,OAAO,GAAkB,IAAI,CAAC;AAElC,SAAS,CAAC,KAAK,IAAI,EAAE;IACnB,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACvF,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,yBAAyB,CAAC,CAAC,CAAC;QACnE,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,wBAAwB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,MAAM,SAAS,CACb,IAAI,CAAC,OAAO,EAAE,oDAAoD,CAAC,EACnE;YACE,gDAAgD;YAChD,iDAAiD;YACjD,2DAA2D;SAC5D,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QAEF,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAEpH,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9F,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"publish-recovery.test.js","sourceRoot":"","sources":["../../src/hono/publish-recovery.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,IAAI,OAAO,GAAkB,IAAI,CAAC;AAElC,SAAS,CAAC,KAAK,IAAI,EAAE;IACnB,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACvF,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,yBAAyB,CAAC,CAAC,CAAC;QACnE,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,iDAAiD,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnG,MAAM,SAAS,CACb,IAAI,CAAC,OAAO,EAAE,6EAA6E,CAAC,EAC5F;YACE,gDAAgD;YAChD,iDAAiD;YACjD,2DAA2D;SAC5D,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QAEF,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAEpH,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9F,CAAC,CAAC,CAAC;IAEH,0EAA0E;IAC1E,0EAA0E;IAC1E,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;QACxF,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,yBAAyB,CAAC,CAAC,CAAC;QACnE,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,wBAAwB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,MAAM,SAAS,CACb,IAAI,CAAC,OAAO,EAAE,oDAAoD,CAAC,EACnE,mGAAmG,CACpG,CAAC;QAEF,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAErC,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/hono/server.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,IAAI,EAAE,MAAM,MAAM,CAAC;AAe1C,OAAO,EAAE,KAAK,kBAAkB,EAA4B,MAAM,oBAAoB,CAAC;AA6DvF,KAAK,mBAAmB,GAAG;IACzB,YAAY,CAAC,EAAE,kBAAkB,CAAC;CACnC,CAAC;AAEF,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB;;iBA4V1C,OAAO,CAAC,IAAI,CAAC;gBASd,OAAO,CAAC,IAAI,CAAC;EAiB/B"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/hono/server.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,IAAI,EAAE,MAAM,MAAM,CAAC;AAgB1C,OAAO,EAAE,KAAK,kBAAkB,EAA4B,MAAM,oBAAoB,CAAC;AA6DvF,KAAK,mBAAmB,GAAG;IACzB,YAAY,CAAC,EAAE,kBAAkB,CAAC;CACnC,CAAC;AAEF,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB;;iBAwW1C,OAAO,CAAC,IAAI,CAAC;gBASd,OAAO,CAAC,IAAI,CAAC;EAiB/B"}
@@ -6,6 +6,7 @@ import { abortSession, getOrCreateSession, getSlashCommands } from "./agent.js";
6
6
  import { parseAvatarCastingResult } from "./avatar-casting.js";
7
7
  import { parsePlanDecision } from "./bridge-job.js";
8
8
  import { processAsync } from "./callback.js";
9
+ import { readCheck } from "./check-content.js";
9
10
  import { parseConnectionInputResolution } from "./connection-input.js";
10
11
  import { env } from "./env.js";
11
12
  import { applyFlowResolution, parseFlowInputDecision, } from "./flow-input.js";
@@ -159,6 +160,14 @@ export function createServer(options = {}) {
159
160
  app.get("/knowledge/:collection/:entry", (c) => {
160
161
  return serveKnowledgeEntry(c, `${c.req.param("collection")}/${c.req.param("entry")}`);
161
162
  });
163
+ // A check of the Session's: its files beside main, and the sdk modules it uses.
164
+ app.get("/checks/:slug", async (c) => {
165
+ const result = await readCheck(runtimeFiles.projectRoot(), c.req.param("slug"), env.BAKER_BASE_BRANCH ?? "main");
166
+ if (result.ok) {
167
+ return c.json(result.value);
168
+ }
169
+ return c.json({ error: result.error.kind === "invalid-path" ? "Invalid check" : "Check not found" }, result.error.kind === "invalid-path" ? 400 : 404);
170
+ });
162
171
  app.get("/landings/:slug/definition", async (c) => {
163
172
  const result = await contentApi.readLandingDefinition(c.req.param("slug"), { includeBaseline: includeBaseline(c) });
164
173
  if (result.ok) {