@secure-exec/core 0.2.0-rc.1 → 0.2.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.
Files changed (60) hide show
  1. package/dist/generated/isolate-runtime.d.ts +2 -2
  2. package/dist/generated/isolate-runtime.js +2 -2
  3. package/dist/index.d.ts +17 -4
  4. package/dist/index.js +10 -2
  5. package/dist/isolate-runtime/require-setup.js +1489 -239
  6. package/dist/isolate-runtime/setup-dynamic-import.js +31 -0
  7. package/dist/kernel/device-backend.d.ts +14 -0
  8. package/dist/kernel/device-backend.js +251 -0
  9. package/dist/kernel/device-layer.js +9 -0
  10. package/dist/kernel/file-lock.js +2 -3
  11. package/dist/kernel/index.d.ts +4 -4
  12. package/dist/kernel/index.js +3 -3
  13. package/dist/kernel/kernel.js +141 -122
  14. package/dist/kernel/mount-table.d.ts +75 -0
  15. package/dist/kernel/mount-table.js +353 -0
  16. package/dist/kernel/permissions.d.ts +9 -0
  17. package/dist/kernel/permissions.js +33 -1
  18. package/dist/kernel/proc-backend.d.ts +30 -0
  19. package/dist/kernel/proc-backend.js +428 -0
  20. package/dist/kernel/proc-layer.js +6 -0
  21. package/dist/kernel/process-table.d.ts +3 -1
  22. package/dist/kernel/process-table.js +23 -3
  23. package/dist/kernel/pty.d.ts +3 -2
  24. package/dist/kernel/pty.js +13 -2
  25. package/dist/kernel/socket-table.d.ts +7 -0
  26. package/dist/kernel/socket-table.js +99 -35
  27. package/dist/kernel/types.d.ts +45 -4
  28. package/dist/kernel/types.js +9 -0
  29. package/dist/kernel/vfs.d.ts +30 -2
  30. package/dist/kernel/vfs.js +19 -2
  31. package/dist/shared/api-types.d.ts +6 -0
  32. package/dist/shared/bridge-contract.d.ts +21 -3
  33. package/dist/shared/bridge-contract.js +2 -0
  34. package/dist/shared/console-formatter.js +8 -8
  35. package/dist/shared/global-exposure.js +95 -0
  36. package/dist/shared/in-memory-fs.d.ts +14 -59
  37. package/dist/shared/in-memory-fs.js +97 -597
  38. package/dist/shared/permissions.js +5 -0
  39. package/dist/test/block-store-conformance.d.ts +34 -0
  40. package/dist/test/block-store-conformance.js +251 -0
  41. package/dist/test/metadata-store-conformance.d.ts +37 -0
  42. package/dist/test/metadata-store-conformance.js +646 -0
  43. package/dist/test/vfs-conformance.d.ts +65 -0
  44. package/dist/test/vfs-conformance.js +842 -0
  45. package/dist/types.d.ts +1 -0
  46. package/dist/vfs/chunked-vfs.d.ts +66 -0
  47. package/dist/vfs/chunked-vfs.js +1290 -0
  48. package/dist/vfs/host-block-store.d.ts +19 -0
  49. package/dist/vfs/host-block-store.js +97 -0
  50. package/dist/vfs/memory-block-store.d.ts +16 -0
  51. package/dist/vfs/memory-block-store.js +45 -0
  52. package/dist/vfs/memory-metadata.d.ts +75 -0
  53. package/dist/vfs/memory-metadata.js +528 -0
  54. package/dist/vfs/sqlite-metadata.d.ts +91 -0
  55. package/dist/vfs/sqlite-metadata.js +582 -0
  56. package/dist/vfs/types.d.ts +210 -0
  57. package/dist/vfs/types.js +8 -0
  58. package/package.json +20 -1
  59. package/dist/kernel/inode-table.d.ts +0 -43
  60. package/dist/kernel/inode-table.js +0 -85
package/dist/index.d.ts CHANGED
@@ -1,13 +1,18 @@
1
1
  export { createKernel } from "./kernel/kernel.js";
2
- export type { Kernel, KernelOptions, KernelInterface, ExecOptions as KernelExecOptions, ExecResult as KernelExecResult, SpawnOptions as KernelSpawnOptions, ManagedProcess, RuntimeDriver as KernelRuntimeDriver, ProcessContext, DriverProcess, ProcessEntry, ProcessInfo, FDStat, FileDescription, FDEntry, Pipe, PermissionDecision, PermissionCheck, FsAccessRequest, NetworkAccessRequest, ChildProcessAccessRequest, EnvAccessRequest, KernelErrorCode, Termios, TermiosCC, OpenShellOptions, ShellHandle, ConnectTerminalOptions, Permissions, } from "./kernel/types.js";
3
- export { KernelError, defaultTermios } from "./kernel/types.js";
4
- export type { VirtualFileSystem, VirtualDirEntry, VirtualStat, } from "./kernel/vfs.js";
2
+ export type { FsMount, Kernel, KernelOptions, KernelInterface, KernelLogger, ExecOptions as KernelExecOptions, ExecResult as KernelExecResult, SpawnOptions as KernelSpawnOptions, ManagedProcess, RuntimeDriver as KernelRuntimeDriver, ProcessContext, DriverProcess, ProcessEntry, ProcessInfo, FDStat, FileDescription, FDEntry, Pipe, PermissionDecision, PermissionCheck, FsAccessRequest, NetworkAccessRequest, ChildProcessAccessRequest, EnvAccessRequest, KernelErrorCode, Termios, TermiosCC, OpenShellOptions, ShellHandle, ConnectTerminalOptions, Permissions, } from "./kernel/types.js";
3
+ export { KernelError, defaultTermios, noopKernelLogger } from "./kernel/types.js";
4
+ export type { VirtualFileSystem, VirtualDirEntry, VirtualDirStatEntry, VirtualStat, } from "./kernel/vfs.js";
5
5
  export { FDTableManager, ProcessFDTable } from "./kernel/fd-table.js";
6
6
  export { ProcessTable } from "./kernel/process-table.js";
7
7
  export { TimerTable } from "./kernel/timer-table.js";
8
8
  export type { KernelTimer, TimerTableOptions } from "./kernel/timer-table.js";
9
+ export { createDeviceBackend } from "./kernel/device-backend.js";
9
10
  export { createDeviceLayer } from "./kernel/device-layer.js";
11
+ export { MountTable } from "./kernel/mount-table.js";
12
+ export type { MountEntry, MountOptions } from "./kernel/mount-table.js";
10
13
  export { createProcLayer, createProcessScopedFileSystem, resolveProcSelfPath, } from "./kernel/proc-layer.js";
14
+ export { createProcBackend } from "./kernel/proc-backend.js";
15
+ export type { ProcBackendOptions } from "./kernel/proc-backend.js";
11
16
  export { PipeManager } from "./kernel/pipe-manager.js";
12
17
  export { PtyManager } from "./kernel/pty.js";
13
18
  export type { LineDisciplineConfig } from "./kernel/pty.js";
@@ -25,7 +30,7 @@ export type { CommandExecutor, NetworkAdapter, NetworkServerAddress, NetworkServ
25
30
  export type { DriverRuntimeConfig, NodeRuntimeDriver, NodeRuntimeDriverFactory, PythonRuntimeDriver, PythonRuntimeDriverFactory, ResourceBudgets, RuntimeDriver, RuntimeDriverFactory, RuntimeDriverOptions, SharedRuntimeDriver, SystemDriver, } from "./runtime-driver.js";
26
31
  export type { ExecOptions, ExecResult, ExecutionStatus, OSConfig, ProcessConfig, PythonRunOptions, PythonRunResult, RunResult, StdioChannel, StdioEvent, StdioHook, TimingMitigation, } from "./shared/api-types.js";
27
32
  export { TIMEOUT_EXIT_CODE, TIMEOUT_ERROR_MESSAGE, } from "./shared/constants.js";
28
- export { createInMemoryFileSystem, InMemoryFileSystem, } from "./shared/in-memory-fs.js";
33
+ export { createInMemoryFileSystem } from "./shared/in-memory-fs.js";
29
34
  export { allowAll, allowAllChildProcess, allowAllEnv, allowAllFs, allowAllNetwork, createCommandExecutorStub, createFsStub, createNetworkStub, envAccessAllowed, filterEnv, wrapCommandExecutor, wrapFileSystem, wrapNetworkAdapter, } from "./shared/permissions.js";
30
35
  export type { SystemError } from "./shared/errors.js";
31
36
  export { createEaccesError, createEnosysError, createSystemError, } from "./shared/errors.js";
@@ -40,6 +45,14 @@ export { exposeCustomGlobal, exposeGlobalBinding, exposeMutableRuntimeStateGloba
40
45
  export type { IsolateRuntimeSourceId } from "./generated/isolate-runtime.js";
41
46
  export { getIsolateRuntimeSource, ISOLATE_RUNTIME_SOURCES, } from "./generated/isolate-runtime.js";
42
47
  export { POLYFILL_CODE_MAP } from "./generated/polyfills.js";
48
+ export type { InodeType, CreateInodeAttrs, InodeMeta, DentryInfo, DentryStatInfo, FsMetadataStore, FsBlockStore, FsMetadataStoreVersioning, VersionMeta, VersionInfo, RetentionPolicy, } from "./vfs/types.js";
49
+ export { InMemoryMetadataStore } from "./vfs/memory-metadata.js";
50
+ export { InMemoryBlockStore } from "./vfs/memory-block-store.js";
51
+ export { SqliteMetadataStore } from "./vfs/sqlite-metadata.js";
52
+ export type { SqliteMetadataStoreOptions } from "./vfs/sqlite-metadata.js";
53
+ export { createChunkedVfs } from "./vfs/chunked-vfs.js";
54
+ export type { ChunkedVfsOptions, ChunkedVfsVersioning } from "./vfs/chunked-vfs.js";
55
+ export { HostBlockStore } from "./vfs/host-block-store.js";
43
56
  export type { DirEntry, StatInfo } from "./fs-helpers.js";
44
57
  export { exists, stat, rename, readDirWithTypes, mkdir } from "./fs-helpers.js";
45
58
  export { BUILTIN_NAMED_EXPORTS, normalizeBuiltinSpecifier, getPathDir, } from "./module-resolver.js";
package/dist/index.js CHANGED
@@ -1,12 +1,15 @@
1
1
  // Kernel — VFS, process table, FD table, device layer, pipes, PTY, command registry, permissions.
2
2
  export { createKernel } from "./kernel/kernel.js";
3
- export { KernelError, defaultTermios } from "./kernel/types.js";
3
+ export { KernelError, defaultTermios, noopKernelLogger } from "./kernel/types.js";
4
4
  // Kernel components.
5
5
  export { FDTableManager, ProcessFDTable } from "./kernel/fd-table.js";
6
6
  export { ProcessTable } from "./kernel/process-table.js";
7
7
  export { TimerTable } from "./kernel/timer-table.js";
8
+ export { createDeviceBackend } from "./kernel/device-backend.js";
8
9
  export { createDeviceLayer } from "./kernel/device-layer.js";
10
+ export { MountTable } from "./kernel/mount-table.js";
9
11
  export { createProcLayer, createProcessScopedFileSystem, resolveProcSelfPath, } from "./kernel/proc-layer.js";
12
+ export { createProcBackend } from "./kernel/proc-backend.js";
10
13
  export { PipeManager } from "./kernel/pipe-manager.js";
11
14
  export { PtyManager } from "./kernel/pty.js";
12
15
  export { CommandRegistry } from "./kernel/command-registry.js";
@@ -24,7 +27,7 @@ export { encodeExitStatus, encodeSignalStatus, WIFEXITED, WEXITSTATUS, WIFSIGNAL
24
27
  // Shared constants.
25
28
  export { TIMEOUT_EXIT_CODE, TIMEOUT_ERROR_MESSAGE, } from "./shared/constants.js";
26
29
  // Shared utilities.
27
- export { createInMemoryFileSystem, InMemoryFileSystem, } from "./shared/in-memory-fs.js";
30
+ export { createInMemoryFileSystem } from "./shared/in-memory-fs.js";
28
31
  export { allowAll, allowAllChildProcess, allowAllEnv, allowAllFs, allowAllNetwork, createCommandExecutorStub, createFsStub, createNetworkStub, envAccessAllowed, filterEnv, wrapCommandExecutor, wrapFileSystem, wrapNetworkAdapter, } from "./shared/permissions.js";
29
32
  export { createEaccesError, createEnosysError, createSystemError, } from "./shared/errors.js";
30
33
  export { extractCjsNamedExports, extractDynamicImportSpecifiers, isESM, transformDynamicImport, wrapCJSForESM, wrapCJSForESMWithModulePath, } from "./shared/esm-utils.js";
@@ -35,6 +38,11 @@ export { exposeCustomGlobal, exposeGlobalBinding, exposeMutableRuntimeStateGloba
35
38
  export { getIsolateRuntimeSource, ISOLATE_RUNTIME_SOURCES, } from "./generated/isolate-runtime.js";
36
39
  // Generated polyfills.
37
40
  export { POLYFILL_CODE_MAP } from "./generated/polyfills.js";
41
+ export { InMemoryMetadataStore } from "./vfs/memory-metadata.js";
42
+ export { InMemoryBlockStore } from "./vfs/memory-block-store.js";
43
+ export { SqliteMetadataStore } from "./vfs/sqlite-metadata.js";
44
+ export { createChunkedVfs } from "./vfs/chunked-vfs.js";
45
+ export { HostBlockStore } from "./vfs/host-block-store.js";
38
46
  export { exists, stat, rename, readDirWithTypes, mkdir } from "./fs-helpers.js";
39
47
  // Module resolution.
40
48
  export { BUILTIN_NAMED_EXPORTS, normalizeBuiltinSpecifier, getPathDir, } from "./module-resolver.js";