God’s Eye View: globo, interacción IA y límites honestos de datos
Arquitectura God’s Eye View: constructores compartidos, fuentes inyectadas y limpieza
Sigue escena, controles, datos y herramientas durante inicio y cierre, distinguiendo contratos reutilizables de estado de página.
Qué aprenderás
- La composición empieza inactiva
- El cierre expresa una dependencia
- Reutilización no elimina límites del standalone
Antes de empezar
- JavaScript y JSON básicos
- Coordenadas y tiempos de fuente
Explicar registros, validación, presentación e IA opcional mediante casos sintéticos.
Conclusiones clave
- Construir no inicia hasta llamar start.
- Controles necesita datos vivos para cancelar restauración.
- El controlador reutilizable no prueba un standalone multiviewer.
La composición empieza inactiva
El export de aplicación recibe cuatro constructores: scene, controls, data y tools. La guía indica que importar o construir no crea viewer ni peticiones; start comienza la inicialización. Componentes anteriores y una señal compartida de cancelación llegan a constructores posteriores.
La configuración pertenece a cierres del consumidor. El controlador no descubre módulos ni interpreta variables o endpoints. Así puede inyectarse una fuente sintética sin reescribir el renderer ni presentar fixtures como datos reales, manteniendo responsabilidades claras.
El cierre expresa una dependencia
El inicio sigue escena, controles, datos y herramientas; el cierre sigue herramientas, controles, datos y escena. No es simplemente invertir la lista: controles cancela restauración mientras gestor de datos y viewer siguen vivos. Dentro de una fase, callbacks se ejecutan en orden inverso.
Registra limpieza inmediatamente después de adquirir recursos y antes de esperar más trabajo. Destroy aborta la señal, espera al constructor activo y ejecuta callbacks. Una dependencia que ignora cancelación puede retrasar el cierre; devolver una promesa no libera recursos instantáneamente.
Reutilización no elimina límites del standalone
La guía dice que llamadas repetidas a start y destroy reutilizan sus promesas, y la destrucción es terminal. Ready significa que retornaron los constructores, no que terminaron todos los feeds. El snapshot congelado es superficial: las instancias siguen siendo mutables.
El standalone conserva propietarios por página y admite una aplicación por página, con recarga para iniciar de nuevo tras cerrar. No se convierte automáticamente en un widget desmontable con varios viewers. Inspeccionamos controlador y guía, pero no ejecutamos ciclo de navegador ni renderer compartido.
Cómo elegir
| Criterio | Opción A | Opción B |
|---|---|---|
| Best when | You need predictable behavior and easy auditing | You need adaptive optimization and have reliable telemetry |
| Main risk | May leave performance on the table | Can become difficult to explain or debug |
Pasos de implementación
- 1
Mapea dependencias de constructores.
- 2
Registra limpieza al adquirir recursos.
- 3
Propaga cancelación a operaciones pendientes.
- 4
Prueba cierre terminal y disponibilidad de feeds aparte.
Ejemplo para copiar
{
"arquitectura": true,
"ordenInicio": [
"scene",
"controls",
"data",
"tools"
],
"ordenCierre": [
"tools",
"controls",
"data",
"scene"
],
"readyImplicaFeedsCompletos": false,
"instanciasStandalonePorPagina": 1,
"cicloEjecutado": false
}Preguntas frecuentes
¿El cierre invierte exactamente el inicio?
No. Controles se detiene antes de datos para cancelar restauración.
¿Ready significa todos los feeds cargados?
No. Solo que todos los constructores retornaron.
Fuentes
- God’s Eye View / docs/APPLICATION.mdFuente verificada 2026-09-14
- God’s Eye View / src/app/application.jsFuente verificada 2026-09-14
- God’s Eye View / src/services/application.jsFuente verificada 2026-09-14
- God’s Eye View / docs/CURRENT-STATE.mdFuente verificada 2026-09-14