Roxabi Factory · Flux
Cycle de vie d'un message
Le cycle de vie d'un message en production, animé — un message Telegram ou Discord en entrée, à travers les 10 étapes du middleware de factory-hub sur NATS JetStream, ressorti en réponse streamée. Survole un nœud pour isoler ses arêtes ; choisis un cas d'usage pour suivre l'aller-retour étape par étape.
Production message lifecycle — source-verified @ staging · hub-spoke · NATS JetStream · Python 3.12 · asyncio · Podman Quadlet
M₁ · roxabituwer
192.168.1.16 · RTX 3080 · 24/7
roles: factory-hub · voice-worker
M₂ · roxabitower
192.168.1.14 · RTX 5070 Ti · on-demand
roles: llm-worker · image-worker
factory.network — M₁ hub · M₂ GPU on-demand · tailnet
Adapters · M₁
factory-hub · 10-stage middleware
Workers / Services · M₁
M₂ · GPU on-demand
Stores · Infra
Message Planes
② Conditional
dashed edges · opt-in services
if audio: hub → voice-stt → transcript inline.
if TTS: hub → voice-tts → audio blob → adapter.
if backend=llm: hub → llm-worker M₂ (GPU Qwen3).
if image tool: hub → image-worker M₂ (FLUX/SD3.5).
gh-helper: mint_failure → hub.
if TTS: hub → voice-tts → audio blob → adapter.
if backend=llm: hub → llm-worker M₂ (GPU Qwen3).
if image tool: hub → image-worker M₂ (FLUX/SD3.5).
gh-helper: mint_failure → hub.
③ Context / Stores
dotted ghost reads · session resume
hub reads auth.db (trust), config.db (agent registry), roxabi-vault (L3 semantic).
clipool reads turns.db for session resume.
Adapters watch NATS KV factory-state (hub.ready).
turn-writer = sole writer → turns.db.
clipool reads turns.db for session resume.
Adapters watch NATS KV factory-state (hub.ready).
turn-writer = sole writer → turns.db.
Source of truth: ~/projects/roxabi-factory · hosts.toml · deploy/quadlet.toml · *.container · docs/architecture/
Generated 2026-06-04 · hover = edge isolation · use cases animated · source-verified @ staging.
Generated 2026-06-04 · hover = edge isolation · use cases animated · source-verified @ staging.