@namzu/sdk 35.0.0 → 36.0.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 (82) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/dist/provider/token-budget.d.ts.map +1 -1
  3. package/dist/provider/token-budget.js +56 -8
  4. package/dist/provider/token-budget.js.map +1 -1
  5. package/dist/public-runtime.d.ts +2 -2
  6. package/dist/public-runtime.d.ts.map +1 -1
  7. package/dist/public-runtime.js +1 -1
  8. package/dist/public-runtime.js.map +1 -1
  9. package/dist/runtime/query/executor.d.ts +1 -0
  10. package/dist/runtime/query/executor.d.ts.map +1 -1
  11. package/dist/runtime/query/executor.js +50 -10
  12. package/dist/runtime/query/executor.js.map +1 -1
  13. package/dist/runtime/query/index.d.ts +7 -0
  14. package/dist/runtime/query/index.d.ts.map +1 -1
  15. package/dist/runtime/query/index.js +1 -0
  16. package/dist/runtime/query/index.js.map +1 -1
  17. package/dist/runtime/query/iteration/index.d.ts +3 -3
  18. package/dist/runtime/query/iteration/index.d.ts.map +1 -1
  19. package/dist/runtime/query/iteration/index.js +31 -6
  20. package/dist/runtime/query/iteration/index.js.map +1 -1
  21. package/dist/runtime/query/iteration/phases/context.d.ts +2 -0
  22. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  23. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  24. package/dist/runtime/query/iteration/stream-turn.d.ts.map +1 -1
  25. package/dist/runtime/query/iteration/stream-turn.js +10 -5
  26. package/dist/runtime/query/iteration/stream-turn.js.map +1 -1
  27. package/dist/runtime/query/prompt.d.ts.map +1 -1
  28. package/dist/runtime/query/prompt.js +14 -4
  29. package/dist/runtime/query/prompt.js.map +1 -1
  30. package/dist/sandbox/file-walk-program.d.ts +3 -0
  31. package/dist/sandbox/file-walk-program.d.ts.map +1 -0
  32. package/dist/sandbox/file-walk-program.js +94 -0
  33. package/dist/sandbox/file-walk-program.js.map +1 -0
  34. package/dist/sandbox/file-walk.d.ts +12 -0
  35. package/dist/sandbox/file-walk.d.ts.map +1 -0
  36. package/dist/sandbox/file-walk.js +429 -0
  37. package/dist/sandbox/file-walk.js.map +1 -0
  38. package/dist/sandbox/index.d.ts +2 -0
  39. package/dist/sandbox/index.d.ts.map +1 -1
  40. package/dist/sandbox/index.js +1 -0
  41. package/dist/sandbox/index.js.map +1 -1
  42. package/dist/sandbox/provider/local.d.ts.map +1 -1
  43. package/dist/sandbox/provider/local.js +9 -0
  44. package/dist/sandbox/provider/local.js.map +1 -1
  45. package/dist/scheduler/completion-inbox.d.ts +3 -2
  46. package/dist/scheduler/completion-inbox.d.ts.map +1 -1
  47. package/dist/scheduler/completion-inbox.js +29 -15
  48. package/dist/scheduler/completion-inbox.js.map +1 -1
  49. package/dist/tools/builtins/bash.d.ts.map +1 -1
  50. package/dist/tools/builtins/bash.js +215 -59
  51. package/dist/tools/builtins/bash.js.map +1 -1
  52. package/dist/tools/builtins/glob.d.ts +2 -1
  53. package/dist/tools/builtins/glob.d.ts.map +1 -1
  54. package/dist/tools/builtins/glob.js +95 -103
  55. package/dist/tools/builtins/glob.js.map +1 -1
  56. package/dist/tools/builtins/grep.d.ts.map +1 -1
  57. package/dist/tools/builtins/grep.js +155 -111
  58. package/dist/tools/builtins/grep.js.map +1 -1
  59. package/dist/tools/builtins/ls.js +2 -2
  60. package/dist/tools/builtins/ls.js.map +1 -1
  61. package/dist/types/sandbox/index.d.ts +20 -0
  62. package/dist/types/sandbox/index.d.ts.map +1 -1
  63. package/dist/types/sandbox/index.js.map +1 -1
  64. package/package.json +6 -1
  65. package/src/provider/token-budget.ts +52 -8
  66. package/src/public-runtime.ts +2 -1
  67. package/src/runtime/query/executor.ts +54 -14
  68. package/src/runtime/query/index.ts +8 -0
  69. package/src/runtime/query/iteration/index.ts +29 -9
  70. package/src/runtime/query/iteration/phases/context.ts +2 -0
  71. package/src/runtime/query/iteration/stream-turn.ts +9 -5
  72. package/src/runtime/query/prompt.ts +21 -4
  73. package/src/sandbox/file-walk-program.ts +93 -0
  74. package/src/sandbox/file-walk.ts +463 -0
  75. package/src/sandbox/index.ts +2 -0
  76. package/src/sandbox/provider/local.ts +13 -0
  77. package/src/scheduler/completion-inbox.ts +29 -19
  78. package/src/tools/builtins/bash.ts +230 -58
  79. package/src/tools/builtins/glob.ts +104 -122
  80. package/src/tools/builtins/grep.ts +166 -132
  81. package/src/tools/builtins/ls.ts +2 -2
  82. package/src/types/sandbox/index.ts +21 -0
@@ -1,40 +1,48 @@
1
- import { glob, readFile } from 'node:fs/promises';
2
- import { relative, resolve, sep } from 'node:path';
1
+ import { readFile } from 'node:fs/promises';
2
+ import { isAbsolute, join, relative, sep } from 'node:path';
3
3
  import { z } from 'zod';
4
+ import { walkFilesLocally } from '../../sandbox/file-walk.js';
5
+ import { subscribeToAbort } from '../../utils/abort.js';
4
6
  import { defineTool } from '../defineTool.js';
5
- import { matchesGlob } from '../glob-match.js';
6
- import { resolveWithinAny } from '../paths.js';
7
- import { joinPosix, relativePosix, resolveWithinPosix } from '../posix-path.js';
8
- function hostSource(workingDirectory) {
9
- return {
10
- root: workingDirectory,
11
- async *list(searchRoot, pattern) {
12
- for await (const entry of glob(pattern, { cwd: searchRoot })) {
13
- yield resolve(searchRoot, entry);
14
- }
15
- },
16
- read: (path) => readFile(path),
17
- };
7
+ import { resolveWithin, resolveWithinAny, resolveWithinAnyReal, resolveWithinReal, toolRoots, } from '../paths.js';
8
+ import { relativePosix, resolveWithinPosix } from '../posix-path.js';
9
+ /** A remote read has no signal parameter; stop consuming it when the turn ends. */
10
+ async function readWithSignal(read, signal) {
11
+ signal?.throwIfAborted();
12
+ if (!signal)
13
+ return await read();
14
+ let dispose;
15
+ try {
16
+ const cancelled = new Promise((_, reject) => {
17
+ dispose = subscribeToAbort(signal, () => reject(signal.reason));
18
+ });
19
+ // Promise.race observes any late rejection. A late buffer is never searched.
20
+ return await Promise.race([
21
+ Promise.resolve().then(() => {
22
+ signal.throwIfAborted();
23
+ return read();
24
+ }),
25
+ cancelled,
26
+ ]);
27
+ }
28
+ finally {
29
+ dispose?.();
30
+ }
18
31
  }
19
- function sandboxSource(sandbox) {
20
- return {
21
- root: sandbox.rootDir,
22
- posix: true,
23
- async *list(searchRoot, pattern) {
24
- for (const entry of await sandbox.listFiles(searchRoot)) {
25
- // Sandbox paths stay in the sandbox's own coordinate system.
26
- // Running them through the host's path module would rewrite a
27
- // POSIX container path into a host-shaped one whenever the
28
- // two disagree, and then hand the model a path its own
29
- // sandbox cannot open.
30
- const absolute = joinPosix(searchRoot, entry.path);
31
- const relPath = relativePosix(sandbox.rootDir, absolute);
32
- if (matchesGlob(relPath, pattern))
33
- yield absolute;
34
- }
35
- },
36
- read: (path) => sandbox.readFile(path),
37
- };
32
+ function relativeInclude(include, root, sandboxed) {
33
+ let pattern = sandboxed ? include : include.split(sep).join('/');
34
+ if (pattern.split('/').includes('..'))
35
+ throw new Error('Include pattern escapes the search directory');
36
+ if (sandboxed ? pattern.startsWith('/') : isAbsolute(include)) {
37
+ const absolute = sandboxed ? resolveWithinPosix(root, pattern) : resolveWithin(root, include);
38
+ pattern = sandboxed
39
+ ? relativePosix(root, absolute)
40
+ : relative(root, absolute).split(sep).join('/');
41
+ }
42
+ while (pattern.startsWith('./'))
43
+ pattern = pattern.slice(2);
44
+ // Grep's existing unqualified include is recursive: *.ts means **/*.ts.
45
+ return pattern.includes('/') ? pattern : `**/${pattern}`;
38
46
  }
39
47
  const inputSchema = z.object({
40
48
  pattern: z.string().describe('Regular expression pattern to search for in file contents'),
@@ -62,6 +70,7 @@ const inputSchema = z.object({
62
70
  });
63
71
  const MAX_FILE_SIZE = 5 * 1024 * 1024; // 5 MB — skip binaries/large files
64
72
  const BINARY_CHECK_BYTES = 512;
73
+ const MAX_VISITED_ENTRIES = 20_000;
65
74
  function isBinaryContent(buffer) {
66
75
  const check = buffer.subarray(0, BINARY_CHECK_BYTES);
67
76
  for (const byte of check) {
@@ -72,14 +81,16 @@ function isBinaryContent(buffer) {
72
81
  }
73
82
  export const GrepTool = defineTool({
74
83
  name: 'grep',
75
- description: 'Searches file contents using a regular expression. Returns matching lines with file paths, line numbers, and optional context lines. Skips binary files.',
84
+ description: 'Searches file contents using a regular expression. Returns matching lines with file paths, line numbers, and optional context lines. Searches incrementally with a bounded traversal; identifies incomplete searches. Skips binary files, files over 5 MB, and symlinks. Choose the narrowest relevant directory.',
76
85
  inputSchema,
77
86
  category: 'analysis',
78
87
  permissions: ['file_read'],
79
88
  readOnly: true,
80
89
  destructive: false,
81
90
  concurrencySafe: true,
91
+ timeoutMs: 15_000,
82
92
  async execute(input, context) {
93
+ context.abortSignal?.throwIfAborted();
83
94
  const flags = input.case_sensitive ? 'g' : 'gi';
84
95
  let regex;
85
96
  try {
@@ -92,98 +103,131 @@ export const GrepTool = defineTool({
92
103
  error: `Invalid regex pattern: ${err instanceof Error ? err.message : String(err)}`,
93
104
  };
94
105
  }
95
- // Inside the sandbox when there is one, on the host otherwise. Only
96
- // the file SOURCE differs — matching, context lines and the caps are
97
- // one implementation, because duplicating the substantive half is
98
- // how the two paths would drift.
99
- //
100
- // This tool read the host filesystem through `node:fs` and
101
- // referenced `context.sandbox` nowhere, so with a container backend
102
- // wired in the sandbox was not a read boundary at all — and grep
103
- // returns file CONTENT, so what leaked was not a listing.
104
- const source = context.sandbox
105
- ? sandboxSource(context.sandbox)
106
- : hostSource(context.workingDirectory);
107
- // Contained, not merely resolved — see `resolveWithin`. Bare
108
- // resolution let `path: "../../.."` read whatever sits above the
109
- // working directory, with no sandbox needed to make it work.
110
- const searchRoot = source.posix
111
- ? resolveWithinPosix(source.root, input.path)
112
- : resolveWithinAny([source.root, ...(context.additionalDirectories ?? [])], input.path);
113
- // Auto-prepend **/ for simple patterns (e.g. "*.ts" → "**/*.ts")
114
- let filePattern = input.include ?? '**/*';
115
- if (filePattern !== '**/*' && !filePattern.includes('/') && !filePattern.startsWith('**/')) {
116
- filePattern = `**/${filePattern}`;
106
+ const sandbox = context.sandbox;
107
+ const lexicalRoot = sandbox
108
+ ? resolveWithinPosix(sandbox.rootDir, input.path)
109
+ : resolveWithinAny(toolRoots(context), input.path);
110
+ const root = sandbox ? lexicalRoot : await resolveWithinAnyReal(toolRoots(context), input.path);
111
+ const filePattern = relativeInclude(input.include ?? '**/*', lexicalRoot, sandbox !== undefined);
112
+ const walkSandbox = sandbox?.walkFiles?.bind(sandbox);
113
+ if (sandbox && !walkSandbox) {
114
+ return {
115
+ success: false,
116
+ output: '',
117
+ error: 'This sandbox does not support bounded file discovery (Sandbox.walkFiles). Update its adapter before searching file contents.',
118
+ };
117
119
  }
120
+ const options = {
121
+ pattern: filePattern,
122
+ signal: context.abortSignal,
123
+ maxEntries: MAX_VISITED_ENTRIES + 1,
124
+ maxVisitedEntries: MAX_VISITED_ENTRIES,
125
+ // Preserve existing source behavior: sandbox grep included dotfiles;
126
+ // node's host glob excluded wildcard dotfiles.
127
+ includeHidden: sandbox !== undefined,
128
+ };
129
+ const entries = walkSandbox ? walkSandbox(root, options) : walkFilesLocally(root, options);
118
130
  const results = [];
119
131
  let totalMatches = 0;
120
132
  let filesSearched = 0;
121
133
  let filesMatched = 0;
122
- for await (const filePath of source.list(searchRoot, filePattern)) {
123
- filesSearched++;
124
- let content;
125
- try {
126
- const buffer = await source.read(filePath);
127
- if (buffer.length > MAX_FILE_SIZE)
128
- continue;
129
- if (isBinaryContent(buffer))
134
+ let truncated = false;
135
+ let failure;
136
+ let unreadableFiles = 0;
137
+ try {
138
+ for await (const entry of entries) {
139
+ context.abortSignal?.throwIfAborted();
140
+ const filePath = sandbox
141
+ ? resolveWithinPosix(root, entry.path)
142
+ : resolveWithin(root, entry.path);
143
+ if (filesSearched >= MAX_VISITED_ENTRIES) {
144
+ throw new Error(`File search stopped after examining ${MAX_VISITED_ENTRIES} files; narrow its root or include pattern.`);
145
+ }
146
+ filesSearched++;
147
+ if (entry.size > MAX_FILE_SIZE)
130
148
  continue;
131
- content = buffer.toString('utf-8');
132
- }
133
- catch {
134
- continue; // Skip unreadable files (directories, permissions, etc.)
135
- }
136
- const lines = content.split('\n');
137
- let fileHasMatch = false;
138
- for (let i = 0; i < lines.length; i++) {
139
- const line = lines[i] ?? '';
140
- regex.lastIndex = 0;
141
- if (!regex.test(line))
149
+ let content;
150
+ try {
151
+ const buffer = await readWithSignal(() => sandbox
152
+ ? sandbox.readFile(filePath)
153
+ : resolveWithinReal(root, filePath).then((contained) => readFile(contained, { signal: context.abortSignal })), context.abortSignal);
154
+ context.abortSignal?.throwIfAborted();
155
+ if (buffer.length > MAX_FILE_SIZE || isBinaryContent(buffer))
156
+ continue;
157
+ content = buffer.toString('utf-8');
158
+ }
159
+ catch (error) {
160
+ if (context.abortSignal?.aborted)
161
+ throw error;
162
+ unreadableFiles++;
142
163
  continue;
143
- if (!fileHasMatch) {
144
- fileHasMatch = true;
145
- filesMatched++;
146
164
  }
147
- // Relative to the root the file came FROM. Reporting a
148
- // host-relative path for a file read inside the sandbox would
149
- // hand the model a string `read` then resolves somewhere else.
150
- const relPath = source.posix
151
- ? `./${relativePosix(source.root, filePath)}`
152
- : `./${relative(source.root, filePath).split(sep).join('/')}`;
153
- if (input.context_lines > 0) {
154
- const start = Math.max(0, i - input.context_lines);
155
- const end = Math.min(lines.length - 1, i + input.context_lines);
156
- if (results.length > 0) {
157
- results.push('--');
165
+ const lines = content.split('\n');
166
+ let fileHasMatch = false;
167
+ for (let i = 0; i < lines.length; i++) {
168
+ context.abortSignal?.throwIfAborted();
169
+ const line = lines[i] ?? '';
170
+ regex.lastIndex = 0;
171
+ if (!regex.test(line))
172
+ continue;
173
+ if (!fileHasMatch) {
174
+ fileHasMatch = true;
175
+ filesMatched++;
158
176
  }
159
- for (let j = start; j <= end; j++) {
160
- const prefix = j === i ? ':' : '-';
161
- results.push(`${relPath}${prefix}${j + 1}${prefix}${lines[j]}`);
177
+ const relPath = sandbox
178
+ ? `./${relativePosix(sandbox.rootDir, filePath)}`
179
+ : `./${relative(context.workingDirectory, join(lexicalRoot, relative(root, filePath)))
180
+ .split(sep)
181
+ .join('/')}`;
182
+ if (input.context_lines > 0) {
183
+ const start = Math.max(0, i - input.context_lines);
184
+ const end = Math.min(lines.length - 1, i + input.context_lines);
185
+ if (results.length > 0) {
186
+ results.push('--');
187
+ }
188
+ for (let j = start; j <= end; j++) {
189
+ const prefix = j === i ? ':' : '-';
190
+ results.push(`${relPath}${prefix}${j + 1}${prefix}${lines[j]}`);
191
+ }
162
192
  }
193
+ else {
194
+ results.push(`${relPath}:${i + 1}:${line}`);
195
+ }
196
+ totalMatches++;
197
+ if (totalMatches >= input.max_results)
198
+ break;
163
199
  }
164
- else {
165
- results.push(`${relPath}:${i + 1}:${line}`);
166
- }
167
- totalMatches++;
168
- if (totalMatches >= input.max_results)
200
+ if (totalMatches >= input.max_results) {
201
+ // Do not read another file just to prove there are more hits. Reaching
202
+ // the requested cap means completeness was not established.
203
+ truncated = true;
169
204
  break;
205
+ }
170
206
  }
171
- if (totalMatches >= input.max_results)
172
- break;
173
207
  }
174
- if (totalMatches === 0) {
175
- return {
176
- success: true,
177
- output: `No matches found for pattern "${input.pattern}"`,
178
- data: { totalMatches: 0, filesSearched, filesMatched: 0 },
179
- };
208
+ catch (error) {
209
+ truncated = true;
210
+ failure = (error instanceof Error ? error.message : String(error)) || 'File search failed.';
211
+ }
212
+ if (unreadableFiles > 0) {
213
+ truncated = true;
214
+ failure ??= `${unreadableFiles} file(s) could not be read.`;
180
215
  }
181
- const summary = `Found ${totalMatches} match(es) in ${filesMatched} file(s) (${filesSearched} files searched)`;
182
- const output = `${results.join('\n')}\n\n${summary}`;
216
+ const summary = totalMatches > 0
217
+ ? `Found ${totalMatches} match(es) in ${filesMatched} file(s) (${filesSearched} files searched)`
218
+ : truncated
219
+ ? `No matches found in the files searched for pattern "${input.pattern}"`
220
+ : `No matches found for pattern "${input.pattern}"`;
221
+ const notice = failure
222
+ ? `[Search incomplete: ${failure}]`
223
+ : truncated
224
+ ? `[Search incomplete: reached max_results (${input.max_results}). Narrow the directory or include pattern for a complete search.]`
225
+ : undefined;
183
226
  return {
184
- success: true,
185
- output,
186
- data: { totalMatches, filesSearched, filesMatched },
227
+ success: failure === undefined,
228
+ output: [results.join('\n'), summary, notice].filter(Boolean).join('\n\n'),
229
+ data: { totalMatches, filesSearched, filesMatched, truncated },
230
+ ...(failure ? { error: failure } : {}),
187
231
  };
188
232
  },
189
233
  });
@@ -1 +1 @@
1
- {"version":3,"file":"grep.js","sourceRoot":"","sources":["../../../src/tools/builtins/grep.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grep.js","sourceRoot":"","sources":["../../../src/tools/builtins/grep.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { join, relative } from 'node:path';
3
3
  import { z } from 'zod';
4
4
  import { defineTool } from '../defineTool.js';
5
5
  import { resolveWithinAny, toolRoots } from '../paths.js';
6
- import { joinPosix, relativePosix, resolveWithinPosix } from '../posix-path.js';
6
+ import { relativePosix, resolveWithinPosix } from '../posix-path.js';
7
7
  const inputSchema = z.object({
8
8
  path: z.string().default('.').describe('Directory path to list. Defaults to working directory.'),
9
9
  all: z.boolean().default(false).describe('Include hidden files (dotfiles)'),
@@ -106,7 +106,7 @@ async function listInSandbox(input, sandbox) {
106
106
  // Relative to the LISTED directory, in the sandbox's own coordinates.
107
107
  const relativePaths = [];
108
108
  for (const entry of entries) {
109
- const rel = relativePosix(root, joinPosix(root, entry.path));
109
+ const rel = relativePosix(root, resolveWithinPosix(root, entry.path));
110
110
  if (!rel || rel.startsWith('..'))
111
111
  continue;
112
112
  const segments = rel.split('/').filter(Boolean);
@@ -1 +1 @@
1
- {"version":3,"file":"ls.js","sourceRoot":"","sources":["../../../src/tools/builtins/ls.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ls.js","sourceRoot":"","sources":["../../../src/tools/builtins/ls.ts"],"names":[],"mappings":"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"}
@@ -116,6 +116,19 @@ export interface SandboxFileEntry {
116
116
  readonly path: string;
117
117
  readonly size: number;
118
118
  }
119
+ /** A bounded search; patterns and depth are relative to the requested root. */
120
+ export interface SandboxWalkFilesOptions {
121
+ readonly pattern?: string;
122
+ readonly signal?: AbortSignal;
123
+ /** Direct children have depth 1. Omitted means no additional depth bound. */
124
+ readonly maxDepth?: number;
125
+ /** Positive safe integer bounding emitted matching files. */
126
+ readonly maxEntries: number;
127
+ /** Positive safe integer bounding examined directory entries; defaults to 20,000. */
128
+ readonly maxVisitedEntries?: number;
129
+ /** Match hidden names through wildcards; explicit dotfile patterns always work. Defaults to false. */
130
+ readonly includeHidden?: boolean;
131
+ }
119
132
  /**
120
133
  * A network policy applied to a LIVE sandbox.
121
134
  *
@@ -215,6 +228,13 @@ export interface Sandbox {
215
228
  * MAY throw for other I/O failures.
216
229
  */
217
230
  listFiles(rootPath: string): Promise<readonly SandboxFileEntry[]>;
231
+ /**
232
+ * Lazily enumerate regular files as absolute paths, without following symlinks.
233
+ * Cancellation and iterator return stop traversal. Exceeding the examined-entry
234
+ * budget throws an error with code `ERR_FILE_WALK_LIMIT`; it is not an empty or
235
+ * complete listing. Hosts requiring bounded search must refuse an absent method.
236
+ */
237
+ walkFiles?(rootPath: string, options: SandboxWalkFilesOptions): AsyncIterable<SandboxFileEntry>;
218
238
  /**
219
239
  * Release every resource owned by this sandbox.
220
240
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/sandbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAMvB,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AACrF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAMhD,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,WAAW,CAAA;AAEvE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAY/D;AAMD,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,OAAO,CAAA;AAE/F;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,kBAAkB,EAK7D,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,uBAAuB,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,CAAA;AAE1E,eAAO,MAAM,0BAA0B,EAAE,SAAS,uBAAuB,EAIxE,CAAA;AAED,kDAAkD;AAClD,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC,MAAM,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC,CAAA;AAEvF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAMtE;AAMD,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B;;;;;;;;OAQG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;CAClC;AAMD,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE;QAC3B,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAA;QACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KACrB,KAAK,IAAI,CAAA;IACV;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAC7B;AAOD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACrB;AAMD;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACpC;;;;;;;OAOG;IACH,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;CACxC;AAED,wFAAwF;AACxF,MAAM,WAAW,sBAAsB;IACtC,8FAA8F;IAC9F,QAAQ,CAAC,KAAK,EAAE,OAAO,oBAAoB,EAAE,YAAY,CAAA;IACzD,2FAA2F;IAC3F,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAA;CAClC;AAED,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACrC;AAED,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAA;IACxC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAE7F;;;;;;OAMG;IACH,aAAa,CAAC,CACb,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,EACxB,IAAI,CAAC,EAAE,mBAAmB,GACxB,sBAAsB,CAAA;IAEzB;;;;;;;;OAQG;IACH,gBAAgB,CAAC,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE9D;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,YAAY,CAAC,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;IACrE,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACvC;;;;;;;;;;;;;;;;;;OAkBG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAAA;IACjE;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACvD;AAED,gFAAgF;AAChF,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAC7B;AAmBD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,2BAA2B,GACpC;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACvD;IACA,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;IAC/B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAA;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAA;CACjC,GACD;IACA;;;;;;;;OAQG;IACH,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CACvB,CAAA;AAEJ;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;IAC5C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC3C,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;IAC5C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAC/B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,OAAO,EAAE,2BAA2B,CAAA;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,2BAA2B,CAAA;IAC9C;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,2BAA2B,CAAA;IAC9C,QAAQ,CAAC,WAAW,CAAC,EAAE,2BAA2B,CAAA;IAClD,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,0BAA0B,EAAE,CAAA;IACvD,QAAQ,CAAC,WAAW,CAAC,EAAE,2BAA2B,CAAA;CAClD;AAED;;;;;;GAMG;AACH,MAAM,WAAW,8BAA8B;IAC9C,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAC;QAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAA;IAClG,QAAQ,CAAC,OAAO,CAAC,EAAE;QAClB,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;QAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAC9B,CAAA;IACD,QAAQ,CAAC,OAAO,CAAC,EAAE;QAClB,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;QAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAC9B,CAAA;IACD,QAAQ,CAAC,WAAW,CAAC,EAAE;QACtB,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;QAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAC9B,CAAA;IACD,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS;QAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;QACnB,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;QAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAC9B,EAAE,CAAA;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE;QACtB,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;QAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAC9B,CAAA;CACD;AAMD,MAAM,WAAW,mBAAmB;IACnC;;;;;;;OAOG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;IAC7B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAClC;;;;OAIG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAClD,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAC9B;AAED,gEAAgE;AAChE,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,mBAAmB,CAAA;AAEpE;;;;;;;;;;;;;;GAcG;AAMH,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAA;IACxC;;;;;;;OAOG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAA;IACzD,MAAM,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CACtD;AAMD,eAAO,MAAM,mBAAmB;;;;;;IAM/B;;;;;;OAMG;;IAEH;;;;;;;;;;;;;;;;;;;OAmBG;;;;;;;;;;;;;;;;;;EAEF,CAAA;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/sandbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAMvB,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AACrF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAMhD,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,WAAW,CAAA;AAEvE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAY/D;AAMD,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,OAAO,CAAA;AAE/F;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,kBAAkB,EAK7D,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,uBAAuB,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,CAAA;AAE1E,eAAO,MAAM,0BAA0B,EAAE,SAAS,uBAAuB,EAIxE,CAAA;AAED,kDAAkD;AAClD,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC,MAAM,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC,CAAA;AAEvF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAMtE;AAMD,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B;;;;;;;;OAQG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;CAClC;AAMD,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE;QAC3B,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAA;QACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KACrB,KAAK,IAAI,CAAA;IACV;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAC7B;AAOD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACrB;AAED,+EAA+E;AAC/E,MAAM,WAAW,uBAAuB;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;IAC7B,6EAA6E;IAC7E,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,6DAA6D;IAC7D,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,qFAAqF;IACrF,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IACnC,sGAAsG;IACtG,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;CAChC;AAMD;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACpC;;;;;;;OAOG;IACH,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;CACxC;AAED,wFAAwF;AACxF,MAAM,WAAW,sBAAsB;IACtC,8FAA8F;IAC9F,QAAQ,CAAC,KAAK,EAAE,OAAO,oBAAoB,EAAE,YAAY,CAAA;IACzD,2FAA2F;IAC3F,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAA;CAClC;AAED,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACrC;AAED,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAA;IACxC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAE7F;;;;;;OAMG;IACH,aAAa,CAAC,CACb,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,EACxB,IAAI,CAAC,EAAE,mBAAmB,GACxB,sBAAsB,CAAA;IAEzB;;;;;;;;OAQG;IACH,gBAAgB,CAAC,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE9D;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,YAAY,CAAC,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;IACrE,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACvC;;;;;;;;;;;;;;;;;;OAkBG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAAA;IACjE;;;;;OAKG;IACH,SAAS,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAAA;IAC/F;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACvD;AAED,gFAAgF;AAChF,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAC7B;AAmBD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,2BAA2B,GACpC;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACvD;IACA,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;IAC/B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAA;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAA;CACjC,GACD;IACA;;;;;;;;OAQG;IACH,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CACvB,CAAA;AAEJ;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;IAC5C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC3C,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;IAC5C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAC/B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,OAAO,EAAE,2BAA2B,CAAA;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,2BAA2B,CAAA;IAC9C;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,2BAA2B,CAAA;IAC9C,QAAQ,CAAC,WAAW,CAAC,EAAE,2BAA2B,CAAA;IAClD,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,0BAA0B,EAAE,CAAA;IACvD,QAAQ,CAAC,WAAW,CAAC,EAAE,2BAA2B,CAAA;CAClD;AAED;;;;;;GAMG;AACH,MAAM,WAAW,8BAA8B;IAC9C,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAC;QAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAA;IAClG,QAAQ,CAAC,OAAO,CAAC,EAAE;QAClB,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;QAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAC9B,CAAA;IACD,QAAQ,CAAC,OAAO,CAAC,EAAE;QAClB,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;QAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAC9B,CAAA;IACD,QAAQ,CAAC,WAAW,CAAC,EAAE;QACtB,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;QAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAC9B,CAAA;IACD,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS;QAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;QACnB,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;QAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAC9B,EAAE,CAAA;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE;QACtB,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;QAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAC9B,CAAA;CACD;AAMD,MAAM,WAAW,mBAAmB;IACnC;;;;;;;OAOG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;IAC7B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAClC;;;;OAIG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAClD,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAC9B;AAED,gEAAgE;AAChE,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,mBAAmB,CAAA;AAEpE;;;;;;;;;;;;;;GAcG;AAMH,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAA;IACxC;;;;;;;OAOG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAA;IACzD,MAAM,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CACtD;AAMD,eAAO,MAAM,mBAAmB;;;;;;IAM/B;;;;;;OAMG;;IAEH;;;;;;;;;;;;;;;;;;;OAmBG;;;;;;;;;;;;;;;;;;EAEF,CAAA;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/sandbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EACN,6BAA6B,EAC7B,+BAA+B,EAC/B,0BAA0B,GAC1B,MAAM,kCAAkC,CAAA;AAUzC,MAAM,UAAU,mBAAmB,CAAC,MAAqB;IACxD,QAAQ,MAAM,EAAE,CAAC;QAChB,KAAK,UAAU,CAAC;QAChB,KAAK,OAAO,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,WAAW;YACf,OAAM;QACP,OAAO,CAAC,CAAC,CAAC;YACT,MAAM,WAAW,GAAU,MAAM,CAAA;YACjC,MAAM,IAAI,KAAK,CAAC,0BAA0B,WAAW,EAAE,CAAC,CAAA;QACzD,CAAC;IACF,CAAC;AACF,CAAC;AAQD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAkC;IAClE,aAAa;IACb,gBAAgB;IAChB,iBAAiB;IACjB,OAAO;CACP,CAAA;AAmBD,MAAM,CAAC,MAAM,0BAA0B,GAAuC;IAC7E,YAAY;IACZ,SAAS;IACT,SAAS;CACT,CAAA;AAKD,MAAM,UAAU,wBAAwB,CAAC,GAAuB;IAC/D,0EAA0E;IAC1E,wEAAwE;IACxE,iEAAiE;IACjE,IAAI,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAM;IAC9C,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,EAAE,CAAC,CAAA;AACtD,CAAC;AA6cD,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACnC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAC5C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,0BAA0B,CAAC;IACpE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,+BAA+B,CAAC;IAC7E,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC;IAC1E;;;;;;OAMG;IACH,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACnF;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;CAC1E,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/sandbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EACN,6BAA6B,EAC7B,+BAA+B,EAC/B,0BAA0B,GAC1B,MAAM,kCAAkC,CAAA;AAUzC,MAAM,UAAU,mBAAmB,CAAC,MAAqB;IACxD,QAAQ,MAAM,EAAE,CAAC;QAChB,KAAK,UAAU,CAAC;QAChB,KAAK,OAAO,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,WAAW;YACf,OAAM;QACP,OAAO,CAAC,CAAC,CAAC;YACT,MAAM,WAAW,GAAU,MAAM,CAAA;YACjC,MAAM,IAAI,KAAK,CAAC,0BAA0B,WAAW,EAAE,CAAC,CAAA;QACzD,CAAC;IACF,CAAC;AACF,CAAC;AAQD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAkC;IAClE,aAAa;IACb,gBAAgB;IAChB,iBAAiB;IACjB,OAAO;CACP,CAAA;AAmBD,MAAM,CAAC,MAAM,0BAA0B,GAAuC;IAC7E,YAAY;IACZ,SAAS;IACT,SAAS;CACT,CAAA;AAKD,MAAM,UAAU,wBAAwB,CAAC,GAAuB;IAC/D,0EAA0E;IAC1E,wEAAwE;IACxE,iEAAiE;IACjE,IAAI,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAM;IAC9C,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,EAAE,CAAC,CAAA;AACtD,CAAC;AAkeD,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACnC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAC5C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,0BAA0B,CAAC;IACpE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,+BAA+B,CAAC;IAC7E,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC;IAC1E;;;;;;OAMG;IACH,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACnF;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;CAC1E,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@namzu/sdk",
3
- "version": "35.0.0",
3
+ "version": "36.0.0",
4
4
  "description": "Open-source AI agent SDK with a built-in runtime. Nothing between you and your agents.",
5
5
  "license": "FSL-1.1-MIT",
6
6
  "engines": {
@@ -61,6 +61,7 @@
61
61
  "devDependencies": {
62
62
  "@biomejs/biome": "^1.9.4",
63
63
  "@opentelemetry/api": "^1.9.0",
64
+ "@types/brace-expansion": "^1.1.2",
64
65
  "@types/node": "^22.19.17",
65
66
  "@vitest/coverage-v8": "^3.2.6",
66
67
  "fast-check": "^4.7.0",
@@ -71,6 +72,10 @@
71
72
  "zod": "^3.23.0",
72
73
  "zod-to-json-schema": "^3.23.0"
73
74
  },
75
+ "dependencies": {
76
+ "brace-expansion": "^2.1.4",
77
+ "minimatch": "^9.0.9"
78
+ },
74
79
  "scripts": {
75
80
  "build": "tsc --build",
76
81
  "dev": "tsc --build --watch",
@@ -49,8 +49,44 @@ export function withTokenBudget(provider: LLMProvider, budget: TokenBudget): LLM
49
49
  let completed = false
50
50
  let outputObserved = false
51
51
  let uncertainRetry = false
52
+ let contacted = false
53
+ let abandoned = false
54
+ let iterator: AsyncIterator<StreamChunk> | undefined
55
+ let onAbort: (() => void) | undefined
56
+ const signal = params.signal
57
+ const cancellation = signal
58
+ ? new Promise<never>((_resolve, reject) => {
59
+ onAbort = () => {
60
+ abandoned = true
61
+ reject(signal.reason)
62
+ }
63
+ signal.addEventListener('abort', onAbort, { once: true })
64
+ })
65
+ : undefined
66
+ // Admission persistence can have outlived the caller's authority. The
67
+ // check below may reject before the first pull attaches a race handler.
68
+ cancellation?.catch(() => {})
52
69
  try {
53
- for await (const chunk of provider.chatStream(params)) {
70
+ signal?.throwIfAborted()
71
+ contacted = true
72
+ iterator = provider.chatStream(params)[Symbol.asyncIterator]()
73
+ for (;;) {
74
+ signal?.throwIfAborted()
75
+ const next = iterator.next()
76
+ // Observe an already-issued pull even after cancellation wins the
77
+ // race. A late usage frame is evidence of spend, not permission to
78
+ // reopen the account or to request another frame.
79
+ void next
80
+ .then(async (result) => {
81
+ if (!result.done && result.value.usage) {
82
+ usage = usage ? mergeTokenUsage(usage, result.value.usage) : { ...result.value.usage }
83
+ if (abandoned) await budget.failRequest(requestId, usage)
84
+ }
85
+ })
86
+ .catch(() => {})
87
+ const result = await (cancellation ? Promise.race([next, cancellation]) : next)
88
+ if (result.done) break
89
+ const chunk = result.value
54
90
  const recovery = chunk.retry ?? chunk.fallback
55
91
  if (
56
92
  recovery &&
@@ -71,9 +107,6 @@ export function withTokenBudget(provider: LLMProvider, budget: TokenBudget): LLM
71
107
  })
72
108
  }
73
109
  if (Object.keys(chunk.delta).length > 0) outputObserved = true
74
- if (chunk.usage) {
75
- usage = usage ? mergeTokenUsage(usage, chunk.usage) : { ...chunk.usage }
76
- }
77
110
  if (chunk.error) throw new Error(chunk.error)
78
111
  yield chunk
79
112
  }
@@ -88,16 +121,27 @@ export function withTokenBudget(provider: LLMProvider, budget: TokenBudget): LLM
88
121
  // A typed rejection before any generation differs from a lost reply.
89
122
  // In particular a context-overflow retry must not reset or poison spend.
90
123
  if (
91
- !outputObserved &&
92
- usage === undefined &&
93
- !uncertainRetry &&
94
- rejectedBeforeGeneration(error)
124
+ !contacted ||
125
+ (!abandoned &&
126
+ !outputObserved &&
127
+ usage === undefined &&
128
+ !uncertainRetry &&
129
+ rejectedBeforeGeneration(error))
95
130
  ) {
96
131
  await budget.finishRequest(requestId, { ...EMPTY_TOKEN_USAGE })
97
132
  completed = true
98
133
  }
99
134
  throw error
100
135
  } finally {
136
+ abandoned = !completed
137
+ if (onAbort) signal?.removeEventListener('abort', onAbort)
138
+ // A blocked async generator queues return() behind its pending next().
139
+ // Waiting for it would also delay the durable unknown-spend marker.
140
+ try {
141
+ void iterator?.return?.().catch(() => {})
142
+ } catch {
143
+ // Cleanup cannot replace the provider outcome.
144
+ }
101
145
  if (!completed) await budget.failRequest(requestId, usage)
102
146
  }
103
147
  }