Login
View Ticket
Login
Ticket Hash: 27ca3ef24768bdc5f71a61a4aa777ea8b139d817
Title: Lab: specify LabDoc and render/run protocols
Status: Active Type: Feature_Request
Severity: Normal Priority: High
Subsystem: lab Resolution:
Last Modified: 2026-09-20 14:42:42
51.7 days ago
Created: 2026-08-25 20:23:25
77.5 days ago
Version Found In:
Description:
Stage 0 architecture for the Lab wiki.

Define a versioned LabDoc cell envelope and two protocol profiles: 1. lab.render/1 for deterministic trusted rendering with no filesystem, network, clock, randomness, subprocess, or host-code capability. 2. lab.run/1 for arbitrary code compiled to WebAssembly and run with explicit WASI-style capabilities and resource limits.

Specify renderer identity/digest, source and dependency digests, MIME-safe block outputs, diagnostics, event records, artifact references, cache keys, compatibility/version negotiation, and failure semantics. The output allowlist must initially exclude active HTML and JavaScript.

Acceptance: - Protocol examples cover Markdown, math, GPCR, stdout, SVG/PNG, diagnostics, and cached results. - Pure rendering and executable cells cannot be confused by a producer or consumer. - The design identifies which data is versioned in Fossil and which data is runtime-only. - Open user decisions are recorded on the Lab wiki.