@nimbus-sh/worker 0.8.0 → 0.9.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 (59) hide show
  1. package/dist/facets/compose.d.ts +3 -0
  2. package/dist/facets/compose.d.ts.map +1 -1
  3. package/dist/facets/compose.js +1 -1
  4. package/dist/facets/manager.d.ts +26 -15
  5. package/dist/facets/manager.d.ts.map +1 -1
  6. package/dist/facets/manager.js +138 -107
  7. package/dist/hosted/commands.d.ts.map +1 -1
  8. package/dist/hosted/commands.js +27 -38
  9. package/dist/hosted/runtime.d.ts +22 -1
  10. package/dist/hosted/runtime.d.ts.map +1 -1
  11. package/dist/hosted/runtime.js +69 -13
  12. package/dist/hosted/services.d.ts +6 -2
  13. package/dist/hosted/services.d.ts.map +1 -1
  14. package/dist/hosted/services.js +12 -2
  15. package/dist/loaders/generated-workers.d.ts +1 -1
  16. package/dist/loaders/generated-workers.d.ts.map +1 -1
  17. package/dist/loaders/generated-workers.js +2 -2
  18. package/dist/node-shims-artifact.generated.js +3 -3
  19. package/dist/runtime/bash-repl.d.ts +5 -3
  20. package/dist/runtime/bash-repl.d.ts.map +1 -1
  21. package/dist/runtime/bash-repl.js +8 -3
  22. package/dist/runtime/facet-loader-host.d.ts.map +1 -1
  23. package/dist/runtime/facet-loader-host.js +1 -3
  24. package/dist/runtime/node-shims.d.ts.map +1 -1
  25. package/dist/runtime/node-shims.js +14 -1
  26. package/dist/runtime/python-repl.d.ts +4 -3
  27. package/dist/runtime/python-repl.d.ts.map +1 -1
  28. package/dist/runtime/python-repl.js +10 -8
  29. package/dist/runtime/ruby-repl.d.ts +3 -2
  30. package/dist/runtime/ruby-repl.d.ts.map +1 -1
  31. package/dist/runtime/ruby-repl.js +7 -6
  32. package/dist/runtime/runtime-catalog.js +1 -1
  33. package/dist/runtime/wasi/preamble.d.ts.map +1 -1
  34. package/dist/runtime/wasi/preamble.js +74 -56
  35. package/dist/runtime-catalog.generated.js +1 -1
  36. package/dist/session/init.d.ts.map +1 -1
  37. package/dist/session/init.js +1 -0
  38. package/dist/session/nimbus-session.d.ts +6 -21
  39. package/dist/session/nimbus-session.d.ts.map +1 -1
  40. package/dist/session/nimbus-session.js +12 -35
  41. package/dist/session/port-capability.d.ts.map +1 -1
  42. package/dist/session/port-capability.js +11 -1
  43. package/dist/session/programmatic.js +2 -2
  44. package/dist/session/rpc.d.ts +3 -43
  45. package/dist/session/rpc.d.ts.map +1 -1
  46. package/dist/session/rpc.js +7 -65
  47. package/dist/session/supervisor-op.d.ts +8 -3
  48. package/dist/session/supervisor-op.d.ts.map +1 -1
  49. package/dist/session/supervisor-op.js +10 -45
  50. package/dist/session/supervisor-rpc.d.ts +33 -16
  51. package/dist/session/supervisor-rpc.d.ts.map +1 -1
  52. package/dist/session/supervisor-rpc.js +49 -4
  53. package/dist/vfs/facet-resident-store.d.ts.map +1 -1
  54. package/dist/vfs/facet-resident-store.js +4 -2
  55. package/dist/workspace-host.d.ts +2 -1
  56. package/dist/workspace-host.d.ts.map +1 -1
  57. package/package.json +4 -4
  58. package/public/_assets/runtime/{node-shims-8f8c64edd2a1f0f5.js → node-shims-acaa037e6d26ec0d.js} +14 -1
  59. package/scripts/bundle-runtime.mjs +35 -8
@@ -1,3 +1,6 @@
1
+ import { installAuthorityFilesystem, WASI_ACCEPTED_PATH_PREFIX, WASI_LISTEN_PATH_PREFIX, WASI_TCP_PATH_PREFIX, } from '@nimbus-sh/core/runtime/wasi/filesystem.js';
2
+ import { supervisorFilesystem } from '@nimbus-sh/core/runtime/vfs-supervisor.js';
3
+ import { WASI_RESIDENT_FILE_CAP_BYTES } from '@nimbus-sh/core/constants.js';
1
4
  // errno constants
2
5
  const __WASI_ESUCCESS = 0;
3
6
  const __WASI_EAGAIN = 6;
@@ -65,21 +68,6 @@ const __WASI_EVENTTYPE_CLOCK = 0;
65
68
  const __WASI_EVENTTYPE_FD_READ = 1;
66
69
  const __WASI_EVENTTYPE_FD_WRITE = 2;
67
70
  const __WASI_SUBCLOCKFLAGS_ABSTIME = 1; // SUBSCRIPTION_CLOCK_ABSTIME
68
- // WASI socket and polling support B7: synthetic-path prefix recognised by path_open as a request
69
- // to open a TCP socket. Mirrors bash's /dev/tcp/<host>/<port> convention
70
- // (https://www.gnu.org/software/bash/manual/html_node/Redirections.html).
71
- const __WASI_TCP_PATH_PREFIX = '/dev/tcp/';
72
- // The accept half of the same synthetic-socket family: binds a connection the
73
- // virtual socket kernel has already accepted to a file descriptor. It has to go
74
- // through path_open like the dial half - guests layered over wasi-vfs
75
- // (ruby.wasm) resolve descriptors through their own fd table, so a descriptor
76
- // handed to them out of band is not one they can use.
77
- const __WASI_ACCEPTED_PATH_PREFIX = '/dev/nimbus/socket/';
78
- // A listening socket, as a descriptor. Reading it is accept(2): the read
79
- // suspends until a connection is queued and yields that connection's id, so a
80
- // server's accept loop is an ordinary blocking read and needs no cooperative
81
- // pump driving it from outside.
82
- const __WASI_LISTEN_PATH_PREFIX = '/dev/nimbus/listen/';
83
71
  // WASI socket and polling support B7: resolved at preamble module-init via dynamic import.
84
72
  // CF docs: "TCP sockets cannot be created in global scope and shared
85
73
  // across requests" — so we only IMPORT the module here (cheap symbol
@@ -139,7 +127,7 @@ function __wasiEmptyFS() {
139
127
  root: '',
140
128
  files: new Map(), dirs: new Set(), times: new Map(), symlinks: new Map(),
141
129
  modes: new Map(), sizes: new Map(), origFiles: new Map(),
142
- residentFileCap: 8 * 1024 * 1024,
130
+ residentFileCap: WASI_RESIDENT_FILE_CAP_BYTES,
143
131
  enumeratedRoots: [],
144
132
  revision: null,
145
133
  };
@@ -456,7 +444,7 @@ export function __wasiInitFS(opts) {
456
444
  origFiles,
457
445
  // Files at or above this size are never held whole; reads window through
458
446
  // the supervisor instead. Keeps a 200 MiB blob from ending the isolate.
459
- residentFileCap: Number(opts.residentFileCap ?? (8 * 1024 * 1024)),
447
+ residentFileCap: Number(opts.residentFileCap ?? WASI_RESIDENT_FILE_CAP_BYTES),
460
448
  // Roots the seed claims to have listed COMPLETELY. Only a producer that
461
449
  // walked a subtree without exclusions may claim one. Inside such a root a
462
450
  // path the manifest lacks is genuinely absent, so the miss is answered
@@ -470,6 +458,9 @@ export function __wasiInitFS(opts) {
470
458
  revision: opts.revision ?? null,
471
459
  };
472
460
  // Reset fd table baseline; install preopens as fd 3, 4, 5, ...
461
+ // Emptied rather than replaced: the authority codec and the socket helpers
462
+ // are handed this Map, and a swap would leave half of them writing into a
463
+ // table nothing reads.
473
464
  __wasiPreopens = [];
474
465
  fdTable.clear();
475
466
  fdTable.set(0, { kind: 'stdin' });
@@ -477,7 +468,7 @@ export function __wasiInitFS(opts) {
477
468
  fdTable.set(2, { kind: 'stderr' });
478
469
  nextFd = 3;
479
470
  for (const po of (opts.preopens || [])) {
480
- const fd = nextFd++;
471
+ const fd = __wasiAllocateFd();
481
472
  const vfsPath = __wasiCanonicalize(po.vfsPath);
482
473
  fdTable.set(fd, { kind: 'preopen', wasiPath: po.wasiPath, vfsPath });
483
474
  __wasiPreopens.push({ fd, wasiPath: po.wasiPath, vfsPath });
@@ -565,7 +556,7 @@ function __wasiConnectRemote(host, port) {
565
556
  // Returns a WASI errno and writes the new fd to fdOutPtr.
566
557
  function __wasiOpenTcpSocket(pathArg, fdflags, fdOutPtr, writeU32LE) {
567
558
  // pathArg shape: "/dev/tcp/<host>/<port>".
568
- const tail = pathArg.substring(__WASI_TCP_PATH_PREFIX.length);
559
+ const tail = pathArg.substring(WASI_TCP_PATH_PREFIX.length);
569
560
  const slashIdx = tail.lastIndexOf('/');
570
561
  if (slashIdx <= 0 || slashIdx === tail.length - 1)
571
562
  return __WASI_EINVAL;
@@ -593,7 +584,7 @@ function __wasiKernelOrNull(what) {
593
584
  // Open a listening socket as a descriptor. The port must already be bound; the
594
585
  // descriptor is the accept queue, not the bind.
595
586
  function __wasiOpenListener(pathArg, fdflags, fdOutPtr, writeU32LE) {
596
- const port = parseInt(pathArg.substring(__WASI_LISTEN_PATH_PREFIX.length), 10);
587
+ const port = parseInt(pathArg.substring(WASI_LISTEN_PATH_PREFIX.length), 10);
597
588
  if (!Number.isInteger(port) || port <= 0 || port >= 65536)
598
589
  return __WASI_EINVAL;
599
590
  const kernel = __wasiKernelOrNull('ports cannot be listened on');
@@ -620,7 +611,7 @@ function __wasiOpenListener(pathArg, fdflags, fdOutPtr, writeU32LE) {
620
611
  if (typeof announce === 'function')
621
612
  announce(port);
622
613
  }
623
- const fd = nextFd++;
614
+ const fd = __wasiAllocateFd();
624
615
  fdTable.set(fd, { kind: 'listener', port, fdflags: fdflags | 0 });
625
616
  writeU32LE(fdOutPtr, fd);
626
617
  return __WASI_ESUCCESS;
@@ -670,7 +661,7 @@ async function __wasiAcceptRead(entry, iovsPtr, iovsLen, nreadPtr, writeU32LE, v
670
661
  // Bind an already-accepted kernel connection to a file descriptor, so a
671
662
  // server's accepted socket is the same kind of fd as a client's dialed one.
672
663
  function __wasiOpenAcceptedSocket(pathArg, fdflags, fdOutPtr, writeU32LE) {
673
- const id = parseInt(pathArg.substring(__WASI_ACCEPTED_PATH_PREFIX.length), 10);
664
+ const id = parseInt(pathArg.substring(WASI_ACCEPTED_PATH_PREFIX.length), 10);
674
665
  if (!Number.isInteger(id) || id <= 0)
675
666
  return __WASI_EINVAL;
676
667
  const kernel = globalThis.__nimbusVirtualSockets;
@@ -695,7 +686,7 @@ function __wasiOpenAcceptedSocket(pathArg, fdflags, fdOutPtr, writeU32LE) {
695
686
  // connection, or an accepted one. Every socket fd in the table comes from here,
696
687
  // which is why nothing downstream has to tell them apart.
697
688
  function __wasiAdoptSocket(socket, fdflags) {
698
- const fd = nextFd++;
689
+ const fd = __wasiAllocateFd();
699
690
  fdTable.set(fd, {
700
691
  kind: 'socket',
701
692
  socket,
@@ -776,6 +767,10 @@ export function __wasiReadFilesB64(paths) {
776
767
  // rights checks in v1 — single-tenant facet, no untrusted callers).
777
768
  export const fdTable = new Map();
778
769
  let nextFd = 3;
770
+ // The only source of descriptor numbers. A second counter — one for files, one
771
+ // for sockets — hands the same number out twice and the later open silently
772
+ // destroys the earlier fd's entry.
773
+ function __wasiAllocateFd() { return nextFd++; }
779
774
  // Resolve a WASI path against a preopen fd; returns the canonical VFS path
780
775
  // WITHOUT following symlinks. WASI socket and polling support kept this name compatible with all
781
776
  // existing call sites (~10 of them inside the imports object).
@@ -1102,7 +1097,9 @@ export function __wasiMakeImports(opts) {
1102
1097
  await __wasiDrainPersist();
1103
1098
  if (size <= __wasiFS.residentFileCap) {
1104
1099
  const whole = await __wasiSup.fsReadRange(vfsPath, 0, size);
1105
- const bytes = whole instanceof Uint8Array ? whole : new Uint8Array(whole);
1100
+ if (whole === null)
1101
+ throw new Error('ENOENT: ' + vfsPath);
1102
+ const bytes = whole;
1106
1103
  __wasiFS.files.set(vfsPath, bytes);
1107
1104
  // The diff-back mirror must agree, or a demand-loaded file would be
1108
1105
  // reported as newly written by every runner still using the diff.
@@ -1115,7 +1112,9 @@ export function __wasiMakeImports(opts) {
1115
1112
  if (want === 0)
1116
1113
  return new Uint8Array(0);
1117
1114
  const win = await __wasiSup.fsReadRange(vfsPath, offset, want);
1118
- return win instanceof Uint8Array ? win : new Uint8Array(win);
1115
+ if (win === null)
1116
+ throw new Error('ENOENT: ' + vfsPath);
1117
+ return win;
1119
1118
  })();
1120
1119
  }
1121
1120
  /** Scatter the given bytes across the iovec list; returns bytes consumed. */
@@ -1583,13 +1582,13 @@ export function __wasiMakeImports(opts) {
1583
1582
  // the in-memory FS — __wasiResolvePath would canonicalize it but
1584
1583
  // not find any entry.
1585
1584
  const guestPath = __wasiGuestPath(baseFd, pathArg);
1586
- if (guestPath.startsWith(__WASI_TCP_PATH_PREFIX)) {
1585
+ if (guestPath.startsWith(WASI_TCP_PATH_PREFIX)) {
1587
1586
  return __wasiOpenTcpSocket(guestPath, fdflags, fdOutPtr, writeU32LE);
1588
1587
  }
1589
- if (guestPath.startsWith(__WASI_ACCEPTED_PATH_PREFIX)) {
1588
+ if (guestPath.startsWith(WASI_ACCEPTED_PATH_PREFIX)) {
1590
1589
  return __wasiOpenAcceptedSocket(guestPath, fdflags, fdOutPtr, writeU32LE);
1591
1590
  }
1592
- if (guestPath.startsWith(__WASI_LISTEN_PATH_PREFIX)) {
1591
+ if (guestPath.startsWith(WASI_LISTEN_PATH_PREFIX)) {
1593
1592
  return __wasiOpenListener(guestPath, fdflags, fdOutPtr, writeU32LE);
1594
1593
  }
1595
1594
  // Honor LOOKUPFLAGS_SYMLINK_FOLLOW strictly: bit 0 set → follow.
@@ -1624,7 +1623,7 @@ export function __wasiMakeImports(opts) {
1624
1623
  const access = __wasiCheckMode(resolved, 1);
1625
1624
  if (access !== __WASI_ESUCCESS)
1626
1625
  return access;
1627
- const fd = nextFd++;
1626
+ const fd = __wasiAllocateFd();
1628
1627
  fdTable.set(fd, { kind: 'dir', vfsPath: resolved, readdirEntries: null, cookie: 0n, oflags, fdflags });
1629
1628
  writeU32LE(fdOutPtr, fd);
1630
1629
  return __WASI_ESUCCESS;
@@ -1665,7 +1664,7 @@ export function __wasiMakeImports(opts) {
1665
1664
  if (access !== __WASI_ESUCCESS)
1666
1665
  return access;
1667
1666
  }
1668
- const fd = nextFd++;
1667
+ const fd = __wasiAllocateFd();
1669
1668
  fdTable.set(fd, { kind: 'file', vfsPath: resolved, offset: 0, oflags, fdflags });
1670
1669
  writeU32LE(fdOutPtr, fd);
1671
1670
  return __WASI_ESUCCESS;
@@ -2196,7 +2195,7 @@ export function __wasiMakeImports(opts) {
2196
2195
  writeU32LE(bufusedPtr, written);
2197
2196
  return __WASI_ESUCCESS;
2198
2197
  },
2199
- fd_advise() { return __WASI_ESUCCESS; },
2198
+ fd_advise(_fd, _offset, _len, _advice) { return __WASI_ESUCCESS; },
2200
2199
  // WASI socket and polling support B4: real fd_allocate. Extends the file's byte buffer with
2201
2200
  // zeros so [offset, offset+len) is allocated. POSIX posix_fallocate
2202
2201
  // semantics. ENOSPC is not reachable in our in-memory FS (the
@@ -2428,9 +2427,11 @@ export function __wasiMakeImports(opts) {
2428
2427
  });
2429
2428
  }
2430
2429
  // Regular files, dirs, stdio: always ready (POSIX: regular files
2431
- // never block — read returns immediately even if at EOF).
2430
+ // never block — read returns immediately even if at EOF). A file the
2431
+ // authority owns is a regular file too; leaving 'authority' out made
2432
+ // polling one EBADF, which a guest reads as "this fd is gone".
2432
2433
  if (entry.kind === 'file' || entry.kind === 'dir' ||
2433
- entry.kind === 'preopen' ||
2434
+ entry.kind === 'preopen' || entry.kind === 'authority' ||
2434
2435
  entry.kind === 'stdin' || entry.kind === 'stdout' || entry.kind === 'stderr') {
2435
2436
  let nbytes = 0n;
2436
2437
  if (entry.kind === 'file' && s.tag === __WASI_EVENTTYPE_FD_READ) {
@@ -2843,6 +2844,15 @@ export function __wasiMakeImports(opts) {
2843
2844
  }
2844
2845
  },
2845
2846
  };
2847
+ installAuthorityFilesystem(imports, {
2848
+ fs: () => __wasiSup ? supervisorFilesystem(__wasiSup, opts.parking === 'none' ? __wasiSup.synchronous : undefined) : null,
2849
+ memory: opts.getMemory,
2850
+ fds: fdTable,
2851
+ allocateFd: __wasiAllocateFd,
2852
+ abi: opts.abi,
2853
+ synchronous: opts.parking === 'none',
2854
+ residentBytes: __wasiFS.residentFileCap,
2855
+ });
2846
2856
  // Raw async socket bodies, captured BEFORE JSPI-wrapping so fd_read /
2847
2857
  // fd_write can route socket fds through them (wasi-libc maps read(2)/
2848
2858
  // write(2) to fd_read/fd_write for every fd kind, sockets included).
@@ -2858,7 +2868,13 @@ export function __wasiMakeImports(opts) {
2858
2868
  // Every import that can park.
2859
2869
  const parkable = [
2860
2870
  'sock_send', 'sock_recv', 'sock_shutdown', 'sock_accept', 'poll_oneoff',
2861
- 'fd_read', 'fd_write', 'fd_pread', 'path_filestat_get',
2871
+ 'fd_read', 'fd_write', 'fd_pread', 'fd_pwrite', 'path_filestat_get',
2872
+ 'path_open', 'fd_close', 'fd_renumber', 'fd_seek', 'fd_tell', 'fd_filestat_get',
2873
+ 'fd_fdstat_set_flags', 'fd_fdstat_set_rights', 'fd_filestat_set_size',
2874
+ 'fd_sync', 'fd_datasync', 'fd_allocate', 'fd_advise', 'fd_readdir',
2875
+ 'path_create_directory', 'path_remove_directory', 'path_unlink_file',
2876
+ 'path_rename', 'path_symlink', 'path_readlink', 'path_link',
2877
+ 'fd_filestat_set_times', 'path_filestat_set_times',
2862
2878
  ];
2863
2879
  // Applied before Suspending wraps them.
2864
2880
  for (const name of parkable) {
@@ -2908,33 +2924,35 @@ export function __wasiMakeImports(opts) {
2908
2924
  imports.sock_recv = new WebAssembly.Suspending(imports.sock_recv);
2909
2925
  imports.sock_shutdown = new WebAssembly.Suspending(imports.sock_shutdown);
2910
2926
  imports.sock_accept = new WebAssembly.Suspending(imports.sock_accept);
2911
- // WASI socket and polling support B8: poll_oneoff also needs JSPI to support CLOCK
2912
- // subscriptions (await setTimeout) and socket-fd readiness
2913
- // (await reader.read()). Same Suspending shape as sock_*.
2914
2927
  imports.poll_oneoff = new WebAssembly.Suspending(imports.poll_oneoff);
2915
- // fd_read/fd_write become suspending too: a socket fd routes to the
2916
- // async sock bodies (Promise → JSPI suspends). File/stdio ops return a
2917
- // plain errno number, which JSPI passes through UNDER AN ACTIVE
2918
- // SUSPENDER. There is no passthrough without one: V8 traps ANY call
2919
- // into a Suspending import off a non-promising stack with SuspendError
2920
- // "trying to suspend without WebAssembly.promising", even when the
2921
- // import returns a plain number (measured on workerd, compat
2922
- // 2026-04-01). Every export that can reach these imports must be
2923
- // entered via WebAssembly.promising — assuming sync callers were
2924
- // unaffected is exactly how the Ruby VM boot went dark.
2925
2928
  imports.fd_read = new WebAssembly.Suspending(imports.fd_read);
2926
2929
  imports.fd_write = new WebAssembly.Suspending(imports.fd_write);
2927
- // fd_pread reaches the same file bodies as fd_read and so can equally
2928
- // land on a cache miss that must go to the supervisor. Leaving it
2929
- // unwrapped would trap the guest the first time a demand load happened
2930
- // to arrive through pread(2) rather than read(2).
2931
2930
  imports.fd_pread = new WebAssembly.Suspending(imports.fd_pread);
2932
- // path_filestat_get resolves a path the seed manifest never listed by
2933
- // asking the supervisor, so it too can return a Promise.
2931
+ imports.fd_pwrite = new WebAssembly.Suspending(imports.fd_pwrite);
2934
2932
  imports.path_filestat_get = new WebAssembly.Suspending(imports.path_filestat_get);
2935
- // sched_yield parks only in a threaded process, so it is wrapped only for
2936
- // one: every other guest keeps the plain i32 return it has today, and no
2937
- // existing runtime changes shape.
2933
+ imports.path_open = new WebAssembly.Suspending(imports.path_open);
2934
+ imports.fd_close = new WebAssembly.Suspending(imports.fd_close);
2935
+ imports.fd_renumber = new WebAssembly.Suspending(imports.fd_renumber);
2936
+ imports.fd_seek = new WebAssembly.Suspending(imports.fd_seek);
2937
+ imports.fd_tell = new WebAssembly.Suspending(imports.fd_tell);
2938
+ imports.fd_filestat_get = new WebAssembly.Suspending(imports.fd_filestat_get);
2939
+ imports.fd_fdstat_set_flags = new WebAssembly.Suspending(imports.fd_fdstat_set_flags);
2940
+ imports.fd_fdstat_set_rights = new WebAssembly.Suspending(imports.fd_fdstat_set_rights);
2941
+ imports.fd_filestat_set_size = new WebAssembly.Suspending(imports.fd_filestat_set_size);
2942
+ imports.fd_sync = new WebAssembly.Suspending(imports.fd_sync);
2943
+ imports.fd_datasync = new WebAssembly.Suspending(imports.fd_datasync);
2944
+ imports.fd_allocate = new WebAssembly.Suspending(imports.fd_allocate);
2945
+ imports.fd_advise = new WebAssembly.Suspending(imports.fd_advise);
2946
+ imports.fd_readdir = new WebAssembly.Suspending(imports.fd_readdir);
2947
+ imports.path_create_directory = new WebAssembly.Suspending(imports.path_create_directory);
2948
+ imports.path_remove_directory = new WebAssembly.Suspending(imports.path_remove_directory);
2949
+ imports.path_unlink_file = new WebAssembly.Suspending(imports.path_unlink_file);
2950
+ imports.path_rename = new WebAssembly.Suspending(imports.path_rename);
2951
+ imports.path_symlink = new WebAssembly.Suspending(imports.path_symlink);
2952
+ imports.path_readlink = new WebAssembly.Suspending(imports.path_readlink);
2953
+ imports.path_link = new WebAssembly.Suspending(imports.path_link);
2954
+ imports.fd_filestat_set_times = new WebAssembly.Suspending(imports.fd_filestat_set_times);
2955
+ imports.path_filestat_set_times = new WebAssembly.Suspending(imports.path_filestat_set_times);
2938
2956
  if (opts.threads)
2939
2957
  imports.sched_yield = new WebAssembly.Suspending(imports.sched_yield);
2940
2958
  }
@@ -24,4 +24,4 @@
24
24
  * The empty string means "not pinned yet" — the catalog stays out of L2 and
25
25
  * the supervisor warns once per isolate.
26
26
  */
27
- export const RUNTIME_CATALOG_SHA256 = "de5f40e035887976ba2fd4611cada83c4fcbff774637eb7c954c55dd1d1c5eae";
27
+ export const RUNTIME_CATALOG_SHA256 = "9cdc9cc0d96667234c6fed2adc81e7890fef96b3afe5bd80dd80612e822d3d3a";
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/session/init.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD;;;;;;;;GAQG;AACH,KAAK,QAAQ,GAAG,eAAe,GAAG;IAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;CAAE,CAAC;AAQ3E;;;;;;;;;;GAUG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;CAC/B;AAED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,QAAQ,EACd,EAAE,EAAE,SAAS,GAAG,IAAI,EACpB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAicf"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/session/init.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD;;;;;;;;GAQG;AACH,KAAK,QAAQ,GAAG,eAAe,GAAG;IAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;CAAE,CAAC;AAQ3E;;;;;;;;;;GAUG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;CAC/B;AAED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,QAAQ,EACd,EAAE,EAAE,SAAS,GAAG,IAAI,EACpB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAkcf"}
@@ -179,6 +179,7 @@ export async function initSession(self, ws, options = {}) {
179
179
  // have been called many requests ago; a second SqliteVFS over the
180
180
  // same rows would be a second cache serving stale reads.
181
181
  vfs: self.sqliteFs,
182
+ filesystem: () => self.getFilesystemAuthority(),
182
183
  mounts: mountPoints,
183
184
  env: envOverlay,
184
185
  terminal: self.terminal,
@@ -15,12 +15,13 @@ import * as runtimeServices from '../hosted/services.js';
15
15
  */
16
16
  import { Kernel, Shell } from '@nimbus-sh/core/substrate/lifo/index.js';
17
17
  import { DurableObject as CloudflareDurableObject } from 'cloudflare:workers';
18
- import { SqliteVFS, type WriteBatchStreamResult } from '@nimbus-sh/core/vfs/sqlite-vfs.js';
18
+ import { SqliteVFS } from '@nimbus-sh/core/vfs/sqlite-vfs.js';
19
19
  import { WebSocketTerminal } from '../facets/ws-terminal.js';
20
20
  import type { FacetManager } from '../facets/manager.js';
21
21
  import { type ComposedFacetManager } from '../facets/compose.js';
22
22
  import { SessionProcessSupervisor } from '@nimbus-sh/core/runtime/session-process-supervisor.js';
23
- import { SqliteRuntimeFsBridge } from '@nimbus-sh/core/runtime/sqlite-runtime-fs-bridge.js';
23
+ import type { RuntimeFsBridge } from '@nimbus-sh/core/runtime/os-contracts.js';
24
+ import { SqliteFilesystemAuthority } from '@nimbus-sh/core/runtime/filesystem-authority.js';
24
25
  import { type VfsAcquireResult, type VfsCred, type VfsListPage } from '@nimbus-sh/core/runtime/os-contracts.js';
25
26
  import type { WsHibernationConfigResult } from './hibernation.js';
26
27
  import { PortRegistry } from '@nimbus-sh/core/runtime/port-registry.js';
@@ -293,9 +294,11 @@ export declare class NimbusSession extends CloudflareDurableObject<SessionEnv> {
293
294
  * Lazy: sqliteFs exists only after ensureSqliteFs().
294
295
  */
295
296
  private _supervisorOps;
297
+ private filesystemAuthority;
298
+ getFilesystemAuthority(): SqliteFilesystemAuthority;
296
299
  private supervisorOps;
297
300
  /** The pid-keyed filesystem bridge behind the supervisor ops. */
298
- supervisorBridge(pid?: number): SqliteRuntimeFsBridge;
301
+ supervisorBridge(pid?: number): RuntimeFsBridge;
299
302
  /** Drop a dead pid's supervisor bridge — its credential stops being valid. */
300
303
  supervisorForgetBridge(pid: number): void;
301
304
  supervisorOp(envelope: SupervisorOpEnvelope): Promise<unknown>;
@@ -306,13 +309,7 @@ export declare class NimbusSession extends CloudflareDurableObject<SessionEnv> {
306
309
  _rpcWriteProtectedRootFile(rootPath: string, path: string, content: string | Uint8Array): Promise<void>;
307
310
  _rpcStat(path: string, pid?: number, cred?: VfsCred): Promise<any>;
308
311
  _rpcLstat(path: string, pid?: number, cred?: VfsCred): Promise<any>;
309
- _rpcHasLegacySymlinkUnder(path: string, pid?: number): Promise<boolean>;
310
- _rpcUtimes(path: string, atimeMs: number, mtimeMs: number, pid?: number): Promise<void>;
311
312
  _rpcChmod(path: string, mode: number, pid?: number, cred?: VfsCred): Promise<void>;
312
- _rpcAccess(path: string, mode: number, pid?: number): Promise<void>;
313
- _rpcChown(path: string, uid: number, gid: number, pid?: number, options?: {
314
- followSymlinks?: boolean;
315
- }): Promise<void>;
316
313
  _rpcSetUmask(mask: number, pid?: number): Promise<number>;
317
314
  _rpcReaddir(path: string, pid?: number, cred?: VfsCred): Promise<{
318
315
  name: string;
@@ -320,35 +317,23 @@ export declare class NimbusSession extends CloudflareDurableObject<SessionEnv> {
320
317
  }[]>;
321
318
  _rpcExists(path: string, pid?: number, cred?: VfsCred): Promise<boolean>;
322
319
  _rpcMkdir(path: string, pid?: number, cred?: VfsCred): Promise<void>;
323
- _rpcRmdir(path: string, pid?: number): Promise<void>;
324
320
  _rpcRename(from: string, to: string, pid?: number, cred?: VfsCred): Promise<void>;
325
- _rpcReadlink(path: string, pid?: number): Promise<string | null>;
326
- _rpcSymlink(target: string, path: string, pid?: number): Promise<void>;
327
- _rpcFsRevision(path?: string, pid?: number): Promise<number>;
328
321
  _rpcFsAcquire(epoch: string | null, cursor: number, pid?: number): Promise<VfsAcquireResult>;
329
322
  _rpcFsList(after: string | null, limit: number | null, pid?: number): Promise<VfsListPage>;
330
323
  _rpcWsOpen(url: string, protocols: string[], pid?: number): Promise<any>;
331
324
  _rpcWsPoll(id: number, waitMs: number, pid?: number): Promise<any>;
332
325
  _rpcWsSend(id: number, text: string | null, bytes: Uint8Array | null, pid?: number): Promise<void>;
333
326
  _rpcWsClose(id: number, code?: number, reason?: string, pid?: number): Promise<void>;
334
- _rpcFsOpen(path: string, flags: any, pid?: number): Promise<any>;
335
- _rpcFsRead(handleId: number, offset: number | null, length: number, pid?: number): Promise<Uint8Array>;
336
- _rpcFsWrite(handleId: number, offset: number | null, bytes: Uint8Array | ArrayBuffer | number[], pid?: number): Promise<number>;
337
- _rpcFsClose(handleId: number, pid?: number): Promise<void>;
338
327
  _rpcFsReadRange(path: string, offset: number, length: number, pid?: number, cred?: VfsCred): Promise<Uint8Array | null>;
339
- _rpcFsReadRangeUncached(path: string, offset: number, length: number, pid?: number): Promise<Uint8Array | null>;
340
328
  _rpcFsReadBatch(requests: _rpc.FsReadBatchRequest[], pid?: number): Promise<_rpc.FsReadBatchEntry[]>;
341
329
  _rpcFsWriteRange(path: string, offset: number, bytes: Uint8Array | ArrayBuffer | number[], pid?: number): Promise<number>;
342
330
  _rpcFsAppend(path: string, writerId: string, moduleId: string, operationId: string, bytes: Uint8Array | ArrayBuffer | number[], pid?: number): Promise<number>;
343
331
  _rpcFsAppendAck(writerId: string, moduleId: string, operationId: string, pid?: number): Promise<void>;
344
- _rpcFsTruncate(path: string, size: number, pid?: number): Promise<void>;
345
332
  _rpcHmrRelay(clientId: string | null, msg: string): Promise<void>;
346
- _rpcUnlink(path: string, pid?: number): Promise<void>;
347
333
  _rpcWriteBatch(payload: any, pid?: number): Promise<{
348
334
  inodes: number;
349
335
  chunks: number;
350
336
  }>;
351
- _rpcWriteBatchStream(stream: ReadableStream<Uint8Array>, mutationOwner?: string, pid?: number): Promise<WriteBatchStreamResult>;
352
337
  _rpcPutRegistryEntries(entries: any[]): Promise<{
353
338
  written: number;
354
339
  failed: number;
@@ -1 +1 @@
1
- {"version":3,"file":"nimbus-session.d.ts","sourceRoot":"","sources":["../../src/session/nimbus-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,eAAe,MAAM,uBAAuB,CAAC;AACzD;;;;;;GAMG;AAEH;;;;;;GAMG;AACH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,KAAK,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uDAAuD,CAAC;AACjG,OAAO,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAE5F,OAAO,EAAkC,KAAK,gBAAgB,EAAE,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAOhJ,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAE5E,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AA4BxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;AAwCnE,OAAO,EAAE,KAAK,uBAAuB,IAAI,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAiBzF,OAAO,EAAkC,KAAK,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAQpF,OAAO,KAAK,IAAI,MAAM,UAAU,CAAC;AAEjC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAK/F,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAO/C,OAAO,KAAK,aAAa,MAAM,mBAAmB,CAAC;AAkCnD,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,+BAA+B,EAC/B,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,EACtB,iCAAiC,EACjC,kCAAkC,GACnC,MAAM,cAAc,CAAC;AAMtB,OAAO,EAAE,8BAA8B,EAAE,MAAM,2CAA2C,CAAC;AAE3F;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAwBxD;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAkF7D;AAGD,KAAK,UAAU,GAAG,eAAe,CAAC,gBAAgB,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;AAE1E,qBAAa,aAAc,SAAQ,uBAAuB,CAAC,UAAU,CAAC;;IAGpE,gBAAgB,EAAE,eAAe,GAAG,IAAI,CAAQ;IAChD,OAAO,CAAC,YAAY,CAA8B;IAElD,IAAI,cAAc,IAAI,cAAc,CAGnC;IAEK,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAIvE,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAQzC,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAQ;IAClC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC7B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAQ;IAC3B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IACtC,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAC1C,oEAAoE;IACpE,oBAAoB,EAAE,oBAAoB,GAAG,IAAI,CAAQ;IACzD,IAAI,YAAY,IAAI,YAAY,GAAG,IAAI,CAEtC;IACD,oFAAoF;IACpF,mBAAmB,EAAE,GAAG,CAAQ;IAChC;;;;OAIG;IACH,cAAc,EAAE,cAAc,GAAG,IAAI,CAAQ;IAC7C,cAAc,EAAE,cAAc,GAAG,IAAI,CAAQ;IAC7C;;;;OAIG;IACH,UAAU,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAC5C,aAAa,EAAE,aAAa,GAAG,IAAI,CAAQ;IAC3C;;;;;OAKG;IACH,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IACnC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IACpC;;;;;;OAMG;IACH,UAAU,EAAE,UAAU,GAAG,IAAI,CAAQ;IACrC;;;;;OAKG;IACH,mBAAmB,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,IAAI,CAAQ;IAC1D;;;;mDAI+C;IAC/C,YAAY,CAAC,EAAE,GAAG,CAAC,SAAS,EAAE,OAAO,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;IACpE,cAAc,EAAE,cAAc,GAAG,IAAI,CAAQ;IAC7C,YAAY,EAAE,YAAY,GAAG,IAAI,CAAQ;IACzC,mFAAmF;IACnF,oBAAoB,EAAE,GAAG,CAAQ;IACjC;;;;OAIG;IACH,SAAS,EAAE,wBAAwB,CAAkC;IACrE,YAAY,EAAE,YAAY,CAAC;IAC3B;;;qDAGiD;IACjD,eAAe,EAAE,OAAO,CAAS;IACjC;yEACqE;IACrE,mBAAmB,EAAE,OAAO,CAAS;IAGrC;;;;;;OAMG;IAIH,WAAW,EAAE,yBAAyB,GAAG,IAAI,CAAQ;IACrD,2EAA2E;IAC3E,WAAW,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,gDAAgD;IAChD,aAAa,UAAS;IACtB,kEAAkE;IAClE,eAAe,UAAS;IACxB;;;;;;;OAOG;IACH,aAAa,EAAE,GAAG,CAAQ;IAG1B;;;;;;;;;OASG;IACH,YAAY,EAAE,MAAM,CAAK;IACzB,iBAAiB,EAAE,MAAM,CAAK;IAC9B,WAAW,EAAE,MAAM,CAAK;IACxB,gBAAgB,EAAE,MAAM,CAAK;IAE7B;;;;;;;;OAQG;IACH,IAAI,WAAW,IAAI,OAAO,CAKzB;IAGD;;;;;OAKG;IAIH,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAEjD;;;;;;;;;OASG;IACH,eAAe,EAAE,MAAM,CAAM;IAC7B,qEAAqE;IACrE,uBAAuB,UAAS;IAChC;;;;;OAKG;IACH,aAAa,EAAE,MAAM,CAAM;IAC3B;;;;OAIG;IACH,wBAAwB,UAAS;gBAErB,GAAG,EAAE,kBAAkB,EAAE,GAAG,EAAE,UAAU;IA+FpD,wBAAwB,IAAI,IAAI;IAIhC,eAAe,IAAI,IAAI;IAIvB,gBAAgB,IAAI,IAAI;IAIxB;;;;;;;;OAQG;IACG,KAAK,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAU3D;;;;;;;;;OASG;IACH,OAAO,CAAC,qBAAqB;IAM7B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAStB;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;;;;OAKG;IACH,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED;;;;;;;;OAQG;IACG,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA4B7D;;;;;OAKG;IACG,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAe/D;;;;;;OAMG;IACH,OAAO,CAAC,cAAc,CAAqC;IAE3D,OAAO,CAAC,aAAa;IAKrB,iEAAiE;IACjE,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,qBAAqB;IAIrD,8EAA8E;IAC9E,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKzC,YAAY,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IAIxD,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAChF,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IACzF,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IACxC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IACxG,0BAA0B,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU;IAGvF,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAClE,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IACnE,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAGvE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAGvF,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAGlF,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAGnE,SAAS,CACb,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,GAAG,CAAC,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,GACrC,OAAO,CAAC,IAAI,CAAC;IAGV,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAGzD,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAClG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACxE,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IACpE,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACpD,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IACjF,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAChE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACtE,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC5D,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAG5F,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAG1F,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAGxE,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAGlE,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAGlG,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAGpF,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAChE,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAGtG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAG/H,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1D,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAGvH,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAG/G,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAGpG,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAGzH,YAAY,CAChB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,EAAE,EAC1C,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,CAAC;IAGZ,eAAe,CACnB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC;IAGV,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACvE,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACjE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACrD,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACvF,oBAAoB,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAG/H,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACpF,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAClD,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IACxD,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IACxD,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAG5E,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAC9C,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IACpF,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAG9D,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7E,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1D,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC/C,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IACpE,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAG1F,iBAAiB,CACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,EAAE,EACf,QAAQ,CAAC,EAAE;QACT,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC1C,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACxC,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,GACA,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC;IAMlC,gBAAgB,wCAA+C;IAC/D,qBAAqB,2BAAgC,IAAI,CAAC,mBAAmB,KAAK,IAAI,GAAK;IAC3F,oBAAoB,IAAI;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE;IAG1C,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAA;KAAE,CAAC;IAGvE,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAA;KAAE,CAAC;IAGhE,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAGrE,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAG/F,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;IAKzE,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACpD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAA;KAAE,CAAC;IAC9E,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC/C,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAChD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAC9E,iBAAiB,CAAC,QAAQ,EAAE,MAAM;IAClC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAC9D,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAE3C,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM;;;;;IAG3C,SAAS,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,wBAAwB;;;;IAChE;;;;kCAI8B;IACxB,aAAa,IAAI,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,uBAAuB;IACzE,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,uBAAuB;IACjF,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,uBAAuB,GAAG;QAAE,QAAQ,CAAC,EAAE,YAAY,GAAG,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,GAAG,WAAW,CAAA;KAAE;IAGrL,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IAC9D,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IACjE,gBAAgB;;;;IAChB,iBAAiB;IACjB,eAAe,CAAC,GAAG,EAAE,MAAM;;;;IAC3B,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;IAC/C,mBAAmB,CAAC,GAAG,EAAE,MAAM;;;;IAC/B,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;;;;IACtE,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;;;;IAC7C,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;IAC1F,aAAa;IACb,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;IAK1F,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;IAG5G,YAAY;IACZ,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,SAAS;IAC9C,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,SAAS;;;;;IAC7C,oBAAoB,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;IAGtH,oBAAoB,CAAC,KAAK,EAAE,MAAM;;;;;IAGlC,gBAAgB,CAAC,IAAI,EAAE,MAAM;;;;IACnC,8EAA8E;IACxE,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM;IAInG,6GAA6G;IAC7G,yBAAyB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAG3D,kEAAkE;IAClE,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,QAAQ;IAI7C;;;;OAIG;IACG,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAU9E,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,IAAI,CAAC,EAAE,OAAO;IACpF,8FAA8F;IACxF,eAAe,CACnB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,OAAO,sBAAsB,EAAE,6BAA6B;IAI/D,WAAW,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,0BAA0B;IAGpE,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAC7C,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAC9C,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IACvH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAChC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE;IAC1D,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI;IAK7C,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IAa1C,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IAKvD;;;;;;OAMG;IAMH,eAAe,IAAI;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,SAAS,EAAE,OAAO,CAAC;QACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,SAAS,EAAE,OAAO,CAAC;KACpB;IAQD,gBAAgB,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAIvH,gBAAgB,IAAI;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAIvG,iBAAiB,IAAI,IAAI;IAIzB,cAAc,IAAI,SAAS;IAsC3B,8DAA8D;IAC9D,gBAAgB,EAAE,MAAM,CAAK;IAC7B,gEAAgE;IAChE,sBAAsB,EAAE,MAAM,CAAM;IAEpC;yDACqD;IACrD,QAAQ,EAAE,OAAO,0CAA0C,EAAE,YAAY,GAAG,IAAI,CAAQ;IAExF;;2EAEuE;IACvE,gBAAgB,EAAE,MAAM,CAAK;IAEvB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC;IAIlD,+EAA+E;IAC/E,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAItC,+EAA+E;IAC/E,gBAAgB,IAAI,iBAAiB;IAErC;;;;;;;OAOG;IACH,kBAAkB,IAAI,oBAAoB;IAE1C;;;;OAIG;IACH,qBAAqB,IAAI,cAAc;IAEvC;;;;OAIG;IACH,0BAA0B;IAE1B;;;;OAIG;IACH,WAAW,EAAE,GAAG,CAAQ;IACxB,cAAc,CAAC,CAAC,EAAE,GAAG;IAErB;;;;;OAKG;IACH,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,GAAG,GAAG,IAAI;IAEzD;;;OAGG;IACH,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS;IACzG,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;IAEnF;;;;;;OAMG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAUxC,WAAW,CAAC,EAAE,EAAE,SAAS,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAY9E;;;;OAIG;IACH,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAQ;IAK1C,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAE5C;;;;;;;;;OASG;IACH,cAAc;IAiER,gBAAgB,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7E,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhG,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/D,gFAAgF;IAChF,eAAe,IAAI,IAAI;IAIvB,0FAA0F;IAC1F,kBAAkB,IAAI,IAAI;CAG3B;AAKD,OAAO,EACL,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,sBAAsB,EACtB,4BAA4B,EAC5B,YAAY,GACb,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"nimbus-session.d.ts","sourceRoot":"","sources":["../../src/session/nimbus-session.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import * as runtimeServices from '../hosted/services.js';
2
2
  import { DurableObject as CloudflareDurableObject } from 'cloudflare:workers';
3
3
  import { SqliteVFS } from '@nimbus-sh/core/vfs/sqlite-vfs.js';
4
4
  import { SessionProcessSupervisor } from '@nimbus-sh/core/runtime/session-process-supervisor.js';
5
+ import { SqliteFilesystemAuthority } from '@nimbus-sh/core/runtime/filesystem-authority.js';
5
6
  import { PID_GEN_STRIDE } from '@nimbus-sh/core/runtime/process-table.js';
6
7
  import { CRED_KERNEL, CRED_SESSION_USER } from '@nimbus-sh/core/runtime/os-contracts.js';
7
8
  import { PortRegistry } from '@nimbus-sh/core/runtime/port-registry.js';
@@ -431,7 +432,8 @@ export class NimbusSession extends CloudflareDurableObject {
431
432
  ctx,
432
433
  env,
433
434
  notify: (line) => this._notifySession(line),
434
- requestLaunchTurn: (at) => this._scheduleLaunchTurn(at),
435
+ requestLaunchTurn: async (at) => { await this._scheduleLaunchTurn(at); },
436
+ filesystem: () => this.getFilesystemAuthority(),
435
437
  });
436
438
  // In `wrangler dev`, the outer Worker and this DO share a single
437
439
  // workerd process, so the `adoptCtxExports(ctx.exports)` call in the
@@ -665,6 +667,13 @@ export class NimbusSession extends CloudflareDurableObject {
665
667
  * Lazy: sqliteFs exists only after ensureSqliteFs().
666
668
  */
667
669
  _supervisorOps = null;
670
+ filesystemAuthority = null;
671
+ getFilesystemAuthority() {
672
+ this.ensureSqliteFs();
673
+ if (!this.sqliteFs)
674
+ throw new Error('Filesystem is not initialized');
675
+ return this.filesystemAuthority ??= new SqliteFilesystemAuthority(this.sqliteFs);
676
+ }
668
677
  supervisorOps() {
669
678
  if (!this._supervisorOps)
670
679
  this._supervisorOps = buildSessionSupervisorOps(this);
@@ -691,32 +700,16 @@ export class NimbusSession extends CloudflareDurableObject {
691
700
  }
692
701
  async _rpcStat(path, pid, cred) { return _rpc._rpcStat(this, path, pid, cred); }
693
702
  async _rpcLstat(path, pid, cred) { return _rpc._rpcLstat(this, path, pid, cred); }
694
- async _rpcHasLegacySymlinkUnder(path, pid) {
695
- return _rpc._rpcHasLegacySymlinkUnder(this, path, pid);
696
- }
697
- async _rpcUtimes(path, atimeMs, mtimeMs, pid) {
698
- return _rpc._rpcUtimes(this, path, atimeMs, mtimeMs, pid);
699
- }
700
703
  async _rpcChmod(path, mode, pid, cred) {
701
704
  return _rpc._rpcChmod(this, path, mode, pid, cred);
702
705
  }
703
- async _rpcAccess(path, mode, pid) {
704
- return _rpc._rpcAccess(this, path, mode, pid);
705
- }
706
- async _rpcChown(path, uid, gid, pid, options) {
707
- return _rpc._rpcChown(this, path, uid, gid, pid, options);
708
- }
709
706
  async _rpcSetUmask(mask, pid) {
710
707
  return _rpc._rpcSetUmask(this, mask, pid);
711
708
  }
712
709
  async _rpcReaddir(path, pid, cred) { return _rpc._rpcReaddir(this, path, pid, cred); }
713
710
  async _rpcExists(path, pid, cred) { return _rpc._rpcExists(this, path, pid, cred); }
714
711
  async _rpcMkdir(path, pid, cred) { return _rpc._rpcMkdir(this, path, pid, cred); }
715
- async _rpcRmdir(path, pid) { return _rpc._rpcRmdir(this, path, pid); }
716
712
  async _rpcRename(from, to, pid, cred) { return _rpc._rpcRename(this, from, to, pid, cred); }
717
- async _rpcReadlink(path, pid) { return _rpc._rpcReadlink(this, path, pid); }
718
- async _rpcSymlink(target, path, pid) { return _rpc._rpcSymlink(this, target, path, pid); }
719
- async _rpcFsRevision(path, pid) { return _rpc._rpcFsRevision(this, path, pid); }
720
713
  async _rpcFsAcquire(epoch, cursor, pid) {
721
714
  return _rpc._rpcFsAcquire(this, epoch, cursor, pid);
722
715
  }
@@ -735,20 +728,9 @@ export class NimbusSession extends CloudflareDurableObject {
735
728
  async _rpcWsClose(id, code, reason, pid) {
736
729
  return _rpc._rpcWsClose(this, id, code, reason, pid);
737
730
  }
738
- async _rpcFsOpen(path, flags, pid) { return _rpc._rpcFsOpen(this, path, flags, pid); }
739
- async _rpcFsRead(handleId, offset, length, pid) {
740
- return _rpc._rpcFsRead(this, handleId, offset, length, pid);
741
- }
742
- async _rpcFsWrite(handleId, offset, bytes, pid) {
743
- return _rpc._rpcFsWrite(this, handleId, offset, bytes, pid);
744
- }
745
- async _rpcFsClose(handleId, pid) { return _rpc._rpcFsClose(this, handleId, pid); }
746
731
  async _rpcFsReadRange(path, offset, length, pid, cred) {
747
732
  return _rpc._rpcFsReadRange(this, path, offset, length, pid, cred);
748
733
  }
749
- async _rpcFsReadRangeUncached(path, offset, length, pid) {
750
- return _rpc._rpcFsReadRangeUncached(this, path, offset, length, pid);
751
- }
752
734
  async _rpcFsReadBatch(requests, pid) {
753
735
  return _rpc._rpcFsReadBatch(this, requests, pid);
754
736
  }
@@ -761,13 +743,8 @@ export class NimbusSession extends CloudflareDurableObject {
761
743
  async _rpcFsAppendAck(writerId, moduleId, operationId, pid) {
762
744
  return _rpc._rpcFsAppendAck(this, writerId, moduleId, operationId, pid);
763
745
  }
764
- async _rpcFsTruncate(path, size, pid) { return _rpc._rpcFsTruncate(this, path, size, pid); }
765
746
  async _rpcHmrRelay(clientId, msg) { return _rpc._rpcHmrRelay(this, clientId, msg); }
766
- async _rpcUnlink(path, pid) { return _rpc._rpcUnlink(this, path, pid); }
767
747
  async _rpcWriteBatch(payload, pid) { return _rpc._rpcWriteBatch(this, payload, pid); }
768
- async _rpcWriteBatchStream(stream, mutationOwner, pid) {
769
- return _rpc._rpcWriteBatchStream(this, stream, mutationOwner, pid);
770
- }
771
748
  async _rpcPutRegistryEntries(entries) { return _rpc._rpcPutRegistryEntries(this, entries); }
772
749
  async _rpcRecordCacheStats(events) { return _rpc._rpcRecordCacheStats(this, events); }
773
750
  async _rpcStdout(pid, data) { return _rpc._rpcStdout(this, pid, data); }
@@ -778,7 +755,7 @@ export class NimbusSession extends CloudflareDurableObject {
778
755
  _emitShellExecDone(pid, cmd, code, durationMs) { return _rpc._emitShellExecDone(this, pid, cmd, code, durationMs); }
779
756
  _reportExternalExit(pid, code, reason) { return _rpc._reportExternalExit(this, pid, code, reason); }
780
757
  // Misc supervisor RPC
781
- async _rpcPrefetch(cwd, entryCode) { return _rpc._rpcPrefetch(this, cwd, entryCode); }
758
+ async _rpcPrefetch(cwd, entryCode) { return (await _rpc._rpcPrefetch(this, cwd, entryCode)); }
782
759
  async _rpcRegisterPort(pid, port) { return _rpc._rpcRegisterPort(this, pid, port); }
783
760
  async _rpcUnregisterPort(port) { return _rpc._rpcUnregisterPort(this, port); }
784
761
  async _rpcRouteLoopback(port, request) { return _rpc._rpcRouteLoopback(this, port, request); }
@@ -835,7 +812,7 @@ export class NimbusSession extends CloudflareDurableObject {
835
812
  }
836
813
  async _rpcInstallRuntime(spec, options) { return _programmatic.rpcInstallRuntime(this, spec, options); }
837
814
  async _rpcEnsureRuntimes(specs, options) { return _programmatic.rpcEnsureRuntimes(this, specs, options); }
838
- async _rpcListRuntimes() { return _programmatic.rpcListRuntimes(this); }
815
+ async _rpcListRuntimes() { return (await _programmatic.rpcListRuntimes(this)); }
839
816
  async _rpcListProcesses() { return _programmatic.rpcListProcesses(this); }
840
817
  async _rpcKillProcess(pid) { return _programmatic.rpcKillProcess(this, pid); }
841
818
  async _rpcWriteProcessInput(pid, data) { return _programmatic.rpcWriteProcessInput(this, pid, data); }
@@ -1 +1 @@
1
- {"version":3,"file":"port-capability.d.ts","sourceRoot":"","sources":["../../src/session/port-capability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"port-capability.d.ts","sourceRoot":"","sources":["../../src/session/port-capability.ts"],"names":[],"mappings":"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"}