// OPEN SOURCE ROADMAP|SISTEMA MODULAR SELF-HOSTED|TARGET: v1.0.0 LTS

OpenRubberDocksRoadmap de Ingeniería

Hoja de ruta técnica estructurada para la evolución de OpenRubberDocks: desde su arquitectura base con edición en bloques y servidor MCP nativo hasta una suite integral de ingeniería de software con gestión ágil, sincronización bidireccional con Git, contratos con SLA vinculante y colaboración multi-cursor en tiempo real.

[00]// LÍNEA BASE ACTUAL

Punto de Partida Real: v0.0.9

Auditoría arquitectónica del estado funcional del repositorio a la fecha. Diagnóstico objetivo de componentes operativos y brechas técnicas a resolver.

OPERATIVO // BASEfiles/blocks

Editor de Bloques (BlockType)

9Tipos Básicos Soportados

Actualmente el editor manipula nodos atómicos en formato estructurado JSONB:

PARAGRAPHHEADING_1HEADING_2HEADING_3CODEBULLET_LISTNUMBERED_LISTQUOTEDIVIDER
[BRECHAS A RESOLVER]

Sin soporte para tablas interactivas, subida binaria de imágenes o archivos adjuntos reales, renderizado nativo de diagramas ni bloques embed.

OPERATIVO // BASEprojects/core

Proyectos (ProjectsModule)

6Entidades Principales Activas

Estructura relacional configurada sobre TypeORM y PostgreSQL:

TaskTaskStatusTaskTypeTaskPropertyDefTaskDependencyTaskTimeLog
[BRECHAS A RESOLVER]

Carece de ciclos/sprints, hilos de discusión y comentarios en tareas, archivos adjuntos de log/diseño, filtros avanzados de consulta y sistema de notificaciones en tiempo real.

OPERATIVO // BASEauth + mcp

Seguridad, Core & MCP

17Herramientas MCP Expuestas

Mecanismos transversales de autorización y gobierno de datos:

Passport JWTAPI KeysRBAC ScopesAudit LogsMCP Tools (Files)
[BRECHAS A RESOLVER]

Las herramientas MCP actuales están restringidas a lectura/escritura de archivos y bloques. El módulo de proyectos, métricas y SLAs aún no está expuesto a los agentes IA.

[01]// PANORAMA GENERAL

Matriz de Ingeniería (v0.1.0 ➔ v1.0.0)

Secuencia estratégica de desarrollo organizada por versiones incrementales, enfoque funcional y horizonte arquitectónico.

VersiónEnfoque PrincipalCategoría ArquitectónicaEstado
v0.0.9Editor Básico (9 bloques), Proyectos iniciales, RBAC y MCP 1.0Línea Base ActualCompletado
v0.1.0Motor de Medios (S3/Local), Bloques Técnicos (Mermaid/OpenAPI) y TablasCore Documental AvanzadoSiguiente
v0.2.0Colaboración en Tareas, Hilos de Comentarios, Adjuntos y NotificacionesColaboración & TareasPlanificado
v0.3.0Búsqueda Global (Ctrl+K), Índices PostgreSQL FTS y Filtros AvanzadosBúsqueda Unificada & ConsultasPlanificado
v0.4.0Portales Públicos de Documentación, Rutas Compartibles y Exportación PDF/MDPublicación & DistribuciónPlanificado
v0.5.0Ingeniería Ágil: Sprints, Backlog Dividido, Jerarquía de Épicas y MétricasGestión Ágil y CiclosPlanificado
v0.6.0Integración Bidireccional con Git (GitSync, Smart Commits y Webhooks)DevOps & Sincronización GitPlanificado
v0.7.0CRM Ligero, Gestor de Clientes, Propuestas Interactivas y Matriz WBSComercial (Parte 1: Clientes y Propuestas)Planificado
v0.8.0Motor de Contratos, Pólizas SLA, Auto-Provisioning y Control de HorasOperaciones (Parte 2: Contrato ➔ SLA ➔ Proyecto)Planificado
v0.9.0Automatizaciones Sin Código, Webhooks Salientes y Servidor MCP 2.0Ecosistema y Agentes IAPlanificado
v1.0.0Colaboración en Tiempo Real (CRDT), Asistentes de Migración y Estabilidad LTSEnterprise Readiness & Alta DisponibilidadPlanificado
[02]// ESPECIFICACIONES DE ENTREGABLES

Desglose Técnico de Hitos (v0.1.0 a v1.0.0)

Detalle de diseño, arquitectura modular de backend, frontend y componentes que se implementarán en cada versión de la plataforma.

v0.1.0
Core Documental Avanzadobackend/src/modules/storage & files/blocks

v0.1.0 — Motor de Almacenamiento (S3/Local) y Bloques Ricos

[DIAGNÓSTICO // CONTEXTO DE INGENIERÍA]

Hoy el editor solo manipula texto plano estructurado en JSONB. Ninguna documentación técnica sobrevive sin diagramas de arquitectura, tablas de especificaciones ni capturas de pantalla de interfaces y logs.

[MÓDULO] StorageModule — Almacenamiento Híbrido

Driver desacoplado para subida de binarios con opción dual: sistema de archivos local en volumen Docker persistente o almacenamiento de objetos compatible con AWS S3 / MinIO. Control estricto de cuotas y permisos de lectura por Workspace.

[EXPANSIÓN] BlockType Enum — Soporte de 6 Bloques Clave

  • IMAGE / FILE_ATTACHMENT: Carga mediante arrastrar y soltar (drag & drop) o pegado directo desde el portapapeles.
  • TABLE: Tablas dinámicas multidimensionales con compatibilidad bidireccional Markdown.
  • CALLOUT: Bloques de alerta semántica (INFO, WARNING, DANGER, SUCCESS) con tematización de alto contraste.
  • MERMAID: Renderizado nativo y reactivo de diagramas de secuencia, arquitectura y diagramas de flujo directamente en el navegador.
  • OPENAPI_SPEC: Renderizado interactivo de contratos REST / JSON:API a partir de esquemas JSON o YAML.
  • INTERNAL_LINK: Menciones cruzadas inteligentes ([[ o @) para enlazar documentos y tareas del workspace.
v0.2.0
Colaboración & Gestión de Tareasbackend/src/modules/comments & notifications

v0.2.0 — Interacción Profunda en Tareas y Sistema de Notificaciones

[DIAGNÓSTICO // CONTEXTO DE INGENIERÍA]

Actualmente el modal TaskDetailModal.tsx permite editar propiedades, dependencias y registrar tiempos (TaskTimeLog), pero el equipo carece de canales para debatir o recibir alertas de cambios de estado.

[MÓDULO] CommentsModule — Hilos de Discusión y Menciones

Comentarios enriquecidos mediante una versión liviana de BlockEditor dentro de cada Tasky sobre bloques individuales de documentos (revisiones en línea). Autocompletado de menciones a usuarios (@usuario).

[MÓDULO] NotificationsModule — SSE y Alertas SMTP

Bandeja de entrada en tiempo real mediante Server-Sent Events (SSE) y WebSockets en la barra superior. Despacho opcional de correos transaccionales por SMTP al ser asignado, mencionado o cuando se desbloquea una dependencia crítica.

[FEATURE] Watchers (Seguidores) y Adjuntos Directos

Capacidad de suscribirse como seguidor de una tarea para recibir actualizaciones de progreso y posibilidad de adjuntar capturas, archivos de registro o especificaciones directamente al registro de la tarea.

v0.3.0
Búsqueda Unificada & Consultasbackend/src/database/migrations/fts & frontend/omnisearch

v0.3.0 — Búsqueda Unificada (Ctrl+K) y Lenguaje de Consultas de Tareas

[DIAGNÓSTICO // CONTEXTO DE INGENIERÍA]

La productividad de una suite de ingeniería depende de localizar información crítica en milisegundos cuando el workspace escala a cientos de especificaciones técnicas y miles de tareas de desarrollo.

[FRONTEND] Command Palette & OmniSearch (Ctrl+K)

Paleta de comandos global que indexa y consulta en paralelo archivos, bloques de contenido y tareas activas, aplicando filtros instantáneos y respetando en todo momento los alcances de seguridad RBAC del usuario autenticado.

[BASE DE DATOS] Índices GIN Full-Text Search (tsvector)

Migración TypeORM en PostgreSQL para generar vectores de búsqueda de texto completo (FTS) indexados con GIN sobre las columnas blocks.content, files.title y tasks.title / tasks.description.

[VISTAS] Filtros Avanzados y Vistas Guardadas

Constructor visual de filtros combinables en KanbanBoard y TasksTable (por asignado, estado, tipo, rango de fechas, etiquetas y atributos dinámicos en customProperties JSONB) con guardado de vistas por proyecto.

v0.4.0
Portales Públicos & Distribuciónbackend/src/modules/public-docs & export

v0.4.0 — Portales Públicos de Documentación y Exportación

[DIAGNÓSTICO // CONTEXTO DE INGENIERÍA]

Para maximizar la utilidad de la plataforma en entregas a clientes y documentación pública de librerías, es imprescindible compartir documentación técnica hacia el exterior sin forzar inicio de sesión ni exponer datos internos.

[MÓDULO] PublicDocsModule — Portales Públicos y Enlaces Compartibles

Capacidad de publicar un archivo raíz y sus sub-árboles bajo una URL pública de solo lectura (/p/:workspaceSlug/:fileSlug) o protegida por clave de acceso temporal. Incluye barra lateral, tabla de contenidos automática (TOC) construida a partir de los encabezados y motor de búsqueda propio.

[MOTOR] Exportación de Alta Fidelidad (PDF & Markdown ZIP)

Generador de documentos PDF con formateo corporativo y tipografía técnica estricta. Exportación e importación masiva de árboles completos de documentación en paquetes comprimidos de archivos .md estructurados.

v0.5.0
Gestión Ágil y Ciclos de Entregabackend/src/modules/projects/sprints

v0.5.0 — Ingeniería Ágil: Sprints, Backlog, Épicas y Reportes

[DIAGNÓSTICO // CONTEXTO DE INGENIERÍA]

Actualmente el módulo de proyectos ofrece vistas de Lista, Kanban y Cronograma, pero las tareas coexisten en una sola lista plana sin delimitación temporal de iteraciones ni métricas de velocidad.

[ENTIDAD] SprintEntity & Vista de Planificación de Backlog

Modelado de iteraciones con fecha de inicio, culminación y meta de entrega. Nueva vista dividida en dos paneles para arrastrar elementos del backlog general hacia sprints futuros o en curso antes de sincronizarlos al tablero.

[JERARQUÍA] Estructuración en 3 Niveles: Épicas ➔ Tareas ➔ Subtareas

Agrupación visual por Épicas dentro de TimelineView, cálculo automático de barras de progreso según subtareas resueltas y comparativa entre horas estimadas (estimatedHours) y registradas (TaskTimeLog).

[MÉTRICAS] Panel de Rendimiento y Analítica de Ingeniería

Gráficos analíticos de Burndown Chart, velocidad estimada del equipo, distribución de esfuerzo por desarrollador y clasificación horaria por tipología de tarea.

v0.6.0
DevOps & Sincronización Gitbackend/src/modules/git-integration

v0.6.0 — Integración con Git (GitSync & DevOps Bridge)

[DIAGNÓSTICO // CONTEXTO DE INGENIERÍA]

Conecta el código fuente y los repositorios directamente tanto con el árbol documental (Files) como con el flujo operativo de desarrollo y resolución de tareas (Projects).

[MÓDULO] GitSync Bidireccional para Documentación

Sincronización automatizada entre un directorio de un repositorio remoto (ej. /docs en GitHub, GitLab o Gitea/Forgejo) y el árbol documental de la plataforma. Un git push ejecuta un webhook que procesa el contenido mediantemarkdown-block.parser y genera una nueva FileRevision; cualquier edición web genera un commit directo al repo.

[AUTOMATIZACIÓN] Smart Commits y Trazabilidad de Pull Requests

Detección automática de identificadores de tareas (ej. PROJ-12) en ramas de Git, mensajes de commit y Pull Requests. Transiciones automáticas de estado: abrir un PR mueve la tarea a In Review; fusionar el PR mueve la tarea a Done. Pestaña contextual "Desarrollo" incorporada en TaskDetailModal.tsx.

v0.7.0
Comercial (Parte 1: Clientes y Propuestas)backend/src/modules/clients & proposals

v0.7.0 — Gestor de Clientes (CRM Ligero) y Propuestas Interactivas (Parte 1)

[DIAGNÓSTICO // CONTEXTO DE INGENIERÍA]

Aprovecha la arquitectura de usuarios y colaboradores externos (isExternal en Usery ExternalProjectOverview.tsx) existente en el repositorio para digitalizar el ciclo de propuesta comercial.

[MÓDULO] ClientsModule — Registro Corporativo de Clientes

Entidad Client vinculada al Workspace (razón social, identificación fiscal/NIT, contactos clave, usuarios externos autorizados y carpeta documental privada del cliente).

[MÓDULO] ProposalsModule — Documento Narrativo + Matriz WBS

Constructor híbrido que une un documento narrativo en bloques con una estructura formal de desglose del trabajo (WBS). Cada línea del WBS estipula: entregable técnico, tipología, horas estimadas (estimatedHours), tarifa/costo, fase o épica y dependencias de ejecución.

[PORTAL] Portal de Aprobación para Clientes

Vista restringida para que el cliente examine la propuesta comercial, registre anotaciones sobre bloques específicos y formalice la aprobación digital cambiando el estado transaccional: DRAFT ➔ SENT ➔ APPROVED / REJECTED.

v0.8.0
Operaciones (Parte 2: Contrato ➔ SLA ➔ Proyecto)backend/src/modules/contracts & sla-policies

v0.8.0 — Motor de Contratos, Pólizas SLA y Auto-Provisioning (Parte 2)

[DIAGNÓSTICO // CONTEXTO DE INGENIERÍA]

Cierra la brecha entre la venta y la ejecución técnica: cuando una propuesta es aprobada, el sistema genera el marco contractual legal, configura los acuerdos de nivel de servicio (SLA) y orquesta el aprovisionamiento de las tareas.

[CONTRATOS] Transición Proposal ➔ Contract Inmutable

Al aprobarse la propuesta, se congela una FileRevision inmutable que actúa como respaldo legal del acuerdo. Se estipulan cláusulas, fechas de vigencia y modelo de cobro (Precio Cerrado, Bolsa de Horas o Retainer Mensual), activando el contrato formal.

[ORQUESTACIÓN] Auto-Provisioning del Proyecto Operativo

Orquestador automático: genera la entidad SlaPolicy (tiempo de primera respuesta, tiempo límite de resolución por criticidad, horario hábil y tope de bolsa de horas), crea el Project operativo, asocia los documentos legales mediante ProjectFileLink, asigna permisos de alcance UserRoleScope a usuarios del cliente y convierte la matriz WBS en Épicas, Tareas (Task) y dependencias (TaskDependency) directamente en el tablero.

[SEGUIMIENTO] Indicadores de SLA en Vivo y Débito de Horas

Cronómetros de SLA en vivo dentro de TaskCard.tsx y ExternalProjectOverview.tsx(En Tiempo, En Riesgo, Incumplido) y deducción automática del balance de horas contratadas cada vez que el equipo imputa un TaskTimeLog.

v0.9.0
Ecosistema y Agentes IAbackend/src/modules/mcp/v2 & workflows

v0.9.0 — Motor de Automatizaciones, Webhooks Salientes y MCP 2.0

[DIAGNÓSTICO // CONTEXTO DE INGENIERÍA]

Actualmente McpService (backend/src/modules/mcp/services/mcp.service.ts) dispone de 17 herramientas centradas en gestión de workspaces, archivos, bloques y revisiones. Esta versión expande sus capacidades hacia todo el ciclo operativo.

[MCP 2.0] Expansión Completa para Agentes de IA

Exposición de herramientas de gestión de proyectos, tareas, sprints, clientes, propuestas y monitoreo de acuerdos de nivel de servicio (ej. create_task, log_task_time, generate_proposal_wbs, get_sla_breaches), permitiendo que agentes autónomos coordinen entregables y auditen dependencias de código.

[AUTOMATIZACIÓN] Reglas de Automatización Sin Código y Webhooks

Motor de reglas reactivo (Disparador ➔ Condición ➔ Acción) configurable por proyecto: por ejemplo,"Si un SLA entra en riesgo (< 2h para vencimiento) ➔ Enviar Webhook a Discord / Slack / n8n y escalar prioridad a Urgente".

v1.0.0
Enterprise Readiness & Alta Disponibilidadbackend/src/common/crdt & admin/backup

v1.0.0 — Edición Colaborativa en Tiempo Real, Asistentes de Migración y Estabilidad LTS

[DIAGNÓSTICO // CONTEXTO DE INGENIERÍA]

Consolidación de la versión 1.0.0 para despliegues empresariales de alta concurrencia, autosuficiencia operativa y soberanía de datos garantizada.

[TIEMPO REAL] Edición Multi-Cursor mediante WebSockets / CRDT

Sincronización en vivo sin colisión en BlockEditor.tsx basada en Conflict-free Replicated Data Types (CRDT). Permite observar qué bloque está editando cada miembro del equipo en tiempo real y actualiza de inmediato tableros Kanban y cronogramas.

[MIGRACIÓN] Asistentes de Importación en 1 Clic

  • Módulo de Proyectos: Importador estructurado desde plataformas estándar de gestión de tareas (archivos JSON o CSV desde Trello, Linear y herramientas de la industria) hacia ProjectsModule.
  • Módulo Documental: Importador de colecciones completas (Notion, Obsidian, repositorios Markdown y wikis tradicionales) hacia FilesModule, preservando jerarquías de carpetas (parentId) y enlaces internos.

[INFRAESTRUCTURA] Hardening Enterprise & Resiliencia

Caché distribuida con Redis para AccessControlService y consultas complejas JSON:API, sistema de respaldos automatizados de base de datos y volumen desde la interfaz de administración (features/admin), y cobertura completa de pruebas de integración y E2E.

// PARTICIPACIÓN & CÓDIGO ABIERTO|AUTONOMÍA TECNOLÓGICA

OpenRubberDocks es 100% Libre, Modular y Auto-Alojado

El roadmap refleja un compromiso con la soberanía técnica: eliminar intermediarios SaaS cerrados, proveer control total del código y los datos, y crear una herramienta de ingeniería diseñada por y para desarrolladores.