Files

5.9 KiB

objetivos.md — Objetivos del proyecto

Cosas que deben implementarse o cumplirse, sin importar cuándo. Describen QUÉ — no cómo. El cómo va en proyecto_memoria.md cuando se ejecuta.

Flujo: ideas.md → objetivos.md → (en ejecución) → proyecto_memoria.md


Pendientes

# Objetivo Origen Prioridad
1 Soporte para compresión zip en descargas multi-archivo pablinux Media
2 Notificación opcional por bot o webhook al compartir pablinux Baja
3 Transferencia directa P2P navegador a navegador (WebRTC) pablinux Media
4 Widget publicitario del ecosistema (ads.sigmac.app) en vistas de invitados pablinux Baja
5 Protección por PIN / Contraseña opcional en enlaces compartidos pablinux Media
6 Modo de un solo uso (Burn after reading) con autodestrucción inmediata pablinux Media

Detalle de Objetivos Pendientes

🎯 Objetivo 3: Transferencia directa P2P navegador a navegador (WebRTC)

  • Qué debe cumplirse:
    1. Permitir la transferencia directa de archivos de gran volumen (cientos de MB o varios GB) directamente entre dispositivos sin almacenar el archivo en el disco del servidor.
    2. Implementar un servidor de señalización WebRTC ultraligero en Go (vía WebSocket o SSE/HTTP POST) para el intercambio de ofertas, respuestas y candidatos ICE entre emisor y receptor.
    3. Transmisión de datos mediante RTCDataChannel cifrado punto a punto en el navegador.
    4. Integración fluida con el flujo actual: el emisor abre la sala, se genera un enlace/QR dinámico, el receptor lo abre en su navegador y comienza la transferencia directa.
    5. Interfaz con barra de progreso bidireccional, velocidad de transferencia y estado de conexión (esperando receptor, conectado, transfiriendo, completado).
    6. Si no hay conexión P2P directa (NAT simétrico estricto), informar claramente al usuario o requerir conexión en la misma red local / STUN básico.

🎯 Objetivo 4: Widget publicitario del ecosistema (ads.sigmac.app)

  • Qué debe cumplirse:
    1. Integrar banners o anuncios contextuales no intrusivos provenientes de ads.sigmac.app exclusivamente en las vistas públicas de usuarios invitados (Guest): página principal, visor /v/{id} y página de descarga.
    2. Los usuarios autenticados (WebControl / Google OAuth) en /mis-archivos y sus visores estarán 100% libres de publicidad.
    3. Carga asíncrona desacoplada: el widget no debe demorar la carga de la página, la previsualización ni la descarga del archivo. Si el servicio de anuncios no responde o falla, el contenedor se oculta limpiamente sin alterar la UI.
    4. Respetar las políticas de seguridad estrictas vigentes (CSP, sandbox, aislamiento contra XSS).
    5. Diseño integrado al tema oscuro (dark mode) del proyecto, sin popups ni redirecciones invasivas.

🎯 Objetivo 5: Protección por PIN / Contraseña opcional

  • Qué debe cumplirse:
    1. Permitir al creador del share definir un PIN numérico (4-6 dígitos) o contraseña alocada al subir archivo o texto.
    2. El visor /v/{id}, descarga /d/{id} y raw /raw/{id} deben solicitar el PIN antes de entregar o previsualizar el contenido.
    3. Almacenamiento seguro del hash del PIN en SQLite (bcrypt / argon2) sin almacenar texto claro.

🎯 Objetivo 6: Modo de un solo uso (Burn after reading)

  • Qué debe cumplirse:
    1. Opción al subir para marcar el contenido como "Auto-destrucción tras lectura / descarga".
    2. Tras la primera visualización exitosa o descarga completa, el archivo físico se purga de inmediato del disco y el registro se marca como destruido o eliminado en SQLite.
    3. Intentos posteriores de acceso redirigen a una vista informativa indicando que el archivo ya fue destruido.

En curso

# Objetivo Iniciado
— — —

Completados

Fecha Objetivo Notas
2026-10-12 Estructura base de agentes y documentación inicializada Plantilla Telcotronics
2026-10-13 Subida rápida de archivos (drag & drop, pegar con Ctrl+V, selector) Soporte para multipart y streaming de hasta 500MB
2026-10-13 Compartir texto/código o notas rápidas Endpoint /api/share-text con extracción automática de título
2026-10-13 Visor universal embebido (/v/{id}) para imágenes, videos, audios, PDFs, textos Detección automática MIME y reproductores dedicados
2026-10-13 Generador instantáneo de enlaces y código QR para móviles Generación de QR nativa con github.com/skip2/go-qrcode
2026-10-13 Sesión Guest con auto-eliminación obligatoria en 24h (física y BD) Worker periódico de purga en segundo plano verificado con tests
2026-10-13 Cuentas registradas (Google y WebControl) con almacenamiento permanente Cuentas no-guest exentas de borrado a las 24h
2026-10-13 Panel / lista de "Mis Archivos" para usuarios registrados con opción de borrado Interfaz /mis-archivos con métricas de visitas y eliminación
2026-10-14 Scripts de despliegue estándar (desplegar.sh, init.sh) y servicio para SIAX Monitor Compilación Go estática, scp, servers.conf y systemd
2026-10-17 Registro oficial en MCP Infraestructura (ID 34) Ficha técnica completa registrada en MariaDB bajo categoría application
2026-10-17 Registro en centro de comunicaciones de agentes (sigma-robot) Identidad Agente drop.sigmac.app registrada vía REST; credenciales en .env
2026-10-17 Sincronización de normas y archivos base del ecosistema Creación de id_agente.md, reglas.md, tareas.md y espejo de infraestructura.md
2026-10-19 Despliegue en producción en CT 132 con SIAX Monitor (:8080) Servicio siax-app-DROP_SIGMAC_APP.service operativo en puerto 2008
2026-10-20 Puesta en producción pública vía HTTPS en drop.sigmac.app Proxy Apache con SSL operativo, URLs y QR dinámicos con protocolo HTTPS verificado