{
  "formato": "plantilla-vault/portable",
  "version_formato": 1,
  "plantilla": {
    "slug_origen": "desarrollo",
    "version_exportada": 1,
    "nombre": "Desarrollo",
    "icono": "💻",
    "categoria": "desarrollo",
    "descripcion": "Plantilla base para proyectos de programación: repos, bugs, documentación técnica, snippets y despliegues.",
    "indice": "---\ntipo: indice\nnombre: \"Vault Desarrollo — Índice\"\ntags: [desarrollo, indice, raiz]\n---\n\n# 💻 Vault Desarrollo — Índice maestro\n\n> [!note] 📌 **Propósito:** plantilla base para proyectos de programación:\n> repos, bugs, documentación técnica, snippets y despliegues. Cada cosa vive\n> en su módulo y el resto referencia (no se duplica).\n\n## 🗂️ Módulos\n\n| Módulo | Qué guarda | Abrir |\n|---|---|---|\n| 🏠 **Dashboard** | Resumen del estado, próximas tareas y proyectos en curso | [[Dashboard/README|🏠 Dashboard]] |\n| 📓 **Diario** | Notas y reflexiones rápidas de cada jornada | [[Diario/README|📓 Diario]] |\n| 🤖 **Conversaciones IA** | Bitácora de conversaciones valiosas con la IA | [[_hermes/README|🤖 Conversaciones IA]] |\n| 📦 **Repos y proyectos** | Inventario de repos y proyectos con su estado | [[Repos_y_Proyectos/README|📦 Repos y proyectos]] |\n| 🐛 **Bugs e issues** | Seguimiento de bugs e issues (abiertos → cerrados) | [[Bugs_e_Issues/README|🐛 Bugs e issues]] |\n| 📄 **Documentación técnica** | Arquitectura, guías y decisiones (ADR) | [[Documentacion_Tecnica/README|📄 Documentación]] |\n| 🧩 **Snippets de código** | Fragmentos reutilizables por lenguaje | [[Snippets_de_Codigo/README|🧩 Snippets]] |\n| 🗺️ **Roadmap técnico** | Hitos y backlog del plan a medio plazo | [[Roadmap_Tecnico/README|🗺️ Roadmap]] |\n| 🚀 **Registro de deploys** | Historial de despliegues y rollbacks | [[Registro_de_Deploys/README|🚀 Deploys]] |\n\n## 🧭 Flujo de uso (ciclo de un proyecto)\n\n1. **Registra el proyecto** en `Repos_y_Proyectos/` (propósito, stack y estado)\n   y su repo con el enlace remoto.\n2. Escribe la **documentación técnica** (arquitectura y decisiones ADR) y\n   planifica en el **Roadmap técnico** (hitos → tareas → estado).\n3. Durante el desarrollo, captura **bugs e issues** (reproducción, prioridad,\n   solución) y guarda los fragmentos que repitas en **Snippets de código**.\n4. Cada jornada cierra con el **Diario**; las conversaciones valiosas con la\n   IA se archivan en **Conversaciones IA** (`_hermes/`).\n5. Al desplegar, anota la entrada en el **Registro de deploys** (versión,\n   entorno, qué cambió y cómo hacer rollback).\n\n## 🔁 Rutinas sugeridas\n\n| Cadencia | Qué revisar | Dónde |\n|----------|-------------|-------|\n| **Diaria** | Diario + conversaciones IA capturadas | `Diario/`, `_hermes/` |\n| **Semanal** | Dashboard: avance, próximas tareas y bloqueos | `Dashboard/` |\n| **Semanal** | Bugs e issues abiertos por prioridad | `Bugs_e_Issues/` |\n| **Mensual** | Roadmap: avanzar hitos, limpiar backlog | `Roadmap_Tecnico/` |\n| **Por deploy** | Registrar versión, entorno y rollback | `Registro_de_Deploys/` |\n\n## 🥇 Primera semana (guía de inicio)\n\n- [ ] **Día 1:** registra tu proyecto actual en `Repos_y_Proyectos/` (propósito, stack, estado).\n- [ ] **Día 2:** escribe la documentación técnica básica (arquitectura) en `Documentacion_Tecnica/`.\n- [ ] **Día 3:** planifica los próximos hitos en `Roadmap_Tecnico/`.\n- [ ] **Día 4:** guarda un snippet que uses frecuentemente en `Snippets_de_Codigo/`.\n- [ ] **Semana 1:** abre el Dashboard y revisa que todo esté conectado; ajusta lo que no encaje.\n\n---\n\n*Plantilla base de Desarrollo — sin datos reales: todos los campos son placeholders.*\n",
    "notas_version": "Importada desde plantillas_base/desarrollo (versión inicial)",
    "estructura": [
      {
        "id": "_templates",
        "etiqueta": "",
        "es_plantilla": true,
        "nombre": "_templates",
        "subcarpetas": [],
        "notas": [
          {
            "id": "_templates/_plantilla-calendario.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla-calendario.md",
            "contenido": "---\ntipo: evento\nfecha: \"AAAA-MM-DD\"\nhora: \"[HH:MM]\"\nnombre: \"[Nombre del evento]\"\ntipo: \"[Tipo de evento]\"\ntags:\n  - desarrollo\n  - calendario\n---\n\n# 📅 [Nombre del evento]\n\n> [!info] Fecha importante: deploy, release, deadline, reunión técnica. Guarda en\n> `Calendario/eventos/` como `AAAA-MM-DD-<slug>.md`.\n\n---\n\n## 📋 Datos\n\n| Campo | Valor |\n|-------|-------|\n| **Nombre** | [Nombre] |\n| **Fecha** | [AAAA-MM-DD] |\n| **Hora** | [HH:MM] (opcional) |\n| **Tipo** | Deploy / Release / Deadline / Reunión / Otro |\n| **Estado** | pendiente / hecho / cancelado |\n| **Proyecto** | [[Repos_y_Proyectos/…\\|📦 Repo]] (opcional) |\n\n---\n\n## 📝 Notas\n\n- [Qué preparar, dependencias, checklist pre-deploy…]"
          },
          {
            "id": "_templates/_plantilla-changelog.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla-changelog.md",
            "contenido": "---\ntipo: changelog\nproyecto: \"[Nombre del proyecto]\"\nversion: \"[X.Y.Z]\"\nfecha: \"AAAA-MM-DD\"\ntags:\n  - desarrollo\n  - changelog\n  - versiones\n---\n\n# 📋 Changelog — [Proyecto] v[X.Y.Z]\n\n> [!info] Registro de cambios de una versión. Guarda en\n> `Documentacion/changelog/` como `v<X.Y.Z>.md`.\n\n---\n\n## 📋 Datos de la versión\n\n| Campo | Valor |\n|-------|-------|\n| **Proyecto** | [Nombre] |\n| **Versión** | [X.Y.Z] |\n| **Fecha** | [AAAA-MM-DD] |\n| **Tipo de cambio** | Major / Minor / Patch |\n| **Estado** | Planning / In Progress / Released |\n\n---\n\n## ✨ Nuevas funcionalidades (Added)\n\n- [Funcionalidad 1]\n- [Funcionalidad 2]\n\n## 🔧 Mejoras (Changed)\n\n- [Mejora 1]\n- [Mejora 2]\n\n## 🐛 Correcciones de bugs (Fixed)\n\n- [Bug 1]\n- [Bug 2]\n\n## ⚠️ Funcionalidades obsoletas (Deprecated)\n\n- [Funcionalidad obsoleta]\n\n## 🗑️ Funcionalidades eliminadas (Removed)\n\n- [Funcionalidad eliminada]\n\n## 🔒 Seguridad (Security)\n\n- [Vulnerabilidad corregida]\n\n## ⚡ Rendimiento (Performance)\n\n- [Mejora de rendimiento]\n\n---\n\n## 📦 Dependencias\n\n| Paquete | Versión anterior | Versión nueva | Tipo |\n|---------|------------------|---------------|------|\n| [Paquete] | [X.Y.Z] | [X.Y.Z] | Major / Minor / Patch |\n\n---\n\n## 📝 Notas para el release\n\n- [Instrucciones de migración]\n- [Breaking changes]\n- [Notas para el equipo]\n\n---\n\n## 🔗 Vínculos\n\n- [[Desarrollo/Documentacion/]]\n- [[Desarrollo/Repos/]]\n- [[Desarrollo/Deploys/]]"
          },
          {
            "id": "_templates/_plantilla-dashboard.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla-dashboard.md",
            "contenido": "---\ntipo: dashboard\nfecha_actualizacion: \"AAAA-MM-DD\"\ntags:\n  - desarrollo\n  - dashboard\n---\n\n# 🏠 Dashboard de Desarrollo\n\n> [!info] Resumen de proyectos, bugs y deploys. Guarda en\n> `Dashboard/` como `dashboard.md`.\n\n---\n\n## 📦 Proyectos activos\n\n| Proyecto | Estado | Último deploy |\n|----------|--------|---------------|\n| [[Repos_y_Proyectos/…\\|Nombre]] | activo | [AAAA-MM-DD] |\n\n---\n\n## 🐛 Bugs abiertos (por prioridad)\n\n| Bug | Prioridad | Proyecto |\n|-----|-----------|----------|\n| [[Bugs_e_Issues/…\\|Nombre]] | Alta / Media / Baja | [[Repos_y_Proyectos/…\\|Repo]] |\n\n---\n\n## 🚀 Últimos deploys\n\n| Proyecto | Versión | Estado | Fecha |\n|----------|---------|--------|-------|\n| [[Registro_de_Deploys/…\\|Nombre]] | [v1.0.0] | exitoso / fallido | [AAAA-MM-DD] |\n\n---\n\n## 🗺️ Roadmap: hitos próximos\n\n| Hito | Proyecto | Fecha estimada |\n|------|----------|----------------|\n| [[Roadmap_Tecnico/…\\|Hito]] | [[Repos_y_Proyectos/…\\|Repo]] | [AAAA-MM] |"
          },
          {
            "id": "_templates/_plantilla-diario.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla-diario.md",
            "contenido": "---\ntipo: nota-diaria\nfecha: \"AAAA-MM-DD\"\ntags:\n  - desarrollo\n  - diario\n---\n\n# 📓 Nota diaria — [AAAA-MM-DD]\n\n> [!info] Jornada de desarrollo. Guarda en `Diario/notas/` como\n> `AAAA-MM-DD.md`.\n\n---\n\n## 💻 Hoy trabajé en\n\n- **Proyecto:** [[Repos_y_Proyectos/…|Nombre]]\n- **Qué hice:** [commits, features, fixes, research]\n- **Bloqueado por:** [si hay algo que impide avanzar]\n\n---\n\n## 💡 Ideas y aprendizajes\n\n- [Algo nuevo que aprendí, idea para implementar, snippet útil…]"
          },
          {
            "id": "_templates/_plantilla-documentacion.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla-documentacion.md",
            "contenido": "---\ntipo: documentacion\nnombre: \"[Nombre del documento]\"\ntipo_doc: \"arquitectura\"   # arquitectura | guia | adr | manual\nproyecto: \"[Proyecto]\"\nversion: \"1.0\"\nfecha: \"AAAA-MM-DD\"\ntags:\n  - desarrollo\n  - documentacion\n---\n\n# 📄 [Nombre del documento]\n\n> [!info] Documento técnico: arquitectura, guía, decisión (ADR) o manual.\n> Guarda en `Documentacion_Tecnica/` en la subcarpeta correspondiente.\n\n---\n\n## 📋 Datos\n\n| Campo | Valor |\n|-------|-------|\n| **Nombre** | [Nombre del documento] |\n| **Tipo** | arquitectura / guía / ADR / manual |\n| **Proyecto** | [[Repos_y_Proyectos/…\\|📦 Repo]] |\n| **Versión** | [1.0] |\n| **Fecha** | [AAAA-MM-DD] |\n\n---\n\n## 📝 Contenido\n\n[Contenido del documento técnico]\n\n---\n\n## 🔗 Vínculos\n\n- Repo: [[Repos_y_Proyectos/README|📦 Repos]]"
          },
          {
            "id": "_templates/_plantilla-hermes.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla-hermes.md",
            "contenido": "---\ntipo: conversacion-ia\nproyecto: \"[Proyecto]\"\nherramienta: \"[ChatGPT/Claude/Copilot]\"\ntema: \"[Tema de la conversación]\"\nfecha: \"AAAA-MM-DD\"\ntags:\n  - desarrollo\n  - hermes\n  - ia\n---\n\n# 🤖 [Tema de la conversación]\n\n> [!info] Resumen de una conversación valiosa con IA. Guarda en\n> `_hermes/conversaciones/` como `<proyecto>-<tema>.md`.\n\n---\n\n## 📋 Datos\n\n| Campo | Valor |\n|-------|-------|\n| **Proyecto** | [[Repos_y_Proyectos/…\\|📦 Repo]] |\n| **Herramienta** | [ChatGPT / Claude / Copilot] |\n| **Tema** | [Tema de la conversación] |\n| **Fecha** | [AAAA-MM-DD] |\n\n---\n\n## 💬 Pregunta inicial\n\n[¿Qué preguntaste?]\n\n---\n\n## 💡 Respuesta útil\n\n[Respuesta clave que te ayudó]\n\n---\n\n## 📝 Prompt reutilizable\n\n```\n[Prompt que funcionó y podrías reutilizar]\n```\n\n---\n\n## 🔗 Vínculos\n\n- Repo: [[Repos_y_Proyectos/README|📦 Repos]]"
          },
          {
            "id": "_templates/_plantilla-release.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla-release.md",
            "contenido": "---\ntipo: release\nproyecto: \"[Nombre del proyecto]\"\nversion: \"[X.Y.Z]\"\nfecha: \"AAAA-MM-DD\"\ntags:\n  - desarrollo\n  - release\n  - deploy\n---\n\n# 🚀 Release — [Proyecto] v[X.Y.Z]\n\n> [!info] Checklist de release. Guarda en\n> `Documentacion/releases/` como `v<X.Y.Z>-release.md`.\n\n---\n\n## 📋 Datos del release\n\n| Campo | Valor |\n|-------|-------|\n| **Proyecto** | [Nombre] |\n| **Versión** | [X.Y.Z] |\n| **Fecha planificada** | [AAAA-MM-DD] |\n| **Fecha de release** | [AAAA-MM-DD] |\n| **Responsable** | [Nombre] |\n| **Estado** | Planning / Testing / Deploying / Released |\n\n---\n\n## ✅ Checklist pre-release\n\n### Código\n- [ ] Todos los tests pasan\n- [ ] Code review completada\n- [ ] No hay warnings críticos\n- [ ] Branch合并 a main\n- [ ] Changelog actualizado\n- [ ] Versión actualizada en package.json\n\n### Documentación\n- [ ] README actualizado\n- [ ] API docs actualizadas\n- [ ] Guía de migración (si hay breaking changes)\n- [ ] Notas de release escritas\n\n### Testing\n- [ ] Tests unitarios pasan\n- [ ] Tests de integración pasan\n- [ ] QA manual completado\n- [ ] Performance testing\n- [ ] Security audit\n\n### Deploy\n- [ ] Variables de entorno configuradas\n- [ ] Base de datos migrada (si aplica)\n- [ ] CDN actualizado\n- [ ] Cache limpiado\n- [ ] Monitoring activo\n\n---\n\n## 📊 Métricas del release\n\n| Métrica | Valor |\n|---------|-------|\n| **Commits** | [X] |\n| **Archivos cambiados** | [X] |\n| **Líneas agregadas** | [X] |\n| **Líneas eliminadas** | [X] |\n| **Contribuyentes** | [X] |\n\n---\n\n## 🐛 Bugs conocidos\n\n| Bug | Severidad | Estado | Workaround |\n|-----|-----------|--------|------------|\n| [Bug] | Alta/Media/Baja | Abierto/En progreso | [Workaround] |\n\n---\n\n## 📝 Post-release\n\n### Inmediato (1-2 horas)\n- [ ] Verificar que todo funciona en producción\n- [ ] Monitorear errores\n- [ ] Comunicar al equipo\n\n### Corto plazo (1-2 días)\n- [ ] Revisar métricas de uso\n- [ ] Recopilar feedback\n- [ ] Documentar learnings\n\n### Largo plazo (1 semana)\n- [ ] Retrospectiva del release\n- [ ] Planificar hotfixes si es necesario\n- [ ] Actualizar roadmap\n\n---\n\n## 📝 Notas\n\n- [Aprendizajes, problemas, algo que recordar para el próximo release…]\n\n---\n\n## 🔗 Vínculos\n\n- [[Desarrollo/Documentacion/changelog]]\n- [[Desarrollo/Repos/]]\n- [[Desarrollo/Deploys/]]"
          },
          {
            "id": "_templates/_plantilla-roadmap.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla-roadmap.md",
            "contenido": "---\ntipo: roadmap\nproyecto: \"[Proyecto]\"\nhito: \"[Nombre del hito]\"\nfecha_objetivo: \"AAAA-MM-DD\"\nestado: \"pendiente\"   # pendiente | en curso | completado\ntags:\n  - desarrollo\n  - roadmap\n---\n\n# 🗺️ Roadmap — [Hito]\n\n> [!info] Hito del roadmap técnico con hitos y tareas. Guarda en\n> `Roadmap_Tecnico/hitos/` como `<slug>.md`.\n\n---\n\n## 📋 Datos\n\n| Campo | Valor |\n|-------|-------|\n| **Hito** | [Nombre del hito] |\n| **Proyecto** | [[Repos_y_Proyectos/…\\|📦 Repo]] |\n| **Fecha objetivo** | [AAAA-MM-DD] |\n| **Estado** | pendiente / en curso / completado |\n\n---\n\n## 📋 Tareas del hito\n\n| Tarea | Estado | Responsable |\n|-------|--------|-------------|\n| [Tarea 1] | pendiente | [Nombre] |\n| [Tarea 2] | pendiente | [Nombre] |\n\n---\n\n## 📝 Notas\n\n- [Dependencias, bloqueos, algo que recordar…]"
          },
          {
            "id": "_templates/_plantilla_bug.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla_bug.md",
            "contenido": "---\ntipo: bug\ntitulo: \"[Título del bug/issue]\"\nprioridad: \"media\"   # alta | media | baja\nestado: \"abierto\"   # abierto | en progreso | cerrado\nfecha: \"AAAA-MM-DD\"\nrepo: \"[Repositorio afectado]\"\ntags:\n  - desarrollo\n  - bugs\n---\n\n# 🐛 [Título del bug]\n\n> [!info] Registra un bug o issue: reproducción, prioridad y solución. Guarda en\n> `Bugs_e_Issues/` como `AAAA-MM-DD-<slug>.md`.\n\n---\n\n## 📋 Datos\n\n| Campo | Valor |\n|-------|-------|\n| **Título** | [Descripción corta] |\n| **Repositorio** | [[Repos_y_Proyectos/…\\|📦 Repo]] |\n| **Prioridad** | Alta / Media / Baja |\n| **Estado** | abierto / en progreso / cerrado |\n| **Fecha** | [AAAA-MM-DD] |\n| **Asignado a** | [Nombre] (opcional) |\n\n---\n\n## 🔄 Cómo reproducir\n\n1. [Paso 1]\n2. [Paso 2]\n3. [Resultado esperado vs resultado actual]\n\n---\n\n## 💡 Solución\n\n- [Solución propuesta o implementada]\n- **Commit/PR:** [Enlace si aplica]\n\n---\n\n## 📝 Notas\n\n- [Contexto, logs, capturas, dependencias…]\n"
          },
          {
            "id": "_templates/_plantilla_deploy.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla_deploy.md",
            "contenido": "---\ntipo: deploy\nproyecto: \"[Nombre del proyecto]\"\nversion: \"[Versión desplegada]\"\nentorno: \"[Producción/Staging/Desarrollo]\"\nestado: \"exitoso\"   # exitoso | fallido | revertido\nfecha: \"AAAA-MM-DD\"\ntags:\n  - desarrollo\n  - deploys\n---\n\n# 🚀 Deploy — [Proyecto] [Versión]\n\n> [!info] Registra un despliegue: versión, entorno y qué cambió. Guarda en\n> `Registro_de_Deploys/` como `AAAA-MM-DD-<slug>.md`.\n\n---\n\n## 📋 Datos del deploy\n\n| Campo | Valor |\n|-------|-------|\n| **Proyecto** | [[Repos_y_Proyectos/…\\|📦 Repo]] |\n| **Versión** | [v1.0.0 / commit hash] |\n| **Entorno** | [Producción / Staging / Desarrollo] |\n| **Estado** | exitoso / fallido / revertido |\n| **Fecha** | [AAAA-MM-DD HH:MM] |\n| **Quién desplegó** | [Nombre] |\n\n---\n\n## 📝 Qué cambió\n\n- [Feature 1 implementada]\n- [Bug 2 corregido]\n- [Configuración actualizada]\n\n---\n\n## ⚠️ Rollback (si aplica)\n\n- **Revertido:** [sí / no]\n- **Commit de revert:** [hash] (opcional)\n- **Motivo:** [Por qué se revirtió]\n\n---\n\n## 📝 Notas\n\n- [Problemas encontrados, métricas post-deploy, aprendizajes…]\n"
          },
          {
            "id": "_templates/_plantilla_evento.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla_evento.md",
            "contenido": "---\ntipo: evento\nfecha: \"AAAA-MM-DD\"\nhora: \"[HH:MM]\"\nnombre: \"[Nombre del evento]\"\ntipo: \"[Tipo de evento]\"\ntags:\n  - desarrollo\n  - calendario\n---\n\n# 📅 [Nombre del evento]\n\n> [!info] Fecha importante: deploy, release, deadline, reunión técnica. Guarda en\n> `Calendario/eventos/` como `AAAA-MM-DD-<slug>.md`.\n\n---\n\n## 📋 Datos\n\n| Campo | Valor |\n|-------|-------|\n| **Nombre** | [Nombre] |\n| **Fecha** | [AAAA-MM-DD] |\n| **Hora** | [HH:MM] (opcional) |\n| **Tipo** | Deploy / Release / Deadline / Reunión / Otro |\n| **Estado** | pendiente / hecho / cancelado |\n| **Proyecto** | [[Repos_y_Proyectos/…\\|📦 Repo]] (opcional) |\n\n---\n\n## 📝 Notas\n\n- [Qué preparar, dependencias, checklist pre-deploy…]\n"
          },
          {
            "id": "_templates/_plantilla_nota-diaria.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla_nota-diaria.md",
            "contenido": "---\ntipo: nota-diaria\nfecha: \"AAAA-MM-DD\"\ntags:\n  - desarrollo\n  - diario\n---\n\n# 📓 Nota diaria — [AAAA-MM-DD]\n\n> [!info] Jornada de desarrollo. Guarda en `Diario/notas/` como\n> `AAAA-MM-DD.md`.\n\n---\n\n## 💻 Hoy trabajé en\n\n- **Proyecto:** [[Repos_y_Proyectos/…|Nombre]]\n- **Qué hice:** [commits, features, fixes, research]\n- **Bloqueado por:** [si hay algo que impide avanzar]\n\n---\n\n## 💡 Ideas y aprendizajes\n\n- [Algo nuevo que aprendí, idea para implementar, snippet útil…]\n"
          },
          {
            "id": "_templates/_plantilla_repo.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla_repo.md",
            "contenido": "---\ntipo: repo\nnombre: \"[Nombre del proyecto/repo]\"\nstack: \"[Tecnologías utilizadas]\"\nestado: \"activo\"   # activo | pausado | archivado\nenlace: \"[URL del repositorio]\"\ntags:\n  - desarrollo\n  - repos\n---\n\n# 📦 [Nombre del proyecto]\n\n> [!info] Ficha del repositorio: propósito, stack y estado. Guarda en\n> `Repos_y_Proyectos/` como `<slug>.md`.\n\n---\n\n## 📋 Datos\n\n| Campo | Valor |\n|-------|-------|\n| **Proyecto** | [Nombre] |\n| **Propósito** | [Para qué sirve] |\n| **Stack** | [Lenguajes, frameworks, herramientas] |\n| **Estado** | activo / pausado / archivado |\n| **Enlace** | [URL del repo] |\n| **Entorno** | [Producción / Staging / Desarrollo] |\n\n---\n\n## 📝 Notas\n\n- [Arquitectura, decisiones, pendientes, cómo ejecutarlo…]\n"
          },
          {
            "id": "_templates/_plantilla_snippet.md",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_plantilla_snippet.md",
            "contenido": "---\ntipo: snippet\nnombre: \"[Nombre del snippet]\"\nlenguaje: \"[Lenguaje de programacion]\"\nproposito: \"[Para qué sirve]\"\ntags:\n  - desarrollo\n  - snippets\n---\n\n# 🧩 [Nombre del snippet]\n\n> [!info] Fragmento de código reutilizable. Guarda en `Snippets_de_Codigo/` como\n> `<slug>.md`.\n\n---\n\n## 📋 Datos\n\n| Campo | Valor |\n|-------|-------|\n| **Nombre** | [Descripción] |\n| **Lenguaje** | [Python / JavaScript / SQL / Otro] |\n| **Propósito** | [Para qué se usa] |\n| **Dependencias** | [Librerías necesarias] (opcional) |\n\n---\n\n## 💻 Código\n\n```[lenguaje]\n// Tu código aquí\n```\n\n---\n\n## 📝 Uso\n\n- [Cómo se usa, parámetros de entrada, ejemplo de llamada…]\n- [Dónde lo he usado antes]\n"
          }
        ]
      }
    ],
    "modulos": [
      {
        "id": "bugs-issues",
        "carpeta": "Bugs_e_Issues",
        "nombre": "Bugs e issues",
        "icono": "🐛",
        "descripcion": "Seguimiento de bugs e issues: reproducción, prioridad, estado y solución",
        "submodulos": [],
        "categoria": "general",
        "estructura": [
          {
            "id": "Bugs_e_Issues",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "Bugs_e_Issues",
            "subcarpetas": [
              {
                "id": "Bugs_e_Issues/abiertos",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "abiertos",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Bugs_e_Issues/abiertos/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Abiertos\"\ntags:\n  - desarrollo\n  - bugs\n  - abiertos\n---\n\n# 🔴 Bugs e issues abiertos\n\nProblemas pendientes por prioridad (`YYYY-MM-DD-<slug>.md`).\n"
                  }
                ]
              },
              {
                "id": "Bugs_e_Issues/cerrados",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "cerrados",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Bugs_e_Issues/cerrados/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Cerrados\"\ntags:\n  - desarrollo\n  - bugs\n  - cerrados\n---\n\n# ✅ Bugs e issues cerrados\n\nProblemas resueltos con su solución documentada (la nota se mueve aquí al\ncerrar; no se borra).\n"
                  }
                ]
              }
            ],
            "notas": [
              {
                "id": "Bugs_e_Issues/README.md",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "README.md",
                "contenido": "# 🐛 Bugs e issues\n\n> [!note] **Módulo del vault «Desarrollo»**\n> Seguimiento de bugs e issues con una **ficha por issue**: título, proyecto\n> asociado (vinculado al módulo 📦 Repos y proyectos), severidad\n> (crítica/alta/media/baja), estado (abierto/en progreso/resuelto) y\n> descripción. La **vista 🐛 Bugs e issues** del vault es un **tablero\n> kanban** por estado, filtrable por proyecto y severidad.\n\n## 📁 Estructura\n\n```\nBugs_e_Issues/\n├── README.md          ← este archivo (cómo funciona el módulo)\n├── abiertos/          ← índices/documentación de issues abiertos\n├── cerrados/          ← índices/documentación de issues cerrados\n└── bugs.json          ← fichas de la vista (lo lee/escribe la interfaz)\n```\n\n## 🧩 Cómo usarlo\n\n1. Abre la **vista 🐛 Bugs e issues** del vault y pulsa **＋ Nuevo issue**:\n   título, proyecto asociado (selector con las fichas de `Repos_y_Proyectos/`),\n   severidad, estado y descripción (reproducción, entorno, esperado vs. real).\n2. Las tarjetas se organizan en **columnas por estado** (abierto → en\n   progreso → resuelto); **arrastra** una tarjeta entre columnas (o usa\n   ◀ ▶) para cambiar su estado.\n3. Filtra el tablero por **proyecto** y **severidad** con los selectores de\n   la cabecera.\n4. El contador de **issues abiertos** de cada tarjeta en el módulo\n   `Repos_y_Proyectos/` se alimenta de aquí (los resueltos no cuentan).\n\n> El JSON de las fichas lo lee/escribe la interfaz del vault\n> (`GET /api/bugs`, `POST /api/bugs/guardar|eliminar`) con escritura\n> atómica; las subcarpetas `abiertos/` y `cerrados/` son documentación libre.\n>\n> **Portabilidad:** la vista ofrece **📤 Exportar / 📥 Importar** (botones de\n> la cabecera): descarga los issues como JSON o los restaura desde un archivo\n> exportado, validando cada ficha en el servidor (`GET /api/exportar\n> ?modulo=bugs`, `POST /api/importar`).\n\n## 📋 Campos de la ficha\n\n| Campo | Formato | ¿Obligatorio? | Para qué |\n|---|---|---|---|\n| `titulo` | texto (máx. 120) | sí | resumen en una línea |\n| `proyecto` | nombre de ficha de `Repos_y_Proyectos/` | opcional | vínculo al proyecto |\n| `severidad` | `critica` · `alta` · `media` · `baja` | sí | impacto del problema |\n| `estado` | `abierto` · `en progreso` · `resuelto` | sí | ciclo del issue |\n| `descripcion` | texto (máx. 1000) | opcional | reproducción y contexto |\n\n## 🧭 Mantenimiento\n\n- **Al detectar:** crea la ficha con severidad y estado `abierto`.\n- **Semanal:** repasa el tablero por severidad y avanza los que corresponda.\n- **Al resolver:** cambia el estado a `resuelto` (la tarjeta pasa a la\n  columna final); nunca borres el historial.\n\n## 🔗 Conecta con los otros módulos\n\n| Módulo | Cómo se relaciona |\n|---|---|\n| **Repos y proyectos** | `proyecto` enlaza el issue a la ficha del proyecto; su contador de issues abiertos se alimenta de aquí |\n| **Dashboard** | los issues abiertos por severidad aparecen en el panel |\n| **Snippets de código** | la solución reutilizable se guarda como snippet |\n| **Conversaciones IA** | la sesión donde se encontró la solución se enlaza |\n"
              }
            ]
          }
        ]
      },
      {
        "id": "dashboard",
        "carpeta": "Dashboard",
        "nombre": "Dashboard",
        "icono": "🏠",
        "descripcion": "Panel de inicio del vault: resumen general, próximas tareas y estado de los proyectos",
        "submodulos": [],
        "categoria": "general",
        "estructura": [
          {
            "id": "Dashboard",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "Dashboard",
            "subcarpetas": [],
            "notas": [
              {
                "id": "Dashboard/README.md",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "README.md",
                "contenido": "# 🏠 Dashboard\n\n> [!note] **Módulo del vault «Desarrollo»**\n> Panel de inicio del vault: resumen general del estado, próximas tareas y\n> proyectos en curso. Es el primer módulo que se abre al empezar la jornada.\n\n## 🖥️ Vista implementada (inicio del vault)\n\nLa app del vault agrega en el Dashboard, **en tiempo real** desde cada\nmódulo (nada se copia a mano):\n\n- **📊 Resumen de desarrollo**: proyectos activos vs total (`repos.json`),\n  issues abiertos por severidad (`bugs.json`, los resueltos no cuentan),\n  últimos deploys con su resultado (`deploys.json`, fallos en rojo) y\n  snippets más copiados (`snippets.json`, contador de 📋 Copiar). Cada\n  elemento es clicable y lleva a su módulo.\n- **🚀 Últimos deploys**: las 10 entradas más recientes con los fallos\n  resaltados en rojo.\n- Las secciones se llenan solas: solo aparecen si el módulo tiene datos, y\n  reflejan cualquier cambio en la siguiente carga.\n\n## 📁 Estructura\n\n```\nDashboard/\n└── README.md          ← este archivo (cómo mantener el panel al día)\n```\n\n## 🧩 Cómo usarlo\n\n1. Abre el **Dashboard** como punto de entrada diario.\n2. Revisa el **📊 Resumen de desarrollo** (proyectos activos, issues por\n   severidad, últimos deploys y snippets top) y entra al módulo que toque\n   con un clic.\n3. Deja aquí un resumen corto con enlaces `[[...]]` a lo que hay que mirar\n   hoy; el detalle vive siempre en su módulo (aquí solo se referencia).\n\n## 🧭 Mantenimiento\n\n- **Diario:** actualiza «próximas tareas» al empezar y cerrar la jornada.\n- **Semanal:** repasa el estado de los proyectos y los bloqueos; el resumen\n   del dashboard se actualiza solo con los datos de cada módulo.\n\n## 🔗 Conecta con los otros módulos\n\n> [!note] Conexiones **opcionales**: cada fila aplica solo si tienes ese módulo\n> activo en el vault. Los módulos son independientes: este funciona sin los demás.\n\n| Módulo | Cómo se relaciona |\n|---|---|\n| **Repos y proyectos** | el estado de cada proyecto alimenta el resumen |\n| **Bugs e issues** | los bugs abiertos por severidad aparecen en el panel |\n| **Roadmap técnico** | los hitos próximos marcan qué toca revisar |\n| **Snippets de código** | los más copiados se listan con su contador |\n| **Registro de deploys** | las últimas entradas y sus fallos se muestran en rojo |\n"
              }
            ]
          }
        ]
      },
      {
        "id": "diario",
        "carpeta": "Diario",
        "nombre": "Diario",
        "icono": "📓",
        "descripcion": "Notas diarias y reflexiones rápidas: el registro libre de cada jornada de trabajo",
        "submodulos": [],
        "categoria": "general",
        "estructura": [
          {
            "id": "Diario",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "Diario",
            "subcarpetas": [
              {
                "id": "Diario/notas",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "notas",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Diario/notas/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Notas del diario\"\ntags:\n  - desarrollo\n  - diario\n  - notas\n---\n\n# 📓 Notas del diario\n\nNotas rápidas y reflexiones de cada jornada. Una nota por día\n(`YYYY-MM-DD.md`).\n"
                  }
                ]
              }
            ],
            "notas": [
              {
                "id": "Diario/README.md",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "README.md",
                "contenido": "# 📓 Diario\n\n> [!note] **Módulo del vault «Desarrollo»**\n> Notas diarias y reflexiones rápidas de cada jornada: el registro libre del\n> día a día de trabajo. Es el módulo general de escritura libre del vault.\n\n## 📁 Estructura\n\n```\nDiario/\n├── README.md          ← este archivo (propósito y uso)\n└── notas/             ← una nota por día (YYYY-MM-DD.md)\n```\n\n## 🧩 Cómo usarlo\n\n1. Crea y nombra la nota `YYYY-MM-DD.md` (p. ej. `2026-08-15.md`) en\n   `notas/`.\n2. Escribe libre: qué hiciste, qué aprendiste, decisiones tomadas, ideas\n   sueltas y pendientes.\n3. Si una idea merece seguimiento, llévala a su módulo (bug → `Bugs_e_Issues/`,\n   snippet → `Snippets_de_Codigo/`, decisión → `Documentacion_Tecnica/decisiones/`).\n\n## 📋 Frontmatter (mínimo)\n\n| Campo | Formato | ¿Obligatorio? | Para qué |\n|---|---|---|---|\n| `tipo` | `nota-diaria` | sí | identifica el tipo de nota |\n| `fecha` | `AAAA-MM-DD` | sí | día de la entrada |\n| `tags` | lista | opcional | agrupaciones (`desarrollo`, `diario`) |\n\n## 🧭 Mantenimiento\n\n- **Diario:** una entrada por día (o solo los días que valga la pena).\n- Al cerrar la semana, repasa las entradas y promueve los pendientes a sus\n  módulos.\n\n## 🔗 Conecta con los otros módulos\n\n| Módulo | Cómo se relaciona |\n|---|---|\n| **Dashboard** | el resumen diario alimenta las próximas tareas |\n| **Bugs e issues** | un problema detectado hoy se registra allá |\n| **Snippets de código** | una solución repetida se convierte en snippet |\n"
              }
            ]
          }
        ]
      },
      {
        "id": "documentacion-tecnica",
        "carpeta": "Documentacion_Tecnica",
        "nombre": "Documentación técnica",
        "icono": "📄",
        "descripcion": "Documentación técnica: arquitectura, guías, decisiones (ADR) y manuales",
        "submodulos": [],
        "categoria": "general",
        "estructura": [
          {
            "id": "Documentacion_Tecnica",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "Documentacion_Tecnica",
            "subcarpetas": [
              {
                "id": "Documentacion_Tecnica/arquitectura",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "arquitectura",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Documentacion_Tecnica/arquitectura/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Arquitectura\"\ntags:\n  - desarrollo\n  - documentacion\n  - arquitectura\n---\n\n# 🏗️ Arquitectura\n\nCómo está montado el sistema: componentes, comunicación y diagramas\n(`<slug>.md`).\n"
                  }
                ]
              },
              {
                "id": "Documentacion_Tecnica/decisiones",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "decisiones",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Documentacion_Tecnica/decisiones/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Decisiones (ADR)\"\ntags:\n  - desarrollo\n  - documentacion\n  - decisiones\n---\n\n# ⚖️ Decisiones (ADR)\n\nUn ADR por decisión importante (`AAAA-MM-DD-<n>-<slug>.md`): contexto,\nopciones, decisión y consecuencias.\n"
                  }
                ]
              },
              {
                "id": "Documentacion_Tecnica/guias",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "guias",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Documentacion_Tecnica/guias/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Guías\"\ntags:\n  - desarrollo\n  - documentacion\n  - guias\n---\n\n# 🧭 Guías\n\nGuías de uso y setup: levantar el entorno, desplegar, contribuir\n(`<slug>.md`).\n"
                  }
                ]
              }
            ],
            "notas": [
              {
                "id": "Documentacion_Tecnica/README.md",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "README.md",
                "contenido": "# 📄 Documentación técnica\n\n> [!note] **Módulo del vault «Desarrollo»**\n> Notas de documentación en **Markdown organizadas por proyecto**, con\n> **versionado simple**: cada edición guarda la versión anterior en\n> `_historia/` (accesible desde el historial y restaurable, nunca se\n> sobrescribe). Una nota por documento; los ADR documentan decisiones\n> importantes con su contexto y consecuencias.\n\n## 🖥️ Vista implementada (📄 Documentación técnica)\n\nLa app del vault expone `#/documentacion`:\n\n- **Notas por proyecto**: cada carpeta de `Documentacion_Tecnica/` es un\n  proyecto; cada `.md` dentro es una nota (sin proyecto → `_sin_proyecto/`).\n- **Vínculo a repos**: el selector del formulario sugiere los proyectos de\n  `Repos_y_Proyectos/repos.json`; las notas cuya carpeta coincide se marcan\n  con el chip 📦 «vinculado».\n- **Versionado**: al editar se archiva la **versión anterior** en\n  `_historia/<proyecto>__<nota>__<timestamp>.md` (colisión del mismo segundo\n  → sufijo `-2`, `-3`…). El historial por nota muestra fecha, permite **👁\n  ver** el contenido archivado y **♻️ restaurar** (que archiva la actual\n  antes de escribir — nada se pierde).\n- **Eliminar**: archiva la versión actual antes de borrar el archivo.\n- **Renombrar/mover**: la versión se archiva bajo la clave antigua y el\n  historial de esa nota sigue accesible.\n\n## 📁 Estructura\n\n```\nDocumentacion_Tecnica/\n├── README.md          ← este archivo\n├── _historia/         ← versiones anteriores (NO editar a mano)\n├── _sin_proyecto/     ← notas sin proyecto vinculado\n├── <proyecto>/        ← una carpeta por proyecto\n│   ├── <nota>.md      ← una nota por archivo\n│   └── …\n└── …\n```\n\n> Los subdirectorios de ejemplo (`arquitectura/`, `guias/`, `decisiones/`)\n> de la plantilla original pueden usarse como carpetas-proyecto o como\n> nombres de nota dentro del proyecto que corresponda.\n\n## 🧩 Cómo usarlo\n\n1. **Crear nota**: «＋ Nueva nota», elige proyecto (o déjalo vacío), nombre\n   (sin `/` ni `\\`) y contenido Markdown.\n2. **Editar**: pulsa ✏️ Editar; al guardar, la versión anterior queda en el\n   historial.\n3. **Historial**: 🕘 Historial por nota → ver cualquier versión o restaurarla.\n4. **Decisiones (ADR)**: una nota por decisión importante\n   (`AAAA-MM-DD-01-<slug>` como nombre de nota): contexto, opciones\n   consideradas, decisión, razón y consecuencias.\n\n## 📋 Frontmatter (mínimo)\n\n| Campo | Formato | ¿Obligatorio? | Para qué |\n|---|---|---|---|\n| `tipo` | `documentacion` o `adr` | sí | distingue doc de decisión |\n| `titulo` | texto | sí | nombre del documento |\n| `estado` (ADR) | `propuesta` · `aceptada` · `superada` · `rechazada` | sí | vida de la decisión |\n| `fecha` | `AAAA-MM-DD` | sí | cuándo se escribió |\n| `tags` | lista | opcional | agrupaciones (`desarrollo`, `documentacion`) |\n\n## ✍️ Ejemplo (ADR con placeholders)\n\n```markdown\n---\ntipo: adr\ntitulo: \"[Decisión tomada]\"\nestado: propuesta\nfecha: \"2026-08-15\"\ntags:\n  - desarrollo\n  - documentacion\n---\n\n# ADR-01: [Decisión tomada]\n\n## Contexto\n[Por qué hay que decidir algo]\n\n## Opciones consideradas\n- [Opción A]: [prós y contras]\n- [Opción B]: [prós y contras]\n\n## Decisión\n[Qué se eligió y por qué]\n\n## Consecuencias\n[Qué cambia, qué se facilita, qué se complica]\n```\n\n## 🧭 Mantenimiento\n\n- **Al crear:** documenta con placeholders; nunca inventes decisiones ni\n  arquitectura real.\n- **Cuando cambia el diseño:** actualiza la nota y añade un ADR nuevo si la\n  decisión es importante (el historial conserva lo anterior).\n- **Trimestral:** revisa los ADR en estado `propuesta` y los `superados`.\n\n## 🔗 Conecta con los otros módulos\n\n| Módulo | Cómo se relaciona |\n|---|---|\n| **Repos y proyectos** | cada nota se vincula a un proyecto (`repos.json` alimenta el selector) |\n| **Roadmap técnico** | los hitos pueden requerir documentación previa |\n| **Bugs e issues** | una solución de fondo se documenta como ADR |\n| **Snippets de código** | los snippets ilustran patrones documentados |\n"
              }
            ]
          }
        ]
      },
      {
        "id": "registro-deploys",
        "carpeta": "Registro_de_Deploys",
        "nombre": "Registro de deploys",
        "icono": "🚀",
        "descripcion": "Historial de despliegues: versión, entorno, fecha, qué cambió y rollback",
        "submodulos": [],
        "categoria": "general",
        "estructura": [
          {
            "id": "Registro_de_Deploys",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "Registro_de_Deploys",
            "subcarpetas": [
              {
                "id": "Registro_de_Deploys/despliegues",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "despliegues",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Registro_de_Deploys/despliegues/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Despliegues\"\ntags:\n  - desarrollo\n  - deploys\n  - despliegues\n---\n\n# 🚀 Despliegues\n\nHistorial de despliegues: una nota por deploy (`YYYY-MM-DD-<slug>.md`) con\nversión, entorno, resultado y rollback.\n"
                  }
                ]
              }
            ],
            "notas": [
              {
                "id": "Registro_de_Deploys/README.md",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "README.md",
                "contenido": "# 🚀 Registro de deploys\n\n> [!note] **Módulo del vault «Desarrollo»**\n> **Log cronológico por proyecto**: cada entrada registra fecha y hora,\n> versión desplegada, entorno (dev/staging/producción), resultado\n> (éxito/fallo) y notas. Las **últimas 10 entradas** se muestran en el\n> **Dashboard** del vault, con los **fallos recientes en rojo**.\n\n## 🖥️ Vista implementada (🚀 Registro de deploys)\n\nLa app del vault expone `#/deploys`:\n\n- **Log cronológico** (más reciente 1º) con cada entrada: 📅 fecha y hora,\n  📦 proyecto, 🏷 versión, entorno, resultado (✅/❌) y notas.\n- **Resumen**: total de deploys, éxitos, fallos y despliegues a producción.\n- **Filtros** por proyecto, entorno y resultado.\n- Formulario modal: fecha y hora (datetime-local; vacía → ahora), proyecto\n  (select desde Repos y proyectos + los ya usados), versión, entorno,\n  resultado y notas.\n- Los datos viven en `Registro_de_Deploys/deploys.json`.\n\n## 🖥️ Widget del Dashboard (🚀 Últimos deploys)\n\nEn el inicio del vault se muestran las **10 entradas más recientes**; cada\ndeploy **fallido** se resalta en **rojo** (fondo y badge) y el contador\n`❌` avisa de cuántos fallos hay entre las últimas. El botón «Ver registro»\nlleva a `#/deploys`.\n\nAdemás, el **📊 Resumen de desarrollo** del dashboard incluye los **últimos\n3 deploys con su resultado** (los fallos en rojo), junto a proyectos\nactivos, issues abiertos por severidad y snippets más copiados.\n\n## 📁 Estructura\n\n```\nRegistro_de_Deploys/\n├── README.md          ← este archivo (cómo registrar un deploy)\n├── deploys.json       ← entradas de la vista (fecha_hora, proyecto, versión, entorno, resultado, notas)\n└── despliegues/       ← notas por deploy (YYYY-MM-DD-<slug>.md)\n```\n\n> Las notas de `despliegues/` siguen existiendo para el detalle (plan,\n> procedimiento, rollback); la vista gestiona `deploys.json` como fuente del\n> registro y ofrece **📤 Exportar / 📥 Importar** (botones de la cabecera)\n> para descargar o restaurar las entradas como JSON (`GET /api/exportar\n> ?modulo=deploys`, `POST /api/importar`).\n> log y del widget del dashboard.\n\n## 🧩 Cómo usarlo\n\n1. **Registrar**: «＋ Nuevo deploy», fecha y hora (o vacía para usar la\n   actual), proyecto, versión, entorno, resultado y notas.\n2. **Revisar**: el Dashboard muestra las últimas 10 entradas con los fallos\n   en rojo; «Ver registro» abre el log completo con filtros.\n3. **Detalle (opcional)**: para despliegues grandes, mantén la nota\n   `despliegues/YYYY-MM-DD-<slug>.md` con el procedimiento y rollback.\n\n## 📋 Frontmatter (mínimo, para las notas de despliegues/)\n\n| Campo | Formato | ¿Obligatorio? | Para qué |\n|---|---|---|---|\n| `tipo` | `deploy` | sí | identifica el tipo de nota |\n| `version` | texto | sí | versión desplegada |\n| `entorno` | `dev` · `staging` · `produccion` | sí | dónde se desplegó |\n| `fecha` | `AAAA-MM-DD` | sí | cuándo |\n| `resultado` | `exitoso` · `con incidencias` · `revertido` | sí | cómo salió |\n| `tags` | lista | opcional | agrupaciones (`desarrollo`, `deploys`) |\n\n## ✍️ Ejemplo (ficha de la vista, con placeholders)\n\n```json\n{\n  \"fecha_hora\": \"AAAA-MM-DD HH:MM\",\n  \"proyecto\": \"[Nombre del repo]\",\n  \"version\": \"[v1.2.0]\",\n  \"entorno\": \"produccion\",\n  \"resultado\": \"exito\",\n  \"notas\": \"[Qué cambió y cómo salió]\"\n}\n```\n\n## 🧭 Mantenimiento\n\n- **Por deploy:** registra la entrada en la vista (o la nota en\n  `despliegues/`) al desplegar; el log es el historial del proyecto.\n- **Nunca se borra:** el registro es el historial de despliegues; eliminar\n  una entrada solo tiene sentido si fue un error de captura.\n\n## 🔗 Conecta con los otros módulos\n\n| Módulo | Cómo se relaciona |\n|---|---|\n| **Repos y proyectos** | cada entrada se vincula a un proyecto (`repos.json` alimenta el selector) |\n| **Bugs e issues** | una incidencia post-deploy se registra como bug |\n| **Documentación técnica** | las guías describen el procedimiento de deploy |\n| **Roadmap técnico** | un hito suele terminar con un deploy |\n"
              }
            ]
          }
        ]
      },
      {
        "id": "repos-proyectos",
        "carpeta": "Repos_y_Proyectos",
        "nombre": "Repos y proyectos",
        "icono": "📦",
        "descripcion": "Inventario de repos y proyectos: propósito, stack, estado y enlaces",
        "submodulos": [],
        "categoria": "general",
        "estructura": [
          {
            "id": "Repos_y_Proyectos",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "Repos_y_Proyectos",
            "subcarpetas": [
              {
                "id": "Repos_y_Proyectos/proyectos",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "proyectos",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Repos_y_Proyectos/proyectos/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Proyectos\"\ntags:\n  - desarrollo\n  - proyectos\n---\n\n# 🗂️ Proyectos\n\nUna nota por proyecto (`<slug>.md`): propósito, stack y los repos que lo\ncomponen.\n"
                  }
                ]
              },
              {
                "id": "Repos_y_Proyectos/repos",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "repos",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Repos_y_Proyectos/repos/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Repos\"\ntags:\n  - desarrollo\n  - repos\n---\n\n# 📦 Repos\n\nUna nota por repositorio (`<slug>.md`): propósito, stack, enlace remoto y\nestado.\n"
                  }
                ]
              }
            ],
            "notas": [
              {
                "id": "Repos_y_Proyectos/README.md",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "README.md",
                "contenido": "# 📦 Repos y proyectos\n\n> [!note] **Módulo del vault «Desarrollo»**\n> Inventario de los repos y proyectos de programación: propósito, stack,\n> estado y enlaces. La **vista 📦 Repos y proyectos** del vault mantiene una\n> **ficha por proyecto** (nombre, URL del repo, stack, estado y descripción)\n> con acceso directo al repositorio y el contador de issues abiertos.\n\n## 📁 Estructura\n\n```\nRepos_y_Proyectos/\n├── README.md          ← este archivo (cómo funciona el módulo)\n├── repos/             ← índices/documentación por repo (<slug>.md)\n├── proyectos/         ← índices/documentación por proyecto (<slug>.md)\n└── repos.json         ← fichas de la vista (lo lee/escribe la interfaz)\n```\n\n## 🧩 Cómo usarlo\n\n1. Abre la **vista 📦 Repos y proyectos** del vault y pulsa **＋ Nueva ficha**:\n   nombre, URL del repositorio, stack tecnológico (tags), estado\n   (`activo` / `pausado` / `archivado`) y descripción corta. Cada tarjeta\n   enlaza al repo (link externo) y muestra los **issues abiertos** vinculados\n   (se leen de las notas de `Bugs_e_Issues/`, campo `proyecto` del\n   frontmatter).\n2. **Proyecto** (en `proyectos/`): documenta con una nota `<slug>.md` (p. ej.\n   `portafolio-web.md`) el propósito, el stack y los repos que lo componen.\n3. **Repo** (en `repos/`): documenta con una nota `<slug>.md` (p. ej.\n   `api-usuarios.md`) el lenguaje/stack, el enlace remoto y el proyecto al\n   que pertenece.\n\n> El JSON de las fichas lo lee/escribe la interfaz del vault\n> (`GET /api/repos`, `POST /api/repos/guardar|eliminar`) con escritura\n> atómica; las subcarpetas `repos/` y `proyectos/` son documentación libre.\n>\n> **Portabilidad:** la vista ofrece **📤 Exportar / 📥 Importar** (botones de\n> la cabecera): descarga los repos como JSON o los restaura desde un archivo\n> exportado, validando cada ficha en el servidor (`GET /api/exportar\n> ?modulo=repos`, `POST /api/importar`).\n\n## 📋 Frontmatter (mínimo)\n\n| Campo | Formato | ¿Obligatorio? | Para qué |\n|---|---|---|---|\n| `tipo` | `repo` o `proyecto` | sí | distingue repo de proyecto |\n| `nombre` | texto | sí | nombre legible |\n| `estado` | `idea` · `en desarrollo` · `activo` · `mantenimiento` · `archivado` | sí | ciclo de vida |\n| `stack` | lista | opcional | lenguajes/tecnologías |\n| `url` | texto | opcional | enlace remoto (repo) |\n| `proyecto` | texto | opcional | proyecto al que pertenece (repo) |\n| `tags` | lista | opcional | agrupaciones (`desarrollo`, `repos`) |\n\n## ✍️ Ejemplo (con placeholders)\n\n```markdown\n---\ntipo: repo\nnombre: \"[Nombre del repo]\"\nestado: en desarrollo\nstack: [\"[lenguaje]\", \"[framework]\"]\nurl: \"https://github.com/[usuario]/[repo]\"\nproyecto: \"[Nombre del proyecto]\"\ntags:\n  - desarrollo\n  - repos\n---\n\n# [Nombre del repo]\n\n- **Proyecto:** [Nombre]\n- **Stack:** [lenguaje], [framework]\n- **Estado:** en desarrollo\n\n## 📝 Notas\n[Propósito, decisiones rápidas, cómo correrlo…]\n```\n\n## 🧭 Mantenimiento\n\n- **Al crear:** registra el repo/proyecto con un placeholder de propósito.\n- **Al cambiar de estado:** actualiza `estado` (no crees nota nueva).\n- **Mensual:** repasa el inventario y archiva lo que ya no se mantiene.\n\n## 🔗 Conecta con los otros módulos\n\n| Módulo | Cómo se relaciona |\n|---|---|\n| **Dashboard** | el estado de los proyectos alimenta el resumen |\n| **Roadmap técnico** | los hitos del roadmap se asignan a proyectos |\n| **Bugs e issues** | cada bug se enlaza al repo/proyecto afectado |\n| **Documentación técnica** | la arquitectura documenta repos clave |\n"
              }
            ]
          }
        ]
      },
      {
        "id": "roadmap-tecnico",
        "carpeta": "Roadmap_Tecnico",
        "nombre": "Roadmap técnico",
        "icono": "🗺️",
        "descripcion": "Plan a medio plazo: hitos, tareas y estado por proyecto",
        "submodulos": [],
        "categoria": "general",
        "estructura": [
          {
            "id": "Roadmap_Tecnico",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "Roadmap_Tecnico",
            "subcarpetas": [
              {
                "id": "Roadmap_Tecnico/backlog",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "backlog",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Roadmap_Tecnico/backlog/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Backlog\"\ntags:\n  - desarrollo\n  - roadmap\n  - backlog\n---\n\n# 📥 Backlog\n\nTareas sueltas por hacer (`<slug>.md`) con su prioridad; al planificarlas se\nasocian a un hito.\n"
                  }
                ]
              },
              {
                "id": "Roadmap_Tecnico/hitos",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "hitos",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Roadmap_Tecnico/hitos/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Hitos\"\ntags:\n  - desarrollo\n  - roadmap\n  - hitos\n---\n\n# 🎯 Hitos\n\nUna nota por hito (`YYYY-MM-<slug>.md`): alcance, fecha objetivo y estado\n(`pendiente` → `en curso` → `hecho`).\n"
                  }
                ]
              }
            ],
            "notas": [
              {
                "id": "Roadmap_Tecnico/README.md",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "README.md",
                "contenido": "# 🗺️ Roadmap técnico\n\n> [!note] **Módulo del vault «Desarrollo»**\n> Plan a medio plazo del proyecto: **tablero kanban por proyecto** con las\n> columnas **Backlog → En progreso → Hecho**. Cada tarjeta es una tarea\n> técnica con título, descripción corta y prioridad; se arrastran entre\n> columnas para avanzar su estado.\n\n## 🖥️ Vista implementada (🗺️ Roadmap técnico)\n\nLa app del vault expone `#/roadmap`:\n\n- **Tablero kanban** con 3 columnas (Backlog, En progreso, Hecho) con\n  contador por columna; **drag & drop** de tarjetas entre columnas + botones\n  ◀ ▶ (accesibles).\n- **Filtros** por proyecto y por prioridad.\n- **Tarjetas**: título, badge de prioridad con color (🔴 alta / 🟡 media /\n  🟢 baja), chip del proyecto 📦 y descripción corta (máx. 3 líneas).\n- Formulario modal: título, proyecto (select desde Repos y proyectos + los\n  ya usados), prioridad, estado y descripción.\n- Los datos viven en `Roadmap_Tecnico/roadmap.json`.\n\n## 📁 Estructura\n\n```\nRoadmap_Tecnico/\n├── README.md          ← este archivo (cómo planificar)\n├── roadmap.json       ← fichas de la vista (título, proyecto, prioridad, estado, descripción)\n├── hitos/             ← una nota por hito (YYYY-MM-<slug>.md)\n└── backlog/           ← tareas sueltas por hacer (<slug>.md)\n```\n\n> Las notas de `hitos/` y `backlog/` siguen existiendo para la planificación\n> en Markdown; la vista gestiona `roadmap.json` como fuente de las tarjetas\n> y ofrece **📤 Exportar / 📥 Importar** (botones de la cabecera) para\n> descargar o restaurar las fichas como JSON (`GET /api/exportar\n> ?modulo=roadmap`, `POST /api/importar`).\n> del tablero.\n\n## 🧩 Cómo usarlo\n\n1. **Crear**: «＋ Nueva tarea», escribe título, elige proyecto (o déjalo\n   vacío), prioridad y una descripción corta.\n2. **Avanzar**: arrastra la tarjeta a la columna siguiente (o usa ◀ ▶); el\n   estado se guarda solo.\n3. **Planificar a medio plazo**: las tareas grandes pueden referenciar un\n   hito de `hitos/` (fecha objetivo y alcance).\n\n## 📋 Frontmatter (mínimo, para las notas de hitos/backlog)\n\n| Campo | Formato | ¿Obligatorio? | Para qué |\n|---|---|---|---|\n| `tipo` | `hito` o `tarea` | sí | distingue hito de tarea |\n| `titulo` | texto | sí | nombre del hito/tarea |\n| `estado` | `pendiente` · `en curso` · `hecho` | sí | ciclo |\n| `prioridad` (tarea) | `baja` · `media` · `alta` | opcional | orden del backlog |\n| `fecha_objetivo` (hito) | `AAAA-MM-DD` | opcional | cuándo debería cerrarse |\n| `tags` | lista | opcional | agrupaciones (`desarrollo`, `roadmap`) |\n\n## ✍️ Ejemplo (ficha de la vista, con placeholders)\n\n```json\n{\n  \"titulo\": \"[Tarea técnica]\",\n  \"proyecto\": \"[Nombre del repo]\",\n  \"prioridad\": \"media\",\n  \"estado\": \"backlog\",\n  \"descripcion\": \"[Qué hay que hacer, alcance breve]\"\n}\n```\n\n## 🧭 Mantenimiento\n\n- **Al crear:** documenta con placeholders; nunca inventes fechas ni\n  alcances reales.\n- **Periódico:** revisa el backlog y mueve lo que esté en curso; archiva en\n  `hecho` solo lo realmente terminado.\n- **Trimestral:** los hitos superados pasan a `hecho` y se documenta el\n  resultado en Documentación técnica si aplica.\n\n## 🔗 Conecta con los otros módulos\n\n| Módulo | Cómo se relaciona |\n|---|---|\n| **Repos y proyectos** | cada tarea se vincula a un proyecto (`repos.json` alimenta el selector) |\n| **Bugs e issues** | el backlog puede incluir deudas técnicas detectadas en bugs |\n| **Documentación técnica** | los hitos pueden requerir documentación previa |\n| **Registro de deploys** | cuando una tarea «hecho» se despliega, se registra |\n"
              }
            ]
          }
        ]
      },
      {
        "id": "snippets-codigo",
        "carpeta": "Snippets_de_Codigo",
        "nombre": "Snippets de código",
        "icono": "🧩",
        "descripcion": "Fragmentos de código reutilizables, organizados por lenguaje y propósito",
        "submodulos": [],
        "categoria": "general",
        "estructura": [
          {
            "id": "Snippets_de_Codigo",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "Snippets_de_Codigo",
            "subcarpetas": [
              {
                "id": "Snippets_de_Codigo/javascript",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "javascript",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Snippets_de_Codigo/javascript/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"JavaScript\"\ntags:\n  - desarrollo\n  - snippets\n  - javascript\n---\n\n# 🟨 Snippets de JavaScript\n\nFragmentos reutilizables en JavaScript/TypeScript (`<slug>.md`).\n"
                  }
                ]
              },
              {
                "id": "Snippets_de_Codigo/python",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "python",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Snippets_de_Codigo/python/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Python\"\ntags:\n  - desarrollo\n  - snippets\n  - python\n---\n\n# 🐍 Snippets de Python\n\nFragmentos reutilizables en Python (`<slug>.md`).\n"
                  }
                ]
              },
              {
                "id": "Snippets_de_Codigo/shell",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "shell",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "Snippets_de_Codigo/shell/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Shell\"\ntags:\n  - desarrollo\n  - snippets\n  - shell\n---\n\n# 🐚 Snippets de shell\n\nFragmentos reutilizables de shell/scripts (`<slug>.md`).\n"
                  }
                ]
              }
            ],
            "notas": [
              {
                "id": "Snippets_de_Codigo/README.md",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "README.md",
                "contenido": "# 🧩 Snippets de código\n\n> [!note] **Módulo del vault «Desarrollo»**\n> Biblioteca de **fragmentos de código reutilizables**: título, lenguaje\n> (con **resaltado de sintaxis**), tags y el código en monoespaciado\n> coloreado. Cada snippet tiene botón **Copiar** y hay un **buscador** por\n> título, lenguaje o tag.\n\n## 🖥️ Vista implementada (🧩 Snippets de código)\n\nLa app del vault expone `#/snippets`:\n\n- **Tarjetas por snippet**: título, badge del lenguaje, tags (`#tag`) y el\n  código en un bloque monoespaciado **coloreado según el lenguaje**\n  (resaltado ligero propio, sin dependencias externas).\n- **📋 Copiar**: copia el código al portapapeles con confirmación y **lleva\n  un contador de copias por snippet** (visible en la tarjeta); los **más\n  copiados** aparecen en el **📊 Resumen de desarrollo** del Dashboard.\n- **🔍 Buscador**: filtra en vivo por título, lenguaje o tag (el contador\n  muestra `coincidencias/total`).\n- Formulario modal para crear/editar: título, **selector de lenguaje**,\n  tags separados por comas y código.\n\n## 📁 Estructura\n\n```\nSnippets_de_Codigo/\n├── README.md          ← este archivo\n├── snippets.json      ← fichas de la vista (título, lenguaje, tags, código)\n├── python/            ← subcarpetas por lenguaje (<slug>.md, notas)\n├── javascript/\n└── shell/\n```\n\n> Las subcarpetas por lenguaje siguen existiendo para notas en Markdown\n> (`<slug>.md`); la vista gestiona `snippets.json` como fuente de las\n> fichas con resaltado.\n>\n> **Portabilidad:** la vista ofrece **📤 Exportar / 📥 Importar** (botones de\n> la cabecera): descarga los snippets como JSON o los restaura desde un\n> archivo exportado, validando cada ficha en el servidor (`GET /api/exportar\n> ?modulo=snippets`, `POST /api/importar`).\n\n## 🧩 Cómo usarlo\n\n1. **Crear**: «＋ Nuevo snippet», escribe título, elige lenguaje en el\n   selector, añade tags (opcionales) y pega el código.\n2. **Reutilizar**: busca por título/lenguaje/tag y pulsa **📋 Copiar**.\n3. **Mantener**: edita o elimina desde cada tarjeta; los lenguajes\n   soportados son `python`, `javascript`, `typescript`, `shell`, `json`,\n   `yaml`, `html`, `css`, `sql` y `markdown`.\n\n## 📋 Frontmatter (mínimo, para las notas por subcarpeta)\n\n| Campo | Formato | ¿Obligatorio? | Para qué |\n|---|---|---|---|\n| `tipo` | `snippet` | sí | identifica el tipo de nota |\n| `lenguaje` | texto | sí | python · javascript · shell · … |\n| `uso` | texto | sí | qué hace, en una línea |\n| `tags` | lista | opcional | agrupaciones (`desarrollo`, `snippets`) |\n\n## ✍️ Ejemplo (ficha de la vista, con placeholders)\n\n```json\n{\n  \"titulo\": \"[Nombre del snippet]\",\n  \"lenguaje\": \"python\",\n  \"tags\": [\"python\", \"archivos\"],\n  \"codigo\": \"# [código reutilizable]\"\n}\n```\n\n## 🧭 Mantenimiento\n\n- **Al crear:** usa placeholders; nunca inventes código de producción real.\n- **Al añadir un lenguaje nuevo:** añádelo al catálogo del backend\n  (`SNIPPETS_LENGUAJES` en `servidor_estudio.py`) y, si quieres colores\n  propios, a `SNIP_REGLAS` en `app.js`.\n- **Periódico:** elimina snippets duplicados u obsoletos.\n\n## 🔗 Conecta con los otros módulos\n\n| Módulo | Cómo se relaciona |\n|---|---|\n| **Documentación técnica** | los snippets ilustran patrones documentados |\n| **Repos y proyectos** | los snippets suelen venir de los repos activos |\n| **Bugs e issues** | una solución de fondo puede dejar un snippet reutilizable |\n"
              }
            ]
          }
        ]
      },
      {
        "id": "conversaciones-ia",
        "carpeta": "_hermes",
        "nombre": "Conversaciones IA",
        "icono": "🤖",
        "descripcion": "Bitácora de conversaciones valiosas con la IA: ideas, decisiones y aprendizajes",
        "submodulos": [],
        "categoria": "general",
        "estructura": [
          {
            "id": "_hermes",
            "etiqueta": "",
            "es_plantilla": true,
            "nombre": "_hermes",
            "subcarpetas": [
              {
                "id": "_hermes/conversaciones",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "conversaciones",
                "subcarpetas": [],
                "notas": [
                  {
                    "id": "_hermes/conversaciones/_index.md",
                    "etiqueta": "",
                    "es_plantilla": true,
                    "nombre": "_index.md",
                    "contenido": "---\ntipo: indice-submodulo\nnombre: \"Conversaciones\"\ntags:\n  - desarrollo\n  - ia\n  - conversaciones\n---\n\n# 🤖 Conversaciones con la IA\n\nUna nota por conversación valiosa: contexto, qué se probó y la solución\n(`YYYY-MM-DD-<tema>.md`).\n"
                  }
                ]
              }
            ],
            "notas": [
              {
                "id": "_hermes/README.md",
                "etiqueta": "",
                "es_plantilla": true,
                "nombre": "README.md",
                "contenido": "# 🤖 Conversaciones IA\n\n> [!note] **Módulo del vault «Desarrollo»**\n> Bitácora de conversaciones valiosas con la IA: ideas, decisiones,\n> aprendizajes y sesiones de trabajo que no quieres perder. Módulo general\n> reutilizado de la plantilla base (carpeta `_hermes/`).\n\n## 📁 Estructura\n\n```\n_hermes/\n├── README.md           ← este archivo (cómo guardar una conversación)\n└── conversaciones/     ← una nota por conversación (YYYY-MM-DD-<tema>.md)\n```\n\n## 🧩 Cómo usarlo\n\n1. Crea y nombra la nota `YYYY-MM-DD-<tema>.md` (p. ej.\n   `2026-08-15-depurar-timeout.md`) en `conversaciones/`.\n2. Guarda el **resumen** de lo valioso: contexto, qué se probó, la solución y\n   los fragmentos clave (o enlaza el snippet en `Snippets_de_Codigo/`).\n3. Si la conversación destapó un bug o una decisión, enlázala desde\n   `Bugs_e_Issues/` o `Documentacion_Tecnica/decisiones/`.\n\n## 📋 Frontmatter (mínimo)\n\n| Campo | Formato | ¿Obligatorio? | Para qué |\n|---|---|---|---|\n| `tipo` | `conversacion-ia` | sí | identifica el tipo de nota |\n| `fecha` | `AAAA-MM-DD` | sí | cuándo fue la conversación |\n| `tema` | texto | sí | de qué trató |\n| `tags` | lista | opcional | agrupaciones (`desarrollo`, `ia`) |\n\n## 🧭 Mantenimiento\n\n- **Al vuelo:** captura lo valioso el mismo día; no hace falta transcribir la\n  conversación entera.\n- **Semanal:** repasa las conversaciones y promueve lo que haya que llevar a\n  otros módulos.\n\n## 🔗 Conecta con los otros módulos\n\n| Módulo | Cómo se relaciona |\n|---|---|\n| **Snippets de código** | un fragmento útil de la conversación se guarda allá |\n| **Bugs e issues** | un bug detectado con la IA se registra allá |\n| **Documentación técnica** | una decisión tomada con la IA se documenta como ADR |\n"
              }
            ]
          }
        ]
      }
    ],
    "conjuntos": [
      {
        "id": "desarrollo-agil",
        "nombre": "🐛 Desarrollo ágil",
        "descripcion": "Repos, bugs, roadmap y documentación",
        "modulos": [
          "dashboard",
          "repos-proyectos",
          "bugs-issues",
          "roadmap-tecnico",
          "documentacion-tecnica"
        ]
      },
      {
        "id": "entrega",
        "nombre": "🚀 Entrega y despliegue",
        "descripcion": "Repos, deploys, snippets y documentación",
        "modulos": [
          "dashboard",
          "repos-proyectos",
          "registro-deploys",
          "snippets-codigo",
          "documentacion-tecnica"
        ]
      },
      {
        "id": "completo",
        "nombre": "🚀 Completo",
        "descripcion": "Todos los módulos de desarrollo de software",
        "modulos": [
          "dashboard",
          "diario",
          "conversaciones-ia",
          "repos-proyectos",
          "bugs-issues",
          "documentacion-tecnica",
          "snippets-codigo",
          "roadmap-tecnico",
          "registro-deploys"
        ]
      },
      {
        "id": "diario",
        "nombre": "📅 Diario",
        "descripcion": "Notas y conversaciones IA del día",
        "modulos": [
          "dashboard",
          "diario",
          "conversaciones-ia"
        ]
      },
      {
        "id": "codigo",
        "nombre": "💻 Código",
        "descripcion": "Repos, bugs y snippets",
        "modulos": [
          "dashboard",
          "repos-proyectos",
          "bugs-issues",
          "snippets-codigo"
        ]
      },
      {
        "id": "documentacion",
        "nombre": "📄 Documentación",
        "descripcion": "Docs técnicas y roadmap",
        "modulos": [
          "dashboard",
          "documentacion-tecnica",
          "roadmap-tecnico"
        ]
      },
      {
        "id": "despliegue",
        "nombre": "🚀 Despliegue",
        "descripcion": "Repos + deploys + documentación",
        "modulos": [
          "dashboard",
          "repos-proyectos",
          "registro-deploys",
          "documentacion-tecnica"
        ]
      },
      {
        "id": "roadmap-completo",
        "nombre": "🗺️ Roadmap completo",
        "descripcion": "Planificación técnica a medio plazo",
        "modulos": [
          "dashboard",
          "roadmap-tecnico",
          "repos-proyectos",
          "bugs-issues"
        ]
      }
    ],
    "dashboard": {
      "visibles": [
        "hero",
        "hoy",
        "resumen"
      ]
    }
  }
}