You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 1acd97e
Browse filesBrowse the repository at this point in the historyBrowse files
release: CA-O 2.2.8 con fix anti-cuelgue de Overclock
Overclock:
- Timeout por-knob (30 s) + loop de lectura en background: la
pestana ya no puede quedarse en Sondeando eternamente; si un
ajuste no responde, su fila sale degradada con motivo en vez
de tumbar la pagina (overclock-row-timed-out ES/EN).
- Registrador black-box de pasos en el refresh + breadcrumb de
cancelacion para diagnosticar en campo.
- Harness con rowTimeout inyectable; 2 tests nuevos del timeout.
Limpieza TEMP:
- El mensaje informa eliminados + omitidos + politica (1 dia).
- Se borran carpetas vacias dejadas por la limpieza.
- package.ps1 conserva solo los zips de la version en curso.
Version 2.2.7 -> 2.2.8. Suite 1705 passed, 0 failed.
Copy file name to clipboardExpand all lines: CHANGELOG.md
+11-1Lines changed: 11 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,9 +1,19 @@
1
-
# Changelog
1
+
# Changelog
2
2
3
3
Formato basado en [Keep a Changelog](https://keepachangelog.com/es-ES/1.1.0/).
4
4
5
5
## [Unreleased]
6
6
7
+
## [2.2.8] - 2026-10-11
8
+
9
+
### Corregido
10
+
-**Overclock ya no puede quedarse colgado en "Sondeando hardware".** El bucle por ajuste corria entero en el hilo UI con llamadas nativas sin timeout (NVML/WMI): si una no volvia, la pagina quedaba en sondeo eterno sin filas y sin log. Ahora el loop va en background con timeout de 30 s por ajuste; el que agota pasa a fila degradada (`overclock-row-timed-out`, no accionable) y el sondeo siempre termina.
11
+
-**Limpieza de temporales informa lo omitido y vacia carpetas vacias.** El mensaje dice cuantos ficheros elimino y cuantos omitio (recientes de menos de 1 dia o en uso); ademas borra las carpetas vacias que quedaban (antes solo borraba ficheros y el %TEMP% parecia intacto).
12
+
-**Retencion automatica de zips de release.**`package.ps1` conserva solo la version en curso en `artifacts/` para que no se acumulen gigas de versiones viejas.
13
+
14
+
### Probado
15
+
- Suite completa: **1705 passed, 0 failed** en Release (2.2.7: 1701; +2 timeouts de filas Overclock, +2 tests de carpetas vacias).
**Descargas v2.2.7:**[CA-O-Instalador.exe (132 MB, instalador Inno Setup)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.7/CA-O-Instalador.exe) | [CA-O.Setup.exe (135 MB, descargador de un solo exe: baja el paquete y abre el instalador)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.7/CA-O.Setup.exe) | [CA-O-Setup-GUI-x64.zip (88 MB, paquete completo offline)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.7/CA-O-Setup-GUI-x64.zip) | [CA-O-Setup-GUI-x64.exe (instalador con asistente Inno Setup)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.7/CA-O-Setup-GUI-x64.exe) | [SHA256SUMS.txt](https://github.com/Pyromesis/CA-O/releases/download/v2.2.7/SHA256SUMS.txt) | [Notas de la versión](https://github.com/Pyromesis/CA-O/releases/tag/v2.2.7) | [Documentación](docs/ARCHITECTURE.md)
13
+
**Descargas v2.2.8:**[CA-O-Instalador.exe (132 MB, instalador Inno Setup)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.8/CA-O-Instalador.exe) | [CA-O.Setup.exe (135 MB, descargador de un solo exe: baja el paquete y abre el instalador)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.8/CA-O.Setup.exe) | [CA-O-Setup-GUI-x64.zip (88 MB, paquete completo offline)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.8/CA-O-Setup-GUI-x64.zip) | [CA-O-Setup-GUI-x64.exe (instalador con asistente Inno Setup)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.8/CA-O-Setup-GUI-x64.exe) | [SHA256SUMS.txt](https://github.com/Pyromesis/CA-O/releases/download/v2.2.8/SHA256SUMS.txt) | [Notas de la versión](https://github.com/Pyromesis/CA-O/releases/tag/v2.2.8) | [Documentación](docs/ARCHITECTURE.md)
14
14
15
15
---
16
16
@@ -43,7 +43,7 @@
43
43
44
44
## Resumen ejecutivo
45
45
46
-
**CA-O 2.2.7** es una aplicación **100% nativa Windows** escrita en **.NET 10 + WinUI 3 (Windows App SDK 2.4)**. No es una colección de tweaks: **mide** hardware, térmicas, red, almacenamiento, drivers y postura de seguridad **antes** de recomendar. Cada cambio pertenece a un **bucket analizado-primero** (`Recommended` / `Optional` / `Experimental` / `SecuritySensitive` / `NotApplicable` / `Blocked`) y se ejecuta bajo el flujo transaccional `PRECHECK → SNAPSHOT → APPLY → VERIFY → COMMIT` con **rollback automático y verificación post-reversión**.
46
+
**CA-O 2.2.8** es una aplicación **100% nativa Windows** escrita en **.NET 10 + WinUI 3 (Windows App SDK 2.4)**. No es una colección de tweaks: **mide** hardware, térmicas, red, almacenamiento, drivers y postura de seguridad **antes** de recomendar. Cada cambio pertenece a un **bucket analizado-primero** (`Recommended` / `Optional` / `Experimental` / `SecuritySensitive` / `NotApplicable` / `Blocked`) y se ejecuta bajo el flujo transaccional `PRECHECK → SNAPSHOT → APPLY → VERIFY → COMMIT` con **rollback automático y verificación post-reversión**.
47
47
48
48
La UI **siempre eleva** (`app.manifest``requireAdministrator` → UAC en cada inicio) pero **toda mutación privilegiada cruza** al servicio Windows `CAO.Privileged` (SYSTEM) vía **Named Pipe autenticado** con ACL restrictiva, validación de esquema tipado, ventana de 30 s, nonce y protección anti-replay. Sin el servicio, la app opera en **modo solo lectura** (diagnóstico + benchmark disponibles). El servicio es `start= delayed-auto` por diseño: tras un reinicio arranca solo con retardo; si la app lo encuentra aún detenido, lo levanta (`sc start` + espera de readiness con ping al pipe hasta 8 s) al comprobar, o lo re-registra con `Ajustes → Instalar ahora` sin necesitar el repositorio.
49
49
@@ -80,7 +80,7 @@ La UI **siempre eleva** (`app.manifest` `requireAdministrator` → UAC en cada i
|**Servicios**| System.ServiceProcess.ServiceController |**8.0.1**|`CAO.Privileged` como `BackgroundService`|
83
-
|**Build**|`Directory.Packages.props` + `Directory.Build.props` + `Version.props` (single source `2.2.7`) | Centralizado | Un lugar para bump de versión/paquetes |
83
+
|**Build**|`Directory.Packages.props` + `Directory.Build.props` + `Version.props` (single source `2.2.8`) | Centralizado | Un lugar para bump de versión/paquetes |
@@ -677,15 +677,15 @@ Cada perfil es **dinámico** — no es lista fija. Ej. `maximum-power-plan` solo
677
677
678
678
### Opción A — Un solo exe (lo más fácil)
679
679
680
-
1. Descarga [CA-O.Setup.exe (135 MB)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.7/CA-O.Setup.exe) — es el único archivo que necesitas
680
+
1. Descarga [CA-O.Setup.exe (135 MB)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.8/CA-O.Setup.exe) — es el único archivo que necesitas
681
681
2. Ejecútalo (pide UAC) → deriva al instalador gráfico en español: instala app + servicio y abre CA-O. Sin consola: lo trae todo dentro
682
682
683
683
> Autocontenido, log en `%TEMP%\CA-O-Setup.log`
684
-
> Tambien disponible [CA-O-Instalador.exe (132 MB)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.7/CA-O-Instalador.exe): instalador Inno Setup que pone app + servicio + atajos sin pasos extra.
684
+
> Tambien disponible [CA-O-Instalador.exe (132 MB)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.8/CA-O-Instalador.exe): instalador Inno Setup que pone app + servicio + atajos sin pasos extra.
685
685
686
686
### Opción B — Instalador GUI offline (88 MB)
687
687
688
-
1. Descarga [CA-O-Setup-GUI-x64.zip (88 MB)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.7/CA-O-Setup-GUI-x64.zip) y verifica el hash con `SHA256SUMS.txt`
688
+
1. Descarga [CA-O-Setup-GUI-x64.zip (88 MB)](https://github.com/Pyromesis/CA-O/releases/download/v2.2.8/CA-O-Setup-GUI-x64.zip) y verifica el hash con `SHA256SUMS.txt`
2. Ejecútalo como admin: descarga el paquete `CA-O-Setup-GUI-x64.zip` desde GitHub Releases (requiere internet), deriva al instalador gráfico y continúa solo
@@ -801,7 +801,7 @@ dotnet test --filter "FullyQualifiedName~GameCompatibility"
801
801
-**Empaquetado:**`scripts/package.ps1` genera ZIP versionado `CA-O-{versión}-win-x64.zip` + hash SHA-256. `scripts/build-release.ps1` publica `ui` y `service` como self-contained y `gui-installer` como self-contained **sin single-file** (requisito WinUI 3)
:OperationResult.Ok("No quedaban ficheros antiguos para limpiar."));
244
+
returnTask.FromResult(deleted>0||dirsRemoved>0
245
+
?OperationResult.Ok($"Limpieza completada: {deleted} fichero(s), {FormatSize(bytes)} liberados, {skipped} omitido(s) (en uso o sin acceso), {dirsRemoved} carpeta(s) vacía(s) eliminadas. Solo se borran ficheros antiguos; los recientes se conservan.")
246
+
:OperationResult.Ok("No quedaban ficheros antiguos para limpiar. Solo se borran ficheros antiguos; los recientes y los que están en uso se conservan."));
0 commit comments