@bunny-agent/manager 0.9.59-beta.6 → 0.9.59-beta.8

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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=approval-file.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval-file.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/approval-file.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { approvalFileName } from "../approval-file.js";
3
+ describe("approvalFileName", () => {
4
+ it("preserves legacy filenames for normal tool call IDs", () => {
5
+ expect(approvalFileName("tool-call_123.abc")).toBe("tool-call_123.abc.json");
6
+ });
7
+ it("hashes path-unsafe and oversized tool call IDs deterministically", () => {
8
+ const toolCallId = `thought/${"opaque+payload".repeat(80)}`;
9
+ const filename = approvalFileName(toolCallId);
10
+ expect(filename).toMatch(/^hashed-[a-f0-9]{64}\.json$/);
11
+ expect(filename).toBe(approvalFileName(toolCallId));
12
+ expect(Buffer.byteLength(filename, "utf8")).toBeLessThan(255);
13
+ });
14
+ });
15
+ //# sourceMappingURL=approval-file.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval-file.test.js","sourceRoot":"","sources":["../../src/__tests__/approval-file.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAChD,wBAAwB,CACzB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,UAAU,GAAG,WAAW,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;QAC5D,MAAM,QAAQ,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAE9C,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;QACxD,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Return the shared approval filename for a tool call.
3
+ *
4
+ * Normal tool call IDs keep their legacy filenames. IDs containing path
5
+ * separators, unsafe characters, or unusually long byte sequences use a
6
+ * deterministic SHA-256 filename so every runner and SDK client resolves the
7
+ * same file without exceeding filesystem component limits.
8
+ */
9
+ export declare function approvalFileName(toolCallId: string): string;
10
+ //# sourceMappingURL=approval-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval-file.d.ts","sourceRoot":"","sources":["../src/approval-file.ts"],"names":[],"mappings":"AAKA;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAW3D"}
@@ -0,0 +1,21 @@
1
+ import { createHash } from "node:crypto";
2
+ const LEGACY_APPROVAL_FILE_STEM_MAX_BYTES = 200;
3
+ const SAFE_APPROVAL_FILE_STEM = /^[A-Za-z0-9._-]+$/;
4
+ /**
5
+ * Return the shared approval filename for a tool call.
6
+ *
7
+ * Normal tool call IDs keep their legacy filenames. IDs containing path
8
+ * separators, unsafe characters, or unusually long byte sequences use a
9
+ * deterministic SHA-256 filename so every runner and SDK client resolves the
10
+ * same file without exceeding filesystem component limits.
11
+ */
12
+ export function approvalFileName(toolCallId) {
13
+ const useLegacyName = SAFE_APPROVAL_FILE_STEM.test(toolCallId) &&
14
+ Buffer.byteLength(toolCallId, "utf8") <=
15
+ LEGACY_APPROVAL_FILE_STEM_MAX_BYTES;
16
+ const stem = useLegacyName
17
+ ? toolCallId
18
+ : `hashed-${createHash("sha256").update(toolCallId).digest("hex")}`;
19
+ return `${stem}.json`;
20
+ }
21
+ //# sourceMappingURL=approval-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval-file.js","sourceRoot":"","sources":["../src/approval-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,mCAAmC,GAAG,GAAG,CAAC;AAChD,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;AAEpD;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAkB;IACjD,MAAM,aAAa,GACjB,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC;QACxC,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC;YACnC,mCAAmC,CAAC;IAExC,MAAM,IAAI,GAAG,aAAa;QACxB,CAAC,CAAC,UAAU;QACZ,CAAC,CAAC,UAAU,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IAEtE,OAAO,GAAG,IAAI,OAAO,CAAC;AACxB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from "./agent-input.js";
2
+ export { approvalFileName } from "./approval-file.js";
2
3
  export { BunnyAgent } from "./bunny-agent.js";
3
4
  export type { DaemonCodingRunExecParams } from "./coding-run.js";
4
5
  export { buildCodingRunShellScript, buildDefaultCodingRunExec, buildDefaultDaemonCodingRunExecCommand, SANDBOX_CODING_RUN_TMP_DIR, streamCodingRunFromSandbox, } from "./coding-run.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,sCAAsC,EACtC,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAChE,YAAY,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAM1C,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,uBAAuB,EACvB,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,oBAAoB,EACpB,OAAO,EACP,UAAU,EACV,cAAc,EACd,aAAa,EACb,WAAW,EACX,eAAe,EACf,OAAO,EACP,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,MAAM,GACP,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,sCAAsC,EACtC,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAChE,YAAY,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAM1C,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,uBAAuB,EACvB,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,oBAAoB,EACpB,OAAO,EACP,UAAU,EACV,cAAc,EACd,aAAa,EACb,WAAW,EACX,eAAe,EACf,OAAO,EACP,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,MAAM,GACP,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from "./agent-input.js";
2
+ export { approvalFileName } from "./approval-file.js";
2
3
  export { BunnyAgent } from "./bunny-agent.js";
3
4
  export { buildCodingRunShellScript, buildDefaultCodingRunExec, buildDefaultDaemonCodingRunExecCommand, SANDBOX_CODING_RUN_TMP_DIR, streamCodingRunFromSandbox, } from "./coding-run.js";
4
5
  export { DEFAULT_BUNNY_AGENT_DAEMON_URL } from "./constants.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,sCAAsC,EACtC,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,cAAc;AACd,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,2EAA2E;AAC3E,+DAA+D;AAC/D,gEAAgE;AAChE,iEAAiE;AACjE,oCAAoC;AACpC,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,sCAAsC,EACtC,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,cAAc;AACd,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,2EAA2E;AAC3E,+DAA+D;AAC/D,gEAAgE;AAChE,iEAAiE;AACjE,oCAAoC;AACpC,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bunny-agent/manager",
3
- "version": "0.9.59-beta.6",
3
+ "version": "0.9.59-beta.8",
4
4
  "description": "BunnyAgent Manager - Manages sandbox and runner lifecycle, defines core interfaces",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",