Skip to main content
Version: 0.1.0-alpha.5 (alpha)

Browser boundary validation observations

Date: 2026-09-19. Tested code revision: 295895ca9d02a4c31225640b7521f3c118ff3b51. This is bounded local evidence for same-origin-v1, not a production security certification or an issue-closure decision.

Stack and environment​

  • Development base: 9c271713276b124aed39921cc70b6c2745c2ca47, including the reviewed response-cache and neutral network changes.
  • Explicit asset dependency: PR #336 head 8dd265410acad8f69ec51a94a276ec0a28b5a94c. Its independent owner/accounting/drain implementation is retained, not replaced or duplicated by this work.
  • Rust 1.97.1, Linux x86-64, isolated 2-CPU/8-GiB validation container; development/test debug information and incremental compilation disabled. The browser work uses a separate Cargo target directory from asset integration.
  • Controlled SSR build: Angular 22.1.6, Node 24.19.0. Real browser: Chromium 153.0.8010.47 on Debian 12. Browser HTML is Node-rendered, not Wasm-rendered; component-response tests execute a separate real Wasm fixture.

Executed checks​

CheckObserved result
cargo test -p latent-ingress --locked22 unit and 16 integration tests passed
cargo test -p latentd --lib --all-features --locked standalone::http30 passed; 8 explicit prerequisite-gated ignores
Real actual_http_component ignored slice with freshly built/validated fixtureAll 6 passed, including personalized cache and unsafe response rejection
Real actual_browser_boundary ignored slice1 passed; live ingress, no response mocking
cargo clippy -p latentd --all-targets --all-features --locked --no-deps -- -D warningsPassed
cargo fmt --all --check and git diff --checkPassed
node --test tools/tests/browser_hydration.test.mjsAll 4 passed
HTTP schema, CI-profile and Cargo-artifact Python testsAll 35 passed
python tools/validate_docs.pyNo documentation/link errors

The ordinary HTTP slice's ignored tests were not counted as passes. Six real component tests and the browser test were subsequently executed explicitly. The remaining Angular-component-specific HTTP test was not executed locally; the existing renderer CI owns that separate prerequisite and execution path. An additional ingress-wide strict-Clippy experiment reported inherited cache lint findings; the maintained strict latentd scope above passes. No unrelated cache-lint rewrite is included.

Compact redacted receipts​

The live browser's receipt contains no tokens, cookies, tenant payloads or ports:

{"browser":"153.0.8010.47","liveSharedIngress":true,"controlledNodeSsr":true,"componentRenderClaimed":false,"originalDomReused":true,"navigationHydrated":true,"escapedDataRoundTrip":true,"inlineAndRemoteScriptsBlocked":true,"baseOverrideBlocked":true,"wrongScriptMimeBlocked":true,"sameOriginPostReachedMethodPolicy":true,"errors":0}

Observed SHA-256 identities for the controlled outputs:

ArtifactSHA-256
Browser client16b79f6238c5b80b2acc0bb1ef4b8132404d5b435b179323e6c9fa4a58d1311f
Home SSR HTML before immutable-client URL substitution16eb54cf7c11065898a1f3695c74e93fb8c18bde5ac0f5ea3e2c55d12aafee36
Navigation SSR HTML before substitution254d40ab69a8bdcb8fcec6eae1ca811e79ae36486e82109d2a1f852544834359
Real public web test component751f12c488d9374def6f18d5db971f425063cc0d43a6b9243f29cd9022a17628

The two-stage client/page publication is a controlled way to obtain an actual immutable script URL without a self-referential content digest. It is not proof of a production SSR/client release cutover. The asset fixture injects an explicit test authority; root-container Chromium disables its OS sandbox. Neither choice is presented as cryptographic admission or hostile-code containment evidence.

Acceptance boundaries at this checkpoint​

At this checkpoint, exact-head PR CI and parent review were still required. The validation run performed no workflow-scope bypass, issue closure or remote merge. Later Angular reference qualification records the complete signed application, Wasm SSR/client and protected T1 integration; it does not change this earlier Node-rendered browser receipt. No reconnect-flood fairness, arbitrary HTML sanitization, automatic secret classification or browser user-authentication guarantee is claimed.