diff --git a/CHANGELOG.md b/CHANGELOG.md index 69cdbb4..658e582 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,7 +11,42 @@ y el versionado sigue [Versionado Semántico](https://semver.org/lang/es/): - **PARCHE** — arreglos de errores --- +## [1.9.0] — 2026-06-12 +### Añadido +- Informe de wallet completo. Tras cargar tu xpub (watch-only), el botón + "Analizar wallet" examina el conjunto de tus transacciones y produce un + informe con tres partes: salud general (ALTA/MEDIA/BAJA según reutilización + de direcciones y vinculación), clusters de vinculación detectados por la + heurística CIOH (common-input-ownership: direcciones que gastaste juntas y + que un observador asume del mismo dueño), e historial de cada transacción + con su banda de privacidad. Exportable a JSON y Markdown. Es la visión de + conjunto que ningún explorador ofrece: no analiza una transacción aislada, + sino qué puede agrupar un observador de toda tu actividad. El escaneo se + hace por lotes con pausas para no saturar el nodo, y todo el cálculo ocurre + en el navegador. +- Presentación de resultados reorganizada. El informe de privacidad ahora + abre con un resumen ("N señales a revisar · M correctas · K informativas"), + mantiene los problemas siempre visibles y agrupa las señales correctas e + informativas en secciones colapsables. Al desplegar un problema, la + explicación didáctica aparece directa, con una línea "Qué puedes hacer" + según el caso (ya está en la cadena / depende de tu wallet / puedes + evitarlo al construir la transacción). +### Cambiado +- Las recomendaciones usan un lenguaje más claro y menos técnico: "depende + del wallet" y "puedes evitarlo" en lugar de etiquetas crípticas. El peso de + cada señal en la banda se describe como alto/medio/bajo en vez de un número. + +### Corregido +- El monitor del sistema (system-metrics.js) ya no usa la librería express: + ahora funciona solo con Node.js, sin dependencias ni `npm install`. Descargar + y ejecutar. Esto elimina el error "Cannot find module 'express'" que veían + los usuarios nuevos. +- Los nombres de proceso en "Procesos destacados" se muestran limpios: un + servicio Node con flags (p.ej. Mempool con --max-old-space-size) aparece + como "node (index.js)" en vez de mostrar el argumento crudo. +- La medición de CPU del monitor usa una ventana de 500ms para una lectura + más estable y coherente con la de herramientas como `top`. ## [1.8.0] — 2026-06-04 ### Añadido diff --git a/dashboard.html b/dashboard.html index ec9c300..2a8681b 100644 --- a/dashboard.html +++ b/dashboard.html @@ -2150,10 +2150,78 @@ const [expanded,setExpanded] = useState(null); const [showDidactic,setShowDidactic] = useState(null); const [showReport,setShowReport] = useState(false); + const [showOkGroup,setShowOkGroup] = useState(false); + const [showInfoGroup,setShowInfoGroup] = useState(false); if (!analysis) return null; const {score,checks,summary,summaryColor,wallets,band} = analysis; const report = generateReport(analysis, tx); + // Texto de acción según accionabilidad — orienta sin sonar a reproche + const actionText = (a) => + a==="no_corregible" ? "Esto ya quedó registrado en la cadena y no se puede cambiar. Tenlo en cuenta para próximas transacciones." + : a==="wallet" ? "Qué puedes hacer: esto depende de tu software de wallet. Otro wallet (o configuración) lo evitaría." + : "Qué puedes hacer: este patrón depende de cómo se construye la transacción. Puedes evitarlo en próximos envíos."; + + const actionLabel = (a) => + a==="no_corregible" ? "ya en chain" : a==="wallet" ? "depende del wallet" : "puedes evitarlo"; + + // Render de un check. isProblem=true → didáctica visible directamente al + // expandir (sin segundo clic); en correctas/informativas queda tras botón. + const renderCheck = (check, isProblem) => ( +