This file backs every factual claim in README.adoc with code paths and honest caveats. Read it if you are doing due diligence on whether the story matches the code.
A practical cognitive-relief layer: reducing friction, maintaining context, and making hard work less punishing.
- How this is implemented
-
The four-pane layout (A/L/N/W) separates ambient context, symbolic constraints, neural reasoning, and active work—reducing context-switching by design. The
Vexometermonitors interaction friction and adjusts UI density. TheAntiCrashlibrary gates unvalidated neural output, preventing cascading confusion.Contractilesnegotiate operator/machine autonomy boundaries. - Caveat
-
"Cognitive relief" is a design intent, not a measured psychological guarantee. The mechanisms (Vexometer, AntiCrash, Contractiles) provide the infrastructure for friction reduction. Whether they achieve cognitive relief for a specific user, task, or neurosymbolic agent is an empirical question. We do not have controlled user studies; we have architectural decisions aligned with cognitive-ergonomic principles.
Actually type-safe — no any escape hatch, exhaustive pattern matching on every variant, and the compiler catches state bugs that TypeScript structurally cannot.
- How this is implemented
-
The frontend is written in ReScript using The Elm Architecture (TEA). ReScript’s type system is sound by default; it lacks TypeScript’s
anytype and structural unsoundness. Every UI variant is matched exhaustively. Build produces 0 warnings (deno task res:buildin 180ms). Source:src/(ReScript modules). - Caveat
-
Soundness is relative to ReScript’s type system. It guarantees the UI state machine cannot enter an ill-typed state, but it does not prove the business logic of the neurosymbolic interaction correct. That is Typell’s job (planned).
_5 MB binary vs 100+ MB Electron. No garbage collector pauses during real-time panel updates._
- How this is implemented
-
The backend is Rust (
src-gossamer/) using Gossamer (WebKitGTK) for the webview shell. Rust’s ownership model eliminates GC. Gossamer compiles to a ~5 MB binary. Filesystem watching uses thenotifycrate. - Caveat
-
The 5 MB figure is the Rust binary; the full installation includes WebKitGTK dependencies (provided by the host OS or container). Linux is the primary target; macOS and Windows require WebKitGTK availability. Gossamer is actively maintained but less battle-tested than Electron.
_`cargo test` (285 Rust); the JS suite under tests/ waits on the AffineScript port (#148)_
- How this is implemented
-
cargo test --locked --lib — --test-threads=1runs the Rust suite: 285 tests across the backend modules insrc-gossamer/src/(panel backends, service registry, settings, identity, coprocessor FFI loading, filesystem watching). It runs serially because several tests set process-wide environment variables. CI runs it on every PR. The JS suite undertests/is not run: 140 of its 143 files import compiled ReScript output (src/*/.res.js) that #107 removed, and #108 removeddeno.json. It returns against the AffineScript frontend under #148. - Caveat
-
These are integration and unit tests, not formal proofs. They verify component behavior, not system-wide soundness. The Typell integration (when wired) will add formal verification for Pane-L constraints.
_No node_modules black hole — URL imports, built-in TypeScript support for glue code, secure-by-default permissions model._
- How this is implemented
-
deno.jsonconfigures the build. ReScript and Tailwind run throughnpm:specifiers without apackage.jsonor directnpmCLI invocation. All imports are URL-based or managed specifiers. - Caveat
-
The
npm:specifier mechanism does hit the npm registry for ReScript and Tailwind packages. The "no node_modules" claim means no localnode_modulesdirectory is materialised in the repo; Deno manages the cache internally.
_PanLL can ingest PanLL event-chain JSON exported by panic-attack and surface it in Pane-W for MVP timeline review._
- How this is implemented
-
Pane-W includes an Event Chain panel with "Import JSON" (paste) and "Load File" (filesystem) handlers. The imported JSON is parsed, validated, and surfaced as a timeline. Persistence via localStorage.
- Caveat
-
The import validates JSON structure, not the semantic truth of the event chain. Maliciously crafted event chains will render but may not represent actual security events.
|
Caution
|
Typell is not wired. Pane-L currently uses local type checking. The Typell JSON-RPC integration for dependent, linear, and session type verification is designed but not implemented. |
|
Caution
|
BEAM API is scaffolded. HTTP, GraphQL, and gRPC endpoints exist for health checks and status. Full query validation through BEAM is deferred. |
|
Caution
|
No formal cognitive-ergonomic validation. The Vexometer measures interaction friction (timing, error rates, undo frequency). It does not measure cognitive load directly (no EEG, no eye tracking). The mapping from Vexometer readings to "cognitive relief" is a hypothesis, not a validated model. |
|
Caution
|
v0.2.0, not v1.0.0. PanLL is a connected workbench, not a production release. APIs, panel layouts, and state contracts may change. |
| Path | Proves / Implements |
|---|---|
|
4-pane UI, TEA architecture, Anti-Crash, Vexometer, Contractiles |
|
Gossamer webview shell. 36 IPC commands are registered in |
|
BEAM middleware scaffold (HTTP/GraphQL/gRPC) |
|
Build orchestration (no |
|
System architecture map and completion dashboard |
|
DD-001 to DD-018 (architectural decisions) |
abc def ghi jkl mno pqr stu