- • La app (Vercel) es el ÚNICO frente; el substrato (Bun · Hetzner) es el system-of-record
- • Hablan por HTTP + bearer, frontera de una sola dirección (sin sync bidireccional)
- • InsForge dueña de la identidad; Postgres dueño del grafo intent→claim
- • Inngest self-hosted: step.run (retries) + waitForEvent (gates ≤72h)
- • Postgres 16 + pgvector — el grafo: intents, plans, traces, step_executions, claims, artifacts, forge_candidates
- • Embeddings e5-small ONNX in-process ($0): recall de claims y read-path Q&A
- • generate (Claude Code $0) → sandbox bwrap (red denegada) → build-gate humano → registrar
- • Ops PURAS por contrato (assertPureContract) → replay-safe
- • Eve = brazo experimental que forja afuera y registra vía /api/forge (bearer)
- • Presidio anonimiza ANTES de vectorizar; custodia dual (original confidencial intacto)
- • Si Presidio cae, la ingesta no indexa: cuarentena (fail-safe), nunca PII a medias
- • Langfuse + ClickHouse traza LLM (prompt·costo); OTel nativo off por defecto