Browser Runtime

The browser runtime is the human-facing proof surface for TinyRustLM. It is not a remote chat service. It is a local static app that loads local project artifacts and calls the Rust/WASM runtime.

What loads in the browser

The browser shell includes:

Runtime controls

The browser app can expose:

Local-only privacy boundary

The app is designed around local files and same-origin fetches. It should not silently call remote inference APIs. It should not download hidden model files from external hosts. It should not add telemetry, analytics, or remote logging unless the project explicitly changes that boundary.

Browser-owned state versus Rust-owned state

The browser owns UI state and transcript rendering. Rust owns runtime state, model state, adapter apply state, diagnostics, and generation boundaries.

This matters because Clear should only clear browser transcript history, while Reset should clear runtime context/output state. Mixing those two actions would make diagnostics less trustworthy.

Failure states are product behavior

The browser app should visibly handle:

These are not polish issues. They are the evidence that the runtime boundary is real.