Glossary
Quick reference for terms used throughout the documentation.
Core Concepts
| Term | Definition |
|---|---|
| CRDT | Conflict-free Replicated Data Type — a data structure that can be merged from any device without conflicts. |
| Loro | The Rust CRDT library used by Thumper-Run for document state (Map, List, Text, Tree). |
| Document | A CRDT container with a unique ID. Settings, app state, and reviews are all documents. |
| Manifest | A YAML file (.thumper.yaml, .model.yaml, .pack.yaml) that defines how to install and run an app or model. |
| Pack | A collection of model manifests bundled together for a specific use case. |
| Model | A neural network weights file (safetensors, GGUF, ONNX, etc.) used by AI apps. |
| Checkpoint | A saved model state at a specific training step. Often used interchangeably with "model weights". |
| Operation | A single CRDT change (insert, delete, update). Operations are the unit of sync. |
| Merge | Combining CRDT operations from two devices into a consistent state, automatically and without conflicts. |
| Conflict-free | CRDTs guarantee all replicas converge to the same state regardless of operation order. |
| Loro | Rust CRDT library powering Thumper’s sync engine. Provides JSON-like document structure with automatic conflict resolution. |
| Manifest Lifecycle | The progression from authoring a .thumper.yaml through validation, catalog submission, review, and publication. |
Security & Encryption
| Term | Definition |
|---|---|
| E2EE | End-to-End Encryption — a security property in which only authorized endpoints hold content-decryption keys. Private E2EE is planned, not a current Thumper-Run release guarantee. |
| BeeKEM | A group key agreement protocol based on CGKA that informs Thumper-Run’s planned private multi-device encryption design. |
| CGKA | Continuous Group Key Agreement — the protocol family for evolving group encryption keys. BeeKEM is the planned protocol; MLS and TreeKEM are prior art. |
| Epoch | A key-rotation generation in a group encryption protocol. Thumper-Run does not currently guarantee epoch changes for released sync workflows. |
| Forward Secrecy | The goal that compromise of current keys does not expose earlier content. This remains planned for Thumper-Run sync workflows. |
| Biscuit | A capability-based authorization token used for path-based access control in sync modes 2+. |
| Rauthy | The OIDC identity provider used for optional account login (Google, GitHub). |
| OIDC | OpenID Connect — an identity layer on OAuth 2.0 used for single sign-on. |
| PKCE | Proof Key for Code Exchange — prevents authorization code interception in OAuth flows. |
| Recovery Phrase | A mnemonic used for supported identity or key recovery. Its availability and recovery scope depend on the product build and workflow. |
| CGKA (Continuous Group Key Agreement) | A protocol family for managing group encryption keys as members join and leave. It informs the planned BeeKEM design. |
| Epoch | A key-rotation boundary in BeeKEM. Thumper-Run’s epoch and forward-secrecy guarantees remain planned. |
Models & AI
| Term | Definition |
|---|---|
| VRAM | Video RAM — GPU memory. Determines the largest model you can run. |
| Quantization | Reducing model precision (e.g., fp16 → q4) to use less memory at slight quality cost. |
| Inference | Running a model to generate output (images, text, audio) from input. |
| LoRA | Low-Rank Adaptation — a small add-on file that modifies model behavior without retraining. |
| VAE | Variational Autoencoder — the encoder/decoder that converts images to/from latent space in diffusion models. |
| GGUF | A quantized model format for CPU/GPU inference via llama.cpp. Common for LLMs. |
| Safetensors | A safe, fast model format that prevents arbitrary code execution (unlike pickle-based .pt files). |
| ONNX | Open Neural Network Exchange — a portable format for running models across different frameworks. |
| FP16 / BF16 | 16-bit floating point formats. FP16 has higher precision but overflows on some AMD GPUs; BF16 is safer. |
| Safetensors | Safe model file format by HuggingFace. Cannot execute arbitrary code, unlike pickle-based .pt/.pkl files. |
| MIOpen | AMD’s GPU-accelerated library for deep learning primitives. Requires a one-time warm-up (Find-DB) on first run. |
| comgr | AMD’s Compiler for Machine-level GPU IR. Cached at ~/.cache/comgr/ (~650 MB). Used by ROCm for kernel compilation. |
| Find-DB | MIOpen’s benchmark database that stores optimal algorithm choices per GPU. Located at ~/.config/miopen/. |
| TheRock | AMD’s nightly ROCm distribution with newer GPU support (e.g., gfx1150). Ships pre-built PyTorch wheels. |
| VRAM Tier | Classification of GPU memory for workload planning: Low (4–6 GB), Medium (8–12 GB), High (16–24 GB), Ultra (32+ GB). |
GPU & Hardware
| Term | Definition |
|---|---|
| CUDA | NVIDIA's GPU compute platform. Required for NVIDIA GPUs. |
| ROCm | AMD's GPU compute platform. Required for AMD discrete and APU GPUs. |
| MIOpen | AMD's deep learning library (similar to cuDNN). Requires a "find database" warmup on first run. |
| oneAPI | Intel's GPU compute platform. Used for Intel Arc GPUs. |
| MPS | Metal Performance Shaders — Apple's GPU backend for M-series chips. |
| NPU | Neural Processing Unit — a dedicated AI accelerator chip (e.g., AMD XDNA, Intel NPU). |
| Health Check | An HTTP endpoint the platform pings to confirm an app is ready to serve requests. |
| setsid() | A Unix syscall that creates a new process session, preventing terminal signals from stopping spawned apps. |
| setsid() | Unix system call that creates a new session with no controlling terminal. Used by Thumper to launch GUI apps cleanly. |
Platform
| Term | Definition |
|---|---|
| Ollama | Local LLM server with a managed model library. Auto-started by Thumper-Run when apps need text generation. Exposes an OpenAI-compatible API. |
| llama.cpp | C++ library for LLM inference on CPU and GPU. Uses GGUF model format. Powers the Thumper-Run agent and embedded inference. |
| Tauri | The desktop app framework. Wraps a native webview with Rust backend IPC. |
| Leptos | The Rust web framework used for the UI. Compiles to WASM for the browser. |
| IPC | Inter-Process Communication — how the frontend (WASM) calls Rust backend commands in Tauri. |
| WebView | The native browser engine (WebKitGTK on Linux, WebView2 on Windows) that renders the UI. |
| AppImage | A portable Linux app format. Single file, no installation needed. |
| Sync Transport | The network layer (WebSocket or HTTP polling) used to exchange CRDT operations between devices. |
| pack_refs | References from an app manifest to model pack manifests. Declares which model packs an app can use. |
| preferred_engine | App manifest field specifying the LLM inference backend: ollama, llamacpp, or openai. |