@secure-exec/core 0.2.1 → 0.3.0-rc.1
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 +5 -5
- package/dist/binary.d.ts +4 -0
- package/dist/binary.js +25 -0
- package/dist/bytes.d.ts +2 -0
- package/dist/bytes.js +6 -0
- package/dist/callbacks.d.ts +41 -0
- package/dist/callbacks.js +94 -0
- package/dist/cargo.d.ts +2 -0
- package/dist/cargo.js +142 -0
- package/dist/correlation.d.ts +10 -0
- package/dist/correlation.js +49 -0
- package/dist/descriptors.d.ts +34 -0
- package/dist/descriptors.js +37 -0
- package/dist/event-buffer.d.ts +90 -0
- package/dist/event-buffer.js +313 -0
- package/dist/ext.d.ts +7 -0
- package/dist/ext.js +13 -0
- package/dist/filesystem.d.ts +41 -0
- package/dist/filesystem.js +70 -0
- package/dist/frame-payload-codec.d.ts +8 -0
- package/dist/frame-payload-codec.js +14 -0
- package/dist/frame-rpc.d.ts +38 -0
- package/dist/frame-rpc.js +73 -0
- package/dist/frame-stream.d.ts +27 -0
- package/dist/frame-stream.js +99 -0
- package/dist/framing.d.ts +7 -0
- package/dist/framing.js +22 -0
- package/dist/generated/AcpLimitsConfig.d.ts +4 -0
- package/dist/generated/AcpLimitsConfig.js +2 -0
- package/dist/generated/CreateVmConfig.d.ts +19 -0
- package/dist/generated/FsPermissionRule.d.ts +6 -0
- package/dist/generated/FsPermissionRuleSet.d.ts +6 -0
- package/dist/generated/FsPermissionRuleSet.js +1 -0
- package/dist/generated/FsPermissionScope.d.ts +3 -0
- package/dist/generated/FsPermissionScope.js +1 -0
- package/dist/generated/HttpLimitsConfig.d.ts +3 -0
- package/dist/generated/HttpLimitsConfig.js +2 -0
- package/dist/generated/JsModuleResolution.d.ts +1 -0
- package/dist/generated/JsModuleResolution.js +2 -0
- package/dist/generated/JsRuntimeConfig.d.ts +26 -0
- package/dist/generated/JsRuntimeConfig.js +1 -0
- package/dist/generated/JsRuntimeLimitsConfig.d.ts +7 -0
- package/dist/generated/JsRuntimeLimitsConfig.js +2 -0
- package/dist/generated/JsRuntimePlatform.d.ts +1 -0
- package/dist/generated/JsRuntimePlatform.js +2 -0
- package/dist/generated/MountPluginDescriptor.d.ts +4 -0
- package/dist/generated/MountPluginDescriptor.js +2 -0
- package/dist/generated/NativeRootFilesystemConfig.d.ts +5 -0
- package/dist/generated/NativeRootFilesystemConfig.js +1 -0
- package/dist/generated/PatternPermissionRule.d.ts +6 -0
- package/dist/generated/PatternPermissionRule.js +1 -0
- package/dist/generated/PatternPermissionRuleSet.d.ts +6 -0
- package/dist/generated/PatternPermissionRuleSet.js +1 -0
- package/dist/generated/PatternPermissionScope.d.ts +3 -0
- package/dist/generated/PatternPermissionScope.js +1 -0
- package/dist/generated/PermissionMode.d.ts +1 -0
- package/dist/generated/PermissionMode.js +2 -0
- package/dist/generated/PermissionsPolicy.d.ts +10 -0
- package/dist/generated/PermissionsPolicy.js +1 -0
- package/dist/generated/PluginLimitsConfig.d.ts +4 -0
- package/dist/generated/PluginLimitsConfig.js +2 -0
- package/dist/generated/PythonLimitsConfig.d.ts +5 -0
- package/dist/generated/PythonLimitsConfig.js +2 -0
- package/dist/generated/ResourceLimitsConfig.d.ts +22 -0
- package/dist/generated/ResourceLimitsConfig.js +2 -0
- package/dist/generated/RootFilesystemConfig.d.ts +9 -0
- package/dist/generated/RootFilesystemConfig.js +1 -0
- package/dist/generated/RootFilesystemEntry.d.ts +13 -0
- package/dist/generated/RootFilesystemEntry.js +1 -0
- package/dist/generated/RootFilesystemEntryEncoding.d.ts +1 -0
- package/dist/generated/RootFilesystemEntryEncoding.js +2 -0
- package/dist/generated/RootFilesystemEntryKind.d.ts +1 -0
- package/dist/generated/RootFilesystemEntryKind.js +2 -0
- package/dist/generated/RootFilesystemLowerDescriptor.d.ts +7 -0
- package/dist/generated/RootFilesystemLowerDescriptor.js +1 -0
- package/dist/generated/RootFilesystemMode.d.ts +1 -0
- package/dist/generated/RootFilesystemMode.js +2 -0
- package/dist/generated/ToolLimitsConfig.d.ts +10 -0
- package/dist/generated/ToolLimitsConfig.js +2 -0
- package/dist/generated/VmDnsConfig.d.ts +6 -0
- package/dist/generated/VmDnsConfig.js +2 -0
- package/dist/generated/VmLimitsConfig.d.ts +18 -0
- package/dist/generated/VmLimitsConfig.js +1 -0
- package/dist/generated/VmListenPolicyConfig.d.ts +5 -0
- package/dist/generated/VmListenPolicyConfig.js +2 -0
- package/dist/generated/WasmLimitsConfig.d.ts +5 -0
- package/dist/generated/WasmLimitsConfig.js +2 -0
- package/dist/generated-protocol.d.ts +1037 -0
- package/dist/generated-protocol.js +2887 -0
- package/dist/index.d.ts +24 -62
- package/dist/index.js +24 -53
- package/dist/json.d.ts +2 -0
- package/dist/json.js +20 -0
- package/dist/kernel-proxy.d.ts +149 -0
- package/dist/kernel-proxy.js +1733 -0
- package/dist/native-client.d.ts +41 -0
- package/dist/native-client.js +124 -0
- package/dist/node-runtime.d.ts +443 -0
- package/dist/node-runtime.js +569 -0
- package/dist/numbers.d.ts +1 -0
- package/dist/numbers.js +8 -0
- package/dist/ownership.d.ts +18 -0
- package/dist/ownership.js +77 -0
- package/dist/permissions.d.ts +29 -0
- package/dist/permissions.js +68 -0
- package/dist/process.d.ts +35 -0
- package/dist/process.js +125 -0
- package/dist/protocol-client.d.ts +46 -0
- package/dist/protocol-client.js +180 -0
- package/dist/protocol-frames.d.ts +68 -0
- package/dist/protocol-frames.js +139 -0
- package/dist/protocol-maps.d.ts +28 -0
- package/dist/protocol-maps.js +217 -0
- package/dist/protocol-schema.d.ts +10 -0
- package/dist/protocol-schema.js +11 -0
- package/dist/request-payloads.d.ts +137 -0
- package/dist/request-payloads.js +210 -0
- package/dist/response-payloads.d.ts +107 -0
- package/dist/response-payloads.js +161 -0
- package/dist/sidecar-client.d.ts +242 -0
- package/dist/sidecar-client.js +797 -0
- package/dist/state.d.ts +40 -0
- package/dist/state.js +44 -0
- package/dist/test-runtime.d.ts +526 -0
- package/dist/test-runtime.js +2119 -0
- package/dist/vm-config.d.ts +31 -0
- package/dist/vm-config.js +1 -0
- package/fixtures/alpine-defaults.json +520 -0
- package/fixtures/base-filesystem.json +528 -0
- package/package.json +193 -115
- package/LICENSE +0 -191
- package/dist/bridge-setup.d.ts +0 -6
- package/dist/bridge-setup.js +0 -9
- package/dist/esm-compiler.d.ts +0 -18
- package/dist/esm-compiler.js +0 -72
- package/dist/fs-helpers.d.ts +0 -23
- package/dist/fs-helpers.js +0 -41
- package/dist/generated/isolate-runtime.d.ts +0 -19
- package/dist/generated/isolate-runtime.js +0 -21
- package/dist/generated/polyfills.d.ts +0 -82
- package/dist/generated/polyfills.js +0 -82
- package/dist/isolate-runtime/apply-custom-global-policy.js +0 -53
- package/dist/isolate-runtime/apply-timing-mitigation-freeze.js +0 -130
- package/dist/isolate-runtime/apply-timing-mitigation-off.js +0 -14
- package/dist/isolate-runtime/bridge-attach.js +0 -29
- package/dist/isolate-runtime/bridge-initial-globals.js +0 -385
- package/dist/isolate-runtime/eval-script-result.js +0 -8
- package/dist/isolate-runtime/global-exposure-helpers.js +0 -36
- package/dist/isolate-runtime/init-commonjs-module-globals.js +0 -28
- package/dist/isolate-runtime/override-process-cwd.js +0 -8
- package/dist/isolate-runtime/override-process-env.js +0 -8
- package/dist/isolate-runtime/require-setup.js +0 -4153
- package/dist/isolate-runtime/set-commonjs-file-globals.js +0 -36
- package/dist/isolate-runtime/set-stdin-data.js +0 -10
- package/dist/isolate-runtime/setup-dynamic-import.js +0 -123
- package/dist/isolate-runtime/setup-fs-facade.js +0 -87
- package/dist/kernel/command-registry.d.ts +0 -44
- package/dist/kernel/command-registry.js +0 -114
- package/dist/kernel/device-backend.d.ts +0 -14
- package/dist/kernel/device-backend.js +0 -251
- package/dist/kernel/device-layer.d.ts +0 -12
- package/dist/kernel/device-layer.js +0 -271
- package/dist/kernel/dns-cache.d.ts +0 -29
- package/dist/kernel/dns-cache.js +0 -52
- package/dist/kernel/fd-table.d.ts +0 -84
- package/dist/kernel/fd-table.js +0 -278
- package/dist/kernel/file-lock.d.ts +0 -34
- package/dist/kernel/file-lock.js +0 -122
- package/dist/kernel/host-adapter.d.ts +0 -50
- package/dist/kernel/host-adapter.js +0 -8
- package/dist/kernel/index.d.ts +0 -36
- package/dist/kernel/index.js +0 -34
- package/dist/kernel/kernel.d.ts +0 -9
- package/dist/kernel/kernel.js +0 -1415
- package/dist/kernel/mount-table.d.ts +0 -75
- package/dist/kernel/mount-table.js +0 -353
- package/dist/kernel/permissions.d.ts +0 -36
- package/dist/kernel/permissions.js +0 -150
- package/dist/kernel/pipe-manager.d.ts +0 -64
- package/dist/kernel/pipe-manager.js +0 -267
- package/dist/kernel/proc-backend.d.ts +0 -30
- package/dist/kernel/proc-backend.js +0 -428
- package/dist/kernel/proc-layer.d.ts +0 -11
- package/dist/kernel/proc-layer.js +0 -507
- package/dist/kernel/process-table.d.ts +0 -126
- package/dist/kernel/process-table.js +0 -651
- package/dist/kernel/pty.d.ts +0 -109
- package/dist/kernel/pty.js +0 -552
- package/dist/kernel/socket-table.d.ts +0 -312
- package/dist/kernel/socket-table.js +0 -1188
- package/dist/kernel/timer-table.d.ts +0 -54
- package/dist/kernel/timer-table.js +0 -108
- package/dist/kernel/types.d.ts +0 -541
- package/dist/kernel/types.js +0 -98
- package/dist/kernel/user.d.ts +0 -29
- package/dist/kernel/user.js +0 -35
- package/dist/kernel/vfs.d.ts +0 -82
- package/dist/kernel/vfs.js +0 -25
- package/dist/kernel/wait.d.ts +0 -45
- package/dist/kernel/wait.js +0 -112
- package/dist/kernel/wstatus.d.ts +0 -21
- package/dist/kernel/wstatus.js +0 -33
- package/dist/module-resolver.d.ts +0 -29
- package/dist/module-resolver.js +0 -314
- package/dist/package-bundler.d.ts +0 -41
- package/dist/package-bundler.js +0 -497
- package/dist/runtime-driver.d.ts +0 -66
- package/dist/shared/api-types.d.ts +0 -83
- package/dist/shared/bridge-contract.d.ts +0 -772
- package/dist/shared/bridge-contract.js +0 -169
- package/dist/shared/console-formatter.d.ts +0 -22
- package/dist/shared/console-formatter.js +0 -161
- package/dist/shared/constants.d.ts +0 -3
- package/dist/shared/constants.js +0 -3
- package/dist/shared/errors.d.ts +0 -16
- package/dist/shared/errors.js +0 -21
- package/dist/shared/esm-utils.d.ts +0 -28
- package/dist/shared/esm-utils.js +0 -97
- package/dist/shared/global-exposure.d.ts +0 -38
- package/dist/shared/global-exposure.js +0 -876
- package/dist/shared/in-memory-fs.d.ts +0 -16
- package/dist/shared/in-memory-fs.js +0 -115
- package/dist/shared/permissions.d.ts +0 -36
- package/dist/shared/permissions.js +0 -314
- package/dist/shared/require-setup.d.ts +0 -6
- package/dist/shared/require-setup.js +0 -9
- package/dist/test/block-store-conformance.d.ts +0 -34
- package/dist/test/block-store-conformance.js +0 -251
- package/dist/test/metadata-store-conformance.d.ts +0 -37
- package/dist/test/metadata-store-conformance.js +0 -646
- package/dist/test/vfs-conformance.d.ts +0 -65
- package/dist/test/vfs-conformance.js +0 -842
- package/dist/types.d.ts +0 -98
- package/dist/types.js +0 -6
- package/dist/vfs/chunked-vfs.d.ts +0 -66
- package/dist/vfs/chunked-vfs.js +0 -1290
- package/dist/vfs/host-block-store.d.ts +0 -19
- package/dist/vfs/host-block-store.js +0 -97
- package/dist/vfs/memory-block-store.d.ts +0 -16
- package/dist/vfs/memory-block-store.js +0 -45
- package/dist/vfs/memory-metadata.d.ts +0 -75
- package/dist/vfs/memory-metadata.js +0 -528
- package/dist/vfs/sqlite-metadata.d.ts +0 -91
- package/dist/vfs/sqlite-metadata.js +0 -582
- package/dist/vfs/types.d.ts +0 -210
- package/dist/vfs/types.js +0 -8
- /package/dist/{runtime-driver.js → generated/CreateVmConfig.js} +0 -0
- /package/dist/{shared/api-types.js → generated/FsPermissionRule.js} +0 -0
package/dist/types.d.ts
DELETED
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Core-only types for secure-exec SDK.
|
|
3
|
-
*
|
|
4
|
-
* VFS and permission types are now defined in src/kernel/ (canonical source).
|
|
5
|
-
*/
|
|
6
|
-
export interface SpawnedProcess {
|
|
7
|
-
writeStdin(data: Uint8Array | string): void;
|
|
8
|
-
closeStdin(): void;
|
|
9
|
-
kill(signal?: number): void;
|
|
10
|
-
wait(): Promise<number>;
|
|
11
|
-
}
|
|
12
|
-
export interface CommandExecutor {
|
|
13
|
-
spawn(command: string, args: string[], options: {
|
|
14
|
-
cwd?: string;
|
|
15
|
-
env?: Record<string, string>;
|
|
16
|
-
streamStdin?: boolean;
|
|
17
|
-
onStdout?: (data: Uint8Array) => void;
|
|
18
|
-
onStderr?: (data: Uint8Array) => void;
|
|
19
|
-
}): SpawnedProcess;
|
|
20
|
-
}
|
|
21
|
-
export interface NetworkServerAddress {
|
|
22
|
-
address: string;
|
|
23
|
-
family: string;
|
|
24
|
-
port: number;
|
|
25
|
-
}
|
|
26
|
-
export interface NetworkServerRequest {
|
|
27
|
-
method: string;
|
|
28
|
-
url: string;
|
|
29
|
-
headers: Record<string, string>;
|
|
30
|
-
rawHeaders: string[];
|
|
31
|
-
bodyBase64?: string;
|
|
32
|
-
}
|
|
33
|
-
export interface NetworkServerResponse {
|
|
34
|
-
status: number;
|
|
35
|
-
headers?: Array<[string, string]>;
|
|
36
|
-
body?: string;
|
|
37
|
-
bodyEncoding?: "utf8" | "base64";
|
|
38
|
-
}
|
|
39
|
-
export interface NetworkServerListenOptions {
|
|
40
|
-
serverId: number;
|
|
41
|
-
port?: number;
|
|
42
|
-
hostname?: string;
|
|
43
|
-
onRequest(request: NetworkServerRequest): Promise<NetworkServerResponse> | NetworkServerResponse;
|
|
44
|
-
/** Called when an HTTP upgrade request arrives (e.g. WebSocket). */
|
|
45
|
-
onUpgrade?(request: NetworkServerRequest, head: string, socketId: number): void;
|
|
46
|
-
/** Called when the real upgrade socket receives data from the remote peer. */
|
|
47
|
-
onUpgradeSocketData?(socketId: number, dataBase64: string): void;
|
|
48
|
-
/** Called when the real upgrade socket closes. */
|
|
49
|
-
onUpgradeSocketEnd?(socketId: number): void;
|
|
50
|
-
}
|
|
51
|
-
export interface NetworkAdapter {
|
|
52
|
-
fetch(url: string, options: {
|
|
53
|
-
method?: string;
|
|
54
|
-
headers?: Record<string, string>;
|
|
55
|
-
body?: string | null;
|
|
56
|
-
}): Promise<{
|
|
57
|
-
ok: boolean;
|
|
58
|
-
status: number;
|
|
59
|
-
statusText: string;
|
|
60
|
-
headers: Record<string, string>;
|
|
61
|
-
body: string;
|
|
62
|
-
url: string;
|
|
63
|
-
redirected: boolean;
|
|
64
|
-
}>;
|
|
65
|
-
dnsLookup(hostname: string): Promise<{
|
|
66
|
-
address: string;
|
|
67
|
-
family: number;
|
|
68
|
-
} | {
|
|
69
|
-
error: string;
|
|
70
|
-
code: string;
|
|
71
|
-
}>;
|
|
72
|
-
httpRequest(url: string, options: {
|
|
73
|
-
method?: string;
|
|
74
|
-
headers?: Record<string, string>;
|
|
75
|
-
body?: string | null;
|
|
76
|
-
rejectUnauthorized?: boolean;
|
|
77
|
-
}): Promise<{
|
|
78
|
-
status: number;
|
|
79
|
-
statusText: string;
|
|
80
|
-
headers: Record<string, string>;
|
|
81
|
-
body: string;
|
|
82
|
-
url: string;
|
|
83
|
-
trailers?: Record<string, string>;
|
|
84
|
-
upgradeSocketId?: number;
|
|
85
|
-
}>;
|
|
86
|
-
/** Write data from the sandbox to a real upgrade socket on the host. */
|
|
87
|
-
upgradeSocketWrite?(socketId: number, dataBase64: string): void;
|
|
88
|
-
/** End a real upgrade socket on the host. */
|
|
89
|
-
upgradeSocketEnd?(socketId: number): void;
|
|
90
|
-
/** Destroy a real upgrade socket on the host. */
|
|
91
|
-
upgradeSocketDestroy?(socketId: number): void;
|
|
92
|
-
/** Register callbacks for client-side upgrade socket data push. */
|
|
93
|
-
setUpgradeSocketCallbacks?(callbacks: {
|
|
94
|
-
onData: (socketId: number, dataBase64: string) => void;
|
|
95
|
-
onEnd: (socketId: number) => void;
|
|
96
|
-
}): void;
|
|
97
|
-
}
|
|
98
|
-
export type { DriverRuntimeConfig, NodeRuntimeDriver, NodeRuntimeDriverFactory, PythonRuntimeDriver, PythonRuntimeDriverFactory, RuntimeDriver, RuntimeDriverFactory, RuntimeDriverOptions, SharedRuntimeDriver, SystemDriver, } from "./runtime-driver.js";
|
package/dist/types.js
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ChunkedVFS: composes FsMetadataStore + FsBlockStore into a VirtualFileSystem.
|
|
3
|
-
*
|
|
4
|
-
* Tiered storage: files <= inlineThreshold are stored inline in metadata;
|
|
5
|
-
* larger files are split into fixed-size chunks in the block store.
|
|
6
|
-
* Per-inode async mutex prevents interleaved read-modify-write corruption.
|
|
7
|
-
*
|
|
8
|
-
* Optional write buffering: when enabled, pwrite buffers dirty chunks in
|
|
9
|
-
* memory and flushes to the block store on fsync or auto-flush. Reads
|
|
10
|
-
* always see buffered data. When disabled (default), writes go directly
|
|
11
|
-
* to the block store.
|
|
12
|
-
*/
|
|
13
|
-
import type { VirtualFileSystem } from "../kernel/vfs.js";
|
|
14
|
-
import type { FsBlockStore, FsMetadataStore, RetentionPolicy, VersionInfo } from "./types.js";
|
|
15
|
-
/**
|
|
16
|
-
* Configuration for creating a ChunkedVFS instance via `createChunkedVfs()`.
|
|
17
|
-
*
|
|
18
|
-
* Requires a metadata store (directory tree, inodes) and a block store
|
|
19
|
-
* (key-value blob storage). Optional settings control tiered storage
|
|
20
|
-
* thresholds, write buffering, and versioning behavior.
|
|
21
|
-
*/
|
|
22
|
-
export interface ChunkedVfsOptions {
|
|
23
|
-
metadata: FsMetadataStore;
|
|
24
|
-
blocks: FsBlockStore;
|
|
25
|
-
/** Chunk size in bytes. Default: 4 MB. */
|
|
26
|
-
chunkSize?: number;
|
|
27
|
-
/** Max file size for inline storage. Default: 64 KB. */
|
|
28
|
-
inlineThreshold?: number;
|
|
29
|
-
/**
|
|
30
|
-
* Enable write buffering. When true, pwrite buffers dirty chunks in
|
|
31
|
-
* memory and flushes to the block store on fsync or auto-flush.
|
|
32
|
-
* When false, every pwrite immediately writes to the block store.
|
|
33
|
-
* Default: false.
|
|
34
|
-
*/
|
|
35
|
-
writeBuffering?: boolean;
|
|
36
|
-
/**
|
|
37
|
-
* Auto-flush interval in ms. Only applies when writeBuffering is true.
|
|
38
|
-
* Dirty chunks are flushed to the block store on this interval.
|
|
39
|
-
* Default: 1000 (1 second).
|
|
40
|
-
*/
|
|
41
|
-
autoFlushIntervalMs?: number;
|
|
42
|
-
/**
|
|
43
|
-
* Enable file versioning. When true, block keys use the format
|
|
44
|
-
* {ino}/{chunkIndex}/{randomId} so old blocks are never overwritten.
|
|
45
|
-
* The metadata store must implement FsMetadataStoreVersioning.
|
|
46
|
-
* Default: false.
|
|
47
|
-
*/
|
|
48
|
-
versioning?: boolean;
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Extended return type when versioning is enabled.
|
|
52
|
-
* Exposes the versioning API alongside the VirtualFileSystem.
|
|
53
|
-
*/
|
|
54
|
-
export interface ChunkedVfsVersioning {
|
|
55
|
-
/** Snapshot current state. Returns version number. */
|
|
56
|
-
createVersion(path: string): Promise<number>;
|
|
57
|
-
/** List all versions of a file, newest first. */
|
|
58
|
-
listVersions(path: string): Promise<VersionInfo[]>;
|
|
59
|
-
/** Restore file to a previous version. */
|
|
60
|
-
restoreVersion(path: string, version: number): Promise<void>;
|
|
61
|
-
/** Prune old versions according to policy. Returns count of versions pruned. */
|
|
62
|
-
pruneVersions(path: string, policy: RetentionPolicy): Promise<number>;
|
|
63
|
-
/** Find and delete orphaned blocks. Returns count of blocks deleted. */
|
|
64
|
-
collectGarbage(): Promise<number>;
|
|
65
|
-
}
|
|
66
|
-
export declare function createChunkedVfs(options: ChunkedVfsOptions): VirtualFileSystem;
|