@ingcrea/aumic-puf 0.0.0-stage → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/LICENSE +661 -0
  2. package/MANIFEST.es.md +172 -0
  3. package/MANIFEST.md +64 -0
  4. package/PUF-15.md +118 -0
  5. package/PUF_G16_Lighthouse.md +70 -0
  6. package/README.es.md +256 -0
  7. package/README.md +253 -2
  8. package/dist/adapters/astro.d.ts +28 -0
  9. package/dist/adapters/astro.d.ts.map +1 -0
  10. package/dist/adapters/astro.js +68 -0
  11. package/dist/adapters/astro.js.map +1 -0
  12. package/dist/adapters/base.d.ts +53 -0
  13. package/dist/adapters/base.d.ts.map +1 -0
  14. package/dist/adapters/base.js +138 -0
  15. package/dist/adapters/base.js.map +1 -0
  16. package/dist/adapters/cpp.d.ts +27 -0
  17. package/dist/adapters/cpp.d.ts.map +1 -0
  18. package/dist/adapters/cpp.js +48 -0
  19. package/dist/adapters/cpp.js.map +1 -0
  20. package/dist/adapters/csharp.d.ts +28 -0
  21. package/dist/adapters/csharp.d.ts.map +1 -0
  22. package/dist/adapters/csharp.js +100 -0
  23. package/dist/adapters/csharp.js.map +1 -0
  24. package/dist/adapters/flutter.d.ts +27 -0
  25. package/dist/adapters/flutter.d.ts.map +1 -0
  26. package/dist/adapters/flutter.js +49 -0
  27. package/dist/adapters/flutter.js.map +1 -0
  28. package/dist/adapters/java.d.ts +28 -0
  29. package/dist/adapters/java.d.ts.map +1 -0
  30. package/dist/adapters/java.js +123 -0
  31. package/dist/adapters/java.js.map +1 -0
  32. package/dist/adapters/nextjs.d.ts +27 -0
  33. package/dist/adapters/nextjs.d.ts.map +1 -0
  34. package/dist/adapters/nextjs.js +59 -0
  35. package/dist/adapters/nextjs.js.map +1 -0
  36. package/dist/adapters/php.d.ts +27 -0
  37. package/dist/adapters/php.d.ts.map +1 -0
  38. package/dist/adapters/php.js +50 -0
  39. package/dist/adapters/php.js.map +1 -0
  40. package/dist/adapters/python.d.ts +27 -0
  41. package/dist/adapters/python.d.ts.map +1 -0
  42. package/dist/adapters/python.js +55 -0
  43. package/dist/adapters/python.js.map +1 -0
  44. package/dist/adapters/rust.d.ts +27 -0
  45. package/dist/adapters/rust.d.ts.map +1 -0
  46. package/dist/adapters/rust.js +59 -0
  47. package/dist/adapters/rust.js.map +1 -0
  48. package/dist/adapters/selector.d.ts +14 -0
  49. package/dist/adapters/selector.d.ts.map +1 -0
  50. package/dist/adapters/selector.js +65 -0
  51. package/dist/adapters/selector.js.map +1 -0
  52. package/dist/adapters/shell.d.ts +28 -0
  53. package/dist/adapters/shell.d.ts.map +1 -0
  54. package/dist/adapters/shell.js +101 -0
  55. package/dist/adapters/shell.js.map +1 -0
  56. package/dist/adapters/swift.d.ts +28 -0
  57. package/dist/adapters/swift.d.ts.map +1 -0
  58. package/dist/adapters/swift.js +91 -0
  59. package/dist/adapters/swift.js.map +1 -0
  60. package/dist/adapters/typescript.d.ts +27 -0
  61. package/dist/adapters/typescript.d.ts.map +1 -0
  62. package/dist/adapters/typescript.js +63 -0
  63. package/dist/adapters/typescript.js.map +1 -0
  64. package/dist/cli/index.d.ts +10 -0
  65. package/dist/cli/index.d.ts.map +1 -0
  66. package/dist/cli/index.js +259 -0
  67. package/dist/cli/index.js.map +1 -0
  68. package/dist/cli/interfaz.d.ts +21 -0
  69. package/dist/cli/interfaz.d.ts.map +1 -0
  70. package/dist/cli/interfaz.js +71 -0
  71. package/dist/cli/interfaz.js.map +1 -0
  72. package/dist/core/arbol-proyecto.d.ts +18 -0
  73. package/dist/core/arbol-proyecto.d.ts.map +1 -0
  74. package/dist/core/arbol-proyecto.js +119 -0
  75. package/dist/core/arbol-proyecto.js.map +1 -0
  76. package/dist/core/certificado.d.ts +17 -0
  77. package/dist/core/certificado.d.ts.map +1 -0
  78. package/dist/core/certificado.js +49 -0
  79. package/dist/core/certificado.js.map +1 -0
  80. package/dist/core/evaluador-ciberseguridad.d.ts +9 -0
  81. package/dist/core/evaluador-ciberseguridad.d.ts.map +1 -0
  82. package/dist/core/evaluador-ciberseguridad.js +139 -0
  83. package/dist/core/evaluador-ciberseguridad.js.map +1 -0
  84. package/dist/core/evaluador-estilos.d.ts +9 -0
  85. package/dist/core/evaluador-estilos.d.ts.map +1 -0
  86. package/dist/core/evaluador-estilos.js +132 -0
  87. package/dist/core/evaluador-estilos.js.map +1 -0
  88. package/dist/core/evaluador-licencias.d.ts +10 -0
  89. package/dist/core/evaluador-licencias.d.ts.map +1 -0
  90. package/dist/core/evaluador-licencias.js +139 -0
  91. package/dist/core/evaluador-licencias.js.map +1 -0
  92. package/dist/core/evaluador-lighthouse.d.ts +5 -0
  93. package/dist/core/evaluador-lighthouse.d.ts.map +1 -0
  94. package/dist/core/evaluador-lighthouse.js +78 -0
  95. package/dist/core/evaluador-lighthouse.js.map +1 -0
  96. package/dist/core/evaluador-sanitizer.d.ts +5 -0
  97. package/dist/core/evaluador-sanitizer.d.ts.map +1 -0
  98. package/dist/core/evaluador-sanitizer.js +109 -0
  99. package/dist/core/evaluador-sanitizer.js.map +1 -0
  100. package/dist/core/evaluador-sintaxis.d.ts +37 -0
  101. package/dist/core/evaluador-sintaxis.d.ts.map +1 -0
  102. package/dist/core/evaluador-sintaxis.js +372 -0
  103. package/dist/core/evaluador-sintaxis.js.map +1 -0
  104. package/dist/core/evaluador-topologia.d.ts +9 -0
  105. package/dist/core/evaluador-topologia.d.ts.map +1 -0
  106. package/dist/core/evaluador-topologia.js +86 -0
  107. package/dist/core/evaluador-topologia.js.map +1 -0
  108. package/dist/core/evaluador-wp-woo.d.ts +15 -0
  109. package/dist/core/evaluador-wp-woo.d.ts.map +1 -0
  110. package/dist/core/evaluador-wp-woo.js +197 -0
  111. package/dist/core/evaluador-wp-woo.js.map +1 -0
  112. package/dist/core/generador-reporte-html.d.ts +12 -0
  113. package/dist/core/generador-reporte-html.d.ts.map +1 -0
  114. package/dist/core/generador-reporte-html.js +760 -0
  115. package/dist/core/generador-reporte-html.js.map +1 -0
  116. package/dist/core/linter-inline-css.d.ts +20 -0
  117. package/dist/core/linter-inline-css.d.ts.map +1 -0
  118. package/dist/core/linter-inline-css.js +77 -0
  119. package/dist/core/linter-inline-css.js.map +1 -0
  120. package/dist/core/orquestador.d.ts +33 -0
  121. package/dist/core/orquestador.d.ts.map +1 -0
  122. package/dist/core/orquestador.js +518 -0
  123. package/dist/core/orquestador.js.map +1 -0
  124. package/dist/core/punto-control.d.ts +26 -0
  125. package/dist/core/punto-control.d.ts.map +1 -0
  126. package/dist/core/punto-control.js +129 -0
  127. package/dist/core/punto-control.js.map +1 -0
  128. package/dist/core/repositorio-sqlite.d.ts +16 -0
  129. package/dist/core/repositorio-sqlite.d.ts.map +1 -0
  130. package/dist/core/repositorio-sqlite.js +129 -0
  131. package/dist/core/repositorio-sqlite.js.map +1 -0
  132. package/dist/core/types.d.ts +77 -0
  133. package/dist/core/types.d.ts.map +1 -0
  134. package/dist/core/types.js +41 -0
  135. package/dist/core/types.js.map +1 -0
  136. package/dist/hooks/guardian-git.d.ts +23 -0
  137. package/dist/hooks/guardian-git.d.ts.map +1 -0
  138. package/dist/hooks/guardian-git.js +111 -0
  139. package/dist/hooks/guardian-git.js.map +1 -0
  140. package/dist/index.d.ts +13 -0
  141. package/dist/index.d.ts.map +1 -0
  142. package/dist/index.js +29 -0
  143. package/dist/index.js.map +1 -0
  144. package/dist/utils/ejecutor.d.ts +19 -0
  145. package/dist/utils/ejecutor.d.ts.map +1 -0
  146. package/dist/utils/ejecutor.js +44 -0
  147. package/dist/utils/ejecutor.js.map +1 -0
  148. package/package.json +53 -4
  149. package/puf-github-action.yml +30 -0
package/MANIFEST.es.md ADDED
@@ -0,0 +1,172 @@
1
+ # 📜 MANIFIESTO ARQUITECTÓNICO: ESTÁNDAR AUM-IC 7
2
+
3
+ > 🌍 **Navegación:** 🇲🇽 [Leer en Español](./MANIFEST.es.md) | 🇺🇸 [Read in English](./MANIFEST.md) | 📖 [README (ES)](./README.es.md)
4
+
5
+ Este documento rige el **Paradigma de Universos Multidimensionales de Ingeniería Creativa (Estándar AUM-IC 7)**. No es solo una guía de carpetas; es una estructura física, matemática y de ingeniería de software diseñada para cumplir de manera nativa con las normativas internacionales de calidad **ISO/IEC 25010** e **ISO 27001**.
6
+
7
+ ---
8
+
9
+
10
+ > 🏆 **LA VISIÓN AUM-IC:** Todo proyecto creado desde su inicio o migrado íntegramente al Paradigma AUM-IC es un proyecto que aspira al cumplimiento nativo de los más altos estándares globales. Al adoptar esta arquitectura, el sistema hereda las aristas de calidad de software (**ISO/IEC 25010**), blinda su infraestructura bajo máxima seguridad y privacidad corporativa (**ISO 27001, ISO 27701, SOC 2**), garantiza su testabilidad (**ISO 29119**) y asegura la inclusión y posicionamiento absoluto mediante un código semánticamente perfecto (**ISO 40500 / WCAG / SEO**).
11
+
12
+
13
+ ## 🌌 El Porqué Fundamental: Entropía vs. Perfección Matemática
14
+
15
+ **La programación creada por humanos es entropía pura.** Es energía caótica que se dispersa: código espagueti, dependencias circulares, sistemas que se degradan con el tiempo y lógicas que colapsan.
16
+
17
+ El Universo real, aunque a simple vista parece caótico, es **brutal y matemáticamente preciso**. Desde la física cuántica hasta la mecánica celeste, todo obedece a un diseño quirúrgico impecable.
18
+
19
+ **El Paradigma AUM-IC nace para llevar la programación a esta perfección matemática universal.** Somete el caos del código a las leyes de la física cósmica. Es un modelo mental absoluto, **100% agnóstico al lenguaje** (TypeScript, Python, Rust, Go, C#), que divide el desarrollo en Materia Observable, Fuerzas Invisibles y Leyes del Tiempo.
20
+
21
+ ---
22
+
23
+ ## PARTE I: LA MATERIA OBSERVABLE (Estructura Fractal)
24
+
25
+ El Principio Hermético dicta: *"Como es arriba, es abajo"*. El ensamblaje de componentes sigue un ordenamiento jerárquico estricto. **Esta regla aplica simétricamente para la Interfaz (UI), las APIs (Controladores) y las Bases de Datos (Modelos).**
26
+
27
+ Para detener la entropía, los directorios utilizan obligatoriamente prefijos numéricos:
28
+
29
+ ### ⚛️ Nivel 1: Átomos (`1-atoms/`)
30
+ * **Concepto:** La unidad base indivisible (Botones en UI / Helpers y Utils puros en Backend).
31
+ * **Regla:** 100% ignorantes. No importan otros archivos, no hacen peticiones, no tienen estado.
32
+
33
+ ### 🧬 Nivel 2: Moléculas (`2-molecules/`)
34
+ * **Concepto:** La unión de dos o más átomos (Campos de formulario en UI / Middlewares y Validadores en Backend).
35
+ * **Regla:** Tienen propósito específico pero carecen de lógica de negocio profunda.
36
+
37
+ ### 🦠 Nivel 3: Células (`3-cells/`)
38
+ * **Concepto:** Contenedores funcionales interactivos (Formularios completos en UI / Entidades ORM o Servicios unitarios en Backend).
39
+ * **Regla:** Manejan eventos de usuario pero delegan el procesamiento masivo a capas superiores.
40
+
41
+ ### 🦎 Nivel 4: Organismos (`4-organisms/`)
42
+ * **Concepto:** Bloques complejos y autónomos (Secciones dinámicas en UI / Casos de Uso y Orquestadores en Backend).
43
+ * **Regla:** Agrupan células. Pueden ser inyectados en diferentes planetas y funcionar de manera independiente.
44
+
45
+ ### 🌍 Nivel 5: Planetas (`5-planets/`)
46
+ * **Concepto:** Macro-secciones semánticas (Headers/Footers en UI / Endpoints y Controladores API en Backend).
47
+ * **Regla:** Son el "hogar" de los organismos. Estructuran y enrutan la información.
48
+
49
+ ### 🌌 Nivel 6: Sistemas Solares y Galaxias (`6-layouts/`)
50
+ * **Concepto:** El esqueleto gravitacional maestro (Plantillas maestras en UI / Configuración de Servidores y App Modules en Backend).
51
+ * **Regla:** Manejan los metadatos y abren el "espacio" para que los planetas existan.
52
+
53
+ ---
54
+
55
+ ## PARTE II: LAS FUERZAS INVISIBLES Y LA CINEMÁTICA (Datos y Flujos)
56
+
57
+ Un universo estático está muerto. Estas leyes dictan cómo interactúa la materia.
58
+
59
+ ### 🌑 1. Materia Oscura (Manejo del Estado Global)
60
+ * **El Concepto:** Son los datos globales de la aplicación en memoria (Redux, Zustand, Daemons).
61
+ * **Uso Práctico:** En lugar de pasar un dato bajando por 10 archivos distintos (*Prop Drilling*), guardas ese dato en la "Materia Oscura". Cualquier archivo lo absorbe directamente. Es la **Fuente Única de Verdad**.
62
+ * **Estándar ISO:** Mantenibilidad y Modularidad.
63
+
64
+ ### 🧲 2. Gravedad Cero (Acoplamiento)
65
+ * **El Concepto:** Nivel de Acoplamiento (Dependency Injection).
66
+ * **Uso Práctico:** Un Átomo debe tener "Gravedad Cero". No puede importar conexiones a Base de Datos. La gravedad pesada (lógica compleja) se reserva solo para los Organismos y Planetas.
67
+ * **Estándar ISO:** Reusabilidad y Portabilidad (Principios SOLID).
68
+
69
+ ### ⚡ 3. Velocidad de la Luz y Agujeros de Gusano (Latencia y Caché)
70
+ * **El Concepto:** Peticiones de red, tiempos de espera y memoria a corto plazo.
71
+ * **Uso Práctico:** Superamos el límite de la velocidad de la luz mediante **UI Optimista** (mostrar resultados al instante mientras el dato viaja). Además, utilizamos **Agujeros de Gusano (Redis, Caché de Navegador, CDNs)** para doblar el espacio-tiempo, entregando información frecuente instantáneamente desde la memoria sin tener que hacer el viaje completo hasta la Base de Datos.
72
+ * **Estándar ISO:** Eficiencia de Rendimiento y Escalabilidad.
73
+
74
+ ### 🕸️ 4. La Malla Cósmica (Microservicios e Interoperabilidad)
75
+ * **El Concepto:** Distintas aplicaciones o módulos se comunican a través de "hilos" de energía (APIs, Webhooks, gRPC).
76
+ * **Uso Práctico:** Dos galaxias distintas no comparten bases de datos. Si una galaxia explota, el resto sobrevive ignorando ese hilo cortado (Circuit Breaker).
77
+ * **Estándar ISO:** Tolerancia a Fallos e Interoperabilidad.
78
+
79
+ ### ☄️ 5. Órbitas Cerradas (Ciclo de Vida)
80
+ * **El Concepto:** Los Listeners, WebSockets y procesos en segundo plano.
81
+ * **Uso Práctico:** Todo proceso cíclico debe ser destruido explícitamente al dejar de usarse (Limpieza / Unmount). Una órbita abierta es un planeta rebelde que consume RAM hasta destruir el dispositivo (Memory Leak).
82
+ * **Estándar ISO:** Utilización Eficiente de Recursos.
83
+
84
+ ---
85
+
86
+ ## PARTE III: LEYES DEL TIEMPO Y EL MULTIVERSO (Control de Versiones)
87
+
88
+ ### ⏱️ El Multiverso y las Líneas Temporales (Git)
89
+ * **El Concepto:** El control de versiones no es una herramienta, es la manipulación del espaciotiempo.
90
+ * **Uso Práctico:** Un `commit` congela el universo en el tiempo. Un `branch` crea un Universo Paralelo para experimentar. Jamás se altera el Universo Real (`main`) sin que el Paralelo sea matemáticamente perfecto. Si algo falla, se colapsa la línea temporal (`git revert`).
91
+
92
+ ---
93
+
94
+ ## PARTE IV: CERTIFICACIÓN Y SUPERVIVENCIA (Estándares ISO y Cumplimiento)
95
+
96
+ Para que un proyecto sea considerado formalmente AUM-IC, debe cumplir con los 4 pilares de supervivencia cósmica. Estos garantizan que la plataforma cumpla de forma automatizada y nativa con los estándares más estrictos del mundo corporativo (**ISO 25010, ISO 27001, ISO 27701, ISO 40500, ISO 29119 y SOC 2**).
97
+
98
+ ### 🛡️ 1. Horizonte de Sucesos, Firmas Espectrales y Campos Magnéticos (Seguridad Total)
99
+ * **Las Normas:** ISO/IEC 27001 (Seguridad) e ISO/IEC 27701 (Privacidad de la Información).
100
+ * **El Horizonte y La Singularidad:** Las contraseñas y secretos viven en el Backend (Horizonte). La "Privacy by Design" comprime y cifra identidades para que nadie pueda ver datos en claro (Singularidad).
101
+ * **Firmas Espectrales (Auth y JWT):** Cada petición debe portar una "Firma Espectral" validada criptográficamente (JWT, Sesiones con Cookies `HttpOnly`). Si un viajero presenta una firma alterada, el Middleware rechaza la conexión instantáneamente.
102
+ * **Campos Magnéticos (ORMs y Sanitización):** Así como el campo magnético de la Tierra desvía la radiación solar mortal, el uso estricto de **ORMs (Object-Relational Mapping)** y validadores (ej. Zod) actúa como un escudo magnético. Atrapa, filtra y desvía caracteres maliciosos e Inyecciones SQL o XSS antes de que toquen el núcleo de la base de datos. Está estrictamente prohibido apagar el campo magnético ejecutando "Raw SQL" con inputs de usuario.
103
+
104
+ ### 💥 2. El Colisionador de Hadrones (Testing y Calidad)
105
+ * **La Norma:** ISO/IEC/IEEE 29119 (Pruebas de Software).
106
+ * **Uso Práctico:** Todo Átomo y Organismo debe sobrevivir a colisiones a alta velocidad en ambientes controlados (Unit Testing, E2E, TDD). Si el código se rompe bajo estrés simulado en el pipeline automatizado (CI/CD), el Universo rechaza el despliegue. El caos no entra a Producción.
107
+
108
+ ### 📡 3. Radiación de Fondo Cósmica (Observabilidad y Auditoría)
109
+ * **La Norma:** SOC 2 Tipo II (Integridad de Procesamiento y Disponibilidad).
110
+ * **Uso Práctico:** El Big Bang dejó un rastro que nos cuenta la historia del universo. Del mismo modo, todo error, acción del usuario o caída del servidor deja un **Rastro Radiactivo inmutable** (Telemetría, Sentry, Datadog, Audit Logs). Es imposible silenciar fallos; todo debe ser rastreable forensemente. Esto incluye la observabilidad del cliente (**RUM - Real User Monitoring**), capturando globalmente excepciones del navegador, recursos rotos (404) y *Dead Clicks* (botones inactivos) enviando el rastro instantáneamente al centro de mando.
111
+
112
+ ### 🌍 4. La Biósfera y el Espectro Invisible (Accesibilidad y SEO)
113
+ * **La Norma:** ISO/IEC 40500 (Pautas de Accesibilidad WCAG) y Directrices de Motores de Búsqueda (SEO).
114
+ * **Uso Práctico:** La **Biósfera** exige que el ecosistema visual soporte toda forma de vida humana (validación matemática de contraste de colores, navegación por teclado). Sin embargo, el **Espectro Invisible** (Infrarrojo/Ultravioleta) es como las máquinas ven tu aplicación. Motores de búsqueda (Googlebots) y Tecnologías de Asistencia (Screen Readers) consumen tu código a través de etiquetas Semánticas, *ARIA-labels* y metadatos. Si tu planeta no emite en el espectro invisible, no existe en la web.
115
+
116
+ ## PARTE V: EL MOTOR DE EJECUCIÓN (Protocolo de Creación y Telemetría)
117
+
118
+ Para garantizar que el universo no colapse al expandirse (desarrollo de nuevas *features*) o mutar (refactorización), todo arquitecto AUM-IC debe regirse por el siguiente flujo de operaciones inquebrantable.
119
+
120
+ ### Fase 1: El Protocolo de Mutación Segura
121
+ 1. **Identificar Comportamientos:** Mapear la gravedad (dependencias) y las órbitas (ciclo de vida) del componente antes de alterar su código.
122
+ 2. **Línea Base en el Colisionador:** Escribir los tests automatizados y comprobar que pasan en verde con el código *actual*. Esta es la red de seguridad matemática.
123
+ 3. **Refactorización AUM-IC:** Aplicar la simetría fractal (mover de 1-atoms a 6-layouts, aplicar gravedad cero, aislar lógicas).
124
+ 4. **Punto de Control Temporal (Checkpoint):** Congelar la línea de tiempo en el Multiverso (Commit en Git). Si la entropía ataca, se colapsa la línea temporal sin daños.
125
+ 5. **Fichas de Anatomía:** Comentar el código (JSDoc invisible en producción) explicando el *porqué* atómico para futuras inteligencias artificiales o humanos.
126
+
127
+ ### Fase 2: Observabilidad y Respuesta Inmediata (Telemetría de Supernova)
128
+ 6. **Caja Negra de Logs Atómicos:** Se debe programar un sistema interno de trazabilidad. Toda interacción crítica, desde un fallo silencioso en un Átomo hasta un *Fatal Error* en una Galaxia, genera un Log estructurado. Se establecen *breakpoints* y *checkpoints* internos en la ejecución para permitir análisis forense forense y gestión de fallos.
129
+ 7. **Alarma de Supernova (Intercepción y Alerta en Tiempo Real):** El sistema de logs no es pasivo; es proactivo. Al interceptar un fallo (Warn, Error, Fatal), el paradigma exige emitir un pulso a la Velocidad de la Luz al Centro de Mando de Desarrollo. A través de NTFY, Webhooks (Discord/Telegram), SMS o bots de WhatsApp, el equipo de ingeniería es notificado en el milisegundo exacto del fallo, garantizando soporte técnico preventivo antes de que el usuario final lo reporte.
130
+
131
+
132
+
133
+ ## PARTE VI: LA LEY DE CORRESPONDENCIA (Escalabilidad y Plataformas Agnósticas)
134
+
135
+ El argumento de *"Este paradigma es demasiada sobreingeniería"* nace de la incomprensión de las leyes del universo. **Como es arriba, es abajo.** El estándar AUM-IC 7 obedece a la **Ley de Correspondencia del Kybalión**: un asteroide obedece la misma física que una galaxia, y una App Móvil obedece la misma arquitectura que un ERP de escritorio o una web en la nube. Las fuerzas solo se encienden en proporción a su Masa Crítica.
136
+
137
+ Para mantener la velocidad de desarrollo sin sacrificar las certificaciones ISO, el arquitecto debe clasificar su proyecto:
138
+
139
+ ### 🪨 Nivel 1: El Asteroide (Sistemas de Propósito Único)
140
+ * **Ejemplos:** Landing Pages, Scripts CLI, Apps Móviles unidireccionales (Calculadora, Lector QR), Utilidades Desktop pequeñas.
141
+ * **Materia Observable:** Solo carpetas `1-atoms` a `4-organisms`.
142
+ * **Materia Oscura (Estado Global):** **APAGADA.** No necesitas Redux, Vuex ni Singletons pesados. El estado vive localmente (Energía Cinética).
143
+ * **Campo Magnético Perimetral:** **ENCENDIDO.** Todo input externo es un rayo cósmico mortal. En Web, usas filtros de desafío invisible anti-bots. En Móvil/Desktop, usas validadores biométricos (FaceID) o sanitización estricta (Zod/Regex) para evitar *Buffer Overflows* o ejecución de macros maliciosos.
144
+ * **La Biósfera (Accesibilidad):** **MÁXIMA.** En web es SEO semántico. En Móvil/Desktop, obligas el uso de APIs nativas (*VoiceOver, TalkBack*) para que la tecnología de asistencia pueda "leer" tu interfaz.
145
+
146
+ ### 🌍 Nivel 2: El Planeta (Sistemas Transaccionales y Puntos de Venta)
147
+ * **Ejemplos:** E-Commerce, Puntos de Venta locales (Sistemas de Punto de Venta (POS) locales), Apps Móviles transaccionales.
148
+ * **Agujeros de Gusano (Caché y Offline-First):** **ENCENDIDO.** En la nube usas Redis. En POS Desktop o Móvil, enciendes bases de datos locales incrustadas (SQLite, Realm, CoreData). Si el internet se cae, el planeta sigue girando y facturando gracias al Agujero de Gusano.
149
+ * **Firmas Espectrales (Seguridad de Sesión):** **ENCENDIDO.** Implementas JWT para web, o el **Keychain / Windows Credential Manager** para proteger contraseñas localmente en Desktop/Móvil. Jamás se guarda texto plano en disco.
150
+
151
+ ### 🌌 Nivel 3: La Galaxia (Ecosistemas Masivos y Distribuidos)
152
+ * **Ejemplos:** Sistemas ERP distribuidos en la nube, Core Bancario, Suites de Escritorio pesadas (Suites de escritorio de alto rendimiento).
153
+ * **Malla Cósmica (Microservicios / IPC):** **ENCENDIDA.** En la nube, las galaxias se comunican por APIs REST/gRPC. En Desktop, se comunican mediante hilos aislados (IPC - Inter-Process Communication). Si un hilo colapsa, el programa no se cierra. La arquitectura implementa **Circuit Breakers (Disyuntores)** para cortar comunicación con APIs externas caídas y **Bucles de Auto-Sanación (Exponential Reconnects)** para revivir conexiones a bases de datos sin intervención humana.
154
+ * **Materia Oscura y Telemetría:** **MÁXIMA POTENCIA.** El estado global dicta todo. El sistema de Logs (Radiación de Fondo) reporta cada *Fatal Error* de inmediato vía Sentry, Datadog o Webhooks (NTFY/Discord) al centro de mando.
155
+
156
+ ---
157
+
158
+ ## GLOSARIO TÁCTICO: EL PORQUÉ DE LAS COSAS (Respuestas para la Élite)
159
+
160
+ Para que AUM-IC 7 no sea visto como un capricho estético, todo arquitecto debe saber defender la física de sus decisiones en *cualquier* lenguaje (C#, Python, JS, Swift):
161
+
162
+ * **¿Por qué y cuándo encender el Campo Magnético (ORMs o Query Builders)?**
163
+ * *Cuándo:* Siempre que el software (Web, POS o App) interactúe con una base de datos o sistema de archivos.
164
+ * *Por qué:* Escribir consultas "Raw SQL" (SQL crudo) combinadas con variables del usuario es apagar el campo magnético de tu planeta. Los rayos cósmicos (Inyecciones SQL) freirán tu núcleo, ya sea en un clúster en la nube o en la base local de SQLite de la caja registradora. El ORM actúa como una magnetósfera que purifica los comandos maliciosos antes de que toquen el disco. Además, la materia nunca se destruye: se exige el **Borrado Lógico (Soft Deletes)** y el control estricto de esquemas mediante Archivos de Migración.
165
+
166
+ * **¿Por qué y cuándo hacer un Commit (Punto de Control en el Multiverso)?**
167
+ * *Cuándo:* Jamás al final del día por costumbre. Se hace **cada vez que un átomo o ruta alcanza la estabilidad matemática (Test en verde)**.
168
+ * *Por qué:* El desarrollo es una lucha contra la entropía (el caos). Si en la siguiente hora tu código colapsa, el *commit* te permite colapsar esa línea temporal fallida y regresar instantáneamente al último punto donde el universo era estable.
169
+
170
+ * **¿Por qué destruir los Listeners (Órbitas Cerradas)?**
171
+ * *Cuándo:* Cuando una ventana modal, un componente o una sub-rutina se cierra o destruye.
172
+ * *Por qué:* Un Webhook, un proceso *Background Worker* en C#, o un WebSocket que no se destruye explícitamente se convierte en un "Planeta Errante". Seguirá orbitando invisible en la memoria RAM (Memory Leak) hasta destruir la capacidad del dispositivo, forzando al usuario a reiniciar su computadora o teléfono.
package/MANIFEST.md ADDED
@@ -0,0 +1,64 @@
1
+
2
+ # 🌌 AUM-IC 7 Standard (2026 Edition)
3
+ **Multidimensional Universe Architecture - Engineering Standard**
4
+
5
+ <p align="center">
6
+ <img src="https://img.shields.io/badge/version-7.0.0-crimson?style=flat-square" alt="Version 7.0.0">
7
+ <img src="https://img.shields.io/badge/nature-Clean%20Architecture%20Standard-38bdf8?style=flat-square" alt="Nature">
8
+ </p>
9
+
10
+ > 🌐 **Navigation:** 🇺🇸 [Read in English](./MANIFEST.md) | 🇲🇽 [Leer en Español](./MANIFEST.es.md) | 📖 [README (EN)](./README.md) | 📖 [README (ES)](./README.es.md) | 🌌 [AUM-IC 7 Standard](https://github.com/ingcrea/aum-ic)
11
+
12
+ ## THE PARADIGM
13
+ AUM-IC is not just a folder structure. It is a universal framework of laws that governs software behavior, drawing parallels from quantum mechanics and astrophysics to deliver **Military-Grade Security, High Availability (SRE), and Fractal Scalability**.
14
+
15
+ ### 1. ⚛️ Atomic Physics (The Structure)
16
+ Software must follow fractal symmetry.
17
+ - `1-atoms`: The irreducible elements (Buttons, Inputs).
18
+ - `2-molecules`: Simple compositions (Form Fields).
19
+ - `3-cells`: Reusable blocks (Cards, Navbars).
20
+ - `4-organisms`: Self-contained features (Login Form).
21
+ - `5-planets`: Full views or screens (Dashboard).
22
+ - `6-layouts`: The spatial grid that holds planets.
23
+
24
+ ### 2. 🌌 The 7 Cosmic Forces (SRE & Security Core)
25
+ AUM-IC defines 7 laws that must govern the software's execution engine:
26
+
27
+ 1. **Dark Matter (Global State):** The invisible gravitational pull. State (like Redux or Zustand) connects organisms without direct coupling.
28
+ 2. **Event Horizon (Perimeter Security):** The impenetrable border. Enforces **CSP (Content Security Policy)**, strict Rate Limiting, and JWT signatures. If a request lacks proper spectral signatures, the Middleware rejects it instantly.
29
+ 3. **Magnetic Field (ORM & Sanitization):** Protects the core from cosmic radiation (SQL Injection). Raw SQL is forbidden. Additionally, matter is never truly destroyed: **Soft Deletes** and declarative schema Migrations are mandatory.
30
+ 4. **The Hadron Collider (CI/CD Testing):** Chaos does not enter Production. Before deploying, the pipeline mandates **CVE Vulnerability Audits** (Supply Chain Defense) and deterministic tests.
31
+ 5. **Wormholes (Cache & Offline-First):** Bypasses the speed of light. Uses local SQLite/Realm databases for Desktop/Mobile or Redis for Web, ensuring the system survives network outages.
32
+ 6. **The Cosmic Web (Resilience):** For massive systems. Implements **Circuit Breakers** to cut off failing external APIs and **Exponential Reconnect Loops** to revive database connections autonomously.
33
+ 7. **Cosmic Microwave Background (RUM Observability):** Every action leaves a forensic trace. Enforces **Real User Monitoring (RUM)**, catching global browser exceptions, dead clicks, and 404s, sending real-time alerts to the command center (SOC 2 Compliance).
34
+
35
+ ---
36
+
37
+ ## PART VI: THE LAW OF CORRESPONDENCE (Critical Mass Scalability)
38
+ "As above, so below." AUM-IC obeys the Hermetic Law of Correspondence: an asteroid obeys the same physics as a galaxy, but forces ignite proportionally to their **Critical Mass**.
39
+
40
+ ### 🪨 Level 1: The Asteroid (Single-Purpose Systems)
41
+ * **Examples:** Landing Pages, CLI Scripts, Utility Mobile Apps.
42
+ * **Dark Matter (State):** **OFF.**
43
+ * **Perimeter Magnetic Field:** **MAXIMUM.** Inputs are deadly. Web requires invisible challenge filters (WAF/CAPTCHAs). Desktop/Mobile requires strict biometric validation or Zod sanitization.
44
+ * **The Biosphere (Accessibility/SEO):** **MAXIMUM.** Semantic HTML or native OS Accessibility APIs (VoiceOver/TalkBack).
45
+
46
+ ### 🌍 Level 2: The Planet (Transactional Systems)
47
+ * **Examples:** E-Commerce, Local POS Systems, Transactional Apps.
48
+ * **Wormholes (Cache & Offline-First):** **ON.** Local DBs (SQLite) keep the system running during outages.
49
+ * **Spectral Signatures (Auth):** **ON.** Secrets saved in OS Keychains or secure HttpOnly cookies.
50
+
51
+ ### 🌌 Level 3: The Galaxy (Massive Ecosystems)
52
+ * **Examples:** Cloud ERPs, Core Banking, Heavy Desktop Suites.
53
+ * **The Cosmic Web (Microservices/IPC):** **ON.**
54
+ * **Telemetry & Dark Matter:** **MAXIMUM.**
55
+
56
+ ---
57
+
58
+ ## TACTICAL GLOSSARY (The "Why")
59
+ * **Why use an ORM always?** Writing Raw SQL is shutting down your magnetic field. Cosmic rays (SQL Injections) will fry your core, whether on an AWS cluster or a local cash register POS.
60
+ * **When to Commit?** Never "at the end of the day." Commit the millisecond an atom achieves mathematical stability (Green Test). It is a temporal save point in the multiverse.
61
+ * **Why destroy Listeners?** A background worker or WebSocket that isn't explicitly closed becomes a "Rogue Planet" causing Memory Leaks until it crashes the user's OS.
62
+
63
+ ---
64
+ > 🏛️ Intellectual Property of **Ingeniería Creativa (IngCrea)**. Standard released under CC BY-SA 4.0 / MIT.
package/PUF-15.md ADDED
@@ -0,0 +1,118 @@
1
+ ---
2
+ name: aumic-puf15
3
+ description: Protocolo Universal contra Fallos (PUF-15) del Estándar AUM-IC 7:2026. Matriz de 15 compuertas de calidad agnóstica (Rust, Astro, Python, PHP, C#) para auditoría, detección, resolución metódica de fallos, refactorización limpia sin deuda técnica y blindaje de ergonomía del sistema operativo.
4
+ ---
5
+ # Protocolo Universal contra Fallos (PUF-15) — AUM-IC 7:2026
6
+ ### Matriz de Compuertas de Calidad Agnóstica (Rust, Astro, Python, PHP, C#)
7
+
8
+ Cuando el usuario invoque **PUF-15** (o PUF) o solicite resolver un fallo bajo este estándar, se debe ejecutar con rigor militar este ciclo cerrado de 15 compuertas consecutivas (G1 a G15), reportando el progreso y las evidencias en consola:
9
+
10
+ ---
11
+
12
+ ## Matriz de Compuertas de Calidad (G1 - G15)
13
+
14
+ ### 1. G1: Mapeo de Comportamientos y Límites (Behavior & Boundary Mapping)
15
+ - **Alcance:** Analizar el flujo completo de ejecución y ciclo de vida de la UI.
16
+ - **Acciones:**
17
+ - Identificar entradas, tipos, contratos, mutaciones y salidas esperadas.
18
+ - Definir formalmente casos de borde: valores nulos (`None`, `null`, `Option::None`), cadenas vacías, desbordamientos numéricos, condiciones de carrera/concurrencia y accesos no autenticados o permisos insuficientes.
19
+ - **Aislamiento del Bucle de UI:** Prohibido disparar I/O pesado, comandos o procesos síncronos dentro de temporizadores o callbacks de interfaz gráfica (`slint::Timer`, `setInterval`, `requestAnimationFrame`). Deben delegarse a tareas de fondo asíncronas con canales o cachearse de forma atómica.
20
+
21
+ ### 2. G2: Test de Reproducción — Fase Roja (Reproduction Test-First)
22
+ - **Alcance:** Probar y demostrar empíricamente el defecto antes de tocar una sola línea de lógica.
23
+ - **Acciones:**
24
+ - Escribir un test automatizado (unitario, integración o CLI determinista) que replique la falla reportada con fidelidad.
25
+ - Ejecutar el test y confirmar que falle contra el código actual (*Red State*), validando que el bug ha sido capturado de forma determinista.
26
+
27
+ ### 3. G3: Checkpoint Inmutable (State Snapshot)
28
+ - **Alcance:** Blindaje de rollback y preservación de estado pre-mutación.
29
+ - **Acciones:**
30
+ - Generar un respaldo atómico timestamped en `checkpoints/` o tag git (`<archivo>.bak_YYYYMMDD_HHMMSS`).
31
+ - Registrar hash de verificación o estado previo para permitir reversión instantánea sin pérdida de información ni corrupción colateral.
32
+
33
+ ### 4. G4: Reparación Focalizada y Refactorización Limpia (Pure Logic Refactor)
34
+ - **Alcance:** Corrección quirúrgica de la causa raíz.
35
+ - **Acciones:**
36
+ - Atacar la causa raíz sin aplicar parches superficiales ni parches ciegos.
37
+ - Cero código muerto, cero dependencias circulares, bajo acoplamiento y alta cohesión.
38
+ - Cumplir principios de código limpio del stack correspondiente:
39
+ - **Rust:** Cero `unwrap()` no justificado; manejo exhaustivo con `Result` / `Option`.
40
+ - **Astro:** Componentes puros, separación de lógica frontmatter y JSX estático/reactivo.
41
+ - **Python:** Tipado estricto (Type hints), PEP 8, manejo explícito de excepciones.
42
+ - **PHP:** POO fuertemente tipada, tipos estrictos (`declare(strict_types=1);`), inyección de dependencias.
43
+ - **Prohibición Absoluta de CSS Inline:** Queda terminantemente prohibido inyectar atributos `style="..."` o estilos en línea en el HTML/PHP/JSX/Astro. Si se encuentran estilos inline preexistentes, es obligatorio refactorizarlos y extraerlos a su archivo `.css` o `.scss` respectivo con clases semánticas estructuradas.
44
+
45
+ ### 5. G5: Validación de Test y No-Regresión — Fase Verde (Green State & Non-Regression)
46
+ - **Alcance:** Verificación de solución completa y estabilidad perimetral.
47
+ - **Acciones:**
48
+ - Reejecutar el test de reproducción desarrollado en G2 y validar el 100% de aserciones aprobadas (*Green State*).
49
+ - Ejecutar la suite de pruebas perimetral/completa para certificar cero efectos secundarios o regresiones colaterales.
50
+
51
+ ### 6. G6: Análisis Estático, Tipado y Compilador Estricto (Static Gate)
52
+ - **Alcance:** Tolerancia cero a advertencias del compilador o linters.
53
+ - **Acciones:**
54
+ - Ejecutar compilador y análisis estático en modo estricto según el stack:
55
+ - **Rust:** `cargo clippy -- -D warnings` y `cargo check`.
56
+ - **Astro / TypeScript:** `npx astro check` y `npx eslint`.
57
+ - **Python:** `ruff check` y `mypy --strict`.
58
+ - **PHP:** `php -l` (sintaxis) y `phpstan analyse --level=max`.
59
+ - Cero advertencias o errores tolerados.
60
+
61
+ ### 7. G7: Documentación Semántica y Registro ADR (Intent & Architecture Decision)
62
+ - **Alcance:** Memoria técnica e intención arquitectónica.
63
+ - **Acciones:**
64
+ - Explicar en comentarios de código el *por qué* de la decisión y no solo el *qué hace*.
65
+ - Registrar en `BITACORA.md` de la raíz del proyecto bajo el formato estricto:
66
+ ```markdown
67
+ [Timestamp] | Contexto | Decisión | Consecuencia
68
+ ```
69
+
70
+ ### 8. G8: Aplanadora POSIX y Sanitización Anti-Mojibake (aumic-sanitizer)
71
+ - **Alcance:** Integridad de codificación y terminación de línea.
72
+ - **Acciones:**
73
+ - Barrer los archivos con `node C:\Users\NexoRemoto\Proyectos\aumic-sanitizer\index.js` (o `npx aumic-sanitizer`).
74
+ - Purgar de raíz cualquier carácter corrupto Mojibake (ej. `ó`, `’`, `ñ`) forzando UTF-8 puro sin BOM.
75
+ - Aplanar y forzar saltos de línea Unix LF (`\n`), erradicando Windows CRLF (`\r\n`).
76
+
77
+ ### 9. G9: Integridad Operativa, Permisos y Secretos Zero-Trust (Ops Shield)
78
+ - **Alcance:** Blindaje de infraestructura y seguridad de credenciales.
79
+ - **Acciones:**
80
+ - Verificar permisos restrictivos en sistema de archivos (`chmod 644` archivos / `755` directorios, llaves SSH `600`, propietario correcto del servicio `chown`).
81
+ - Cero credenciales, tokens o contraseñas en texto plano. Gestionar accesos vía variables de entorno seguras o `SECRETOS.py`.
82
+
83
+ ### 10. G10: Invalidación y Purga de Estado Efímero (State Flush)
84
+ - **Alcance:** Consumo garantizado del código fresco en runtime.
85
+ - **Acciones:**
86
+ - Purgar deterministamente memoria compartida, caché de objetos (`wp cache flush`, Redis, Memcached, Opcache).
87
+ - Limpiar transientes de base de datos o reiniciar workers (Gunicorn, Systemd, SSR Node, PM2) para garantizar que los clientes o servicios consuman el código recién validado sin residuos en memoria.
88
+
89
+ ### 11. G11: Blindaje de Ergonomía del SO, Foco de Ventanas y Aislamiento UI (OS & Desktop Ergonomics Gate)
90
+ - **Alcance:** Experiencia de usuario inmaculada, ausencia total de robo de foco y persistencia limpia en el Sistema Operativo.
91
+ - **Acciones:**
92
+ - **Inmunidad al Robo de Foco (Zero-Focus Stealing):** Toda invocación de subprocesos en Windows (`Command::new`, `powershell`, `cmd`, `sc`, `reg`, `net`) DEBE incorporar obligatoriamente `.creation_flags(0x08000000)` (`CREATE_NO_WINDOW`) para erradicar consolas emergentes o parpadeos (flickering) que desactiven la ventana activa del usuario.
93
+ - **Zero-Ghost Processes:** Comprobar que al cerrar la aplicación no queden procesos huérfanos (`conhost`, workers zombies) consumiendo CPU.
94
+ - **Caché de Consultas de Privilegios:** Consultas de privilegios (`is_admin`) o del SCM deben usar caché atómico perezoso (`AtomicU8` / `OnceLock`), evitando invocaciones repetidas de subprocesos en bucles de tiempo.
95
+
96
+ ---
97
+ ### 12. G12: Topología de Rutas Vivas & Dead Link Sweeper (Living Routes Gate)
98
+ - **Alcance:** Integridad de navegación sin pantallas 404 ni rutas huérfanas en Web (Astro, React, Next, Vue), Mobile (Flutter, React Native) y Desktop (Slint, C /WPF, Tauri).
99
+ - Cero enlaces rotos hacia destinos locales inexistentes.
100
+
101
+ ### 13. G13: Grafo de Interactividad & Erradicación Zombie (Living UI Actions Gate)
102
+ - Cero botones decorativos, pseudoelementos inertes o acciones no conectadas que no responden al usuario.
103
+
104
+ - Todo control interactivo debe resolver en un evento real (API, modal, mutación o feedback).
105
+
106
+ ### 14. G14: Traza de Contratos HTTP & Endpoints Vivos (Living API Contract Gate)
107
+ - Consistencia granular entre las llamadas del cliente y los controladores declarados en el backend.
108
+ - Cero llamadas fetch o solicitudes HTTP a paths huérfanos o inexistentes.
109
+
110
+ ### 15. G15: Headless E2E Crawler & Runtime Exceptions (Headless Handshake Gate)
111
+ - Detección de errores silenciosos, excepciones de runtime y bloqueos de interfaz.
112
+ - Certificación del pase limpio de interactividad antes de liberar a producción.
113
+
114
+ ## Reglas Inviolables de Ejecución
115
+
116
+ 1. **Cero Complacencia o Respuestas Evasivas:** No dejar tareas a medias ni usar marcadores vacíos (`// el resto del código aquí`).
117
+ 2. **Determinismo Técnico:** Todo entregable debe ser determinista, verificado en consola y listo para producción.
118
+ 3. **Reporte por Compuerta:** Reportar siempre el estado de cada compuerta (G1 a G15) con su respectiva evidencia de consola.
@@ -0,0 +1,70 @@
1
+ # PUF G16 – Integración de auditorías Lighthouse
2
+
3
+ ## Objetivo
4
+ Incorporar métricas críticas de rendimiento, accesibilidad, SEO y buenas prácticas que Lighthouse evalúa, para enriquecer el Protocolo Universal de Fallos (PUF) bajo el paradigma AUM‑IC 7:2026.
5
+
6
+ ## KPI Prioritarios de Lighthouse (basados en Google PSI)
7
+ | Categoría | Métrica | Umbral de PASS | Umbral de WARN | Umbral de FAIL |
8
+ |-----------|---------|----------------|----------------|----------------|
9
+ | **Core Web Vitals** | **Largest Contentful Paint (LCP)** | < 2.5 s | 2.5 s – 4 s | > 4 s |
10
+ | | **Cumulative Layout Shift (CLS)** | < 0.1 | 0.1 – 0.25 | > 0.25 |
11
+ | | **First Input Delay (FID)** (o **Total Blocking Time** si FID no está disponible) | < 100 ms | 100 ms – 300 ms | > 300 ms |
12
+ | **Performance** | **Speed Index** | < 3 s | 3 s – 4.5 s | > 4.5 s |
13
+ | | **Time to Interactive (TTI)** | < 5 s | 5 s – 7 s | > 7 s |
14
+ | **Accessibility** | **Contrast Ratio** (texto vs fondo) | ≥ 4.5:1 (normal) ≥ 3:1 (large) | – | < 3:1 |
15
+ | | **ARIA roles & labels** | Todos presentes | – | Falta alguno |
16
+ | | **Form labels** | 100 % etiquetado | – | < 100 % |
17
+ | **SEO** | **Meta description** | Presente y 50‑160 caracteres | – | Ausente o fuera de rango |
18
+ | | **Title length** | 50‑60 caracteres | – | < 30 o > 70 |
19
+ | | **Canonical link** | Presente y válido | – | Ausente o inválido |
20
+ | **Best Practices** | **HTTPS** | Sí | – | No |
21
+ | | **Sin contenido mixto** | Sí | – | No |
22
+ | | **Política de caché** (Cache‑Control) | > 1 día para assets estáticos | – | < 1 día |
23
+
24
+ ## Mapeo a checkpoints del PUF y pesos (siguiendo la distribución de Google PSI)
25
+ - **G16‑01**: LCP – **Peso 10 %** del bloque G16.
26
+ - **G16‑02**: CLS – **Peso 10 %**.
27
+ - **G16‑03**: FID/TBT – **Peso 10 %**.
28
+ - **G16‑04**: Speed Index – **Peso 8 %**.
29
+ - **G16‑05**: TTI – **Peso 7 %**.
30
+ - **G16‑06**: Accesibilidad (contrast, ARIA, labels) – **Peso 15 %**.
31
+ - **G16‑07**: SEO (meta, title, canonical) – **Peso 10 %**.
32
+ - **G16‑08**: Buenas prácticas (HTTPS, mixed‑content, cache) – **Peso 10 %**.
33
+ - **G16‑09**: Peso agregado de **Performance** dentro del PUF global – **40 %** del puntaje total (suma de los pesos anteriores).
34
+ - **G16‑10**: Peso de **Accesibilidad** dentro del PUF global – **15 %**.
35
+ - **G16‑11**: Peso de **SEO** dentro del PUF global – **10 %**.
36
+ - **G16‑12**: Peso de **Best Practices** dentro del PUF global – **10 %**.
37
+
38
+ ## Umbrales de salud del PUF (Google PSI style)
39
+ - **Excelente**: Todos los KPI en PASS.
40
+ - **Adecuado**: Máximo 2 WARN, sin FAIL.
41
+ - **Deficiente**: ≥ 1 FAIL o > 2 WARN.
42
+
43
+ ## Prototipo de auditoría Lighthouse (`lighthouse-audit.js`)
44
+ Se añadirá un script Node que:
45
+ 1. Recibe una URL como argumento.
46
+ 2. Ejecuta `lighthouse` con `--only-categories=performance,accessibility,seo,best-practices`.
47
+ 3. Extrae los scores y métricas clave (LCP, CLS, FID/TBT, Speed Index, TTI, contrast, ARIA, etc.).
48
+ 4. Genera un JSON compatible con el formato actual de `report-generator.js`.
49
+ 5. Opcional: actualiza el puntaje global del PUF según los pesos definidos.
50
+
51
+ ## Integración CI/CD (opciones)
52
+ - **GitHub Actions**: workflow que instala `node`, corre `npm ci`, ejecuta `node scripts/lighthouse-audit.js <URL>`, falla si algún KPI está en FAIL y publica artefacto HTML.
53
+ - **Azure Pipelines**: pipeline YAML con etapas `npm install`, `npm run lighthouse-audit -- <URL>`, `PublishTestResults` para fallos.
54
+ - **GitLab CI**: similar a GH Actions, usando `script:` secciones.
55
+ - **Local on‑demand**: ejecutable vía `npx lighthouse-audit <URL>` o `npm run lighthouse-audit -- <URL>`.
56
+
57
+ ## Dependencias
58
+ ```bash
59
+ npm i lighthouse chrome-launcher --save-dev
60
+ ```
61
+
62
+ ## Próximos pasos
63
+ 1. Crear `scripts/lighthouse-audit.js` con el esqueleto descrito.
64
+ 2. Extender `report-generator.js` para consumir los nuevos campos.
65
+ 3. Añadir script a `package.json` (`"lighthouse-audit": "node scripts/lighthouse-audit.js"`).
66
+ 4. Configurar CI (GitHub Actions o Azure Pipelines) según tu preferencia.
67
+ 5. Ejecutar pruebas en `https://segurosiller.com/` y validar visualmente.
68
+
69
+ ---
70
+ *Este documento está listo para ser versionado en el repositorio `aumic-puf`.*