From ae310a207534b33b7321dd2b9f423a73b1969159 Mon Sep 17 00:00:00 2001 From: Gabriel Schneider Date: Mon, 14 Sep 2026 14:28:15 -0300 Subject: Add reusable HTTP transport, serial gateway, and WASM file browser --- docs/validation.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'docs/validation.md') diff --git a/docs/validation.md b/docs/validation.md index acc35c3..98b73d6 100644 --- a/docs/validation.md +++ b/docs/validation.md @@ -71,3 +71,33 @@ passed earlier, but later full reruns encountered hard-coded /tmp shell-fixture creation failures from the machine's quota. The final protocol and transport checks were run separately. The `--fuzz` compiler-runner limitation is described above. Firmware hardware behavior and non-Linux native transports were not run. + +## HTTP transport and browser gateway (2026-09-14) + +`zig build test http-test transport-test` passed **33 tests** in both Debug and +ReleaseSafe: 24 protocol/session, 6 HTTP framing/handshake, and 3 stream transport +tests. `zig build e2e -Doptimize=ReleaseSafe` passed **22 scenarios**, using actual +Chromium, the shipped WASM, native cloud9 clients, and a pinned local go9p server. +Coverage includes binary downloads, mobile layout, multi-frame reads/writes, +verified HTTPS and certificate rejection, concurrent tags, Unix sockets, PTY +serial transport, serial lease cleanup, and connection deadlines. The serial +fixture is a pseudo-terminal; no physical UART or ESP32 hardware was exercised. +HTTP/3 is not implemented or tested. + +The [HTTP E2E report](results/http-e2e.json) records the scenarios and byte counts. +The run's screenshots and TLS fixtures remain in `.zig-cache/e2e-3HAs6G/`. +`zig build -Doptimize=ReleaseSafe` installs the standalone `cloud9-http` binary; +`zig build web -Doptimize=ReleaseSafe` also installs the separate browser assets. +See [HTTP usage and ownership](http.md) for the reusable API and runnable gateway. + +The cgit-inspired UI update passed **27 E2E scenarios**, adding automatic attach, +configured user/export defaults, bookmarkable file URLs, browser back/forward, +and automatic reconnection after expiry while preserving unsaved edits. The +latest screenshots are in `.zig-cache/e2e-IYt96E/` and the tracked HTTP report +has been updated. + +The clean-URL update passed **32 E2E scenarios**. File routes now occupy ordinary +URL paths and gateway endpoints use `/_cloud9/`. Added checks cover per-component +encoding, direct reloads, filenames matching asset names, an upstream `_cloud9` +directory, and invalid-URL rejection with navigation recovery. Latest artifacts: +`.zig-cache/e2e-YIV80o/`. Both the embedded binary and standalone web assets built. -- cgit v1.3