5.9 KiB
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:
- 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.
- 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.
- Transmisión de datos mediante
RTCDataChannelcifrado punto a punto en el navegador. - 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.
- Interfaz con barra de progreso bidireccional, velocidad de transferencia y estado de conexión (esperando receptor, conectado, transfiriendo, completado).
- 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:
- Integrar banners o anuncios contextuales no intrusivos provenientes de
ads.sigmac.appexclusivamente en las vistas públicas de usuarios invitados (Guest): página principal, visor/v/{id}y página de descarga. - Los usuarios autenticados (WebControl / Google OAuth) en
/mis-archivosy sus visores estarán 100% libres de publicidad. - 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.
- Respetar las políticas de seguridad estrictas vigentes (CSP, sandbox, aislamiento contra XSS).
- Diseño integrado al tema oscuro (dark mode) del proyecto, sin popups ni redirecciones invasivas.
- Integrar banners o anuncios contextuales no intrusivos provenientes de
🎯 Objetivo 5: Protección por PIN / Contraseña opcional
- Qué debe cumplirse:
- Permitir al creador del share definir un PIN numérico (4-6 dígitos) o contraseña alocada al subir archivo o texto.
- El visor
/v/{id}, descarga/d/{id}y raw/raw/{id}deben solicitar el PIN antes de entregar o previsualizar el contenido. - 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:
- Opción al subir para marcar el contenido como "Auto-destrucción tras lectura / descarga".
- 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.
- 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 |