ECHO-4 / WORLD-1 — resultados del primer slice software
Fecha: 2026-09-21. Contrato.
Orden posterior actualizado: SENSATION-1 y BOUNDARY-1 antes de SELF-1. Estos resultados históricos se conservan; véase el programa vigente.
Encuadre actual: ECHO-4 desarrolla el ego funcional de ECHO-AI. Los resultados siguientes son su base de viabilidad, no una prueba de ego.
Resultado
Implementado y probado un mundo renovable de dinámica entera, con contabilidad explícita, verificador exhaustivo y conexión al agente original. Sin hardware, METAVERSE-1, PX4, Gazebo ni LLM. ECHO-4 avanza como programa de software; el hardware queda para después.
Factibilidad física demostrada en este mundo; mantenimiento aprendido todavía no demostrado. No se emite un certificado de ECHO-4 ni se considera cerrada E4-MAINTAIN-1.
| Medida | Resultado |
|---|---|
| Estados corporalmente vivos enumerados | 16.002 |
| Transiciones examinadas | 48.006 |
| Estados del núcleo de viabilidad de observación completa | 15.954 |
Estado inicial (32,64) dentro del núcleo |
Sí |
| Prefijo del testigo encontrado | 83 acciones |
| Ciclo recurrente del testigo | 2 acciones |
| Pruebas nuevas | 45/45 |
| Pruebas de regresión seleccionadas | 48/48 |
El testigo converge al ciclo:
(H=127, theta=112) --avoid--> (124,96) --approach--> (127,112)
Todas sus transiciones se vuelven a comprobar con la física pura y su balance de recursos. La fuente de recarga es externa; no es una máquina de movimiento perpetuo ni una simulación termodinámica real.
Control histórico: con los incrementos de HEAT-1b, el analizador devuelve
núcleo vacío, 71 acciones máximas desde el inicio y 276 como máximo entre
todos los estados vivos. Una prueba compara las 48.006 transiciones con
ThermalDockEnv.step_homeostatic real, sin modificarlo. El control sin
entrada de recursos también devuelve núcleo vacío.
Primera ejecución del agente: resultado negativo conservado
El demostrador conecta nexus0.loop.Agent original, con Q inicial a
cero, una vida y aprendizaje en línea. No recibe el testigo ni la política
del oráculo. Se solicitan 256 turnos; se detiene al morir.
| Medida | Resultado |
|---|---|
| Acciones ejecutadas, incluida la terminal | 37 |
| Causa de terminalidad | calor |
| Estado final | H=49, theta=127 |
| Reinicios | 0 |
| Muertes | 1 |
| Entrada externa de recursos | 65 |
| Consumo efectivo | 48 |
| Derrame | 0 |
| Balance | 32 + 65 = 49 + 48 + 0 |
| Slots CAM ocupados | 6 |
| Slots destruidos / hechos falsos / llamadas a cortex | 0 / 0 / 0 |
Esto es una prueba de integración, no una campaña de entrenamiento ni una comparación estadística de políticas. El agente aún no mantiene el cuerpo. No se cambia la puntuación ni se añaden rescates para ocultar ese resultado.
Límite perceptivo medido
El encoder existente produce 32 paquetes WSP distintos para los estados vivos; contando también estados terminales, el dominio corporal completo produce 45. En los 32 grupos vivos hay al menos una acción con resultados observables distintos según el estado exacto oculto por las bandas.
Dos grupos mezclan estados del núcleo con estados condenados; 14 agrupan estados con diferentes conjuntos de acciones viables. Cuatro paquetes terminales térmicos coinciden con paquetes vivos. El ciclo de vida detecta terminalidad mediante el contrato existente y prohíbe seguir actuando: el WSP por sí solo no distingue todas esas situaciones.
Por eso partial_observation_control_proven=false. Esto no demuestra
imposibilidad de aprender con historia; identifica una brecha que el próximo
experimento debe tratar explícitamente. El evaluador no entrega el estado
exacto al agente como atajo.
Reproducción
Desde /home/roger/REALRXOS/RXos/echoai:
PYTHONDONTWRITEBYTECODE=1 PYTHONPATH=.. python3 -m echoai.echo4 audit
PYTHONDONTWRITEBYTECODE=1 PYTHONPATH=.. python3 -m echoai.echo4 demo --turns 256 --trace
PYTHONDONTWRITEBYTECODE=1 PYTHONPATH=.. python3 -m unittest echoai.tests.test_echo4_world1 -v
Los comandos del módulo emiten JSON en stdout. No guardan archivos ni
dependen de renderer o servidor. --greedy no congela aprendizaje. La
ejecución está limitada a 10.000 turnos y no reinicia al individuo.
Regresión ejecutada:
PYTHONDONTWRITEBYTECODE=1 PYTHONPATH=.. python3 -m unittest \
echoai.tests.test_qtable echoai.tests.test_heat1 echoai.tests.test_echo2 \
echoai.tests.test_nexus0.TestWorld echoai.tests.test_nexus0.TestEncoder \
echoai.tests.test_nexus0.TestGate echoai.tests.test_nexus0.TestBench -v
No se ejecutó toda la suite histórica ni se reabrieron exámenes sellados.
Los 93 tests indicados cubren el módulo nuevo y esa regresión seleccionada.
Incluyen reproducción del audit en un proceso nuevo, rechazo de testigos
alterados, comparación con iteración de horizonte finito independiente,
balance, entradas inválidas, terminalidad, aislamiento del oráculo,
preservación del agente y ausencia de escrituras por NAVI_THOUGHT_LOG.
Huellas deterministas del resultado:
grafo: 971c481fc4e0a9e9e816365904f07116ec7af53aad4877885e433d4c591f4554
nucleo: bb296e24ab3a8390de27544402e3264ddf3441b4d0991955c7badf1b5aa19b20
testigo: 0f9b5225afc9d9358684f125a00b09d6e5e3b1fb8cd34733a748b45a8d952ec9
demo: bc17fdff5fa691af64b873f0b861f5dbb9632a86c755796d87212d8c4ba7d38f
Son hashes de contenido reproducible, no certificados de campañas.
Preservación y siguiente paso
No se modificó ningún .py de nexus0/. El inventario ordenado de esos
archivos y sus SHA-256 produjo, antes y después, el mismo digest:
2612122246fef64f53b84717f87e59be1cc07421c4bfd268386340cf970b47b8
El código nuevo vive en echo4, fuera de los inventarios amplios de las campañas anteriores. Se preservaron los cambios preexistentes del usuario; no se tocaron kernel, hardware, METAVERSE-1 ni certificados.
Siguiente slice: E4-SELF-1, contrato de observabilidad y atribución cuerpo/entorno. La continuidad y el mantenimiento con trabajo útil y daño reparable siguen en el programa del ego funcional. Entrenamiento y evaluación deben diferenciarse; no añadir un controlador oráculo dentro del agente ni un segundo bus.