@gjermundgaraba/clankerbox-sdk 0.18.3 → 0.20.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.
@@ -25,18 +25,28 @@ declare const NotFound_base: Schema.Class<NotFound, Schema.TaggedStruct<"NotFoun
25
25
  }>, import("effect/Cause").YieldableError>;
26
26
  /** The machine or checkpoint doesn't exist. A `delete` that meets it is done. */
27
27
  declare class NotFound extends NotFound_base {}
28
- declare const ConflictKind: Schema.Literals<readonly ["exists", "busy"]>;
29
- type ConflictKind = typeof ConflictKind.Type;
30
28
  declare const Conflict_base: Schema.Class<Conflict, Schema.TaggedStruct<"Conflict", {
31
29
  readonly host: Schema.optionalKey<Schema.String>;
32
30
  readonly action: Schema.optionalKey<Schema.String>;
33
31
  readonly id: Schema.optionalKey<Schema.String>;
34
32
  readonly made: Schema.optionalKey<Schema.String>;
35
33
  readonly message: Schema.String;
36
- readonly kind: Schema.Literals<readonly ["exists", "busy"]>;
37
34
  }>, import("effect/Cause").YieldableError>;
38
- /** The name is taken (`exists`), or another action holds the resource (`busy`). */
35
+ /** The name is taken. */
39
36
  declare class Conflict extends Conflict_base {}
37
+ declare const Superseded_base: Schema.Class<Superseded, Schema.TaggedStruct<"Superseded", {
38
+ readonly host: Schema.optionalKey<Schema.String>;
39
+ readonly action: Schema.optionalKey<Schema.String>;
40
+ readonly id: Schema.optionalKey<Schema.String>;
41
+ readonly made: Schema.optionalKey<Schema.String>;
42
+ readonly message: Schema.String;
43
+ readonly by: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
44
+ }>, import("effect/Cause").YieldableError>;
45
+ /**
46
+ * A later request on the machine replaced this one before the host got there: `by` is what that
47
+ * request asked for. The machine's own state says where it is now.
48
+ */
49
+ declare class Superseded extends Superseded_base {}
40
50
  declare const NotOffered_base: Schema.Class<NotOffered, Schema.TaggedStruct<"NotOffered", {
41
51
  readonly host: Schema.optionalKey<Schema.String>;
42
52
  readonly action: Schema.optionalKey<Schema.String>;
@@ -55,7 +65,7 @@ declare const NotMade_base: Schema.Class<NotMade, Schema.TaggedStruct<"NotMade",
55
65
  readonly message: Schema.String;
56
66
  readonly machine: Schema.String;
57
67
  }>, import("effect/Cause").YieldableError>;
58
- /** `machine`'s create, fork or restore failed before it was made: it can only be deleted. */
68
+ /** `machine` isn't made yet: its create or setup still runs, so it can't be copied or captured. */
59
69
  declare class NotMade extends NotMade_base {}
60
70
  declare const Missing_base: Schema.Class<Missing, Schema.TaggedStruct<"Missing", {
61
71
  readonly host: Schema.optionalKey<Schema.String>;
@@ -67,16 +77,6 @@ declare const Missing_base: Schema.Class<Missing, Schema.TaggedStruct<"Missing",
67
77
  }>, import("effect/Cause").YieldableError>;
68
78
  /** The runtime no longer has `machine`: it can only be deleted. */
69
79
  declare class Missing extends Missing_base {}
70
- declare const NotReady_base: Schema.Class<NotReady, Schema.TaggedStruct<"NotReady", {
71
- readonly host: Schema.optionalKey<Schema.String>;
72
- readonly action: Schema.optionalKey<Schema.String>;
73
- readonly id: Schema.optionalKey<Schema.String>;
74
- readonly made: Schema.optionalKey<Schema.String>;
75
- readonly message: Schema.String;
76
- readonly checkpoint: Schema.String;
77
- }>, import("effect/Cause").YieldableError>;
78
- /** `checkpoint`'s capture failed, so nothing restores from it: it can only be deleted. */
79
- declare class NotReady extends NotReady_base {}
80
80
  declare const PinMismatch_base: Schema.Class<PinMismatch, Schema.TaggedStruct<"PinMismatch", {
81
81
  readonly host: Schema.optionalKey<Schema.String>;
82
82
  readonly action: Schema.optionalKey<Schema.String>;
@@ -113,11 +113,12 @@ declare const ScriptFailed_base: Schema.Class<ScriptFailed, Schema.TaggedStruct<
113
113
  readonly id: Schema.optionalKey<Schema.String>;
114
114
  readonly made: Schema.optionalKey<Schema.String>;
115
115
  readonly message: Schema.String;
116
- readonly script: Schema.Literals<readonly ["setup", "preparation"]>;
116
+ readonly script: Schema.String;
117
117
  }>, import("effect/Cause").YieldableError>;
118
118
  /**
119
119
  * A guest script exited non-zero or ran past its timeout; the message says which, with its
120
- * output's tail. A failed `setup` leaves the machine unmade, a failed `preparation` made.
120
+ * output's tail, and `script` names it: a failed `setup` deletes the machine, and a failed
121
+ * `preparation` runs again on the next start.
121
122
  */
122
123
  declare class ScriptFailed extends ScriptFailed_base {}
123
124
  declare const Refused_base: Schema.Class<Refused, Schema.TaggedStruct<"Refused", {
@@ -160,20 +161,22 @@ declare const Internal_base: Schema.Class<Internal, Schema.TaggedStruct<"Interna
160
161
  }>, import("effect/Cause").YieldableError>;
161
162
  declare class Internal extends Internal_base {}
162
163
  /** What a host may answer with; each action declares its own share. */
163
- declare const hostErrors: readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal];
164
- declare const HostError: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
164
+ declare const hostErrors: readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal];
165
+ declare const HostError: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
165
166
  type HostError = typeof HostError.Type;
166
167
  /**
167
168
  * Each carries, where known: `host` and `action`, which the client sets; `id`, the resource the
168
169
  * error is about, which a host sets on `NotFound` and `Conflict` and the client sets to the call's
169
- * subject otherwise; and `made`, the resource a create, fork, restore or capture makes, which a
170
- * failure may leave behind.
170
+ * subject otherwise; and `made`, the resource a create, fork, restore or capture makes. The host
171
+ * deletes a machine whose copy or setup fails, again at each recheck while that delete fails, and
172
+ * keeps one whose preparation fails; a call whose answer was lost, `Unavailable`, may leave
173
+ * `made` behind unmade.
171
174
  */
172
- declare const ClankerboxError: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal, typeof Unavailable]>;
175
+ declare const ClankerboxError: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal, typeof Unavailable]>;
173
176
  type ClankerboxError = typeof ClankerboxError.Type;
174
177
  /**
175
- * Whether the same call may succeed later: a busy resource or a full host may free up, and a read
176
- * that got no reply may get one.
178
+ * Whether the same call may succeed later: a full host may free up, and a read that got no reply
179
+ * may get one.
177
180
  */
178
181
  declare const retryable: (error: ClankerboxError) => boolean;
179
182
  //#endregion
@@ -190,21 +193,24 @@ declare const Http: ActionHttp.Binding<readonly [Action.Action<"listMachines", S
190
193
  readonly ramMib: Schema.Int;
191
194
  readonly diskGib: Schema.Int;
192
195
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
193
- readonly made: Schema.Boolean;
194
- readonly action: Schema.Union<readonly [Schema.Struct<{
195
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
196
- readonly status: Schema.Literals<readonly ["running", "done"]>;
197
- }>, Schema.Struct<{
198
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
199
- readonly status: Schema.Literal<"failed">;
200
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
201
- }>]>;
196
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
197
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
198
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
202
199
  readonly ssh: Schema.optionalKey<Schema.Struct<{
203
200
  readonly host: Schema.String;
204
201
  readonly port: Schema.Int;
205
202
  readonly user: Schema.String;
206
203
  }>>;
207
204
  readonly hostKey: Schema.optionalKey<Schema.String>;
205
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
206
+ readonly state: Schema.Literal<"joined">;
207
+ readonly name: Schema.optionalKey<Schema.String>;
208
+ }>, Schema.Struct<{
209
+ readonly state: Schema.Literal<"failed">;
210
+ readonly error: Schema.String;
211
+ }>, Schema.Struct<{
212
+ readonly state: Schema.Literal<"missing">;
213
+ }>]>>;
208
214
  }>>, readonly (typeof Invalid | typeof Internal)[], true, typeof Action.Anyone>, Action.Action<"getMachine", Schema.Struct<{
209
215
  readonly id: Schema.String;
210
216
  }>, Schema.Struct<{
@@ -217,21 +223,24 @@ declare const Http: ActionHttp.Binding<readonly [Action.Action<"listMachines", S
217
223
  readonly ramMib: Schema.Int;
218
224
  readonly diskGib: Schema.Int;
219
225
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
220
- readonly made: Schema.Boolean;
221
- readonly action: Schema.Union<readonly [Schema.Struct<{
222
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
223
- readonly status: Schema.Literals<readonly ["running", "done"]>;
224
- }>, Schema.Struct<{
225
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
226
- readonly status: Schema.Literal<"failed">;
227
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
228
- }>]>;
226
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
227
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
228
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
229
229
  readonly ssh: Schema.optionalKey<Schema.Struct<{
230
230
  readonly host: Schema.String;
231
231
  readonly port: Schema.Int;
232
232
  readonly user: Schema.String;
233
233
  }>>;
234
234
  readonly hostKey: Schema.optionalKey<Schema.String>;
235
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
236
+ readonly state: Schema.Literal<"joined">;
237
+ readonly name: Schema.optionalKey<Schema.String>;
238
+ }>, Schema.Struct<{
239
+ readonly state: Schema.Literal<"failed">;
240
+ readonly error: Schema.String;
241
+ }>, Schema.Struct<{
242
+ readonly state: Schema.Literal<"missing">;
243
+ }>]>>;
235
244
  }>, readonly (typeof Invalid | typeof NotFound | typeof Internal)[], true, typeof Action.Anyone>, Action.Action<"createMachine", Schema.Struct<{
236
245
  readonly base: Schema.String;
237
246
  readonly cpu: Schema.Int;
@@ -240,6 +249,7 @@ declare const Http: ActionHttp.Binding<readonly [Action.Action<"listMachines", S
240
249
  readonly setup: Schema.optionalKey<Schema.Struct<{
241
250
  readonly script: Schema.String;
242
251
  readonly timeoutSeconds: Schema.optionalKey<Schema.Int>;
252
+ readonly authorizedKeys: Schema.optionalKey<Schema.String>;
243
253
  }>>;
244
254
  readonly profile: Schema.optionalKey<Schema.String>;
245
255
  readonly id: Schema.String;
@@ -253,22 +263,25 @@ declare const Http: ActionHttp.Binding<readonly [Action.Action<"listMachines", S
253
263
  readonly ramMib: Schema.Int;
254
264
  readonly diskGib: Schema.Int;
255
265
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
256
- readonly made: Schema.Boolean;
257
- readonly action: Schema.Union<readonly [Schema.Struct<{
258
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
259
- readonly status: Schema.Literals<readonly ["running", "done"]>;
260
- }>, Schema.Struct<{
261
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
262
- readonly status: Schema.Literal<"failed">;
263
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
264
- }>]>;
266
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
267
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
268
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
265
269
  readonly ssh: Schema.optionalKey<Schema.Struct<{
266
270
  readonly host: Schema.String;
267
271
  readonly port: Schema.Int;
268
272
  readonly user: Schema.String;
269
273
  }>>;
270
274
  readonly hostKey: Schema.optionalKey<Schema.String>;
271
- }>, readonly (typeof Invalid | typeof Conflict | typeof NotOffered | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"startMachine", Schema.Struct<{
275
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
276
+ readonly state: Schema.Literal<"joined">;
277
+ readonly name: Schema.optionalKey<Schema.String>;
278
+ }>, Schema.Struct<{
279
+ readonly state: Schema.Literal<"failed">;
280
+ readonly error: Schema.String;
281
+ }>, Schema.Struct<{
282
+ readonly state: Schema.Literal<"missing">;
283
+ }>]>>;
284
+ }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Superseded | typeof NotOffered | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"startMachine", Schema.Struct<{
272
285
  readonly id: Schema.String;
273
286
  }>, Schema.Struct<{
274
287
  readonly id: Schema.String;
@@ -280,22 +293,25 @@ declare const Http: ActionHttp.Binding<readonly [Action.Action<"listMachines", S
280
293
  readonly ramMib: Schema.Int;
281
294
  readonly diskGib: Schema.Int;
282
295
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
283
- readonly made: Schema.Boolean;
284
- readonly action: Schema.Union<readonly [Schema.Struct<{
285
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
286
- readonly status: Schema.Literals<readonly ["running", "done"]>;
287
- }>, Schema.Struct<{
288
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
289
- readonly status: Schema.Literal<"failed">;
290
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
291
- }>]>;
296
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
297
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
298
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
292
299
  readonly ssh: Schema.optionalKey<Schema.Struct<{
293
300
  readonly host: Schema.String;
294
301
  readonly port: Schema.Int;
295
302
  readonly user: Schema.String;
296
303
  }>>;
297
304
  readonly hostKey: Schema.optionalKey<Schema.String>;
298
- }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof NotMade | typeof Missing | typeof WrongState | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"stopMachine", Schema.Struct<{
305
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
306
+ readonly state: Schema.Literal<"joined">;
307
+ readonly name: Schema.optionalKey<Schema.String>;
308
+ }>, Schema.Struct<{
309
+ readonly state: Schema.Literal<"failed">;
310
+ readonly error: Schema.String;
311
+ }>, Schema.Struct<{
312
+ readonly state: Schema.Literal<"missing">;
313
+ }>]>>;
314
+ }>, readonly (typeof Invalid | typeof NotFound | typeof Superseded | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"stopMachine", Schema.Struct<{
299
315
  readonly id: Schema.String;
300
316
  }>, Schema.Struct<{
301
317
  readonly id: Schema.String;
@@ -307,24 +323,27 @@ declare const Http: ActionHttp.Binding<readonly [Action.Action<"listMachines", S
307
323
  readonly ramMib: Schema.Int;
308
324
  readonly diskGib: Schema.Int;
309
325
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
310
- readonly made: Schema.Boolean;
311
- readonly action: Schema.Union<readonly [Schema.Struct<{
312
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
313
- readonly status: Schema.Literals<readonly ["running", "done"]>;
314
- }>, Schema.Struct<{
315
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
316
- readonly status: Schema.Literal<"failed">;
317
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
318
- }>]>;
326
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
327
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
328
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
319
329
  readonly ssh: Schema.optionalKey<Schema.Struct<{
320
330
  readonly host: Schema.String;
321
331
  readonly port: Schema.Int;
322
332
  readonly user: Schema.String;
323
333
  }>>;
324
334
  readonly hostKey: Schema.optionalKey<Schema.String>;
325
- }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Refused | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"deleteMachine", Schema.Struct<{
335
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
336
+ readonly state: Schema.Literal<"joined">;
337
+ readonly name: Schema.optionalKey<Schema.String>;
338
+ }>, Schema.Struct<{
339
+ readonly state: Schema.Literal<"failed">;
340
+ readonly error: Schema.String;
341
+ }>, Schema.Struct<{
342
+ readonly state: Schema.Literal<"missing">;
343
+ }>]>>;
344
+ }>, readonly (typeof Invalid | typeof NotFound | typeof Superseded | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"deleteMachine", Schema.Struct<{
326
345
  readonly id: Schema.String;
327
- }>, Schema.Void, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Refused | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"forkMachine", Schema.Struct<{
346
+ }>, Schema.Void, readonly (typeof Invalid | typeof NotFound | typeof Superseded | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"forkMachine", Schema.Struct<{
328
347
  readonly machine: Schema.String;
329
348
  readonly name: Schema.String;
330
349
  }>, Schema.Struct<{
@@ -337,22 +356,25 @@ declare const Http: ActionHttp.Binding<readonly [Action.Action<"listMachines", S
337
356
  readonly ramMib: Schema.Int;
338
357
  readonly diskGib: Schema.Int;
339
358
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
340
- readonly made: Schema.Boolean;
341
- readonly action: Schema.Union<readonly [Schema.Struct<{
342
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
343
- readonly status: Schema.Literals<readonly ["running", "done"]>;
344
- }>, Schema.Struct<{
345
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
346
- readonly status: Schema.Literal<"failed">;
347
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
348
- }>]>;
359
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
360
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
361
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
349
362
  readonly ssh: Schema.optionalKey<Schema.Struct<{
350
363
  readonly host: Schema.String;
351
364
  readonly port: Schema.Int;
352
365
  readonly user: Schema.String;
353
366
  }>>;
354
367
  readonly hostKey: Schema.optionalKey<Schema.String>;
355
- }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof NotMade | typeof Missing | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"restoreMachine", Schema.Struct<{
368
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
369
+ readonly state: Schema.Literal<"joined">;
370
+ readonly name: Schema.optionalKey<Schema.String>;
371
+ }>, Schema.Struct<{
372
+ readonly state: Schema.Literal<"failed">;
373
+ readonly error: Schema.String;
374
+ }>, Schema.Struct<{
375
+ readonly state: Schema.Literal<"missing">;
376
+ }>]>>;
377
+ }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Superseded | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"restoreMachine", Schema.Struct<{
356
378
  readonly checkpoint: Schema.String;
357
379
  readonly name: Schema.String;
358
380
  }>, Schema.Struct<{
@@ -365,22 +387,25 @@ declare const Http: ActionHttp.Binding<readonly [Action.Action<"listMachines", S
365
387
  readonly ramMib: Schema.Int;
366
388
  readonly diskGib: Schema.Int;
367
389
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
368
- readonly made: Schema.Boolean;
369
- readonly action: Schema.Union<readonly [Schema.Struct<{
370
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
371
- readonly status: Schema.Literals<readonly ["running", "done"]>;
372
- }>, Schema.Struct<{
373
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
374
- readonly status: Schema.Literal<"failed">;
375
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
376
- }>]>;
390
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
391
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
392
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
377
393
  readonly ssh: Schema.optionalKey<Schema.Struct<{
378
394
  readonly host: Schema.String;
379
395
  readonly port: Schema.Int;
380
396
  readonly user: Schema.String;
381
397
  }>>;
382
398
  readonly hostKey: Schema.optionalKey<Schema.String>;
383
- }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof NotReady | typeof PinMismatch | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"listCheckpoints", Schema.$Record<Schema.String, Schema.Never>, Schema.$Array<Schema.Struct<{
399
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
400
+ readonly state: Schema.Literal<"joined">;
401
+ readonly name: Schema.optionalKey<Schema.String>;
402
+ }>, Schema.Struct<{
403
+ readonly state: Schema.Literal<"failed">;
404
+ readonly error: Schema.String;
405
+ }>, Schema.Struct<{
406
+ readonly state: Schema.Literal<"missing">;
407
+ }>]>>;
408
+ }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Superseded | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"listCheckpoints", Schema.$Record<Schema.String, Schema.Never>, Schema.$Array<Schema.Struct<{
384
409
  readonly id: Schema.String;
385
410
  readonly createdAt: Schema.DateTimeUtcFromString;
386
411
  readonly machine: Schema.String;
@@ -390,14 +415,6 @@ declare const Http: ActionHttp.Binding<readonly [Action.Action<"listMachines", S
390
415
  readonly cpu: Schema.Int;
391
416
  readonly ramMib: Schema.Int;
392
417
  readonly diskGib: Schema.Int;
393
- readonly action: Schema.Union<readonly [Schema.Struct<{
394
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
395
- readonly status: Schema.Literals<readonly ["running", "done"]>;
396
- }>, Schema.Struct<{
397
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
398
- readonly status: Schema.Literal<"failed">;
399
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
400
- }>]>;
401
418
  }>>, readonly (typeof Invalid | typeof Internal)[], true, typeof Action.Anyone>, Action.Action<"getCheckpoint", Schema.Struct<{
402
419
  readonly id: Schema.String;
403
420
  }>, Schema.Struct<{
@@ -410,14 +427,6 @@ declare const Http: ActionHttp.Binding<readonly [Action.Action<"listMachines", S
410
427
  readonly cpu: Schema.Int;
411
428
  readonly ramMib: Schema.Int;
412
429
  readonly diskGib: Schema.Int;
413
- readonly action: Schema.Union<readonly [Schema.Struct<{
414
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
415
- readonly status: Schema.Literals<readonly ["running", "done"]>;
416
- }>, Schema.Struct<{
417
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
418
- readonly status: Schema.Literal<"failed">;
419
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
420
- }>]>;
421
430
  }>, readonly (typeof Invalid | typeof NotFound | typeof Internal)[], true, typeof Action.Anyone>, Action.Action<"captureCheckpoint", Schema.Struct<{
422
431
  readonly machine: Schema.String;
423
432
  readonly name: Schema.String;
@@ -431,17 +440,34 @@ declare const Http: ActionHttp.Binding<readonly [Action.Action<"listMachines", S
431
440
  readonly cpu: Schema.Int;
432
441
  readonly ramMib: Schema.Int;
433
442
  readonly diskGib: Schema.Int;
434
- readonly action: Schema.Union<readonly [Schema.Struct<{
435
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
436
- readonly status: Schema.Literals<readonly ["running", "done"]>;
437
- }>, Schema.Struct<{
438
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
439
- readonly status: Schema.Literal<"failed">;
440
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
441
- }>]>;
442
443
  }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof NotMade | typeof Missing | typeof WrongState | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"deleteCheckpoint", Schema.Struct<{
443
444
  readonly id: Schema.String;
444
- }>, Schema.Void, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Refused | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"getHost", Schema.$Record<Schema.String, Schema.Never>, Schema.Struct<{
445
+ }>, Schema.Void, readonly (typeof Invalid | typeof NotFound | typeof Refused | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"prebuildCheckpoint", Schema.Struct<{
446
+ readonly base: Schema.String;
447
+ readonly cpu: Schema.Int;
448
+ readonly ramMib: Schema.Int;
449
+ readonly diskGib: Schema.Int;
450
+ readonly profile: Schema.optionalKey<Schema.String>;
451
+ readonly id: Schema.String;
452
+ readonly setup: Schema.Struct<{
453
+ readonly script: Schema.String;
454
+ readonly timeoutSeconds: Schema.optionalKey<Schema.Int>;
455
+ readonly authorizedKeys: Schema.optionalKey<Schema.String>;
456
+ }>;
457
+ }>, Schema.Struct<{
458
+ readonly checkpoint: Schema.Struct<{
459
+ readonly id: Schema.String;
460
+ readonly createdAt: Schema.DateTimeUtcFromString;
461
+ readonly machine: Schema.String;
462
+ readonly kind: Schema.Literals<readonly ["ram", "disk"]>;
463
+ readonly base: Schema.String;
464
+ readonly profile: Schema.optionalKey<Schema.String>;
465
+ readonly cpu: Schema.Int;
466
+ readonly ramMib: Schema.Int;
467
+ readonly diskGib: Schema.Int;
468
+ }>;
469
+ readonly built: Schema.Boolean;
470
+ }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Superseded | typeof NotOffered | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>, Action.Action<"getHost", Schema.$Record<Schema.String, Schema.Never>, Schema.Struct<{
445
471
  readonly id: Schema.String;
446
472
  readonly runtime: Schema.Literals<readonly ["smolvm", "tart", "boat"]>;
447
473
  readonly version: Schema.String;
@@ -473,14 +499,6 @@ declare const actionsByName: {
473
499
  readonly cpu: Schema.Int;
474
500
  readonly ramMib: Schema.Int;
475
501
  readonly diskGib: Schema.Int;
476
- readonly action: Schema.Union<readonly [Schema.Struct<{
477
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
478
- readonly status: Schema.Literals<readonly ["running", "done"]>;
479
- }>, Schema.Struct<{
480
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
481
- readonly status: Schema.Literal<"failed">;
482
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
483
- }>]>;
484
502
  }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof NotMade | typeof Missing | typeof WrongState | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>;
485
503
  readonly createMachine: Action.Action<"createMachine", Schema.Struct<{
486
504
  readonly base: Schema.String;
@@ -490,6 +508,7 @@ declare const actionsByName: {
490
508
  readonly setup: Schema.optionalKey<Schema.Struct<{
491
509
  readonly script: Schema.String;
492
510
  readonly timeoutSeconds: Schema.optionalKey<Schema.Int>;
511
+ readonly authorizedKeys: Schema.optionalKey<Schema.String>;
493
512
  }>>;
494
513
  readonly profile: Schema.optionalKey<Schema.String>;
495
514
  readonly id: Schema.String;
@@ -503,28 +522,31 @@ declare const actionsByName: {
503
522
  readonly ramMib: Schema.Int;
504
523
  readonly diskGib: Schema.Int;
505
524
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
506
- readonly made: Schema.Boolean;
507
- readonly action: Schema.Union<readonly [Schema.Struct<{
508
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
509
- readonly status: Schema.Literals<readonly ["running", "done"]>;
510
- }>, Schema.Struct<{
511
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
512
- readonly status: Schema.Literal<"failed">;
513
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
514
- }>]>;
525
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
526
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
527
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
515
528
  readonly ssh: Schema.optionalKey<Schema.Struct<{
516
529
  readonly host: Schema.String;
517
530
  readonly port: Schema.Int;
518
531
  readonly user: Schema.String;
519
532
  }>>;
520
533
  readonly hostKey: Schema.optionalKey<Schema.String>;
521
- }>, readonly (typeof Invalid | typeof Conflict | typeof NotOffered | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>;
534
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
535
+ readonly state: Schema.Literal<"joined">;
536
+ readonly name: Schema.optionalKey<Schema.String>;
537
+ }>, Schema.Struct<{
538
+ readonly state: Schema.Literal<"failed">;
539
+ readonly error: Schema.String;
540
+ }>, Schema.Struct<{
541
+ readonly state: Schema.Literal<"missing">;
542
+ }>]>>;
543
+ }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Superseded | typeof NotOffered | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>;
522
544
  readonly deleteCheckpoint: Action.Action<"deleteCheckpoint", Schema.Struct<{
523
545
  readonly id: Schema.String;
524
- }>, Schema.Void, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Refused | typeof Internal)[], false, typeof Action.Anyone>;
546
+ }>, Schema.Void, readonly (typeof Invalid | typeof NotFound | typeof Refused | typeof Internal)[], false, typeof Action.Anyone>;
525
547
  readonly deleteMachine: Action.Action<"deleteMachine", Schema.Struct<{
526
548
  readonly id: Schema.String;
527
- }>, Schema.Void, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Refused | typeof Internal)[], false, typeof Action.Anyone>;
549
+ }>, Schema.Void, readonly (typeof Invalid | typeof NotFound | typeof Superseded | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>;
528
550
  readonly forkMachine: Action.Action<"forkMachine", Schema.Struct<{
529
551
  readonly machine: Schema.String;
530
552
  readonly name: Schema.String;
@@ -538,22 +560,25 @@ declare const actionsByName: {
538
560
  readonly ramMib: Schema.Int;
539
561
  readonly diskGib: Schema.Int;
540
562
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
541
- readonly made: Schema.Boolean;
542
- readonly action: Schema.Union<readonly [Schema.Struct<{
543
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
544
- readonly status: Schema.Literals<readonly ["running", "done"]>;
545
- }>, Schema.Struct<{
546
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
547
- readonly status: Schema.Literal<"failed">;
548
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
549
- }>]>;
563
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
564
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
565
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
550
566
  readonly ssh: Schema.optionalKey<Schema.Struct<{
551
567
  readonly host: Schema.String;
552
568
  readonly port: Schema.Int;
553
569
  readonly user: Schema.String;
554
570
  }>>;
555
571
  readonly hostKey: Schema.optionalKey<Schema.String>;
556
- }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof NotMade | typeof Missing | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>;
572
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
573
+ readonly state: Schema.Literal<"joined">;
574
+ readonly name: Schema.optionalKey<Schema.String>;
575
+ }>, Schema.Struct<{
576
+ readonly state: Schema.Literal<"failed">;
577
+ readonly error: Schema.String;
578
+ }>, Schema.Struct<{
579
+ readonly state: Schema.Literal<"missing">;
580
+ }>]>>;
581
+ }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Superseded | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>;
557
582
  readonly getCapacity: Action.Action<"getCapacity", Schema.$Record<Schema.String, Schema.Never>, Schema.$Array<Schema.Union<readonly [Schema.Struct<{
558
583
  readonly host: Schema.String;
559
584
  readonly resource: Schema.Literals<readonly ["cpu", "ramMib", "runningVms", "activeSandboxes", "startsPerMinute", "startsPerHour", "startsPerDay"]>;
@@ -577,14 +602,6 @@ declare const actionsByName: {
577
602
  readonly cpu: Schema.Int;
578
603
  readonly ramMib: Schema.Int;
579
604
  readonly diskGib: Schema.Int;
580
- readonly action: Schema.Union<readonly [Schema.Struct<{
581
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
582
- readonly status: Schema.Literals<readonly ["running", "done"]>;
583
- }>, Schema.Struct<{
584
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
585
- readonly status: Schema.Literal<"failed">;
586
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
587
- }>]>;
588
605
  }>, readonly (typeof Invalid | typeof NotFound | typeof Internal)[], true, typeof Action.Anyone>;
589
606
  readonly getHost: Action.Action<"getHost", Schema.$Record<Schema.String, Schema.Never>, Schema.Struct<{
590
607
  readonly id: Schema.String;
@@ -606,21 +623,24 @@ declare const actionsByName: {
606
623
  readonly ramMib: Schema.Int;
607
624
  readonly diskGib: Schema.Int;
608
625
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
609
- readonly made: Schema.Boolean;
610
- readonly action: Schema.Union<readonly [Schema.Struct<{
611
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
612
- readonly status: Schema.Literals<readonly ["running", "done"]>;
613
- }>, Schema.Struct<{
614
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
615
- readonly status: Schema.Literal<"failed">;
616
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
617
- }>]>;
626
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
627
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
628
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
618
629
  readonly ssh: Schema.optionalKey<Schema.Struct<{
619
630
  readonly host: Schema.String;
620
631
  readonly port: Schema.Int;
621
632
  readonly user: Schema.String;
622
633
  }>>;
623
634
  readonly hostKey: Schema.optionalKey<Schema.String>;
635
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
636
+ readonly state: Schema.Literal<"joined">;
637
+ readonly name: Schema.optionalKey<Schema.String>;
638
+ }>, Schema.Struct<{
639
+ readonly state: Schema.Literal<"failed">;
640
+ readonly error: Schema.String;
641
+ }>, Schema.Struct<{
642
+ readonly state: Schema.Literal<"missing">;
643
+ }>]>>;
624
644
  }>, readonly (typeof Invalid | typeof NotFound | typeof Internal)[], true, typeof Action.Anyone>;
625
645
  readonly listCheckpoints: Action.Action<"listCheckpoints", Schema.$Record<Schema.String, Schema.Never>, Schema.$Array<Schema.Struct<{
626
646
  readonly id: Schema.String;
@@ -632,14 +652,6 @@ declare const actionsByName: {
632
652
  readonly cpu: Schema.Int;
633
653
  readonly ramMib: Schema.Int;
634
654
  readonly diskGib: Schema.Int;
635
- readonly action: Schema.Union<readonly [Schema.Struct<{
636
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
637
- readonly status: Schema.Literals<readonly ["running", "done"]>;
638
- }>, Schema.Struct<{
639
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
640
- readonly status: Schema.Literal<"failed">;
641
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
642
- }>]>;
643
655
  }>>, readonly (typeof Invalid | typeof Internal)[], true, typeof Action.Anyone>;
644
656
  readonly listMachines: Action.Action<"listMachines", Schema.$Record<Schema.String, Schema.Never>, Schema.$Array<Schema.Struct<{
645
657
  readonly id: Schema.String;
@@ -651,22 +663,51 @@ declare const actionsByName: {
651
663
  readonly ramMib: Schema.Int;
652
664
  readonly diskGib: Schema.Int;
653
665
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
654
- readonly made: Schema.Boolean;
655
- readonly action: Schema.Union<readonly [Schema.Struct<{
656
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
657
- readonly status: Schema.Literals<readonly ["running", "done"]>;
658
- }>, Schema.Struct<{
659
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
660
- readonly status: Schema.Literal<"failed">;
661
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
662
- }>]>;
666
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
667
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
668
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
663
669
  readonly ssh: Schema.optionalKey<Schema.Struct<{
664
670
  readonly host: Schema.String;
665
671
  readonly port: Schema.Int;
666
672
  readonly user: Schema.String;
667
673
  }>>;
668
674
  readonly hostKey: Schema.optionalKey<Schema.String>;
675
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
676
+ readonly state: Schema.Literal<"joined">;
677
+ readonly name: Schema.optionalKey<Schema.String>;
678
+ }>, Schema.Struct<{
679
+ readonly state: Schema.Literal<"failed">;
680
+ readonly error: Schema.String;
681
+ }>, Schema.Struct<{
682
+ readonly state: Schema.Literal<"missing">;
683
+ }>]>>;
669
684
  }>>, readonly (typeof Invalid | typeof Internal)[], true, typeof Action.Anyone>;
685
+ readonly prebuildCheckpoint: Action.Action<"prebuildCheckpoint", Schema.Struct<{
686
+ readonly base: Schema.String;
687
+ readonly cpu: Schema.Int;
688
+ readonly ramMib: Schema.Int;
689
+ readonly diskGib: Schema.Int;
690
+ readonly profile: Schema.optionalKey<Schema.String>;
691
+ readonly id: Schema.String;
692
+ readonly setup: Schema.Struct<{
693
+ readonly script: Schema.String;
694
+ readonly timeoutSeconds: Schema.optionalKey<Schema.Int>;
695
+ readonly authorizedKeys: Schema.optionalKey<Schema.String>;
696
+ }>;
697
+ }>, Schema.Struct<{
698
+ readonly checkpoint: Schema.Struct<{
699
+ readonly id: Schema.String;
700
+ readonly createdAt: Schema.DateTimeUtcFromString;
701
+ readonly machine: Schema.String;
702
+ readonly kind: Schema.Literals<readonly ["ram", "disk"]>;
703
+ readonly base: Schema.String;
704
+ readonly profile: Schema.optionalKey<Schema.String>;
705
+ readonly cpu: Schema.Int;
706
+ readonly ramMib: Schema.Int;
707
+ readonly diskGib: Schema.Int;
708
+ }>;
709
+ readonly built: Schema.Boolean;
710
+ }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Superseded | typeof NotOffered | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>;
670
711
  readonly restoreMachine: Action.Action<"restoreMachine", Schema.Struct<{
671
712
  readonly checkpoint: Schema.String;
672
713
  readonly name: Schema.String;
@@ -680,22 +721,25 @@ declare const actionsByName: {
680
721
  readonly ramMib: Schema.Int;
681
722
  readonly diskGib: Schema.Int;
682
723
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
683
- readonly made: Schema.Boolean;
684
- readonly action: Schema.Union<readonly [Schema.Struct<{
685
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
686
- readonly status: Schema.Literals<readonly ["running", "done"]>;
687
- }>, Schema.Struct<{
688
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
689
- readonly status: Schema.Literal<"failed">;
690
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
691
- }>]>;
724
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
725
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
726
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
692
727
  readonly ssh: Schema.optionalKey<Schema.Struct<{
693
728
  readonly host: Schema.String;
694
729
  readonly port: Schema.Int;
695
730
  readonly user: Schema.String;
696
731
  }>>;
697
732
  readonly hostKey: Schema.optionalKey<Schema.String>;
698
- }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof NotReady | typeof PinMismatch | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>;
733
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
734
+ readonly state: Schema.Literal<"joined">;
735
+ readonly name: Schema.optionalKey<Schema.String>;
736
+ }>, Schema.Struct<{
737
+ readonly state: Schema.Literal<"failed">;
738
+ readonly error: Schema.String;
739
+ }>, Schema.Struct<{
740
+ readonly state: Schema.Literal<"missing">;
741
+ }>]>>;
742
+ }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Superseded | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>;
699
743
  readonly startMachine: Action.Action<"startMachine", Schema.Struct<{
700
744
  readonly id: Schema.String;
701
745
  }>, Schema.Struct<{
@@ -708,22 +752,25 @@ declare const actionsByName: {
708
752
  readonly ramMib: Schema.Int;
709
753
  readonly diskGib: Schema.Int;
710
754
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
711
- readonly made: Schema.Boolean;
712
- readonly action: Schema.Union<readonly [Schema.Struct<{
713
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
714
- readonly status: Schema.Literals<readonly ["running", "done"]>;
715
- }>, Schema.Struct<{
716
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
717
- readonly status: Schema.Literal<"failed">;
718
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
719
- }>]>;
755
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
756
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
757
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
720
758
  readonly ssh: Schema.optionalKey<Schema.Struct<{
721
759
  readonly host: Schema.String;
722
760
  readonly port: Schema.Int;
723
761
  readonly user: Schema.String;
724
762
  }>>;
725
763
  readonly hostKey: Schema.optionalKey<Schema.String>;
726
- }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof NotMade | typeof Missing | typeof WrongState | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>;
764
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
765
+ readonly state: Schema.Literal<"joined">;
766
+ readonly name: Schema.optionalKey<Schema.String>;
767
+ }>, Schema.Struct<{
768
+ readonly state: Schema.Literal<"failed">;
769
+ readonly error: Schema.String;
770
+ }>, Schema.Struct<{
771
+ readonly state: Schema.Literal<"missing">;
772
+ }>]>>;
773
+ }>, readonly (typeof Invalid | typeof NotFound | typeof Superseded | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>;
727
774
  readonly stopMachine: Action.Action<"stopMachine", Schema.Struct<{
728
775
  readonly id: Schema.String;
729
776
  }>, Schema.Struct<{
@@ -736,22 +783,25 @@ declare const actionsByName: {
736
783
  readonly ramMib: Schema.Int;
737
784
  readonly diskGib: Schema.Int;
738
785
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
739
- readonly made: Schema.Boolean;
740
- readonly action: Schema.Union<readonly [Schema.Struct<{
741
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
742
- readonly status: Schema.Literals<readonly ["running", "done"]>;
743
- }>, Schema.Struct<{
744
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
745
- readonly status: Schema.Literal<"failed">;
746
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
747
- }>]>;
786
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
787
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
788
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
748
789
  readonly ssh: Schema.optionalKey<Schema.Struct<{
749
790
  readonly host: Schema.String;
750
791
  readonly port: Schema.Int;
751
792
  readonly user: Schema.String;
752
793
  }>>;
753
794
  readonly hostKey: Schema.optionalKey<Schema.String>;
754
- }>, readonly (typeof Invalid | typeof NotFound | typeof Conflict | typeof Refused | typeof Internal)[], false, typeof Action.Anyone>;
795
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
796
+ readonly state: Schema.Literal<"joined">;
797
+ readonly name: Schema.optionalKey<Schema.String>;
798
+ }>, Schema.Struct<{
799
+ readonly state: Schema.Literal<"failed">;
800
+ readonly error: Schema.String;
801
+ }>, Schema.Struct<{
802
+ readonly state: Schema.Literal<"missing">;
803
+ }>]>>;
804
+ }>, readonly (typeof Invalid | typeof NotFound | typeof Superseded | typeof NotMade | typeof Missing | typeof PinMismatch | typeof WrongState | typeof Unsizable | typeof ScriptFailed | typeof Refused | typeof Capacity | typeof Internal)[], false, typeof Action.Anyone>;
755
805
  };
756
806
  /** What a host may answer action `N` with: the errors the contract declares for it. */
757
807
  type Declared<N extends keyof typeof actionsByName> = (typeof actionsByName)[N]["error"][number]["Type"];
@@ -759,21 +809,19 @@ type Declared<N extends keyof typeof actionsByName> = (typeof actionsByName)[N][
759
809
  //#region src/resources.d.ts
760
810
  declare const Runtime: Schema.Literals<readonly ["smolvm", "tart", "boat"]>;
761
811
  type Runtime = typeof Runtime.Type;
762
- /** The contract's mutations, which record themselves on a resource's `action`. */
763
- declare const ActionName: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
764
- type ActionName = typeof ActionName.Type;
765
- declare const ActionStatus: Schema.Literals<readonly ["running", "failed", "done"]>;
766
- type ActionStatus = typeof ActionStatus.Type;
767
- /** A resource's last action; the next action replaces it. */
768
- declare const ActionRecord: Schema.Union<readonly [Schema.Struct<{
769
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
770
- readonly status: Schema.Literals<readonly ["running", "done"]>;
771
- }>, Schema.Struct<{
772
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
773
- readonly status: Schema.Literal<"failed">;
774
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
775
- }>]>;
776
- type ActionRecord = typeof ActionRecord.Type;
812
+ /** What the operator asked a machine to be; the host keeps moving the machine toward it. */
813
+ declare const Desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
814
+ type Desired = typeof Desired.Type;
815
+ /**
816
+ * What the host is doing about a machine. A request waits for a rest: `settled`, at rest with what
817
+ * was asked; `failed`, after a step failed, until the next request; `lost`, one the runtime no
818
+ * longer has, which can only be deleted; and `waiting`, one the runtime can't read, which fails the
819
+ * request and is read again at the host's next recheck. `creating` copies the machine and runs its
820
+ * setup, and a machine whose create or setup fails is deleted. `starting` starts the machine, also
821
+ * when it runs already, and prepares it.
822
+ */
823
+ declare const Phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
824
+ type Phase = typeof Phase.Type;
777
825
  declare const SshEndpoint: Schema.Struct<{
778
826
  readonly host: Schema.String;
779
827
  readonly port: Schema.Int;
@@ -786,10 +834,29 @@ declare const SshLogin: Schema.Struct<{
786
834
  }>;
787
835
  type SshLogin = typeof SshLogin.Type;
788
836
  /**
789
- * `state` is `missing` when the runtime doesn't have the machine, and `unknown` when it couldn't
790
- * be read. Until its create, fork or restore has `made` it, a machine can only be read, stopped or
791
- * deleted. `ssh` is only on a running machine whose runtime gives it an endpoint, and `hostKey`,
792
- * `<type> <base64>`, once preparation has recorded it.
837
+ * A running machine's place on the tailnet, as the host last checked it: `joined` once
838
+ * `tailscaled` runs signed in, with the MagicDNS name Tailscale gave it, if any; `failed` with
839
+ * why; or `missing` when the guest has no `tailscaled`. Kept in the host's memory only: each start
840
+ * checks again, a joined machine is checked again every half hour or so, and a failed one sooner,
841
+ * waiting longer after each failure.
842
+ */
843
+ declare const TailnetStatus: Schema.Union<readonly [Schema.Struct<{
844
+ readonly state: Schema.Literal<"joined">;
845
+ readonly name: Schema.optionalKey<Schema.String>;
846
+ }>, Schema.Struct<{
847
+ readonly state: Schema.Literal<"failed">;
848
+ readonly error: Schema.String;
849
+ }>, Schema.Struct<{
850
+ readonly state: Schema.Literal<"missing">;
851
+ }>]>;
852
+ type TailnetStatus = typeof TailnetStatus.Type;
853
+ /**
854
+ * `state` is what the runtime reports: `missing` when it doesn't have the machine, and `unknown`
855
+ * when it couldn't be read. `desired` is what the last request asked for, `phase` what the host is
856
+ * doing about it, and `error` why the last step failed, until the next request. `ssh` is only
857
+ * on a running machine whose runtime gives it an endpoint, and `hostKey`, `<type> <base64>`, once
858
+ * preparation has recorded it. `tailnet` is on a running machine of a host that joins its machines
859
+ * to a tailnet, once the host has checked it.
793
860
  */
794
861
  declare const Machine: Schema.Struct<{
795
862
  readonly id: Schema.String;
@@ -801,26 +868,35 @@ declare const Machine: Schema.Struct<{
801
868
  readonly ramMib: Schema.Int;
802
869
  readonly diskGib: Schema.Int;
803
870
  readonly state: Schema.Literals<readonly ["running", "stopped", "missing", "unknown"]>;
804
- readonly made: Schema.Boolean;
805
- readonly action: Schema.Union<readonly [Schema.Struct<{
806
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
807
- readonly status: Schema.Literals<readonly ["running", "done"]>;
808
- }>, Schema.Struct<{
809
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
810
- readonly status: Schema.Literal<"failed">;
811
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
812
- }>]>;
871
+ readonly desired: Schema.Literals<readonly ["running", "stopped", "deleted"]>;
872
+ readonly phase: Schema.Literals<readonly ["observing", "waiting", "creating", "starting", "stopping", "deleting", "settled", "failed", "lost"]>;
873
+ readonly error: Schema.optionalKey<Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof Superseded, typeof NotOffered, typeof NotMade, typeof Missing, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>>;
813
874
  readonly ssh: Schema.optionalKey<Schema.Struct<{
814
875
  readonly host: Schema.String;
815
876
  readonly port: Schema.Int;
816
877
  readonly user: Schema.String;
817
878
  }>>;
818
879
  readonly hostKey: Schema.optionalKey<Schema.String>;
880
+ readonly tailnet: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
881
+ readonly state: Schema.Literal<"joined">;
882
+ readonly name: Schema.optionalKey<Schema.String>;
883
+ }>, Schema.Struct<{
884
+ readonly state: Schema.Literal<"failed">;
885
+ readonly error: Schema.String;
886
+ }>, Schema.Struct<{
887
+ readonly state: Schema.Literal<"missing">;
888
+ }>]>>;
819
889
  }>;
820
890
  type Machine = typeof Machine.Type;
821
- /** The state as people read it: `running`, or `stopped (unmade)` for one never made. */
822
- declare const stateLabel: ({ state, made }: Machine) => string;
823
- /** `kind` is `ram` (RAM and disks) on smolvm, and `disk` on Tart and boat. */
891
+ /**
892
+ * The state as people read it: `running` at rest, `running (failed)` where it is but not at rest,
893
+ * and `stopped, wants running (starting)` on the way.
894
+ */
895
+ declare const stateLabel: ({ state, desired, phase }: Machine) => string;
896
+ /**
897
+ * `kind` is `ram` (RAM and disks) on smolvm, and `disk` on Tart and boat. A checkpoint exists only
898
+ * once its capture is done, and never changes after.
899
+ */
824
900
  declare const Checkpoint: Schema.Struct<{
825
901
  readonly id: Schema.String;
826
902
  readonly createdAt: Schema.DateTimeUtcFromString;
@@ -831,18 +907,8 @@ declare const Checkpoint: Schema.Struct<{
831
907
  readonly cpu: Schema.Int;
832
908
  readonly ramMib: Schema.Int;
833
909
  readonly diskGib: Schema.Int;
834
- readonly action: Schema.Union<readonly [Schema.Struct<{
835
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
836
- readonly status: Schema.Literals<readonly ["running", "done"]>;
837
- }>, Schema.Struct<{
838
- readonly name: Schema.Literals<readonly ["createMachine", "startMachine", "stopMachine", "deleteMachine", "forkMachine", "restoreMachine", "captureCheckpoint", "deleteCheckpoint"]>;
839
- readonly status: Schema.Literal<"failed">;
840
- readonly error: Schema.Union<readonly [typeof Invalid, typeof NotFound, typeof Conflict, typeof NotOffered, typeof NotMade, typeof Missing, typeof NotReady, typeof PinMismatch, typeof WrongState, typeof Unsizable, typeof ScriptFailed, typeof Refused, typeof Capacity, typeof Internal]>;
841
- }>]>;
842
910
  }>;
843
911
  type Checkpoint = typeof Checkpoint.Type;
844
- /** A checkpoint restores once its capture is done; it never changes after. */
845
- declare const isReady: (checkpoint: Pick<Checkpoint, "action">) => boolean;
846
912
  /**
847
913
  * `runtimeVersion` is boat's API version on boat. `captureFrom` is the state a machine must be in
848
914
  * to be captured: Tart's is `stopped`.
@@ -880,10 +946,20 @@ type Usage = typeof Usage.Type;
880
946
  type WithoutHost<Row> = Row extends unknown ? Omit<Row, "host"> : never;
881
947
  /** A `Usage` row as a runtime reads it, before the host names itself on it. */
882
948
  type Reading = WithoutHost<Usage>;
883
- /** Nothing logs the script: it can carry secrets. */
949
+ /**
950
+ * Public keys, as `.pub` files hold them: each line that isn't blank is `<type> <base64>
951
+ * [comment]`, the type an OpenSSH key's, its certificate's or a hardware key's, and at least one
952
+ * line is. Anything else, a private key included, is refused.
953
+ */
954
+ declare const PublicKeys: Schema.String;
955
+ /**
956
+ * Nothing logs the script: it can carry secrets. `authorizedKeys` is appended to the login user's
957
+ * `~/.ssh/authorized_keys` once the script exits 0, through the guest's `sudo`.
958
+ */
884
959
  declare const Setup: Schema.Struct<{
885
960
  readonly script: Schema.String;
886
961
  readonly timeoutSeconds: Schema.optionalKey<Schema.Int>;
962
+ readonly authorizedKeys: Schema.optionalKey<Schema.String>;
887
963
  }>;
888
964
  type Setup = typeof Setup.Type;
889
965
  /** A profile file fills these in; the host sees only the `profile` label. */
@@ -895,6 +971,7 @@ declare const MachineSpec: Schema.Struct<{
895
971
  setup: Schema.optionalKey<Schema.Struct<{
896
972
  readonly script: Schema.String;
897
973
  readonly timeoutSeconds: Schema.optionalKey<Schema.Int>;
974
+ readonly authorizedKeys: Schema.optionalKey<Schema.String>;
898
975
  }>>;
899
976
  profile: Schema.optionalKey<Schema.String>;
900
977
  }>;
@@ -908,11 +985,43 @@ declare const CreateRequest: Schema.Struct<{
908
985
  readonly setup: Schema.optionalKey<Schema.Struct<{
909
986
  readonly script: Schema.String;
910
987
  readonly timeoutSeconds: Schema.optionalKey<Schema.Int>;
988
+ readonly authorizedKeys: Schema.optionalKey<Schema.String>;
911
989
  }>>;
912
990
  readonly profile: Schema.optionalKey<Schema.String>;
913
991
  readonly id: Schema.String;
914
992
  }>;
915
993
  type CreateRequest = typeof CreateRequest.Type;
994
+ /** A prebuild is the checkpoint `id` of a machine made from the spec, setup and all. */
995
+ declare const PrebuildRequest: Schema.Struct<{
996
+ readonly base: Schema.String;
997
+ readonly cpu: Schema.Int;
998
+ readonly ramMib: Schema.Int;
999
+ readonly diskGib: Schema.Int;
1000
+ readonly profile: Schema.optionalKey<Schema.String>;
1001
+ readonly id: Schema.String;
1002
+ readonly setup: Schema.Struct<{
1003
+ readonly script: Schema.String;
1004
+ readonly timeoutSeconds: Schema.optionalKey<Schema.Int>;
1005
+ readonly authorizedKeys: Schema.optionalKey<Schema.String>;
1006
+ }>;
1007
+ }>;
1008
+ type PrebuildRequest = typeof PrebuildRequest.Type;
1009
+ /** `built` is false when the host already had the checkpoint. */
1010
+ declare const Prebuilt: Schema.Struct<{
1011
+ readonly checkpoint: Schema.Struct<{
1012
+ readonly id: Schema.String;
1013
+ readonly createdAt: Schema.DateTimeUtcFromString;
1014
+ readonly machine: Schema.String;
1015
+ readonly kind: Schema.Literals<readonly ["ram", "disk"]>;
1016
+ readonly base: Schema.String;
1017
+ readonly profile: Schema.optionalKey<Schema.String>;
1018
+ readonly cpu: Schema.Int;
1019
+ readonly ramMib: Schema.Int;
1020
+ readonly diskGib: Schema.Int;
1021
+ }>;
1022
+ readonly built: Schema.Boolean;
1023
+ }>;
1024
+ type Prebuilt = typeof Prebuilt.Type;
916
1025
  declare namespace client_d_exports {
917
1026
  export { Calls, Client, CreateOptions, Deleted, ErrorOf, Gathered, HostAction, HostEntry, Interface, Options, Routed, Unreachable, layer, make };
918
1027
  }
@@ -969,7 +1078,7 @@ type Routed = { readonly [N in HostAction]: Input<N> extends Subject ? N : never
969
1078
  /**
970
1079
  * One method per action on a resource, named and typed as in the contract, but for `create` and
971
1080
  * the deletes. A create, fork, restore or capture's errors carry `made`, the resource it makes, so
972
- * a caller can find what a failure left behind.
1081
+ * a caller whose answer was lost can find what it left behind.
973
1082
  */
974
1083
  type Calls = { readonly [N in Exclude<Routed, "createMachine" | "deleteMachine" | "deleteCheckpoint">]: (input: Input<N>) => Effect.Effect<Success<N>, ErrorOf<N>>; };
975
1084
  interface Interface extends Calls {
@@ -1004,4 +1113,4 @@ declare class Client extends Client_base {}
1004
1113
  declare const make: (hosts: ReadonlyArray<HostEntry>, options?: Options) => Effect.Effect<Interface, Invalid, HttpClient.HttpClient>;
1005
1114
  declare const layer: (hosts: ReadonlyArray<HostEntry>, options?: Options) => Layer.Layer<Client, Invalid, HttpClient.HttpClient>;
1006
1115
  //#endregion
1007
- export { ConflictKind as A, Refused as B, Declared as C, Capacity as D, readTimeout as E, NotFound as F, hostErrors as G, Unavailable as H, NotMade as I, retryable as K, NotOffered as L, Internal as M, Invalid as N, ClankerboxError as O, Missing as P, NotReady as R, stateLabel as S, actionsByName as T, Unsizable as U, ScriptFailed as V, WrongState as W, Setup as _, Options as a, Usage as b, ActionRecord as c, CreateRequest as d, Host as f, Runtime as g, Reading as h, Interface as i, HostError as j, Conflict as k, ActionStatus as l, MachineSpec as m, CreateOptions as n, client_d_exports as o, Machine as p, HostEntry as r, ActionName as s, Client as t, Checkpoint as u, SshEndpoint as v, Http as w, isReady as x, SshLogin as y, PinMismatch as z };
1116
+ export { ClankerboxError as A, Refused as B, Usage as C, actionsByName as D, Http as E, Missing as F, WrongState as G, Superseded as H, NotFound as I, hostErrors as K, NotMade as L, HostError as M, Internal as N, readTimeout as O, Invalid as P, NotOffered as R, TailnetStatus as S, Declared as T, Unavailable as U, ScriptFailed as V, Unsizable as W, Reading as _, Options as a, SshEndpoint as b, CreateRequest as c, Machine as d, MachineSpec as f, PublicKeys as g, Prebuilt as h, Interface as i, Conflict as j, Capacity as k, Desired as l, PrebuildRequest as m, CreateOptions as n, client_d_exports as o, Phase as p, retryable as q, HostEntry as r, Checkpoint as s, Client as t, Host as u, Runtime as v, stateLabel as w, SshLogin as x, Setup as y, PinMismatch as z };