little-durable-objects 0.1.3 → 0.1.4

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.
@@ -6,23 +6,27 @@ interface ModalSandboxProviderOptions {
6
6
  readonly binaryPath?: string;
7
7
  readonly catalog?: CanonicalRegionCatalog;
8
8
  readonly client?: ModalClient;
9
+ readonly now?: () => number;
9
10
  }
10
11
  declare class ModalSandboxProvider implements SandboxProvider {
11
12
  private readonly options;
12
13
  private readonly modal;
13
14
  private readonly appName;
14
15
  private readonly binaryPath;
16
+ private readonly now;
15
17
  private readonly activations;
16
18
  constructor(options?: ModalSandboxProviderOptions);
17
19
  ensureHost(request: EnsureHostRequest): Promise<ActorHostHandle>;
18
20
  private ensureHostOnce;
19
- private reuseExisting;
21
+ private reuse;
20
22
  private createSandbox;
21
23
  private activate;
22
24
  private existing;
23
25
  private readHandle;
24
26
  private validatePlacement;
25
27
  private start;
28
+ private withProvisioning;
29
+ private timed;
26
30
  }
27
31
  export { ModalSandboxProvider };
28
32
  export type { ModalSandboxProviderOptions };
@@ -1 +1 @@
1
- {"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../providers/modal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,WAAW,EAAiB,MAAM,OAAO,CAAA;AAKtE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAE3D,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AASrF,UAAU,2BAA2B;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,sBAAsB,CAAA;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAChC;AAID,cAAM,oBAAqB,YAAW,eAAe;IAMrC,OAAO,CAAC,QAAQ,CAAC,OAAO;IALpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8C;gBAE7C,OAAO,GAAE,2BAAgC;IAMhE,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;YASxD,cAAc;YAWd,aAAa;YAWb,aAAa;YA+Bb,QAAQ;YAOR,QAAQ;YAUR,UAAU;YAYV,iBAAiB;YASjB,KAAK;CAgBtB;AA0DD,OAAO,EAAE,oBAAoB,EAAE,CAAA;AAC/B,YAAY,EAAE,2BAA2B,EAAE,CAAA"}
1
+ {"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../providers/modal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,WAAW,EAAiB,MAAM,OAAO,CAAA;AAMtE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAE3D,OAAO,KAAK,EAAE,eAAe,EAAyB,iBAAiB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAS5G,UAAU,2BAA2B;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,sBAAsB,CAAA;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;IAC7B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CAC9B;AAOD,cAAM,oBAAqB,YAAW,eAAe;IAOrC,OAAO,CAAC,QAAQ,CAAC,OAAO;IANpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8C;gBAE7C,OAAO,GAAE,2BAAgC;IAOhE,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;YASxD,cAAc;YAyBd,KAAK;YAaL,aAAa;YA+Bb,QAAQ;YAWR,QAAQ;YAUR,UAAU;YAYV,iBAAiB;YASjB,KAAK;IAwBnB,OAAO,CAAC,gBAAgB;YAaV,KAAK;CAKtB;AAkFD,OAAO,EAAE,oBAAoB,EAAE,CAAA;AAC/B,YAAY,EAAE,2BAA2B,EAAE,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import { AlreadyExistsError, ModalClient, NotFoundError } from "modal";
2
2
  import { createHash } from "node:crypto";
3
+ import { performance } from "node:perf_hooks";
3
4
  import { canonicalRegionForModal, modalPlacement } from "../regions.js";
4
5
  const hostPort = 7101;
5
6
  const hostRouteFile = "/tmp/durable-object-route";
@@ -12,12 +13,14 @@ class ModalSandboxProvider {
12
13
  modal;
13
14
  appName;
14
15
  binaryPath;
16
+ now;
15
17
  activations = new Map();
16
18
  constructor(options = {}) {
17
19
  this.options = options;
18
20
  this.modal = options.client ?? new ModalClient();
19
21
  this.appName = options.appName ?? "durable-object-hosts";
20
22
  this.binaryPath = options.binaryPath ?? "/usr/local/bin/little-durable-objects";
23
+ this.now = options.now ?? (() => performance.now());
21
24
  }
22
25
  async ensureHost(request) {
23
26
  const key = resourceName("host", request);
@@ -29,32 +32,46 @@ class ModalSandboxProvider {
29
32
  return activation;
30
33
  }
31
34
  async ensureHostOnce(request, name) {
35
+ const startedAt = this.now();
36
+ const phases = emptyProvisioningPhases();
32
37
  validateEnsureRequest(request);
33
38
  const placement = modalPlacement(request.canonicalRegion, this.options.catalog);
34
- const [app, image] = await Promise.all([this.modal.apps.fromName(this.appName, { createIfMissing: true }), this.modal.images.fromId(request.imageRef)]);
35
- const existing = await this.reuseExisting(app, name, request.canonicalRegion);
36
- if (existing)
37
- return existing;
38
- const acquired = await this.createSandbox(request, name, app, image, placement);
39
- if ("handle" in acquired)
40
- return acquired.handle;
41
- return this.activate(acquired.sandbox, request);
39
+ const resources = await this.timed(() => Promise.all([this.modal.apps.fromName(this.appName, { createIfMissing: true }), this.modal.images.fromId(request.imageRef)]));
40
+ phases.resourceLookupMs = resources.durationMs;
41
+ const [app, image] = resources.value;
42
+ const existing = await this.timed(() => this.existing(app, name));
43
+ phases.existingLookupMs = existing.durationMs;
44
+ if (existing.value) {
45
+ const handle = await this.reuse(existing.value, request.canonicalRegion, startedAt, phases);
46
+ if (handle)
47
+ return handle;
48
+ }
49
+ const acquired = await this.timed(() => this.createSandbox(request, name, app, image, placement));
50
+ phases.createMs = acquired.durationMs;
51
+ if (acquired.value.reused) {
52
+ const handle = await this.reuse(acquired.value.sandbox, request.canonicalRegion, startedAt, phases);
53
+ if (!handle)
54
+ throw new Error("concurrent Modal V2 host could not be reused");
55
+ return handle;
56
+ }
57
+ return this.activate(acquired.value.sandbox, request, startedAt, phases);
42
58
  }
43
- async reuseExisting(app, name, canonicalRegion) {
44
- const existing = await this.existing(app, name);
45
- if (!existing)
46
- return undefined;
59
+ async reuse(sandbox, canonicalRegion, startedAt, phases) {
60
+ const readyStartedAt = this.now();
47
61
  try {
48
- return await this.readHandle(existing, canonicalRegion);
62
+ const handle = await this.readHandle(sandbox, canonicalRegion);
63
+ phases.readyMs += elapsedMs(readyStartedAt, this.now());
64
+ return this.withProvisioning(handle, sandbox, true, startedAt, phases);
49
65
  }
50
66
  catch {
51
- await existing.terminate();
67
+ phases.readyMs += elapsedMs(readyStartedAt, this.now());
68
+ await sandbox.terminate();
52
69
  return undefined;
53
70
  }
54
71
  }
55
72
  async createSandbox(request, name, app, image, placement) {
56
73
  try {
57
- const sandbox = await this.modal.sandboxes.create(app, image, {
74
+ const sandbox = await this.modal.sandboxes.experimentalCreate(app, image, {
58
75
  name,
59
76
  timeoutMs: maximumSandboxLifetimeMs,
60
77
  idleTimeoutMs: request.hostIdleTimeoutMs,
@@ -75,24 +92,28 @@ class ModalSandboxProvider {
75
92
  regions: [...placement.regions],
76
93
  cloud: placement.cloud
77
94
  });
78
- return { sandbox };
95
+ return { sandbox, reused: false };
79
96
  }
80
97
  catch (error) {
81
98
  if (!(error instanceof AlreadyExistsError))
82
99
  throw error;
83
- const raced = (await this.existing(app, name)) ?? (await this.modal.sandboxes.fromName(this.appName, name));
84
- return { handle: await this.readHandle(raced, request.canonicalRegion) };
100
+ const raced = (await this.existing(app, name)) ?? (await this.modal.sandboxes.experimentalFromName(this.appName, name));
101
+ return { sandbox: raced, reused: true };
85
102
  }
86
103
  }
87
- async activate(sandbox, request) {
88
- await this.validatePlacement(sandbox, request.canonicalRegion);
89
- const handle = await this.start(sandbox, request);
90
- await writeMetadata(sandbox, handle);
91
- return handle;
104
+ async activate(sandbox, request, startedAt, phases) {
105
+ const placement = await this.timed(() => this.validatePlacement(sandbox, request.canonicalRegion));
106
+ phases.placementMs = placement.durationMs;
107
+ const started = await this.start(sandbox, request);
108
+ phases.tunnelMs = started.tunnelMs;
109
+ phases.readyMs = started.readyMs;
110
+ const metadata = await this.timed(() => writeMetadata(sandbox, started.handle));
111
+ phases.metadataMs = metadata.durationMs;
112
+ return this.withProvisioning(started.handle, sandbox, false, startedAt, phases);
92
113
  }
93
114
  async existing(app, name) {
94
115
  try {
95
- const sandbox = await this.modal.sandboxes.fromName(app.name ?? this.appName, name);
116
+ const sandbox = await this.modal.sandboxes.experimentalFromName(app.name ?? this.appName, name);
96
117
  return (await sandbox.poll()) === null ? sandbox : undefined;
97
118
  }
98
119
  catch (error) {
@@ -123,10 +144,13 @@ class ModalSandboxProvider {
123
144
  }
124
145
  }
125
146
  async start(sandbox, request) {
147
+ const tunnelStartedAt = this.now();
126
148
  const route = (await sandbox.tunnels())[hostPort]?.url;
127
149
  if (!route)
128
150
  throw new Error("Modal did not create the durable-object HTTP/2 tunnel");
129
151
  await writeFile(sandbox, hostRouteFile, route);
152
+ const tunnelMs = elapsedMs(tunnelStartedAt, this.now());
153
+ const readyStartedAt = this.now();
130
154
  const ready = await sandbox.exec(["sh", "-c", `for i in $(seq 1 1200); do test -f ${readyFile} && exit 0; if test -f ${hostExitedFile}; then cat ${hostStderrFile} >&2; exit 1; fi; sleep 0.05; done; exit 1`], { stdout: "pipe", stderr: "pipe" });
131
155
  const [detail, exitCode] = await Promise.all([ready.stderr.readText(), ready.wait()]);
132
156
  if (exitCode !== 0) {
@@ -134,7 +158,28 @@ class ModalSandboxProvider {
134
158
  const message = detail.trim();
135
159
  throw new Error(`durable-object host did not become ready${message ? `: ${message}` : ""}`);
136
160
  }
137
- return { hostId: request.hostId, route, canonicalRegion: request.canonicalRegion };
161
+ return {
162
+ handle: { hostId: request.hostId, route, canonicalRegion: request.canonicalRegion },
163
+ tunnelMs,
164
+ readyMs: elapsedMs(readyStartedAt, this.now())
165
+ };
166
+ }
167
+ withProvisioning(handle, sandbox, reused, startedAt, phases) {
168
+ return {
169
+ ...handle,
170
+ provisioning: {
171
+ provider: "modal",
172
+ resourceId: sandbox.sandboxId,
173
+ reused,
174
+ ...phases,
175
+ totalMs: elapsedMs(startedAt, this.now())
176
+ }
177
+ };
178
+ }
179
+ async timed(operation) {
180
+ const startedAt = this.now();
181
+ const value = await operation();
182
+ return { value, durationMs: elapsedMs(startedAt, this.now()) };
138
183
  }
139
184
  }
140
185
  function hostEnvironment(request) {
@@ -184,10 +229,21 @@ async function writeMetadata(sandbox, handle) {
184
229
  await writeFile(sandbox, "/tmp/durable-object-host.json", JSON.stringify(handle));
185
230
  }
186
231
  async function writeFile(sandbox, path, contents) {
187
- const file = await sandbox.open(path, "w");
188
- await file.write(new TextEncoder().encode(contents));
189
- await file.flush();
190
- await file.close();
232
+ await sandbox.filesystem.writeText(contents, path);
233
+ }
234
+ function emptyProvisioningPhases() {
235
+ return {
236
+ resourceLookupMs: 0,
237
+ existingLookupMs: 0,
238
+ createMs: 0,
239
+ placementMs: 0,
240
+ tunnelMs: 0,
241
+ readyMs: 0,
242
+ metadataMs: 0
243
+ };
244
+ }
245
+ function elapsedMs(startedAt, finishedAt) {
246
+ return Math.max(0, Math.round(finishedAt - startedAt));
191
247
  }
192
248
  export { ModalSandboxProvider };
193
249
  //# sourceMappingURL=modal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"modal.js","sourceRoot":"","sources":["../../providers/modal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAEtE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAKvE,MAAM,QAAQ,GAAG,IAAI,CAAA;AACrB,MAAM,aAAa,GAAG,2BAA2B,CAAA;AACjD,MAAM,SAAS,GAAG,2BAA2B,CAAA;AAC7C,MAAM,cAAc,GAAG,iCAAiC,CAAA;AACxD,MAAM,cAAc,GAAG,iCAAiC,CAAA;AACxD,MAAM,wBAAwB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAWpD,MAAM,oBAAoB;IAMO;IALZ,KAAK,CAAa;IAClB,OAAO,CAAQ;IACf,UAAU,CAAQ;IAClB,WAAW,GAAG,IAAI,GAAG,EAAoC,CAAA;IAE1E,YAA6B,UAAuC,EAAE;QAAzC,YAAO,GAAP,OAAO,CAAkC;QAClE,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,WAAW,EAAE,CAAA;QAChD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,sBAAsB,CAAA;QACxD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,uCAAuC,CAAA;IACnF,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAA0B;QACvC,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACzC,IAAI,OAAO;YAAE,OAAO,OAAO,CAAA;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;QAChG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;QACrC,OAAO,UAAU,CAAA;IACrB,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,OAA0B,EAAE,IAAY;QACjE,qBAAqB,CAAC,OAAO,CAAC,CAAA;QAC9B,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC/E,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QACvJ,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;QAC7E,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAA;QAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;QAC/E,IAAI,QAAQ,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC,MAAM,CAAA;QAChD,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACnD,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,GAAQ,EAAE,IAAY,EAAE,eAAuB;QACvE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QAC/C,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAA;QAC/B,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAA;QAC3D,CAAC;QAAC,MAAM,CAAC;YACL,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAA;YAC1B,OAAO,SAAS,CAAA;QACpB,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAA0B,EAAE,IAAY,EAAE,GAAQ,EAAE,KAAY,EAAE,SAA4C;QACtI,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE;gBAC1D,IAAI;gBACJ,SAAS,EAAE,wBAAwB;gBACnC,aAAa,EAAE,OAAO,CAAC,iBAAiB;gBACxC,OAAO,EAAE;oBACL,IAAI;oBACJ,IAAI;oBACJ,wMAAwM;oBACxM,+BAA+B;oBAC/B,aAAa;oBACb,IAAI,CAAC,UAAU;oBACf,cAAc;oBACd,cAAc;oBACd,SAAS;iBACZ;gBACD,OAAO,EAAE,OAAO,CAAC,gBAAgB;gBACjC,GAAG,EAAE,eAAe,CAAC,OAAO,CAAC;gBAC7B,OAAO,EAAE,CAAC,QAAQ,CAAC;gBACnB,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;gBAC/B,KAAK,EAAE,SAAS,CAAC,KAAK;aACzB,CAAC,CAAA;YACF,OAAO,EAAE,OAAO,EAAE,CAAA;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,CAAC,KAAK,YAAY,kBAAkB,CAAC;gBAAE,MAAM,KAAK,CAAA;YACvD,MAAM,KAAK,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA;YAC3G,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,EAAE,CAAA;QAC5E,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,OAAgB,EAAE,OAA0B;QAC/D,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;QAC9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACjD,MAAM,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QACpC,OAAO,MAAM,CAAA;IACjB,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,GAAQ,EAAE,IAAY;QACzC,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;YACnF,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAA;QAChE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,KAAK,YAAY,aAAa;gBAAE,OAAO,SAAS,CAAA;YACpD,MAAM,KAAK,CAAA;QACf,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,OAAgB,EAAE,eAAuB;QAC9D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,sIAAsI,CAAC,EAAE;YACrL,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,MAAM;SACjB,CAAC,CAAA;QACF,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;QAC3F,IAAI,QAAQ,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;QAChF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAoB,CAAA;QACtD,IAAI,MAAM,CAAC,eAAe,KAAK,eAAe;YAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;QACrH,OAAO,MAAM,CAAA;IACjB,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,OAAgB,EAAE,cAAsB;QACpE,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAA;QAChD,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACxG,IAAI,iBAAiB,KAAK,cAAc,EAAE,CAAC;YACvC,MAAM,OAAO,CAAC,SAAS,EAAE,CAAA;YACzB,MAAM,IAAI,KAAK,CAAC,wBAAwB,iBAAiB,IAAI,mBAAmB,cAAc,cAAc,EAAE,CAAC,CAAA;QACnH,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,OAAgB,EAAE,OAA0B;QAC5D,MAAM,KAAK,GAAG,CAAC,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAA;QACtD,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;QACpF,MAAM,SAAS,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,CAAA;QAC9C,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAC5B,CAAC,IAAI,EAAE,IAAI,EAAE,sCAAsC,SAAS,0BAA0B,cAAc,cAAc,cAAc,4CAA4C,CAAC,EAC7K,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CACrC,CAAA;QACD,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;QACrF,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACjB,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YAChD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAA;YAC7B,MAAM,IAAI,KAAK,CAAC,2CAA2C,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC/F,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,CAAA;IACtF,CAAC;CACJ;AAED,SAAS,eAAe,CAAC,OAA0B;IAC/C,OAAO;QACH,2BAA2B,EAAE,MAAM;QACnC,yBAAyB,EAAE,OAAO,CAAC,SAAS;QAC5C,8BAA8B,EAAE,OAAO,CAAC,aAAa;QACrD,2BAA2B,EAAE,OAAO,CAAC,WAAW;QAChD,gCAAgC,EAAE,OAAO,CAAC,eAAe;QACzD,yBAAyB,EAAE,OAAO,CAAC,SAAS;QAC5C,kCAAkC,EAAE,OAAO,CAAC,qBAAqB;QACjE,sBAAsB,EAAE,OAAO,CAAC,MAAM;QACtC,yBAAyB,EAAE,OAAO,CAAC,SAAS;QAC5C,qBAAqB,EAAE,OAAO,CAAC,eAAe;QAC9C,4BAA4B,EAAE,OAAO,CAAC,YAAY;QAClD,8BAA8B,EAAE,mCAAmC;QACnE,8BAA8B,EAAE,SAAS;QACzC,wBAAwB,EAAE,WAAW,QAAQ,EAAE;QAC/C,oCAAoC,EAAE,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC;QACxE,mCAAmC,EAAE,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC;QACtE,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,yBAAyB,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7F,CAAA;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,OAA0B;IACrD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,OAAO,CAAC,WAAW,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;IAC9H,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,OAAO,CAAC,kBAAkB,IAAI,CAAC,IAAI,OAAO,CAAC,kBAAkB,GAAG,wBAAwB,EAAE,CAAC;QAC5I,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IACpD,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,iBAAiB,IAAI,CAAC,IAAI,OAAO,CAAC,iBAAiB,GAAG,wBAAwB,EAAE,CAAC;QACzI,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;IACnD,CAAC;AACL,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,OAA0B;IAC1D,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACjL,OAAO,MAAM,IAAI,IAAI,MAAM,EAAE,CAAA;AACjC,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,OAAgB;IAC5C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,uEAAuE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAC7J,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IACzF,IAAI,QAAQ,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;IAC7E,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;IACrE,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;AACzE,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,OAAgB,EAAE,MAAuB;IAClE,MAAM,SAAS,CAAC,OAAO,EAAE,+BAA+B,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;AACrF,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,OAAgB,EAAE,IAAY,EAAE,QAAgB;IACrE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAC1C,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;IACpD,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;IAClB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;AACtB,CAAC;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAA"}
1
+ {"version":3,"file":"modal.js","sourceRoot":"","sources":["../../providers/modal.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,20 @@ interface ActorHostHandle {
19
19
  readonly hostId: string;
20
20
  readonly route: string;
21
21
  readonly canonicalRegion: string;
22
+ readonly provisioning?: ActorHostProvisioning;
23
+ }
24
+ interface ActorHostProvisioning {
25
+ readonly provider: string;
26
+ readonly resourceId: string;
27
+ readonly reused: boolean;
28
+ readonly resourceLookupMs: number;
29
+ readonly existingLookupMs: number;
30
+ readonly createMs: number;
31
+ readonly placementMs: number;
32
+ readonly tunnelMs: number;
33
+ readonly readyMs: number;
34
+ readonly metadataMs: number;
35
+ readonly totalMs: number;
22
36
  }
23
37
  interface SandboxProvider {
24
38
  ensureHost(request: EnsureHostRequest): Promise<ActorHostHandle>;
@@ -27,5 +41,5 @@ type SandboxProviderCommand = {
27
41
  readonly operation: "ensure_host";
28
42
  readonly request: EnsureHostRequest;
29
43
  };
30
- export type { ActorHostHandle, EnsureHostRequest, SandboxProvider, SandboxProviderCommand };
44
+ export type { ActorHostHandle, ActorHostProvisioning, EnsureHostRequest, SandboxProvider, SandboxProviderCommand };
31
45
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../providers/types.ts"],"names":[],"mappings":"AAAA,UAAU,iBAAiB;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAA;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAA;IACnC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAA;CACrC;AAED,UAAU,eAAe;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CACnC;AAED,UAAU,eAAe;IACrB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;CACnE;AAED,KAAK,sBAAsB,GAAG;IAAE,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAA;CAAE,CAAA;AAExG,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,sBAAsB,EAAE,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../providers/types.ts"],"names":[],"mappings":"AAAA,UAAU,iBAAiB;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAA;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAA;IACnC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAA;CACrC;AAED,UAAU,eAAe;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,YAAY,CAAC,EAAE,qBAAqB,CAAA;CAChD;AAED,UAAU,qBAAqB;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAC3B;AAED,UAAU,eAAe;IACrB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;CACnE;AAED,KAAK,sBAAsB,GAAG;IAAE,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAA;CAAE,CAAA;AAExG,YAAY,EAAE,eAAe,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,eAAe,EAAE,sBAAsB,EAAE,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "little-durable-objects",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Provider-neutral durable objects for sandbox compute",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -60,7 +60,7 @@
60
60
  "LICENSE.md"
61
61
  ],
62
62
  "dependencies": {
63
- "modal": "^0.7.2",
63
+ "modal": "^0.10.0",
64
64
  "tsx": "^4.0.0",
65
65
  "zod": "^4.3.6"
66
66
  },