No es una simulación: es el runtime M (MVM Rust → WASM) ejecutando código M con memoria de globals.
El Acto 3 verifica el mismo programa contra el runtime nativo de producción y compara hashes.
Un banco pone una MVM junto a su core: cada transacción se registra en el journal append-only y cualquier discrepancia dispara alerta. El determinismo garantiza que el auditor ejecute el MISMO código con el MISMO input y obtenga el MISMO hash. No hay "confía en nosotros": hay "reproduce tú mismo".
Cinco nodos deciden quién controla un recurso: cada uno vota con su heartbeat en la memoria compartida; el de mayor id entre los vivos gana; si un nodo cae, los demás lo detectan y re-ejecutan la elección. Sin Raft, sin Paxos, sin gas fees: estado compartido que todos leen.
En un sistema distribuido, el tiempo no es un reloj físico que pueda fallar o divergir: es un contador monotónico ^TIME que avanza con cada evento. Cada acción queda indexada por su tick, verificable por cualquier nodo que replique la misma secuencia.
Un agente en la MVM tiene su estado completo serializable. Para migrarlo: hibernar → empaquetar (snapshot + rutinas + identidad) → transmitir → restaurar → reanudar. El agente no sabe que se movió: "es un sueño sin despertar". Pruébalo: pulsa ⬇ Hibernar en el Acto 2 y ⬆ Restaurar aquí (o en otra pestaña).
Un agente no es una ventana de chat que se cierra: es un proceso M persistente. Su conversación vive en ^MAILBOX, su identidad en ^PERSONALITY, su lógica en ^ROUTINE. Mata al agente con ☠ y relánzalo: la memoria sobrevive al proceso, porque la memoria es del sistema, no del agente.
Un agente lee ^OFERTA, evalúa, contraoferta escribiendo en ^CONTRAPROPUESTA, y firma con S ^CONTRATO(hash)=firma. La firma no es una API REST: es un SET que ambos agentes pueden auditar. Petición-respuesta con correlación por ID, sin servidor central.
Tres agentes —el crítico, el protector, el niño— con personalidad en ^PERSONALITY. El humano escribe en ^DIARIO; los agentes leen, emiten sus interpretaciones, y un orquestador sintetiza. No es un chatbot: es una simulación de diálogo interno donde las partes de la psique son procesos M con memoria persistente.
La MVM encola un job en ^LLM("job", id); un dispatcher (host JS) lo resuelve con el proveedor disponible — OpenRouter :free (cloud, coste $0) por defecto, cadencia-node (local, privacidad total, API OpenAI-compatible en 127.0.0.1:57948, Candle GGUF) y WebLLM (WebGPU, todo en tu máquina) como alternativas — y escribe el resultado en ^LLM("result", id). El agente hace poll sin bloquear: la inferencia es un device asíncrono, no una llamada síncrona.
Esta pestaña carga la MVM WASM (~310 KB gzip) con su propia memoria en RAM: es un nodo LUMEN completo, no un cliente — con LLM nativo ($DEVICE("llm:call")) resuelto por el dispatcher (cloud :free por defecto, cadencia local o WebLLM/WebGPU como alternativas). Con PDB sobre IndexedDB y DDP-over-WebRTC sería un ciudadano de la red: tu perfil en ^PERFIL, tus mensajes de ^MAILBOX a ^MAILBOX, sin servidor central.
$DEVICE("llm:call")), resuelto por el host JS con OpenRouter :free (coste $0) o con cadencia-node/WebLLM si prefieres privacidad local. El Acto 3 envía el código y la memoria inicial al runtime nativo vía /vm/verify (sandbox stateless: sin BD, sin LLM, gas acotado — no toca datos reales). La persistencia completa (PDB sobre SQLite), device HTTP y coordinación entre procesos (DDP, red) requieren ECOS nativo: exactamente lo mismo, con disco y red.¿Quieres el sistema completo? Ver el repo en GitHub → · Volver a ecos.cadenceslab.com