@rivet-dev/agentos-runtime-core 0.2.8-rc.1 → 0.2.8-rc.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/commands/[ +0 -0
- package/commands/_stubs +0 -0
- package/commands/acl_tools +0 -0
- package/commands/arch +0 -0
- package/commands/attr +0 -0
- package/commands/awk +0 -0
- package/commands/b2sum +0 -0
- package/commands/base32 +0 -0
- package/commands/base64 +0 -0
- package/commands/basename +0 -0
- package/commands/basenc +0 -0
- package/commands/bash +0 -0
- package/commands/bc +0 -0
- package/commands/cat +0 -0
- package/commands/chacl +0 -0
- package/commands/chcon +0 -0
- package/commands/chgrp +0 -0
- package/commands/chmod +0 -0
- package/commands/chown +0 -0
- package/commands/chroot +0 -0
- package/commands/cksum +0 -0
- package/commands/cmp +0 -0
- package/commands/column +0 -0
- package/commands/comm +0 -0
- package/commands/cp +0 -0
- package/commands/curl +0 -0
- package/commands/cut +0 -0
- package/commands/date +0 -0
- package/commands/dd +0 -0
- package/commands/df +0 -0
- package/commands/diff +0 -0
- package/commands/dir +0 -0
- package/commands/dircolors +0 -0
- package/commands/dirname +0 -0
- package/commands/du +0 -0
- package/commands/echo +0 -0
- package/commands/egrep +0 -0
- package/commands/env +0 -0
- package/commands/envsubst +0 -0
- package/commands/expand +0 -0
- package/commands/expr +0 -0
- package/commands/factor +0 -0
- package/commands/false +0 -0
- package/commands/fd +0 -0
- package/commands/fgrep +0 -0
- package/commands/file +0 -0
- package/commands/find +0 -0
- package/commands/findmnt +0 -0
- package/commands/fmt +0 -0
- package/commands/fold +0 -0
- package/commands/getent +0 -0
- package/commands/getfacl +0 -0
- package/commands/getfattr +0 -0
- package/commands/git +0 -0
- package/commands/git-receive-pack +0 -0
- package/commands/git-remote-http +0 -0
- package/commands/git-remote-https +0 -0
- package/commands/git-upload-archive +0 -0
- package/commands/git-upload-pack +0 -0
- package/commands/grep +0 -0
- package/commands/groups +0 -0
- package/commands/gunzip +0 -0
- package/commands/gzip +0 -0
- package/commands/head +0 -0
- package/commands/hostid +0 -0
- package/commands/hostname +0 -0
- package/commands/http-test +0 -0
- package/commands/id +0 -0
- package/commands/install +0 -0
- package/commands/join +0 -0
- package/commands/jq +0 -0
- package/commands/kill +0 -0
- package/commands/link +0 -0
- package/commands/ln +0 -0
- package/commands/logname +0 -0
- package/commands/ls +0 -0
- package/commands/md5sum +0 -0
- package/commands/mkdir +0 -0
- package/commands/mkfifo +0 -0
- package/commands/mknod +0 -0
- package/commands/mktemp +0 -0
- package/commands/more +0 -0
- package/commands/mount +0 -0
- package/commands/mv +0 -0
- package/commands/nice +0 -0
- package/commands/nl +0 -0
- package/commands/nohup +0 -0
- package/commands/nproc +0 -0
- package/commands/numfmt +0 -0
- package/commands/od +0 -0
- package/commands/paste +0 -0
- package/commands/pathchk +0 -0
- package/commands/pinky +0 -0
- package/commands/printenv +0 -0
- package/commands/printf +0 -0
- package/commands/ptx +0 -0
- package/commands/pwd +0 -0
- package/commands/readlink +0 -0
- package/commands/realpath +0 -0
- package/commands/rev +0 -0
- package/commands/rg +0 -0
- package/commands/rm +0 -0
- package/commands/rmdir +0 -0
- package/commands/runas +0 -0
- package/commands/runcon +0 -0
- package/commands/sed +0 -0
- package/commands/seq +0 -0
- package/commands/setfacl +0 -0
- package/commands/setfattr +0 -0
- package/commands/sh +0 -0
- package/commands/sha1sum +0 -0
- package/commands/sha224sum +0 -0
- package/commands/sha256sum +0 -0
- package/commands/sha384sum +0 -0
- package/commands/sha512sum +0 -0
- package/commands/shred +0 -0
- package/commands/shuf +0 -0
- package/commands/sleep +0 -0
- package/commands/sort +0 -0
- package/commands/spawn-test-host +0 -0
- package/commands/split +0 -0
- package/commands/sqlite3 +0 -0
- package/commands/ssh +0 -0
- package/commands/ssh-keysign +0 -0
- package/commands/ssh-sk-helper +0 -0
- package/commands/stat +0 -0
- package/commands/stdbuf +0 -0
- package/commands/strings +0 -0
- package/commands/stty +0 -0
- package/commands/su +0 -0
- package/commands/sum +0 -0
- package/commands/sync +0 -0
- package/commands/tac +0 -0
- package/commands/tail +0 -0
- package/commands/tar +0 -0
- package/commands/tee +0 -0
- package/commands/test +0 -0
- package/commands/timeout +0 -0
- package/commands/touch +0 -0
- package/commands/tr +0 -0
- package/commands/tree +0 -0
- package/commands/true +0 -0
- package/commands/truncate +0 -0
- package/commands/tsort +0 -0
- package/commands/tty +0 -0
- package/commands/uname +0 -0
- package/commands/unexpand +0 -0
- package/commands/uniq +0 -0
- package/commands/unlink +0 -0
- package/commands/unzip +0 -0
- package/commands/uptime +0 -0
- package/commands/users +0 -0
- package/commands/vdir +0 -0
- package/commands/wc +0 -0
- package/commands/wget +0 -0
- package/commands/which +0 -0
- package/commands/who +0 -0
- package/commands/whoami +0 -0
- package/commands/xargs +0 -0
- package/commands/xattr_tools +0 -0
- package/commands/xfs_io +0 -0
- package/commands/xu +0 -0
- package/commands/yes +0 -0
- package/commands/yq +0 -0
- package/commands/zcat +0 -0
- package/commands/zip +0 -0
- package/dist/binary.js +4 -3
- package/dist/descriptors.d.ts +2 -12
- package/dist/descriptors.js +10 -6
- package/dist/frame-stream.d.ts +33 -0
- package/dist/frame-stream.js +113 -0
- package/dist/generated/AcpLimitsConfig.d.ts +16 -0
- package/dist/generated/BindingLimitsConfig.d.ts +10 -0
- package/dist/generated/CreateVmConfig.d.ts +4 -0
- package/dist/generated/Http2LimitsConfig.d.ts +12 -0
- package/dist/generated/Http2LimitsConfig.js +2 -0
- package/dist/generated/JsRuntimeLimitsConfig.d.ts +1 -0
- package/dist/generated/MountPluginDescriptor.d.ts +1 -1
- package/dist/generated/ProcessLimitsConfig.d.ts +7 -0
- package/dist/generated/ProcessLimitsConfig.js +2 -0
- package/dist/generated/ReactorLimitsConfig.d.ts +23 -0
- package/dist/generated/ReactorLimitsConfig.js +2 -0
- package/dist/generated/SqliteLimitsConfig.d.ts +3 -0
- package/dist/generated/SqliteLimitsConfig.js +2 -0
- package/dist/generated/TlsLimitsConfig.d.ts +3 -0
- package/dist/generated/TlsLimitsConfig.js +2 -0
- package/dist/generated/UdpLimitsConfig.d.ts +4 -0
- package/dist/generated/UdpLimitsConfig.js +2 -0
- package/dist/generated/VmGroupConfig.d.ts +5 -0
- package/dist/generated/VmGroupConfig.js +2 -0
- package/dist/generated/VmLimitsConfig.d.ts +14 -2
- package/dist/generated/VmSqliteDescriptor.d.ts +10 -0
- package/dist/generated/VmSqliteDescriptor.js +2 -0
- package/dist/generated/VmUserAccountConfig.d.ts +9 -0
- package/dist/generated/VmUserAccountConfig.js +2 -0
- package/dist/generated/VmUserConfig.d.ts +19 -0
- package/dist/generated/VmUserConfig.js +1 -0
- package/dist/generated/WasmLimitsConfig.d.ts +1 -0
- package/dist/generated-protocol.d.ts +60 -2
- package/dist/generated-protocol.js +166 -31
- package/dist/kernel-proxy.d.ts +4 -0
- package/dist/kernel-proxy.js +65 -33
- package/dist/native-client.d.ts +3 -3
- package/dist/native-client.js +43 -8
- package/dist/node-runtime-options-schema.d.ts +1 -1
- package/dist/node-runtime-options-schema.js +43 -1
- package/dist/node-runtime.d.ts +12 -3
- package/dist/node-runtime.js +8 -7
- package/dist/process.d.ts +5 -1
- package/dist/process.js +35 -8
- package/dist/protocol-client.d.ts +9 -2
- package/dist/protocol-client.js +127 -7
- package/dist/protocol-frames.d.ts +14 -3
- package/dist/protocol-frames.js +26 -1
- package/dist/protocol-schema.d.ts +1 -1
- package/dist/protocol-schema.js +1 -1
- package/dist/request-payloads.d.ts +4 -1
- package/dist/request-payloads.js +7 -2
- package/dist/response-payloads.d.ts +22 -1
- package/dist/response-payloads.js +33 -1
- package/dist/sidecar-errors.d.ts +22 -0
- package/dist/sidecar-errors.js +10 -0
- package/dist/sidecar-process.d.ts +12 -2
- package/dist/sidecar-process.js +77 -12
- package/dist/test-runtime.d.ts +21 -7
- package/dist/test-runtime.js +213 -66
- package/dist/vm-config.d.ts +5 -1
- package/package.json +11 -6
- package/commands/codex +0 -0
- package/commands/codex-exec +0 -0
- package/commands/http_get +0 -0
- package/dist/generated/ToolLimitsConfig.d.ts +0 -10
- /package/dist/generated/{ToolLimitsConfig.js → BindingLimitsConfig.js} +0 -0
package/dist/frame-stream.js
CHANGED
|
@@ -1,4 +1,117 @@
|
|
|
1
1
|
import { encodeLengthPrefixedPayload, tryDecodeLengthPrefixedPayload, } from "./framing.js";
|
|
2
|
+
/**
|
|
3
|
+
* Presents two physically independent frame streams as one transport while
|
|
4
|
+
* retaining strict lane ownership. An error or EOF on either lane is terminal
|
|
5
|
+
* to consumers of the combined transport.
|
|
6
|
+
*/
|
|
7
|
+
export class SplitLaneFrameTransport {
|
|
8
|
+
ordinary;
|
|
9
|
+
control;
|
|
10
|
+
selectWriteLane;
|
|
11
|
+
frameListeners = new Set();
|
|
12
|
+
errorListeners = new Set();
|
|
13
|
+
endListeners = new Set();
|
|
14
|
+
removeLaneListeners = [];
|
|
15
|
+
terminalError = null;
|
|
16
|
+
constructor(options) {
|
|
17
|
+
this.ordinary = options.ordinary;
|
|
18
|
+
this.control = options.control;
|
|
19
|
+
this.selectWriteLane = options.selectWriteLane;
|
|
20
|
+
this.removeLaneListeners.push(this.ordinary.onFrame((frame) => {
|
|
21
|
+
try {
|
|
22
|
+
options.validateOrdinaryFrame?.(frame);
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
this.emitError(error);
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
this.emitFrame(frame);
|
|
29
|
+
}), this.control.onFrame((frame) => {
|
|
30
|
+
try {
|
|
31
|
+
options.validateControlFrame?.(frame);
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
this.emitError(error);
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
this.emitFrame(frame);
|
|
38
|
+
}), this.ordinary.onError((error) => this.emitError(error)), this.control.onError((error) => this.emitError(error)), this.ordinary.onEnd(() => this.emitEnd()), this.control.onEnd(() => this.emitEnd()));
|
|
39
|
+
}
|
|
40
|
+
onFrame(handler) {
|
|
41
|
+
this.frameListeners.add(handler);
|
|
42
|
+
return () => {
|
|
43
|
+
this.frameListeners.delete(handler);
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
onError(handler) {
|
|
47
|
+
this.errorListeners.add(handler);
|
|
48
|
+
return () => {
|
|
49
|
+
this.errorListeners.delete(handler);
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
onEnd(handler) {
|
|
53
|
+
this.endListeners.add(handler);
|
|
54
|
+
return () => {
|
|
55
|
+
this.endListeners.delete(handler);
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
async writeFrame(frame) {
|
|
59
|
+
if (this.terminalError) {
|
|
60
|
+
throw this.terminalError;
|
|
61
|
+
}
|
|
62
|
+
switch (this.selectWriteLane(frame)) {
|
|
63
|
+
case "ordinary":
|
|
64
|
+
await this.ordinary.writeFrame(frame);
|
|
65
|
+
return;
|
|
66
|
+
case "control":
|
|
67
|
+
await this.control.writeFrame(frame);
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
dispose() {
|
|
72
|
+
this.terminalError ??= new Error("split-lane frame transport disposed");
|
|
73
|
+
this.detachLaneTransports();
|
|
74
|
+
this.frameListeners.clear();
|
|
75
|
+
this.errorListeners.clear();
|
|
76
|
+
this.endListeners.clear();
|
|
77
|
+
}
|
|
78
|
+
emitFrame(frame) {
|
|
79
|
+
if (this.terminalError) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
for (const listener of this.frameListeners) {
|
|
83
|
+
listener(frame);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
emitError(error) {
|
|
87
|
+
const normalized = error instanceof Error ? error : new Error(String(error));
|
|
88
|
+
if (this.terminalError) {
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
this.terminalError = normalized;
|
|
92
|
+
this.detachLaneTransports();
|
|
93
|
+
for (const listener of this.errorListeners) {
|
|
94
|
+
listener(normalized);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
emitEnd() {
|
|
98
|
+
if (this.terminalError) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
this.terminalError = new Error("split-lane frame transport ended");
|
|
102
|
+
this.detachLaneTransports();
|
|
103
|
+
for (const listener of this.endListeners) {
|
|
104
|
+
listener();
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
detachLaneTransports() {
|
|
108
|
+
for (const removeListener of this.removeLaneListeners.splice(0)) {
|
|
109
|
+
removeListener();
|
|
110
|
+
}
|
|
111
|
+
this.ordinary.dispose();
|
|
112
|
+
this.control.dispose();
|
|
113
|
+
}
|
|
114
|
+
}
|
|
2
115
|
export class StdioFrameTransport {
|
|
3
116
|
stdin;
|
|
4
117
|
stdout;
|
|
@@ -1,4 +1,20 @@
|
|
|
1
1
|
export type AcpLimitsConfig = {
|
|
2
2
|
maxReadLineBytes?: number;
|
|
3
3
|
stdoutBufferByteLimit?: number;
|
|
4
|
+
maxCompletedMessageBytes?: number;
|
|
5
|
+
maxTurnOutputBytes?: number;
|
|
6
|
+
maxPromptBytes?: number;
|
|
7
|
+
maxPromptBlocks?: number;
|
|
8
|
+
maxFallbackContinuationBytes?: number;
|
|
9
|
+
maxSessionHistoryBytes?: number;
|
|
10
|
+
maxSessionHistoryEvents?: number;
|
|
11
|
+
maxHistoryPageEntries?: number;
|
|
12
|
+
maxSessionListEntries?: number;
|
|
13
|
+
maxSessionsPerVm?: number;
|
|
14
|
+
maxPromptsPerSession?: number;
|
|
15
|
+
maxPromptsPerVm?: number;
|
|
16
|
+
maxPendingPermissionsPerSession?: number;
|
|
17
|
+
maxPendingPermissionsPerVm?: number;
|
|
18
|
+
maxPermissionOutcomesPerSession?: number;
|
|
19
|
+
maxPermissionOutcomesPerVm?: number;
|
|
4
20
|
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type BindingLimitsConfig = {
|
|
2
|
+
defaultBindingTimeoutMs?: number;
|
|
3
|
+
maxBindingTimeoutMs?: number;
|
|
4
|
+
maxRegisteredCollections?: number;
|
|
5
|
+
maxRegisteredBindingsPerVm?: number;
|
|
6
|
+
maxBindingsPerCollection?: number;
|
|
7
|
+
maxBindingSchemaBytes?: number;
|
|
8
|
+
maxExamplesPerBinding?: number;
|
|
9
|
+
maxBindingExampleInputBytes?: number;
|
|
10
|
+
};
|
|
@@ -5,6 +5,8 @@ import type { RootFilesystemConfig } from "./RootFilesystemConfig.js";
|
|
|
5
5
|
import type { VmDnsConfig } from "./VmDnsConfig.js";
|
|
6
6
|
import type { VmLimitsConfig } from "./VmLimitsConfig.js";
|
|
7
7
|
import type { VmListenPolicyConfig } from "./VmListenPolicyConfig.js";
|
|
8
|
+
import type { VmSqliteDescriptor } from "./VmSqliteDescriptor.js";
|
|
9
|
+
import type { VmUserConfig } from "./VmUserConfig.js";
|
|
8
10
|
/**
|
|
9
11
|
* Canonical Rust-side VM config. Unknown fields must stay rejected here and in
|
|
10
12
|
* the TS preflight schema at
|
|
@@ -14,6 +16,8 @@ import type { VmListenPolicyConfig } from "./VmListenPolicyConfig.js";
|
|
|
14
16
|
export type CreateVmConfig = {
|
|
15
17
|
cwd?: string;
|
|
16
18
|
env: Record<string, string>;
|
|
19
|
+
database?: VmSqliteDescriptor;
|
|
20
|
+
user?: VmUserConfig;
|
|
17
21
|
rootFilesystem: RootFilesystemConfig;
|
|
18
22
|
permissions?: PermissionsPolicy;
|
|
19
23
|
limits?: VmLimitsConfig;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type Http2LimitsConfig = {
|
|
2
|
+
maxConnections?: number;
|
|
3
|
+
maxStreams?: number;
|
|
4
|
+
maxStreamsPerConnection?: number;
|
|
5
|
+
maxBufferedBytes?: number;
|
|
6
|
+
maxHeaderBytes?: number;
|
|
7
|
+
maxDataBytes?: number;
|
|
8
|
+
maxPendingCommands?: number;
|
|
9
|
+
maxPendingCommandBytes?: number;
|
|
10
|
+
maxPendingEvents?: number;
|
|
11
|
+
maxPendingEventBytes?: number;
|
|
12
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export type ReactorLimitsConfig = {
|
|
2
|
+
maxCapabilities?: number;
|
|
3
|
+
maxReadyHandles?: number;
|
|
4
|
+
maxTasks?: number;
|
|
5
|
+
workQuantum?: number;
|
|
6
|
+
byteQuantum?: number;
|
|
7
|
+
maxHandleCommands?: number;
|
|
8
|
+
maxHandleCommandBytes?: number;
|
|
9
|
+
maxBridgeCalls?: number;
|
|
10
|
+
maxBridgeRequestBytes?: number;
|
|
11
|
+
maxBridgeResponseBytes?: number;
|
|
12
|
+
maxAsyncCompletions?: number;
|
|
13
|
+
maxAsyncCompletionBytes?: number;
|
|
14
|
+
maxBlockingJobs?: number;
|
|
15
|
+
maxBlockingBytes?: number;
|
|
16
|
+
perHandleOperationQuantum?: number;
|
|
17
|
+
acceptQuantum?: number;
|
|
18
|
+
datagramQuantum?: number;
|
|
19
|
+
completionQuantum?: number;
|
|
20
|
+
signalQuantum?: number;
|
|
21
|
+
shutdownDeadlineMs?: number;
|
|
22
|
+
operationDeadlineMs?: number;
|
|
23
|
+
};
|
|
@@ -1,18 +1,30 @@
|
|
|
1
1
|
import type { AcpLimitsConfig } from "./AcpLimitsConfig.js";
|
|
2
|
+
import type { BindingLimitsConfig } from "./BindingLimitsConfig.js";
|
|
3
|
+
import type { Http2LimitsConfig } from "./Http2LimitsConfig.js";
|
|
2
4
|
import type { HttpLimitsConfig } from "./HttpLimitsConfig.js";
|
|
3
5
|
import type { JsRuntimeLimitsConfig } from "./JsRuntimeLimitsConfig.js";
|
|
4
6
|
import type { PluginLimitsConfig } from "./PluginLimitsConfig.js";
|
|
7
|
+
import type { ProcessLimitsConfig } from "./ProcessLimitsConfig.js";
|
|
5
8
|
import type { PythonLimitsConfig } from "./PythonLimitsConfig.js";
|
|
9
|
+
import type { ReactorLimitsConfig } from "./ReactorLimitsConfig.js";
|
|
6
10
|
import type { ResourceLimitsConfig } from "./ResourceLimitsConfig.js";
|
|
7
|
-
import type {
|
|
11
|
+
import type { SqliteLimitsConfig } from "./SqliteLimitsConfig.js";
|
|
12
|
+
import type { TlsLimitsConfig } from "./TlsLimitsConfig.js";
|
|
13
|
+
import type { UdpLimitsConfig } from "./UdpLimitsConfig.js";
|
|
8
14
|
import type { WasmLimitsConfig } from "./WasmLimitsConfig.js";
|
|
9
15
|
export type VmLimitsConfig = {
|
|
16
|
+
reactor?: ReactorLimitsConfig;
|
|
10
17
|
resources?: ResourceLimitsConfig;
|
|
11
18
|
http?: HttpLimitsConfig;
|
|
12
|
-
|
|
19
|
+
udp?: UdpLimitsConfig;
|
|
20
|
+
tls?: TlsLimitsConfig;
|
|
21
|
+
http2?: Http2LimitsConfig;
|
|
22
|
+
bindings?: BindingLimitsConfig;
|
|
13
23
|
plugins?: PluginLimitsConfig;
|
|
14
24
|
acp?: AcpLimitsConfig;
|
|
25
|
+
sqlite?: SqliteLimitsConfig;
|
|
15
26
|
jsRuntime?: JsRuntimeLimitsConfig;
|
|
16
27
|
python?: PythonLimitsConfig;
|
|
17
28
|
wasm?: WasmLimitsConfig;
|
|
29
|
+
process?: ProcessLimitsConfig;
|
|
18
30
|
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { VmGroupConfig } from "./VmGroupConfig.js";
|
|
2
|
+
import type { VmUserAccountConfig } from "./VmUserAccountConfig.js";
|
|
3
|
+
/**
|
|
4
|
+
* Initial Linux-style credentials and account record for processes in a VM.
|
|
5
|
+
*/
|
|
6
|
+
export type VmUserConfig = {
|
|
7
|
+
uid?: number;
|
|
8
|
+
gid?: number;
|
|
9
|
+
euid?: number;
|
|
10
|
+
egid?: number;
|
|
11
|
+
username?: string;
|
|
12
|
+
homedir?: string;
|
|
13
|
+
shell?: string;
|
|
14
|
+
gecos?: string;
|
|
15
|
+
groupName?: string;
|
|
16
|
+
supplementaryGids?: Array<number>;
|
|
17
|
+
accounts?: Array<VmUserAccountConfig>;
|
|
18
|
+
groups?: Array<VmGroupConfig>;
|
|
19
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -241,11 +241,20 @@ export declare function readMountPluginDescriptor(bc: bare.ByteCursor): MountPlu
|
|
|
241
241
|
export declare function writeMountPluginDescriptor(bc: bare.ByteCursor, x: MountPluginDescriptor): void;
|
|
242
242
|
export type MountDescriptor = {
|
|
243
243
|
readonly guestPath: string;
|
|
244
|
+
readonly guestSource: string;
|
|
245
|
+
readonly guestFstype: string;
|
|
244
246
|
readonly readOnly: boolean;
|
|
245
247
|
readonly plugin: MountPluginDescriptor;
|
|
246
248
|
};
|
|
247
249
|
export declare function readMountDescriptor(bc: bare.ByteCursor): MountDescriptor;
|
|
248
250
|
export declare function writeMountDescriptor(bc: bare.ByteCursor, x: MountDescriptor): void;
|
|
251
|
+
export type MountInfo = {
|
|
252
|
+
readonly path: string;
|
|
253
|
+
readonly kind: string;
|
|
254
|
+
readonly readOnly: boolean;
|
|
255
|
+
};
|
|
256
|
+
export declare function readMountInfo(bc: bare.ByteCursor): MountInfo;
|
|
257
|
+
export declare function writeMountInfo(bc: bare.ByteCursor, x: MountInfo): void;
|
|
249
258
|
export type SoftwareDescriptor = {
|
|
250
259
|
readonly packageName: string;
|
|
251
260
|
readonly root: string;
|
|
@@ -330,7 +339,7 @@ export type ConfigureVmRequest = {
|
|
|
330
339
|
readonly packages: readonly PackageDescriptor[];
|
|
331
340
|
readonly packagesMountAt: string;
|
|
332
341
|
readonly bootstrapCommands: readonly string[];
|
|
333
|
-
readonly
|
|
342
|
+
readonly bindingShimCommands: readonly string[];
|
|
334
343
|
};
|
|
335
344
|
export declare function readConfigureVmRequest(bc: bare.ByteCursor): ConfigureVmRequest;
|
|
336
345
|
export declare function writeConfigureVmRequest(bc: bare.ByteCursor, x: ConfigureVmRequest): void;
|
|
@@ -435,7 +444,12 @@ export type GuestKernelCallRequest = {
|
|
|
435
444
|
};
|
|
436
445
|
export declare function readGuestKernelCallRequest(bc: bare.ByteCursor): GuestKernelCallRequest;
|
|
437
446
|
export declare function writeGuestKernelCallRequest(bc: bare.ByteCursor, x: GuestKernelCallRequest): void;
|
|
438
|
-
export type SnapshotRootFilesystemRequest =
|
|
447
|
+
export type SnapshotRootFilesystemRequest = {
|
|
448
|
+
readonly maxBytes: u64;
|
|
449
|
+
};
|
|
450
|
+
export declare function readSnapshotRootFilesystemRequest(bc: bare.ByteCursor): SnapshotRootFilesystemRequest;
|
|
451
|
+
export declare function writeSnapshotRootFilesystemRequest(bc: bare.ByteCursor, x: SnapshotRootFilesystemRequest): void;
|
|
452
|
+
export type ListMountsRequest = null;
|
|
439
453
|
export type ExecuteRequest = {
|
|
440
454
|
readonly processId: string;
|
|
441
455
|
readonly command: string | null;
|
|
@@ -630,6 +644,9 @@ export type RequestPayload = {
|
|
|
630
644
|
} | {
|
|
631
645
|
readonly tag: "ProvidedCommandsRequest";
|
|
632
646
|
readonly val: ProvidedCommandsRequest;
|
|
647
|
+
} | {
|
|
648
|
+
readonly tag: "ListMountsRequest";
|
|
649
|
+
readonly val: ListMountsRequest;
|
|
633
650
|
};
|
|
634
651
|
export declare function readRequestPayload(bc: bare.ByteCursor): RequestPayload;
|
|
635
652
|
export declare function writeRequestPayload(bc: bare.ByteCursor, x: RequestPayload): void;
|
|
@@ -759,6 +776,11 @@ export type RootFilesystemSnapshotResponse = {
|
|
|
759
776
|
};
|
|
760
777
|
export declare function readRootFilesystemSnapshotResponse(bc: bare.ByteCursor): RootFilesystemSnapshotResponse;
|
|
761
778
|
export declare function writeRootFilesystemSnapshotResponse(bc: bare.ByteCursor, x: RootFilesystemSnapshotResponse): void;
|
|
779
|
+
export type ListMountsResponse = {
|
|
780
|
+
readonly mounts: readonly MountInfo[];
|
|
781
|
+
};
|
|
782
|
+
export declare function readListMountsResponse(bc: bare.ByteCursor): ListMountsResponse;
|
|
783
|
+
export declare function writeListMountsResponse(bc: bare.ByteCursor, x: ListMountsResponse): void;
|
|
762
784
|
export type ProcessStartedResponse = {
|
|
763
785
|
readonly processId: string;
|
|
764
786
|
readonly pid: u32 | null;
|
|
@@ -916,6 +938,19 @@ export declare function writePersistenceFlushedResponse(bc: bare.ByteCursor, x:
|
|
|
916
938
|
export type RejectedResponse = {
|
|
917
939
|
readonly code: string;
|
|
918
940
|
readonly message: string;
|
|
941
|
+
readonly limitName: string | null;
|
|
942
|
+
readonly configuredLimit: u64 | null;
|
|
943
|
+
readonly currentUsage: u64 | null;
|
|
944
|
+
readonly requested: u64 | null;
|
|
945
|
+
readonly unit: string | null;
|
|
946
|
+
readonly scope: string | null;
|
|
947
|
+
readonly vmId: string | null;
|
|
948
|
+
readonly sessionGeneration: u64 | null;
|
|
949
|
+
readonly capabilityId: u64 | null;
|
|
950
|
+
readonly operation: string | null;
|
|
951
|
+
readonly configurationPath: string | null;
|
|
952
|
+
readonly retryable: boolean | null;
|
|
953
|
+
readonly errno: string | null;
|
|
919
954
|
};
|
|
920
955
|
export declare function readRejectedResponse(bc: bare.ByteCursor): RejectedResponse;
|
|
921
956
|
export declare function writeRejectedResponse(bc: bare.ByteCursor, x: RejectedResponse): void;
|
|
@@ -1029,6 +1064,9 @@ export type ResponsePayload = {
|
|
|
1029
1064
|
} | {
|
|
1030
1065
|
readonly tag: "ProvidedCommandsResponse";
|
|
1031
1066
|
readonly val: ProvidedCommandsResponse;
|
|
1067
|
+
} | {
|
|
1068
|
+
readonly tag: "ListMountsResponse";
|
|
1069
|
+
readonly val: ListMountsResponse;
|
|
1032
1070
|
};
|
|
1033
1071
|
export declare function readResponsePayload(bc: bare.ByteCursor): ResponsePayload;
|
|
1034
1072
|
export declare function writeResponsePayload(bc: bare.ByteCursor, x: ResponsePayload): void;
|
|
@@ -1174,6 +1212,23 @@ export type SidecarResponseFrame = {
|
|
|
1174
1212
|
};
|
|
1175
1213
|
export declare function readSidecarResponseFrame(bc: bare.ByteCursor): SidecarResponseFrame;
|
|
1176
1214
|
export declare function writeSidecarResponseFrame(bc: bare.ByteCursor, x: SidecarResponseFrame): void;
|
|
1215
|
+
export type ShutdownControl = {
|
|
1216
|
+
readonly reason: string;
|
|
1217
|
+
};
|
|
1218
|
+
export declare function readShutdownControl(bc: bare.ByteCursor): ShutdownControl;
|
|
1219
|
+
export declare function writeShutdownControl(bc: bare.ByteCursor, x: ShutdownControl): void;
|
|
1220
|
+
export type ControlPayload = {
|
|
1221
|
+
readonly tag: "ShutdownControl";
|
|
1222
|
+
readonly val: ShutdownControl;
|
|
1223
|
+
};
|
|
1224
|
+
export declare function readControlPayload(bc: bare.ByteCursor): ControlPayload;
|
|
1225
|
+
export declare function writeControlPayload(bc: bare.ByteCursor, x: ControlPayload): void;
|
|
1226
|
+
export type ControlFrame = {
|
|
1227
|
+
readonly schema: ProtocolSchema;
|
|
1228
|
+
readonly payload: ControlPayload;
|
|
1229
|
+
};
|
|
1230
|
+
export declare function readControlFrame(bc: bare.ByteCursor): ControlFrame;
|
|
1231
|
+
export declare function writeControlFrame(bc: bare.ByteCursor, x: ControlFrame): void;
|
|
1177
1232
|
export type ProtocolFrame = {
|
|
1178
1233
|
readonly tag: "RequestFrame";
|
|
1179
1234
|
readonly val: RequestFrame;
|
|
@@ -1189,6 +1244,9 @@ export type ProtocolFrame = {
|
|
|
1189
1244
|
} | {
|
|
1190
1245
|
readonly tag: "SidecarResponseFrame";
|
|
1191
1246
|
readonly val: SidecarResponseFrame;
|
|
1247
|
+
} | {
|
|
1248
|
+
readonly tag: "ControlFrame";
|
|
1249
|
+
readonly val: ControlFrame;
|
|
1192
1250
|
};
|
|
1193
1251
|
export declare function readProtocolFrame(bc: bare.ByteCursor): ProtocolFrame;
|
|
1194
1252
|
export declare function writeProtocolFrame(bc: bare.ByteCursor, x: ProtocolFrame): void;
|