Files
serverAppConfigs/serverAppConfigs-docs/index.md
Frank 52dbe18486 docs(vault): the census was lying; corrected, and the honest result is flat docs
`scripts/port-census.py` built its corpus from the new directory, so each page
under test was held by itself: every era page reported 0 orphan lines. With the
corpus excluding the file under test, each candidate holds 14-63 sole-record
lines, so no era page is padding and none was trashed.

Deletions of restatement only:
- Multi-Node Runtimes.md (-257): restated launch material owned by
  Qwen3.8 PP Deployment.md; index rows and two Related bullets repointed.
- log.md: 66 headings folded into 35 dated entries (one entry per date, newest
  first), titled headings kept as `date — Title` per the spec's wording, and 78
  lines of transient deploy chatter dropped where every fact token in the line
  is held by an owner page (preserved in .AGENTTRASH/20261019-log-transient/).
- Authentic: the 5-page split reverted (-93); the parent carries
  `okf-exempt: length` and the three stub pages stay deleted.

check-okf.py accepts `## YYYY-MM-DD — Title`; port-census.py excludes the file
under test and gained a docstring note about the trap. One-off compaction tool
moved to ~/.AGENTTRASH. Full suite: 451 tests pass, 0 OKF violations,
155 pages, 0 unresolved links.
2026-10-19 10:17:52 -07:00

20 KiB

serverAppConfigs — knowledge base

One fact, one owner. A page owns exactly one thing and everywhere else links to it with a wikilink. Shape, payload, eras, laws and rollback for an inference endpoint live on its endpoint page; scripts/<service>.env is the authority for every number, and a page that disagrees with it is the bug. Payload swaps are rows in an endpoint page's Eras table, never pages of their own. This index is a locator: one row, one clause, no numbers.

Inference endpoints

Page Owns
frank-archon The radiance endpoint: live shape and harness contract, every era with its rollback path, and the laws it taught.
frank-dragoon The iGPU endpoint: live shape, every era with its rollback path, the laws it paid for, and the files that own it.
frank-zealot The RTX 3090 endpoint: live shape exactly as the env ships it, every era with its rollback path, and its card laws.

Retired endpoints

Page Owns
dealign-ornith-crack Retired era: a mixture-of-experts checkpoint served with CPU expert offload and n-gram drafting on a single card.
frank-medium Locator for the retired Dankserver LLM endpoint: which era page owns which payload, and where the dates disagree.
frank-medium-llamacpp-dflash2 Retired era: the layer-split llama.cpp shape with a drafter, its ladder measurements, and the balance it settled on.
frank-medium-model-swap Retired-era swap procedure: the fetch toolchain, the entrypoint contract, the capability battery, the rollback path.
frank-medium-radiance-mxfp4 Retired era: the tensor-parallel radiance shape on two cards, its quant-class swap, and the on-disk rollback payload.
frank-medium-rocmfpx Retired era: the ROCmFPX fork serving an agent-tuned checkpoint on the two-card box, and the loader pin it required.
frank-npu The retired NPU endpoint: what it served, why it died with the IOMMU decision, and where every dependent route went.
frank-redo-2026-08-17 The day the whole inference fleet was rebuilt: what came down, what replaced it, and why it was done that way.
ikllama-ornith-dankserver Retired era: the ik_llama fork with a quantized value cache and CPU expert offload, and the build flags it required.
kingjones-q8agent-rocmfpx Historical: a checkpoint and loader pairing staged for this host and never deployed on it.

Dankclaw services

Page Owns
ComfyUI ComfyUI is a node-based AI image generation engine.
ComfyUI Qwen-Image Workflows Proven Qwen-Image text-to-image workflows on Dankclaw: the recipes, the API call shape, and which models to add next.
Dankclaw Stack Service inventory and routing overview for the Dankclaw AI, development, and observability host.
Frank TTS The fleet's cloned-voice speech endpoint and the one voice surface consumers address; wired as the harness speech role.
Frank TTS Engine The engine behind the fleet's speech endpoint: its runtime, private bridge, and the surface it publishes.
Gitea Gitea deployment on Dankclaw with its web UI reverse-proxied by the canonical Caddy service.
Gluetun Gluetun is a lightweight VPN client container.
Hermes Hermes is the self-improving AI agent from Nous Research.
Hermes-Dashboard The Hermes web dashboard is a browser UI for managing the agent.
Hermes-WebUI The iPhone companion app for Hermes on Dankclaw and the ways it is reached from the LAN.
Marreta The content-cleaning proxy SearXNG borrows egress from: a quadlet pair in the VPN netns behind the guard chain.
Open Notebook The fleet's podcast generator: notes in, multi-speaker episode out, script and voices both served in-house.
OpenWebUI OpenWebUI is a self-hosted chat interface for LLMs.
Postgres PostgreSQL is the database backend for Gitea.
SearXNG SearXNG is a privacy-respecting metasearch engine.
SearXNG Providers How Google and other upstream search engines get blocked behind the Gluetun
Seerr The request manager for the *arr stack — the maintained successor to the archived Overseerr line.
Swap Configuration The host swapfile: why it is sized as it is, the resize ordering that avoids an OOM, and the swappiness caveat.
Valkey Valkey is the cache and limiter store for SearXNG.
Voice Packs How a voice pack is built: the files every pack must carry, the source-material gate, adding a voice, engine-bump drift.

Dankserver services

Page Owns
Calibre Calibre is the e-book library manager that backs Calibre-Web.
Calibre-Web Calibre-Web is a web application that browses, reads, and downloads eBooks from an existing Calibre library database.
Copyparty Copyparty is a lightweight file server and media streamer that runs as a single Python binary.
Dankserver Stack Service inventory and routing overview for the media and library host.
Entropy Volume The Dankserver entropy volume is a RAID-backed LUKS filesystem mounted at
Jellyfin Jellyfin on Dankserver: quadlet unit, entropy-volume data layout, ports, client access, hardware-transcode status.
mariadb The MariaDB backend for RomM: quadlet unit, network alias, env-file secret handling, and the backup path.
Plex Plex Media Server is a containerized media server on Dankserver: a podman
redis The Redis cache and task queue for RomM: quadlet unit, network alias topology, and the backup path.
RomM RomM (ROM Manager) is a self-hosted ROM library manager and player.
RomM-Scraping Metadata providers, cover art, ROM naming and the scraping workflow behind the RomM library.
Tautulli Tautulli is the statistics, monitoring, and notification companion for

FrankBook-Pro

Page Owns
ARR-Stack The *arr automation stack on FrankBook-Pro, every container on the VPN netns: topology, wiring, and gotchas.
lidarr Lidarr music manager in the *arr stack on FrankBook-Pro — live quadlet deployment, ports, volumes, and wiring facts.
prowlarr Indexer management for the *arr stack: feed routes, the sync model, the API surface, and verified live gotchas.
qbittorrent The download client for the *arr stack: pinned image, shared WireGuard netns, WebUI credential recipe.
radarr Radarr movie manager in the *arr stack on FrankBook-Pro — live quadlet deployment, ports, volumes, and wiring facts.
readarr The ebook and audiobook manager in the *arr stack: retired upstream, pinned image, parked download client.
sonarr Sonarr TV manager in the *arr stack on FrankBook-Pro — live quadlet deployment, ports, volumes, and wiring facts.

Workstations

Page Owns
Noctalia and Niri The noctalia shell on niri across workstations: config layers, remote IPC, custom palettes, output rotation and pinning.

Cross-host infrastructure

Page Owns
Alertmanager Receives firing rules from Prometheus, groups and dedupes them, and forwards each group to the host-side Signal relay.
Alloy Alloy is Grafana's log and telemetry shipper.
Anubis Anubis is the bot-challenge proxy that fronts the guarded public vhosts on
Authentik Authentik is the single sign-on (SSO) and OpenID Connect (OIDC) provider for the
Authentik Outpost Reference Outpost, proxy-provider, OAuth2, LDAP and flow configuration for the homelab's Authentik SSO.
Authentik Processes The three core Authentik containers — database, server and worker — with their units, images, roles and probes.
Caddy Caddy is the single reverse proxy for both hosts.
FrankBook-Pro FrankBook-Pro — the Mac mini running the *arr stack + qBittorrent inside a podman machine VM, gluetun-gated
Grafana Grafana visualizes the metrics that Prometheus collects from every service.
Homepage The password-protected service list on Dankclaw: what each card shows and where its data comes from.
Homepage Design Grilling The decision log for the homepage design.
Homepage Status Probes How probe targets are chosen, the three false-down shapes, the triage procedure, and the e2e gate interactions.
LAN-DNS The homelab gives every service a name under franksdank.cloud.
Loki Loki is the log aggregation backend of the observability stack.
Node-Exporter Node-Exporter exposes host metrics (CPU, RAM, disk, network) to Prometheus.
Observability The observability stack: what runs, how it is deployed, how it is exposed, and what is still unconfigured.
Observability Provisioning Monitoring config as code: the config triad, deploy copiers, planner mappings, and where each change type lands.
Pi-hole Pi-hole is the LAN DNS server for the homelab.
Prometheus Scrapes each service's metrics endpoint and feeds the provisioned Grafana datasource; down targets are structural.

Repo architecture and policy

Page Owns
Container Network Namespaces How Podman builds container networks here: the network inventory, the netns sharing mechanism, and the isolation limits.
Deploy State Triage Reading deploy-state markers against live containers and deciding, safely, whether to redeploy.
Deployment Flow Service-scoped Git deployment for the two homelab hosts.
E2E Suite The Playwright suite that drives the live fleet through a real browser, its project set, and the FrankBook conditional.
Network Architecture One Caddy fronts both hosts.
Quadlet Lifecycle The Quadlet discipline: ownership audits, compose cutover, drift and crash-loop triage, generator quirks, log retrieval.
Stale Signal Audit The audit battery for surfaces that rot without failing: dead probes, vacuous assertions, gates that never run.
Storage Policy All persistent data uses bind mounts: a host directory mapped directly into the container.
Testing Policy This repository tests its configuration at defined seams.

Operations and incidents

Page Owns
Container Host Reachability Two reachability quirks: containers cannot dial unpublished host ports, and netns membership decides reachability.
Fleet Audit and Posture Three standing audits: monitoring completeness, vhost proxy health, and behavioural security posture.
Fleet Ops Playbook Incident-shaped procedures: endpoint down with a GPU holder, stop-first bench windows, service iteration, waking a host.
Payload and Disk Reclaim Disk pressure procedure: measure every bucket, classify, prove nothing references the payload, stage, purge on approval.
Remote Job Runner Detached long jobs with sentinel files: why tail-watchers fail structurally, the script, its invariants, verification.
SSH and Remote Access Passwordless SSH bootstrap without sshpass, remote execution against fish login shells, and frozen-GUI triage.

Agent / harness

Page Owns
Agent Docs and Edits Two self-inflicted doc damage classes from parallel agent edits, with the audit checks and recovery order for each.
Command Center Dotfiles How the dotfiles repo deploys: stow-equivalent packages, full-replica rsync, the pre-overwrite audit, transport gotchas.
OMP Harness The omp harness as configured here: compaction chain arithmetic, per-model sampler routing, and the context-lean audits.

Research and methodology

Page Owns
AI Job Search and Resume Tools Self-hosted job-search and resume tools: the landscape, local-LLM fit, and the recommended homelab stack.
Backblaze Integration Off-site backup plan for the bind-mounted data on both hosts.
ComfyUI ROCm and Vulkan Whether ComfyUI can use the Strix Halo APU at all, and which backend path actually reaches the GPU.
Lemonade and sd.cpp Why Lemonade Server can do image generation on Strix Halo when ComfyUI cannot.
Llama Cpp Code Diff Code-level diff of the three llama.cpp trees here: quantization code, type numbers, and what differs for our cards.
Llama Cpp Runtimes The llama.cpp trees on this host compared: positioning, quantization formats, and fit for each machine.
Local TTS and Voice Cloning Creating a local voice from sample files: the open-weight cloning landscape, the measured engine A/B, the audio stack.
Most Popular Self-Hosted AI Apps The most-starred self-hosted AI applications of the year so far, with homelab fit and adoption notes.
PICO-8 Asset Standards Asset-sheet standards for PICO-8: palette discipline, one light direction, detail hierarchy, cohesion checklist.
Service Research Brief Consolidated upstream research on the fleet's LLM runtimes, dated to when it was gathered.
SGLang What SGLang is, how it schedules and caches, how it compares to the runtimes here, and whether it fits this fleet.

Pipeline Parallelism (series)

Page Owns
Ethernet Bandwidth Math Bytes-per-token math for pipeline versus tensor parallelism, and the link budgets that follow from it.
Expected Performance Estimated split-model throughput over ethernet, with the benchmark anchors the estimates rest on.
Qwen3.8 PP Deployment The real split deployment: which node is head and which is worker, the flags, and the verified gotchas.
Sample Script Set An educational two-node RPC split script set, for reading only — never run it or deploy it.

LLM technique and hardware references

Page Owns
Dankclaw Improvements This page collects concrete, sourced recommendations to improve Dankclaw
Dankclaw System Specs Dankclaw is an AMD APU server for CIRU ROCmFPX llama.cpp inference.
dankclaw-iommu-translation-off Why Dankclaw boots with identity DMA, what the earlier off-era bought and cost, and which tooling owns the boot line.
Dankserver System Specs Dankserver hardware and OS state since the board swap: board, lane topology, cards, memory, kernel posture.
dankserver-frontier-moe-feasibility The capacity arithmetic that decides whether a frontier mixture-of-experts fits this box before any model is loaded.
dankserver-vram-growth Investigation of the recurring cuBLAS crash on frank-zealot. What grows, what does not, and what to do next.
deployment Scoped deployment and update process for the three inference services (frank-archon, frank-dragoon, frank-zealot).
DFlash DSpark Speculative Decoding DFlash and DSpark are the two newest speculative decoding methods.
Dual-R9700-Cooperation Why two R9700s could not run tensor-parallel on the old board, and what the board swap unblocked.
FastFlowLM NPU Inference The AMD NPU-first runtime: fit analysis for the XDNA2, published benchmarks, install state, and test runbook.
frank-medium-batch-ubatch The batch-versus-ubatch sweep on the layer-split pair at its deployed shape, and the rebalance the sweep forced.
FreeToken Builds Building the FreeToken runtime here: the CUDA and ROCm builds and the dependency trap each one hit.
freetoken-benchmark-sweep KV pool versus decode speed for the FP8 mixture-of-experts payload on the FreeToken runtime.
GGUF Compatibility Answering whether an engine loads a GGUF from the file header alone, and pinning a fork build that can.
Heterogeneous Split Triage Triage before splitting across unequal accelerators: link characterisation, real bottleneck, what placement never buys.
Hybrid CPU GPU Processing Dankserver Dankserver uses NVIDIA GPU with system RAM for hybrid processing.
ling-3.0-flash-trial Trial of a fork build for a new mixture-of-experts architecture: what loaded, what the harness refused, and the verdict.
Llama Cpp Multi-Device Splits What llama.cpp can express across devices: the no-collective layer-split path, balancing, and drafter KV sizing.
Llama Cpp Serving Sizing Measurement-first sizing for llama.cpp shapes: slot pools against a headroom band, per-device accounting, prompt cache.
LLM Bench Windows and Measurement Opening and restoring benchmark windows on fleet hosts, honest methodology, and the usage-counter law under drafting.
LLM Performance Diagnosis Probing why a served model is slow: the flat-depth probe, offload duty-cycle arithmetic, and profiler attribution.
Model Swap and Rollback The model-swap discipline: fit preflight, fetch verification, build and flag checks, live validation, three-pin revert.
PCIe Link and Atomics Link probing, the streaming-versus-compute ceiling arithmetic, and the atomics wall that decides multi-GPU collectives.
Quantization by Hardware Architecture This page maps LLM quantization formats to the GPU and CPU architectures that support them.
Quantization Production Making a quantized payload here: the conversion recipe, the scoring gate, and the campaign ladder behind a shipped file.
qwen3.8-spec-matrix The speculative-decoding benchmark history for this endpoint, arm by arm, and what each arm ruled out.
qwen3.8-strix-optimizations How a served checkpoint got faster on the Strix Halo iGPU: the lever ladder and what each lever actually bought.
RAM CPU Offloading in VLLM vLLM uses CPU RAM and swap space to extend GPU memory capacity.
RDNA4 Container Serving Bringing a model larger than VRAM onto the two-card box: quant gating, fetch verification, container GPU-init triage.
RDNA4 MoE Expert Offload VRAM Budget Expert-offload arithmetic on the RDNA4 fork: movable terms, the utilisation law, graph charge, ceilings, context ladder.
Running Qwen3.6 27B FP8 on Dankclaw Serving a dense FP8 vision-language checkpoint on the Strix Halo iGPU: the load path, the flags, the format gate.
Running Qwen3.6 35B A3B FP8 on Dankserver Serving a mixture-of-experts FP8 checkpoint on the R9700 host: the load path, the format gate, the offload shape.
Shared Memory Architecture Dankclaw Dankclaw uses AMD Strix Halo APU with unified memory architecture.
swift15-campaign-worklog Dated worklog of the campaign that converted and served a Swift checkpoint on the radiance endpoint, arm by arm.
Tcclaviger Fork Ops Operating the RDNA4 vLLM fork: the sweep harness, measured knob verdicts, sweep hygiene, compile-cache persistence.
ubatch-benchmark-large The wide ubatch sweep for a deployed ROCmFPX shape, run through the standardized harness.
vLLM Boot Forensics and Config Interrogation Recovering a container boot failure's real cause from journald, and interrogating a live endpoint's true config.
VLLM Index Locator for every vLLM page in this vault.
VLLM Overview vLLM is a fast and easy library for large language model inference and serving.
vLLM Porting and Compile Triage Forward-porting a model architecture: additive-only discipline, shims that survive worker spawn, compile triage.
vllm_research_findings Upstream support survey for speculative decoding: which flags, releases and pull requests carry each method.
x4-pair-experiment Measured limits of a consumer card plus APU pair: the tensor inventory, the flag that kills cross-device placement.

Change history

Page Owns
log Chronological incident and law log for the whole bundle.