Blackbox AIDocs

Blackbox Viewer#

The Viewer is a separate packaged desktop application that opens directly onto Ridgeport's semantic Plan. It lives in its own package with its own dependencies.

Before you start#

  • A checkout of the repository.
  • Node.js as for the main application.
  • For native packaging, a working Tauri toolchain for your platform.

Run the Viewer in development#

cd blackbox-viewer
npm install
npm run dev

The browser preview is at http://127.0.0.1:1420.

What the preview actually shows#

The preview is a bounded local fixture, visibly labelled Preview data. It is not a live world connection.

Important

No live Viewer API, pairing or grant transport, or deployment exists. The Viewer is a working packaged fixture substrate. Do not present anything it displays as live world state.

When a live transport does arrive, the recorded initial design is conditional full-snapshot polling rather than streaming.

Package a native build#

npm run tauri build -- --bundles nsis

This produces an installer for Windows. The Viewer includes recovery handling for a destructive WebView2 browser-process failure, and its rendering has been exercised at 320px, 1080p and 4K.

The publication boundary#

What the server is willing to publish to a Viewer is governed by a deny-by-default scene schema, projector and publication boundary. In practice that means:

Property Effect
Deny by default A field is not published unless it is explicitly allowed
Immutable policy and key snapshots The audience policy in force is captured, not re-derived later
Safe keyed identifiers Raw internal identifiers are not published
Truth provenance Published values carry where they came from
Adversarial filtering Secrets and raw identifiers are filtered as a distinct pass
Size cap An exact 100 KiB limit on a published scene

The size cap is a hard boundary, not a target. A scene that would exceed it is refused rather than truncated silently.

Verify#

  • The development preview loads and is labelled Preview data.
  • A packaged build installs and opens onto the Plan.
  • Resizing between narrow and wide layouts does not break the Plan view.

If it does not work#

Symptom Check Recovery
The preview shows no live data It is a fixture by design Expected; there is no live transport yet
The packaged build fails The Tauri toolchain for your platform Native packaging needs more than Node
The Viewer window goes blank A WebView2 browser-process failure The Viewer has recovery handling for this; reopen and report if it recurs
A scene fails to publish Whether it exceeds 100 KiB The cap is exact and refuses rather than truncates