Skip to content

Praesenz / Léa / Architecture

Architecture index. Follows the C4 model (Simon Brown) + a parallel per-stack split.

How to read this

Two orthogonal axes:

Axis 1 / Zoom level (C4)

Level Zoom Where to find
L1 Context Praesenz in its ecosystem (brands, retailers, PIM, GS1, ESL, customer) context/ecosystem.md
L2 Containers Internal blocks (Léa avatar, knowledge layer, orchestrator, WhatsApp bot...) stacks/<stack>/containers.mmd
L3 Components Detail of a container stacks/<stack>/components-*.mmd
L4 Code (rarely useful) n/a

Axis 2 / Stack / phase

Stack Status Host Link
1A / Virbe Windows VM Dev/QA opportunistic uterrie (10.19.10.11) stacks/stack-1a-virbe-windows/README.md
1B / Linux containers UE5 Dev/QA opportunistic rancher2 (.249) stacks/stack-1b-linux-containers/README.md
2 / Multi-kiosk production Target shape decided (V3), not built per-site master → central HPC stacks/stack-2-prod-future/README.md
3 / Retail Media Long-term vision (n/a) stacks/stack-3-retail-media/README.md
X Pivot placeholder n/a stacks/stack-x/README.md

Key point on Stack 1A vs 1B

These are not two sequential phases. They are two parallel experiments testing two opposite technical directions: - 1A = cloud-Virbe, fast integration, external dependency - 1B = local-first, full control, internal complexity

The goal is to decide Stack 2 prod based on what each pilot teaches. See crosscutting/stack-a-vs-b-comparison.md.

Legacy design docs

The folder architecture/stack-b/ contains the historical Stack B design docs (8 files migrated from the stack-b-design repo). They remain the most detailed design reference for Stack 1B today and should be consulted alongside stacks/stack-1b-linux-containers/.

ADR / architecture decisions

See decisions/003-magnet-inverse.md and following. Each ADR references the relevant stacks in its stacks: front-matter.

# Title Status
001 Two parallel stacks (Windows VM vs Linux Containers) Accepted
002 Local-first architecture (no cloud dependencies) Accepted
003 Inverted magnet / the kiosk doesn't hail, it attracts Accepted
004 Stack 1B local-first as Stack 2 prod target Accepted
005 PIM-native architecture (agnostic of retailer SI) Accepted
006 3-tier data supply (OFF → Salsify → retailer) Superseded by 013
007 ESL broadcast as real-time price truth Proposed
008 Pilot retailer N°1 / Picard Accepted (extended by 012)
009 Per-site master + GPU-less thin workers Accepted
010 NeuroSync lip-sync (replaces Audio2Face) Accepted
011 Two-phase scale (central mini-HPC beyond ~30 kiosks) Accepted
012 Multi-enseigne go-to-market (Infomil lead) Accepted
013 PIM source tiers extended (OFF → Salsify+Akeneo → Equadis+SI) Accepted
014 In-store Phase 2 / RTX 4090 AI + GPU-rendering workers Accepted

Quick glossary

Term Meaning
PIM Product Information Management. Brand-side product reference store (Salsify, Akeneo, Equadis).
ESL Electronic Shelf Label (VusionGroup, Hanshow).
GS1 Digital Link QR code that encodes EAN + enriched URL. EU 2027 standard.
OFF Open Food Facts. Free public product database.
Kiosk state machine Sleep / Wake / Display / Engage / Convert. See Golden Circle §3.1.
Inverted magnet The customer approaches, the kiosk does not push. Product principle.