🔒 Privacidad local

RootCause Web Inspector no tiene servidores. No hay cuenta, no hay registro, no hay nube, no hay analítica, no hay crash reporting. No existe un lugar al que mandar tus datos porque no existe ese lugar.

⚠️ Corrección desde la v0.2.0

Hasta la v0.1.0 este producto afirmaba que no lee las páginas. Con la llegada de RootCause Browser Guard esa frase dejó de ser exacta, y una afirmación absoluta que ya no es cierta es peor que no haber afirmado nada. La afirmación corregida y verificable es esta:

RootCause Browser Guard analiza localmente geometría, atributos estructurales, tipos de campo y posibles nombres de dominio visibles. Nunca recoge valores introducidos por el usuario, texto libre, HTML completo, imágenes, capturas de pantalla ni contenido de correo. Solo conserva evidencia mínima cuando existe un evento sospechoso.

Browser Guard viene desactivado y exige activación informada. Apagado, no instala ni un observador. El detector puede examinar como mucho 240 caracteres de la franja superior de una ventana sospechosa, y solo para extraer nombres de host: el texto se descarta en la misma función, no se envía, no se persiste y no aparece en ningún export.

Qué se lee, y qué no

Dato Se lee NO se lee
Cookies Dominio, nombre, Secure, HttpOnly, SameSite, caducidad El valor de la cookie
Correo Que existen cookies vivas para el dominio del proveedor Mensajes, remitentes, asuntos, tu dirección
Extensiones Nombre, versión, estado, origen y permisos declarados Su código, sus datos, lo que hace
Descargas Nombre de archivo, URL de origen, tamaño, fecha El contenido del archivo
Permisos Origen y estado de cámara/micrófono/ubicación/notificaciones Nada más
Almacenamiento Bytes usados y número de claves, por origen abierto El contenido de localStorage o IndexedDB
Navegador Nombre, versión, plataforma, idioma, DNT, cookies de terceros Historial, marcadores, contraseñas
Páginas
Browser Guard · opt-in
Geometría de ventanas flotantes, atributos estructurales, tipos de campo y hostnames visibles en la franja superior de una ventana sospechosa Lo que escribes, texto libre, HTML, imágenes, capturas de pantalla, el DOM completo, el contenido de tu correo

Dónde van

A un único sitio: http://127.0.0.1:<puerto>/api/snapshot, un proceso Node corriendo en tu propio equipo. De ahí, a dos archivos en tu carpeta de usuario: ~/.rootcause-web/history.jsonl y ~/.rootcause-web/config.json. El historial guarda el veredicto y los hallazgos, nunca las cookies crudas.

Los eventos de Browser Guard viven en el almacenamiento local de la extensión: como máximo 100 eventos, 24 horas de retención, y solo los que superan el umbral de advertencia. Sin rutas, sin query strings, sin fragmentos, sin títulos de página, sin texto libre, sin valores de formulario y sin identificadores permanentes de pestaña. Una navegación normal no deja ningún rastro, y no existe ningún historial general de navegación.

Cómo comprobarlo sin confiar en nadie

La CSP de la extensión

  • connect-src limitado a 127.0.0.1 y localhost
  • Un fetch remoto lo bloquearía el navegador

El guardián de CI

  • scripts/check-local-only.mjs
  • Corre en cada push y en cada PR
  • Tumba el build si se abre cualquier puerta

La CSP del panel

  • default-src 'none' en cada respuesta
  • Sin CDNs, sin fuentes remotas, sin analytics

La frontera de Browser Guard

  • scripts/check-page-guard-privacy.mjs
  • Falla si aparece .value, innerHTML, una captura, un listener de teclado, FormData o un destino de red
  • Corre en cada push, PR y release

Cero dependencias

  • Sin node_modules, sin lockfile
  • Lo que no se instala no puede exfiltrar

Quién puede ver tu evidencia

Límite conocido y escrito: otro programa local con tus permisos de usuario podría hablarle al panel. Un token compartido lo cierra y está en el roadmap.

Borrar todo

$ rm -rf ~/.rootcause-web

O desde el panel: pestaña Historial → 🗑 Borrar historial. Luego quita la extensión y borra el repositorio. No queda nada en ningún otro sitio, porque no hay ningún otro sitio.

Documento completo → docs/POLITICA_DE_PRIVACIDAD_LOCAL.md