Política de privacidad
MicroLab es una aplicación de escritorio que orquesta microservicios en tu máquina. La mayor parte del producto funciona sin enviar nada a ningún sitio. Esta política explica los cuatro casos en los que sí sale información, qué sale exactamente en cada uno y cómo controlarlo.
<h2>1. Responsable del tratamiento</h2>
<ul>
<li><strong>Responsable:</strong> Juan García Valero.</li>
<li><strong>Contacto:</strong> [email protected]</li>
</ul>
<h2>2. Lo primero: qué NO sale nunca de tu máquina</h2>
<p>Aplica a <strong>todo</strong> el producto, en todos los planes:</p>
<ul>
<li>El <strong>código</strong> de tus microservicios y el contenido de tus repositorios.</li>
<li>La <strong>salida y los logs</strong> de los servicios que orquestas.</li>
<li>Los <strong>datos</strong> de tus bases de datos, ni sus contenidos ni sus volcados.</li>
<li>
Tus <strong>credenciales, tokens y secretos</strong>. Antes de cualquier envío, un
mecanismo de saneado (<em>Scrubber</em>) redacta la ruta de tu carpeta de usuario y
los valores de credenciales conocidas.
</li>
<li>
Los <strong>valores</strong> de los argumentos con los que llamas a una herramienta
(sí viajan sus <strong>nombres</strong>; ver §4.2).
</li>
<li>
Las <strong>conversaciones con el copiloto</strong>. Van directamente de tu máquina al
proveedor de IA que tú elijas, con <strong>tu</strong> clave: MicroLab no las
intermedia ni las almacena. Las rige la política de ese proveedor, no esta.
</li>
</ul>
<h2>3. Una precisión sobre la palabra «anónimo»</h2>
<p>
Versiones anteriores de esta política describían el identificador de instalación como
<strong>anónimo</strong>. Es más exacto llamarlo <strong>seudónimo</strong>: es un valor
aleatorio que no contiene tu nombre ni tu correo, pero permite distinguir una instalación
de otra y agrupar sus eventos. Bajo el RGPD eso sigue siendo <strong>dato personal</strong>
(considerando 26) y aquí se trata como tal. Se corrige porque una política que llama
anónimo a lo que no lo es no protege a nadie. Lo mismo aplica al identificador de tu
cuenta cuando inicias sesión.
</p>
<h2>4. Qué tratamientos existen</h2>
<h3>4.1 Diagnóstico de errores (Sentry)</h3>
<div class="legal-table-wrap">
<table>
<tbody>
<tr><th>Qué</th><td>Mensaje y traza de la excepción, versión, sistema operativo, identificador de instalación seudónimo, dirección IP durante el envío</td></tr>
<tr><th>Para qué</th><td>Corregir fallos</td></tr>
<tr><th>Base jurídica</th><td>Interés legítimo (art. 6.1.f), con oposición en un clic</td></tr>
<tr><th>Encargado</th><td>Functional Software, Inc. (Sentry)</td></tr>
<tr><th>Dónde</th><td>Región <strong>Unión Europea</strong> (Alemania)</td></tr>
<tr><th>Cuánto</th><td>90 días</td></tr>
<tr><th>Desactivar</th><td>Configuración → Enviar diagnósticos, o <code>microlab telemetry off</code></td></tr>
</tbody>
</table>
</div>
<p>
No se activa la recogida automática de datos personales de Sentry
(<code>sendDefaultPii</code> está desactivado).
</p>
<h3>4.2 Registro de uso de la superficie de IA</h3>
<p>
Solo si usas el servidor MCP o el copiloto, y <strong>solo con la telemetría
activada</strong>: el mismo interruptor gobierna los dos.
</p>
<div class="legal-table-wrap">
<table>
<tbody>
<tr><th>Qué</th><td>Nombre de la operación, si fue bien, clase de error, primera línea del error (saneada), duración, tamaño de la respuesta, <strong>nombres</strong> de los argumentos, identificador de instalación, e identificador de cuenta si has iniciado sesión</td></tr>
<tr><th>Para qué</th><td>Afinar qué herramientas se ofrecen a los agentes y cuáles fallan</td></tr>
<tr><th>Base jurídica</th><td>Interés legítimo (art. 6.1.f), con oposición en un clic</td></tr>
<tr><th>Encargado</th><td>Cloudflare, Inc.</td></tr>
<tr><th>Dónde</th><td>Base de datos en <strong>Europa Occidental</strong></td></tr>
<tr><th>Cuánto</th><td><strong>90 días</strong>, con borrado automático diario</td></tr>
</tbody>
</table>
</div>
<p>
Nunca viajan los <strong>valores</strong> de los argumentos, los resultados, rutas, ni
nombres de escenarios o de microservicios.
</p>
<h3>4.3 Cuenta y control del tramo gratuito</h3>
<p>
Solo si inicias sesión. Hace falta para las superficies de pago y para el tramo gratuito
diario; <strong>no</strong> para usar la aplicación ni el CLI.
</p>
<div class="legal-table-wrap">
<table>
<tbody>
<tr><th>Qué</th><td>Correo, nombre y el identificador que asigna el proveedor de identidad; y tu organización si perteneces a una</td></tr>
<tr><th>Para qué</th><td>Autenticarte, aplicar tu plan y llevar el contador del tramo gratuito <strong>por cuenta</strong> (no por instalación: si no, reinstalar regalaría cuota)</td></tr>
<tr><th>Base jurídica</th><td>Ejecución del contrato (art. 6.1.b)</td></tr>
<tr><th>Encargados</th><td>Kinde Inc. (identidad) y Cloudflare, Inc. (contador)</td></tr>
<tr><th>Cuánto</th><td>Mientras exista la cuenta; el contador, 90 días</td></tr>
</tbody>
</table>
</div>
<h3>4.4 Catálogo de escenarios de equipo (plan Team, opción alojada)</h3>
<p>
Solo si tu organización contrata el plan Team <strong>y</strong> elige la opción alojada.
Con la opción de repositorio git propio, MicroLab no almacena nada. Aquí MicroLab actúa
como <strong>encargado</strong> y tu organización como responsable: se rige por el
<a href="/dpa">contrato de encargo</a>, que prevalece sobre esta política para esos
datos.
</p>
<div class="legal-table-wrap">
<table>
<tbody>
<tr><th>Qué se almacena cifrado</th><td>El escenario completo, <strong>cifrado de extremo a extremo</strong> con una clave de tu equipo que nunca sale de vuestras máquinas</td></tr>
<tr><th>Qué se almacena en claro</th><td>Nombre y descripción del escenario, código de organización, quién publicó, fecha y tamaño</td></tr>
<tr><th>Dónde</th><td>Almacenamiento con <strong>jurisdicción Unión Europea</strong>: Cloudflare garantiza que los objetos se almacenan y procesan dentro de la UE</td></tr>
<tr><th>Cuánto</th><td>Mientras dure el contrato; se borra a petición o al terminar</td></tr>
</tbody>
</table>
</div>
<blockquote>
<p>
<strong>MicroLab no puede leer el contenido de vuestros escenarios.</strong> No es una
promesa de buena conducta: es que no tenemos la clave, y tampoco podríamos entregarlo
legible ante un requerimiento. <strong>Lo que sí vemos</strong> es el nombre de vuestra
organización y los títulos de los escenarios: cifrarlos también dejaría un listado
inservible de identificadores opacos, y preferimos decirlo a que se descubra.
</p>
</blockquote>
<h2>5. Encargados y transferencias internacionales</h2>
<div class="legal-table-wrap">
<table>
<thead><tr><th>Encargado</th><th>Para qué</th><th>Dónde</th></tr></thead>
<tbody>
<tr><td>Functional Software, Inc. (Sentry)</td><td>Diagnóstico de errores</td><td>UE (Alemania)</td></tr>
<tr><td>Cloudflare, Inc.</td><td>Registro de uso, contador, catálogo alojado</td><td>UE (Europa Occidental; almacenamiento con jurisdicción UE)</td></tr>
<tr><td>Kinde Inc.</td><td>Identidad</td><td>Ver su documentación</td></tr>
</tbody>
</table>
</div>
<p>
Sentry y Cloudflare son sociedades estadounidenses. Aunque el almacenamiento está en la
UE, el acceso de su personal puede constituir transferencia internacional; ambas la
amparan en <strong>Cláusulas Contractuales Tipo</strong> y en el <strong>Marco de
Privacidad de Datos UE-EE. UU.</strong> Lista actualizada en
<a href="/subencargados">subencargados</a>.
</p>
<h2>6. Cómo ejercer tus derechos</h2>
<p>
Tienes derecho de <strong>acceso, rectificación, supresión, oposición, limitación y
portabilidad</strong>.
</p>
<p>
<strong>Supresión, sin escribir a nadie.</strong> El servicio expone un endpoint que
borra tus datos en el momento:
</p>
<ul>
<li>
Con sesión iniciada:
<code>curl -X POST -H "authorization: Bearer <tu id_token>" https://mcp.micro-lab.dev/erase</code>
</li>
<li>
Sin cuenta, por identificador de instalación (lo da <code>microlab telemetry info</code>):
<code>curl -X POST "https://mcp.micro-lab.dev/erase?install=<id>"</code>
</li>
</ul>
<p>
Está hecho así a propósito: un derecho que exige abrir un ticket y esperar un mes es un
derecho que casi nadie ejerce.
</p>
<p>
Para el resto de derechos, o si prefieres escribir: [email protected]. También puedes
reclamar ante la Agencia Española de Protección de Datos
(<a href="https://www.aepd.es" rel="noopener">www.aepd.es</a>).
</p>
<h2>7. Menores</h2>
<p>
MicroLab es una herramienta profesional de desarrollo, no está dirigida a menores de 16
años y no recogemos conscientemente sus datos.
</p>
<h2>8. Seguridad</h2>
<p>
Cifrado en tránsito (TLS) en todos los envíos; cifrado de extremo a extremo en el catálogo
de equipo alojado; saneado de credenciales antes de cualquier envío; acceso al panel de
uso restringido por token; y el principio de que <strong>lo que no sale de tu máquina no
puede filtrarse desde la nuestra</strong>.
</p>
<p>
Ante una violación de seguridad que suponga un riesgo para tus derechos, te informaremos y
notificaremos a la autoridad de control en los plazos del RGPD (72 horas).
</p>
<h2>9. Cambios</h2>
<p>
Publicaremos la versión vigente con su fecha. Si un cambio afecta de forma sustancial a
cómo tratamos tus datos, lo avisaremos en la aplicación antes de aplicarlo.
</p>