@sapiom/tools 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/dist/cjs/agent/index.d.ts +55 -0
- package/dist/cjs/agent/index.d.ts.map +1 -1
- package/dist/cjs/agent/index.js +93 -1
- package/dist/cjs/agent/index.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +10 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/stub/index.d.ts +16 -1
- package/dist/cjs/stub/index.d.ts.map +1 -1
- package/dist/cjs/stub/index.js +197 -50
- package/dist/cjs/stub/index.js.map +1 -1
- package/dist/esm/agent/index.d.ts +55 -0
- package/dist/esm/agent/index.d.ts.map +1 -1
- package/dist/esm/agent/index.js +90 -0
- package/dist/esm/agent/index.js.map +1 -1
- package/dist/esm/index.d.ts +2 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +3 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/stub/index.d.ts +16 -1
- package/dist/esm/stub/index.d.ts.map +1 -1
- package/dist/esm/stub/index.js +200 -53
- package/dist/esm/stub/index.js.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +1 -1
package/dist/esm/stub/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Sapiom } from
|
|
1
|
+
import type { Sapiom } from "../client.js";
|
|
2
2
|
/** Per-capability overrides, keyed by capability path (see module docs). */
|
|
3
3
|
export type StubOverrides = Record<string, unknown | ((...args: unknown[]) => unknown)>;
|
|
4
4
|
export interface StubClientOptions {
|
|
@@ -10,6 +10,21 @@ export interface StubClientOptions {
|
|
|
10
10
|
* signal would have carried.
|
|
11
11
|
*/
|
|
12
12
|
signals?: Map<string, unknown>;
|
|
13
|
+
/**
|
|
14
|
+
* When provided, every override key that is actually matched by a capability
|
|
15
|
+
* call is added here. A local runner diffs this against the keys the author
|
|
16
|
+
* supplied to warn about stub keys that matched nothing (a typo'd path, or the
|
|
17
|
+
* wrong plural/singular form) — which otherwise fail silently.
|
|
18
|
+
*/
|
|
19
|
+
usedKeys?: Set<string>;
|
|
20
|
+
/**
|
|
21
|
+
* When provided, collects human-readable warnings about stub *values* that are
|
|
22
|
+
* present but malformed for the capability they override (e.g. a
|
|
23
|
+
* `repositories.list` stub that isn't an array of repositories). Catches the
|
|
24
|
+
* silent-wrong-data trap that `usedKeys` can't — a key that matched but carried
|
|
25
|
+
* the wrong shape.
|
|
26
|
+
*/
|
|
27
|
+
warnings?: Set<string>;
|
|
13
28
|
}
|
|
14
29
|
/**
|
|
15
30
|
* Create a stub `Sapiom` client. Runs every capability against built-in defaults;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/stub/index.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/stub/index.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAU3C,4EAA4E;AAC5E,MAAM,MAAM,aAAa,GAAG,MAAM,CAChC,MAAM,EACN,OAAO,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,CAC5C,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B;;;;;OAKG;IACH,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACxB;AA0TD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAE,iBAAsB,GAAG,MAAM,CAmJrE"}
|
package/dist/esm/stub/index.js
CHANGED
|
@@ -18,17 +18,18 @@
|
|
|
18
18
|
* replaces that capability's default; a function `(…args) => value` computes it
|
|
19
19
|
* from the call arguments.
|
|
20
20
|
*/
|
|
21
|
-
import { CODING_RESULT_SIGNAL } from
|
|
22
|
-
import { Repository } from
|
|
23
|
-
import { Sandbox } from
|
|
21
|
+
import { CODING_RESULT_SIGNAL, toResumePayload } from "../agent/index.js";
|
|
22
|
+
import { Repository } from "../repositories/index.js";
|
|
23
|
+
import { Sandbox } from "../sandboxes/index.js";
|
|
24
24
|
// Module-scoped so correlation ids are unique across launches within a run.
|
|
25
25
|
let launchSeq = 0;
|
|
26
26
|
/** A launched, pausable capability handle (the `DispatchHandle` shape). */
|
|
27
27
|
function isDispatchHandle(v) {
|
|
28
|
-
if (!v || typeof v !==
|
|
28
|
+
if (!v || typeof v !== "object")
|
|
29
29
|
return false;
|
|
30
30
|
const h = v;
|
|
31
|
-
return typeof h.wait ===
|
|
31
|
+
return (typeof h.wait === "function" &&
|
|
32
|
+
typeof h.dispatch?.correlationId === "string");
|
|
32
33
|
}
|
|
33
34
|
/**
|
|
34
35
|
* Register a dispatch-able handle's eventual result so a pause on its signal can
|
|
@@ -36,27 +37,122 @@ function isDispatchHandle(v) {
|
|
|
36
37
|
* stub method wraps its returned handle in this — the result a `pauseUntilSignal`
|
|
37
38
|
* resumes with is exactly what the handle's `wait()` resolves to.
|
|
38
39
|
*/
|
|
39
|
-
async function dispatchable(handle, signals) {
|
|
40
|
+
async function dispatchable(handle, signals, resumePayload) {
|
|
40
41
|
if (signals && isDispatchHandle(handle)) {
|
|
41
|
-
|
|
42
|
+
// The resume payload crosses a wire boundary — it reaches the resumed step as
|
|
43
|
+
// plain JSON, never a live handle. A capability may supply `resumePayload` to
|
|
44
|
+
// produce that wire shape; absent, the awaited result IS the payload. Round-trip
|
|
45
|
+
// it either way so a local run sees exactly the wire shape — no local-only
|
|
46
|
+
// handle methods to lean on.
|
|
47
|
+
const payload = resumePayload ? await resumePayload() : await handle.wait();
|
|
48
|
+
signals.set(handle.dispatch.correlationId, toPlainJson(payload));
|
|
42
49
|
}
|
|
43
50
|
return handle;
|
|
44
51
|
}
|
|
52
|
+
/** Deep-plainify a value the way a wire boundary would (drops handle behavior). */
|
|
53
|
+
function toPlainJson(value) {
|
|
54
|
+
return JSON.parse(JSON.stringify(value ?? null));
|
|
55
|
+
}
|
|
45
56
|
// Method names of each handle, reflected from the real classes so the stub stays
|
|
46
57
|
// in lockstep with the SDK (a renamed/added method is picked up automatically).
|
|
47
58
|
const REPOSITORY_METHODS = handleMethods(Repository.prototype);
|
|
48
59
|
const SANDBOX_METHODS = handleMethods(Sandbox.prototype);
|
|
49
|
-
const RUN_HANDLE_METHODS = new Set([
|
|
60
|
+
const RUN_HANDLE_METHODS = new Set(["status", "wait"]); // RunHandle is a literal, not a class
|
|
50
61
|
function handleMethods(proto) {
|
|
51
|
-
return new Set(Object.getOwnPropertyNames(proto).filter((n) => n !==
|
|
62
|
+
return new Set(Object.getOwnPropertyNames(proto).filter((n) => n !== "constructor"));
|
|
52
63
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
64
|
+
/**
|
|
65
|
+
* Resolve an override for a capability call. `paths` is one path or an ordered
|
|
66
|
+
* list of candidates — the first that is present wins, so a dispatched method can
|
|
67
|
+
* honor both its own key and the shared result key (see {@link dispatchedKeys}).
|
|
68
|
+
* Only the candidate that actually matches is consulted (and thus recorded as
|
|
69
|
+
* used), so unmatched-key reporting stays precise.
|
|
70
|
+
*/
|
|
71
|
+
function resolve(overrides, paths, args, fallback) {
|
|
72
|
+
for (const path of typeof paths === "string" ? [paths] : paths) {
|
|
73
|
+
if (Object.prototype.hasOwnProperty.call(overrides, path)) {
|
|
74
|
+
const o = overrides[path];
|
|
75
|
+
return typeof o === "function"
|
|
76
|
+
? o(...args)
|
|
77
|
+
: o;
|
|
78
|
+
}
|
|
57
79
|
}
|
|
58
80
|
return fallback();
|
|
59
81
|
}
|
|
82
|
+
/**
|
|
83
|
+
* The stub keys a dispatched capability accepts, in precedence order: the
|
|
84
|
+
* method actually called (`<ns>.launch`) wins, then the shared blocking-result
|
|
85
|
+
* key (`<ns>.run`) that produces the same payload. Lets an author stub the key
|
|
86
|
+
* matching the call they wrote — `agent.coding.launch` — while the canonical
|
|
87
|
+
* `agent.coding.run` keeps working for both `run()` and `launch()`. Uniform
|
|
88
|
+
* across the dispatchable/pause family (coding today; deep research,
|
|
89
|
+
* sub-workflows, browser sessions later).
|
|
90
|
+
*/
|
|
91
|
+
function dispatchedKeys(namespace) {
|
|
92
|
+
return [`${namespace}.launch`, `${namespace}.run`];
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Wrap an overrides object so that every present key `resolve` consults is
|
|
96
|
+
* recorded in `used` (via the `hasOwnProperty` probe → `getOwnPropertyDescriptor`
|
|
97
|
+
* trap). Lets a runner report supplied-but-unmatched stub keys without threading
|
|
98
|
+
* a tracker through every factory.
|
|
99
|
+
*/
|
|
100
|
+
function recordingOverrides(raw, used) {
|
|
101
|
+
if (!used)
|
|
102
|
+
return raw;
|
|
103
|
+
return new Proxy(raw, {
|
|
104
|
+
getOwnPropertyDescriptor(target, prop) {
|
|
105
|
+
const desc = Object.getOwnPropertyDescriptor(target, prop);
|
|
106
|
+
if (desc && typeof prop === "string")
|
|
107
|
+
used.add(prop);
|
|
108
|
+
return desc;
|
|
109
|
+
},
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
/** Coerce a resolved value (override or default; plain JSON or an existing stub
|
|
113
|
+
* handle) into a Repository handle, so stubbing a handle-returning capability
|
|
114
|
+
* with plain JSON never strips the handle's instance methods. */
|
|
115
|
+
function asRepository(data, overrides) {
|
|
116
|
+
const d = (data ?? {});
|
|
117
|
+
const slug = d.slug ?? "stub-repo";
|
|
118
|
+
return stubRepository({
|
|
119
|
+
slug,
|
|
120
|
+
cloneUrl: d.cloneUrl ?? `https://git.local/${slug}.git`,
|
|
121
|
+
status: d.status,
|
|
122
|
+
}, overrides);
|
|
123
|
+
}
|
|
124
|
+
/** Sandbox counterpart to {@link asRepository}. */
|
|
125
|
+
function asSandbox(data, overrides) {
|
|
126
|
+
const d = (data ?? {});
|
|
127
|
+
return stubSandbox({ name: d.name ?? "stub-sandbox", workspaceRoot: d.workspaceRoot }, overrides);
|
|
128
|
+
}
|
|
129
|
+
/** Coerce a `repositories.list` override (or default) into Repository handles,
|
|
130
|
+
* warning when the value or an element is the wrong shape — so a malformed list
|
|
131
|
+
* stub surfaces instead of silently yielding repos with `slug: undefined`. */
|
|
132
|
+
function asRepositoryList(data, overrides, warnings) {
|
|
133
|
+
if (!Array.isArray(data)) {
|
|
134
|
+
warnings?.add(`'repositories.list' stub must be an array of repositories (e.g. [{ "slug": "...", "cloneUrl": "..." }]); ` +
|
|
135
|
+
`got ${describeShape(data)}. Returning an empty list.`);
|
|
136
|
+
return [];
|
|
137
|
+
}
|
|
138
|
+
return data.map((el, i) => {
|
|
139
|
+
if (!el ||
|
|
140
|
+
typeof el !== "object" ||
|
|
141
|
+
typeof el.slug !== "string") {
|
|
142
|
+
warnings?.add(`'repositories.list'[${i}] is not a repository shape (expected { slug, cloneUrl }); got ${describeShape(el)}. ` +
|
|
143
|
+
`Note: stub values are NOT consumed one-per-call — a list stub is the array list() returns, so write ` +
|
|
144
|
+
`[{ "slug": "..." }], not [[{ ... }]].`);
|
|
145
|
+
}
|
|
146
|
+
return asRepository(el, overrides);
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
function describeShape(v) {
|
|
150
|
+
if (v === null)
|
|
151
|
+
return "null";
|
|
152
|
+
if (Array.isArray(v))
|
|
153
|
+
return `an array (length ${v.length})`;
|
|
154
|
+
return typeof v;
|
|
155
|
+
}
|
|
60
156
|
/**
|
|
61
157
|
* Build a handle proxy: data fields read from `data`; declared methods resolve an
|
|
62
158
|
* override (`<type>.<method>`) or a default; any other property is rejected as
|
|
@@ -65,11 +161,25 @@ function resolve(overrides, path, args, fallback) {
|
|
|
65
161
|
function makeHandle(type, methods, data, overrides, defaults) {
|
|
66
162
|
return new Proxy(data, {
|
|
67
163
|
get(target, prop) {
|
|
68
|
-
if (typeof prop ===
|
|
164
|
+
if (typeof prop === "symbol" || prop === "then")
|
|
69
165
|
return undefined;
|
|
70
166
|
const key = String(prop);
|
|
71
167
|
if (key in target)
|
|
72
168
|
return target[key]; // data field (incl. nested handles)
|
|
169
|
+
// Serialization / coercion hooks: a stub handle must survive being
|
|
170
|
+
// JSON.stringify'd, logged, or string-coerced — these flow through the
|
|
171
|
+
// local runner's trace, `ctx.shared` snapshots, and the resume payload. We
|
|
172
|
+
// answer them with the handle's plain data instead of letting the
|
|
173
|
+
// unknown-property guard below throw (which surfaced as the opaque
|
|
174
|
+
// "'sandbox.toJSON' is not a method or field" failure). `{ ...target }`
|
|
175
|
+
// copies only the data fields; nested handles serialize via their own
|
|
176
|
+
// toJSON in turn.
|
|
177
|
+
if (key === "toJSON")
|
|
178
|
+
return () => ({ ...target });
|
|
179
|
+
if (key === "toString")
|
|
180
|
+
return () => `[stub ${type}]`;
|
|
181
|
+
if (key === "valueOf")
|
|
182
|
+
return () => target;
|
|
73
183
|
if (methods.has(key)) {
|
|
74
184
|
return (...args) => Promise.resolve(resolve(overrides, `${type}.${key}`, args, () => defaults[key]?.(args)));
|
|
75
185
|
}
|
|
@@ -79,35 +189,49 @@ function makeHandle(type, methods, data, overrides, defaults) {
|
|
|
79
189
|
}
|
|
80
190
|
const REPO_METHOD_DEFAULTS = {
|
|
81
191
|
delete: () => undefined,
|
|
82
|
-
pushFromSandbox: () => ({
|
|
192
|
+
pushFromSandbox: () => ({
|
|
193
|
+
pushed: true,
|
|
194
|
+
sha: "stub00000000",
|
|
195
|
+
branch: "main",
|
|
196
|
+
}),
|
|
83
197
|
};
|
|
84
198
|
const SANDBOX_METHOD_DEFAULTS = {
|
|
85
|
-
exec: () => ({ pid:
|
|
86
|
-
readFile: () =>
|
|
199
|
+
exec: () => ({ pid: "stub-proc", exitCode: 0, stdout: "", stderr: "" }),
|
|
200
|
+
readFile: () => "",
|
|
87
201
|
writeFile: () => undefined,
|
|
88
202
|
destroy: () => undefined,
|
|
89
203
|
};
|
|
90
204
|
function stubRepository(data, overrides) {
|
|
91
|
-
return makeHandle(
|
|
205
|
+
return makeHandle("repository", REPOSITORY_METHODS, {
|
|
206
|
+
slug: data.slug,
|
|
207
|
+
cloneUrl: data.cloneUrl,
|
|
208
|
+
status: data.status ?? "active",
|
|
209
|
+
}, overrides, REPO_METHOD_DEFAULTS);
|
|
92
210
|
}
|
|
93
211
|
function stubSandbox(data, overrides) {
|
|
94
|
-
return makeHandle(
|
|
212
|
+
return makeHandle("sandbox", SANDBOX_METHODS, { name: data.name, workspaceRoot: data.workspaceRoot ?? "/workspace" }, overrides, SANDBOX_METHOD_DEFAULTS);
|
|
95
213
|
}
|
|
96
214
|
function stubCodingResult(overrides) {
|
|
97
215
|
return {
|
|
98
|
-
runId:
|
|
99
|
-
status:
|
|
100
|
-
summary:
|
|
216
|
+
runId: "stub-run",
|
|
217
|
+
status: "completed",
|
|
218
|
+
summary: "(stub) coding run completed locally",
|
|
101
219
|
result: {
|
|
102
220
|
success: true,
|
|
103
221
|
turns: 1,
|
|
104
|
-
modelUsed:
|
|
222
|
+
modelUsed: "stub-model",
|
|
105
223
|
durationMs: 0,
|
|
106
224
|
toolCallCount: 0,
|
|
107
|
-
usage: {
|
|
225
|
+
usage: {
|
|
226
|
+
inputTokens: 0,
|
|
227
|
+
outputTokens: 0,
|
|
228
|
+
cacheReadTokens: 0,
|
|
229
|
+
cacheCreateTokens: 0,
|
|
230
|
+
thinkingTokens: 0,
|
|
231
|
+
},
|
|
108
232
|
},
|
|
109
233
|
error: null,
|
|
110
|
-
sandbox: stubSandbox({ name:
|
|
234
|
+
sandbox: stubSandbox({ name: "stub-sandbox" }, overrides),
|
|
111
235
|
};
|
|
112
236
|
}
|
|
113
237
|
function stubRunHandle(overrides, correlationId, result) {
|
|
@@ -118,62 +242,85 @@ function stubRunHandle(overrides, correlationId, result) {
|
|
|
118
242
|
status: () => Promise.resolve(result.status),
|
|
119
243
|
wait: () => Promise.resolve(result),
|
|
120
244
|
};
|
|
121
|
-
return makeHandle(
|
|
245
|
+
return makeHandle("runHandle", RUN_HANDLE_METHODS, handle, overrides, {});
|
|
122
246
|
}
|
|
123
247
|
/**
|
|
124
248
|
* Create a stub `Sapiom` client. Runs every capability against built-in defaults;
|
|
125
249
|
* pass `overrides` to control the results a step branches on.
|
|
126
250
|
*/
|
|
127
251
|
export function createStubClient(opts = {}) {
|
|
128
|
-
|
|
129
|
-
|
|
252
|
+
// Record which override keys actually match a call, so the runner can flag
|
|
253
|
+
// supplied-but-unmatched keys (typos / wrong plural-singular form).
|
|
254
|
+
const overrides = recordingOverrides(opts.overrides ?? {}, opts.usedKeys);
|
|
255
|
+
const r = (paths, args, fallback) => resolve(overrides, paths, args, fallback);
|
|
256
|
+
// Resolve a coding run result, then re-wrap its `sandbox` as a handle so the
|
|
257
|
+
// blocking `run()` path keeps a method-capable Sandbox even when the result was
|
|
258
|
+
// overridden with plain JSON. `keys` lets `launch()` accept `agent.coding.launch`
|
|
259
|
+
// (the call the author wrote) as well as the shared `agent.coding.run`.
|
|
260
|
+
const resolveCodingResult = (spec, keys) => {
|
|
261
|
+
const res = r(keys, [spec], () => stubCodingResult(overrides));
|
|
262
|
+
return { ...res, sandbox: asSandbox(res.sandbox, overrides) };
|
|
263
|
+
};
|
|
130
264
|
const client = {
|
|
131
265
|
sandboxes: {
|
|
132
|
-
create: (sandboxOpts) => Promise.resolve(r(
|
|
133
|
-
|
|
266
|
+
create: (sandboxOpts) => Promise.resolve(asSandbox(r("sandboxes.create", [sandboxOpts], () => ({
|
|
267
|
+
name: sandboxOpts?.name ?? "stub-sandbox",
|
|
268
|
+
})), overrides)),
|
|
269
|
+
attach: (name, attachOpts) => asSandbox(r("sandboxes.attach", [name, attachOpts], () => ({ name })), overrides),
|
|
134
270
|
},
|
|
135
271
|
repositories: {
|
|
136
|
-
create: (slug) => Promise.resolve(r(
|
|
137
|
-
get: (slug) => Promise.resolve(r(
|
|
138
|
-
list: () => Promise.resolve(r(
|
|
139
|
-
delete: (slug) => Promise.resolve(r(
|
|
140
|
-
attach: (slug, cloneUrl) => r(
|
|
272
|
+
create: (slug) => Promise.resolve(asRepository(r("repositories.create", [slug], () => ({ slug })), overrides)),
|
|
273
|
+
get: (slug) => Promise.resolve(asRepository(r("repositories.get", [slug], () => ({ slug })), overrides)),
|
|
274
|
+
list: () => Promise.resolve(asRepositoryList(r("repositories.list", [], () => []), overrides, opts.warnings)),
|
|
275
|
+
delete: (slug) => Promise.resolve(r("repositories.delete", [slug], () => undefined)),
|
|
276
|
+
attach: (slug, cloneUrl) => asRepository(r("repositories.attach", [slug, cloneUrl], () => ({
|
|
277
|
+
slug,
|
|
278
|
+
cloneUrl,
|
|
279
|
+
})), overrides),
|
|
141
280
|
},
|
|
142
281
|
agent: {
|
|
143
282
|
coding: {
|
|
144
|
-
run: (spec) => Promise.resolve(
|
|
283
|
+
run: (spec) => Promise.resolve(resolveCodingResult(spec, "agent.coding.run")),
|
|
145
284
|
launch: (spec) => {
|
|
146
285
|
const correlationId = `stub-run-${++launchSeq}`;
|
|
147
|
-
//
|
|
148
|
-
//
|
|
286
|
+
// `launch()` honors the key matching the call the author wrote
|
|
287
|
+
// (`agent.coding.launch`) first, then the shared `agent.coding.run`
|
|
288
|
+
// that controls both paths.
|
|
149
289
|
const result = {
|
|
150
|
-
...
|
|
290
|
+
...resolveCodingResult(spec, dispatchedKeys("agent.coding")),
|
|
151
291
|
runId: correlationId,
|
|
152
292
|
};
|
|
153
|
-
//
|
|
154
|
-
|
|
293
|
+
// Register for pause-resume with the wire shape a resumed step receives:
|
|
294
|
+
// `toResumePayload` maps the live result to a `CodingResultPayload` (an
|
|
295
|
+
// `executionEnvironment` reference, not a live sandbox handle).
|
|
296
|
+
return dispatchable(stubRunHandle(overrides, correlationId, result), opts.signals, () => toResumePayload(result));
|
|
155
297
|
},
|
|
156
298
|
},
|
|
157
299
|
},
|
|
158
300
|
fileStorage: {
|
|
159
|
-
upload: (input) => Promise.resolve(r(
|
|
160
|
-
fileId:
|
|
161
|
-
uploadUrl:
|
|
162
|
-
expiresAt:
|
|
301
|
+
upload: (input) => Promise.resolve(r("fileStorage.upload", [input], () => ({
|
|
302
|
+
fileId: "stub-file",
|
|
303
|
+
uploadUrl: "https://storage.local/upload/stub-file",
|
|
304
|
+
expiresAt: "2099-01-01T00:00:00Z",
|
|
163
305
|
requiredHeaders: {},
|
|
164
306
|
}))),
|
|
165
|
-
getDownloadUrl: (fileId) => Promise.resolve(r(
|
|
307
|
+
getDownloadUrl: (fileId) => Promise.resolve(r("fileStorage.getDownloadUrl", [fileId], () => ({
|
|
166
308
|
downloadUrl: `https://storage.local/download/${fileId}`,
|
|
167
|
-
expiresAt:
|
|
309
|
+
expiresAt: "2099-01-01T00:00:00Z",
|
|
310
|
+
}))),
|
|
311
|
+
list: (listOpts) => Promise.resolve(r("fileStorage.list", [listOpts], () => ({
|
|
312
|
+
files: [],
|
|
313
|
+
limit: 20,
|
|
314
|
+
offset: 0,
|
|
315
|
+
hasMore: false,
|
|
168
316
|
}))),
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
setVisibility: (fileId, visibility) => Promise.resolve(r('fileStorage.setVisibility', [fileId, visibility], () => ({
|
|
317
|
+
delete: (fileId) => Promise.resolve(r("fileStorage.delete", [fileId], () => undefined)),
|
|
318
|
+
setVisibility: (fileId, visibility) => Promise.resolve(r("fileStorage.setVisibility", [fileId, visibility], () => ({
|
|
172
319
|
fileId,
|
|
173
|
-
contentType:
|
|
320
|
+
contentType: "application/octet-stream",
|
|
174
321
|
visibility,
|
|
175
|
-
status:
|
|
176
|
-
createdAt:
|
|
322
|
+
status: "uploaded",
|
|
323
|
+
createdAt: "2099-01-01T00:00:00Z",
|
|
177
324
|
downloadRequestCount: 0,
|
|
178
325
|
}))),
|
|
179
326
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/stub/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/stub/index.ts"],"names":[],"mappings":"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"}
|