summaryrefslogtreecommitdiff
path: root/docs/cloud9.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/cloud9.md')
-rw-r--r--docs/cloud9.md22
1 files changed, 22 insertions, 0 deletions
diff --git a/docs/cloud9.md b/docs/cloud9.md
new file mode 100644
index 00000000..db547afc
--- /dev/null
+++ b/docs/cloud9.md
@@ -0,0 +1,22 @@
+# cloud9 integration
+
+The sibling `../cloud9` package owns the base 9P2000 wire format, client and server
+connections, and TCP/Unix/QUIC transports. `build.zig.zon` uses the local package
+path so both checkouts can be developed together.
+
+`src/9p.zig` remains the adapter between cloud9 requests and Pardes filesystem
+operations. Mounting, Unix namespace discovery and permissions, the editor event
+loop, connection limits, and exported tree policy remain here. `src/9p_quic.zig`
+selects the existing `pardes-9p` ALPN for cloud9's optional OpenSSL transport.
+The snapshot client and standalone protocol/GPIO tests import the same module.
+The separate `05-zig-p4` build also supplies cloud9 for the GPIO firmware entry.
+
+Run `zig build 9p-test` for the filesystem adapter and
+`zig build 9p-io-test -Dquic=true` for native transport/client integration. Run cloud9's `zig build test`,
+`transport-test`, `quic-test -Dquic=true`, `fuzz`, and `differential` steps for the
+shared implementation. See cloud9's `docs/validation.md` for recorded runs and
+known test-environment limits.
+
+Invalid framing now terminates a server connection. Cloud9 also checks reply
+counts and reserves tags until flush completion. Client metadata is slightly
+larger to track those reservations, and its bounds tests reflect that fixed cost.