Skip to content

hyperpolymath/panll

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

PanLL eNSAID

Version Completion PMPL-1.0-or-later Tests RSR Compliant

Environment for NeSy-Agentic Integrated Development

PanLL (pronounced "parallel") is a Human-Things Interface (HTI) designed to facilitate a "Binary Star" co-orbit between a Human Operator and a Neurosymbolic Machine.

Vision

This is not a passive text editor. It is an active, synchronous environment that manages Cognitive Ergonomics and kills Inertia.

Architecture

The Three-Pane Parallel Layout

Pane-L (Symbolic)

Strict logic, types, and constraints. "The Law" that governs neural inference.

Pane-N (Neural)

Streaming "Inference Manifold" showing the Agent’s internal monologue and OODA loop.

Pane-W (World)

Central shared canvas (The Barycentre) where results manifest.

Core Systems

  • Anti-Crash Library: Logical Circuit Breaker preventing unvalidated neural output from reaching the Barycentre

  • Vexometer: Real-time friction/cognitive load monitoring with anti-inflammatory UI adjustments

  • Contractiles: Adaptive state contracts between Operator and Machine

  • Feedback-O-Tron: Community-driven performance reporting and constraint suggestions

Technical Stack

Layer Choice Why This

Frontend

ReScript + TEA (The Elm Architecture)

Actually type-safe — no any escape hatch, exhaustive pattern matching on every variant, and the compiler catches state bugs that TypeScript structurally cannot. We tried TypeScript early on; the as casts and Partial<T> workarounds in a 14-panel stateful app were untenable. See ReScript docs for the sound type system that made this possible.

Backend

Rust + Tauri 2.0

5 MB binary vs 100+ MB Electron. No garbage collector pauses during real-time panel updates. The notify crate handles filesystem watching across Linux/macOS/Windows without the cross-platform pain that Go’s fsnotify brings (goroutine leak on recursive watches, anyone?). See Tauri v2.

Runtime

Deno (tests, build orchestration)

No node_modules black hole — URL imports, built-in TypeScript support for glue code, secure-by-default permissions model. npm is only used for the ReScript compiler itself (pending upstream Deno support). See Deno.

Testing

Deno.test (97 JS) + cargo test (12 Rust)

Built into the runtime, no test framework dependency to manage. Jest/Vitest config files are their own maintenance burden; Deno.test just works.

Styling

Tailwind CSS 4.x

Utility-first, purged in production. Keeps panel styling consistent across 14 overlays without CSS specificity wars.

Middleware

Elixir/BEAM (beam/panll_beam)

BEAM’s "let it crash" supervision trees are exactly right for a multi-panel environment where individual backend connections can fail without taking down the whole surface. We evaluated Go for this layer — the error handling verbosity and lack of pattern matching made the routing logic twice as long and half as readable.

Verification

Idris2 ABI (planned) + Echidna

Dependent types prove interface correctness at compile time — not "we hope the types are right" but "the compiler won’t let you ship wrong types." See Idris2.

Data Processing

Julia (batch scripts, analysis)

When you need actual numeric performance without fighting Python’s GIL or rewriting everything in C extensions. Multiple dispatch means the same function signature handles different data shapes without the class hierarchy gymnastics that Python’s duck typing hides until runtime. See Julia.

Development

PanLL uses Deno for runtime, testing, and build orchestration. ReScript compilation uses the symlinked compiler in node_modules.

# Compile ReScript modules
npx rescript build

# Watch ReScript sources during development
npx rescript build -w

# Run tests (97 JS tests + 12 Rust tests)
deno task test

# Watch mode for tests
deno task test:watch

# Development mode (Tailwind + static dev server + Tauri hot reload)
deno task dev

# Build Tailwind CSS
deno task css:build

# Full production build
deno task build

Quick Start

# 1. Compile ReScript
npx rescript build

# 2. Run tests to verify
deno task test

# 3. Start development server
deno task dev

Documentation

  • TEA Architecture Guide — Comprehensive documentation for The Elm Architecture (TEA) implementation including Tea_Cmd, Tea_Sub, Tea_Vdom, and Tea_App modules with testing guide and best practices

Event-Chain Import (panic-attack)

PanLL can ingest the PanLL event-chain JSON exported by panic-attack and surface it in Pane-W for MVP timeline review. Paste the JSON export into the Event Chain panel and click Import JSON, or use Load File to open a saved export.

BEAM API Modes

The optional BEAM service (beam/panll_beam) supports all three API styles as runtime-selectable options:

  • HTTP via Bandit/Plug (/healthz, /v1/status)

  • GraphQL via Absinthe (/graphql, /graphiql)

  • gRPC via panll.v1.StatusService/GetStatus

Select protocols with PANLL_BEAM_APIS:

# defaults to all in non-test env
export PANLL_BEAM_APIS="http,graphql,grpc"

For containerized runtime orchestration (Chainguard base + Cerro Torre pack/verify + selur-compose stack), see runtime/README.adoc.

Local Dev Server

deno task dev starts a static server for public/ on http://localhost:8000 to satisfy the Tauri devUrl.

Keyboard Shortcuts

Ctrl+Shift+L

Toggle Pane-L (Symbolic Mass)

Ctrl+Shift+N

Toggle Pane-N (Neural Stream)

Ctrl+Shift+B

Toggle Pane-W (Task Barycentre)

Ctrl+Shift+W

Toggle Pane-W (alternate binding)

Licence

PMPL-1.0-or-later

Status

v0.1.0-alpha (92% complete)

✅ Complete TEA implementation (Model-Update-View) ✅ All UI components functional (PaneL, PaneN, PaneW, Vexometer, FeedbackOTron) ✅ Tauri 2.0 backend with 8 working commands ✅ 109 tests passing (97 JS via Deno.test + 12 Rust via cargo test) ✅ npm→Deno migration complete ✅ Full ReScript compilation (180ms, 0 warnings) ✅ Anti-Crash token gating + backend validation hooks ✅ Event-chain import from panic-attack (paste + file) with persistence ✅ Security tool integration (panic-attack ambush, timeline import) ✅ Feedback report types wired to backend ✅ State persistence (localStorage auto-save) ✅ ARIA accessibility attributes across all components ✅ Keyboard shortcuts wired (Ctrl+Shift+L/N/B/W + vexation polling) ✅ Tailwind CSS 4.x build pipeline (Deno) ✅ BEAM API scaffold (HTTP/GraphQL/gRPC)

Next: v0.1.0 release preparation

Architecture

See TOPOLOGY.md for a visual architecture map and completion dashboard.

About

PanLL eNSAID - Environment for NeSy-Agentic Integrated Development

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors