Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

feat(windows): limpiar datos propios al desinstalar con consentimiento

Abierto
#133 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
nodejs, rust
Área
desktop, tooling

Línea de trabajo

Start by locating the Tauri per-user initialization path and the real NSIS installer template, then inspect the proposed cleanup helper and its hooks. Trace uninstallation modes, including _?=, and identify tests for stable-profile paths, additional accounts, unsafe links, partial failures, and preservation during updates. The work is not ready to declare done until NSIS is built and validated on real Windows, with the 178 Rust and 17 Node.js checks passing.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

status:approved type:feature
Pre-flight checks
  • I searched existing issues and found no duplicate.
  • I understand that this proposal requires product review before implementation.
Problem to solve

Main d097bc3 no contiene el helper ni los hooks propios de limpieza. Se necesita una opción explícita de borrado de datos de Quorb al desinstalar NSIS, sin borrar sesiones o datos ajenos ni limpiar durante una actualización.

Proposed solution

Recuperar el helper per-user ejecutado antes de inicializar Tauri y un hook NSIS opt-in. Mantener datos por defecto, restringir identidades/rutas/credenciales propias, rechazar enlaces y fallar de forma visible ante limpieza parcial.

Affected area

Application behavior

Scope and non-goals
  • Ejecutar limpieza solo con consentimiento explícito en desinstalación interactiva.
  • Conservar datos en silent, passive, update y retirada iniciada por el instalador; comprobar el caso _?= con el template NSIS real.
  • Eliminar solo rutas del perfil estable y credenciales propias, incluidas cuentas adicionales; no leer valores secretos.
  • Rechazar rutas inseguras/enlaces y preservar datos externos en las pruebas negativas.
  • Parar y mostrar error si falla el acceso a credenciales o el borrado, sin anunciar éxito falso.
  • Mantener empaquetado MSI/Linux/macOS y no restaurar el canal DEV retirado.
  • Compilar y validar NSIS en Windows real, incluidos modos de conservación, antes de dar por cerrada la issue.

Candidato local: fix/recover-uninstall-cleanup, commits 3474208 y ba57241; 641 líneas frente a main, con excepción de tamaño de unidad coherente aprobada durante el rescate. Evidencia: 178 Rust pasan/1 ignorado; 17 checks Node pasan. El fixture con temporal enlazado se reprodujo RED y se corrigió GREEN, sin relajar controles de producción. Revisión independiente y revisión nativa del rescate realizadas.

Límites: no se ha validado Windows/NSIS real; no está confirmada la conservación de _?= en $CMDLINE. El preflight y el borrado no acreditan atomicidad frente a cambios concurrentes de rutas. Estas limitaciones bloquean declarar la solución lista para integrar.

Fuera de alcance: borrado automático/silencioso, limpieza multiplataforma completa, limpieza de MSI, firma, certificados, releases y datos de otras aplicaciones. La issue #20 es antecedente de firma, no duplicado ni cierre de este trabajo.

Alternatives considered

Borrar todo sin consentimiento: descartado. Confiar solo en la limpieza genérica del instalador no cubre las credenciales ni su propiedad; la integración debe comprobarse en el template y runtime reales.

Lenguaje dominante
TypeScript
Estrellas
10
Forks
2
Merge medio
3 h 22 min
PR fusionados (30 d)
87

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de egdev6/quorb

Todos los issues de egdev6/quorb

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.