{
  "generatedAt": "2026-07-27T19:44:47.755Z",
  "title": "Triage de lanzamiento MVP",
  "href": "/herramientas/soporte/triage/",
  "jsonHref": "/herramientas/soporte/triage.json",
  "summary": {
    "queues": 6,
    "p0Queues": 2,
    "p1Queues": 3,
    "p2Queues": 1,
    "manualQueues": 2,
    "supportChannels": 4
  },
  "guardrails": [
    "Primero se corrigen fallos que bloquean uso real; mejoras de contenido esperan si producción está estable.",
    "Una búsqueda sin resultado no se convierte en conclusión sobre la realidad administrativa.",
    "Los reportes anónimos sirven para priorizar, pero las correcciones de datos requieren fuente verificable.",
    "No se publican datos personales, secretos, stack traces completos ni mensajes privados.",
    "Canelones y los otros 17 departamentos siguen como próximamente hasta cambiar la política pública de alcance."
  ],
  "queues": [
    {
      "id": "produccion-rota",
      "title": "Producción rota",
      "priority": "P0",
      "status": "activo",
      "statusLabel": "Atención inmediata",
      "intake": "Checks productivos, navegador, reportes de Soporte y logs de Vercel.",
      "trigger": "Home, suite, buscador, Montevideo, soporte, descargas principales o SSL fallan para usuarios externos.",
      "action": "Confirmar alcance, registrar ruta y hora, aplicar fix pequeño o hacer rollback/promote; comunicar solo cuando haya corrección verificable.",
      "responseWindow": "Primeros 15 minutos desde detección.",
      "owner": "Operación técnica",
      "publishRule": "Publicar update solo si el fallo afecta uso real o cambia una instrucción dada en el anuncio.",
      "tags": [
        "p0",
        "producción",
        "vercel",
        "rollback",
        "checks"
      ],
      "links": [
        {
          "label": "Estado",
          "href": "/herramientas/estado/"
        },
        {
          "label": "Roadmap",
          "href": "/herramientas/roadmap/"
        },
        {
          "label": "Soporte",
          "href": "/herramientas/soporte/"
        }
      ]
    },
    {
      "id": "errores-js",
      "title": "Errores de navegador",
      "priority": "P0",
      "status": "activo",
      "statusLabel": "Logs activos",
      "intake": "ClientErrorMonitor reporta eventos sanitizados a /api/client-errors y los logs quedan en Vercel.",
      "trigger": "Errores JS, promesas no manejadas o recursos críticos que impiden leer o navegar una ruta.",
      "action": "Agrupar por ruta y mensaje sanitizado, reproducir en desktop/mobile y corregir solo si bloquea flujo crítico.",
      "responseWindow": "Primeras 2 horas.",
      "owner": "Operación técnica",
      "publishRule": "No publicar stack traces ni datos de usuario; responder con la ruta corregida cuando el fix esté deployado.",
      "tags": [
        "p0",
        "javascript",
        "logs",
        "mobile",
        "sanitización"
      ],
      "links": [
        {
          "label": "Endpoint",
          "href": "/api/client-errors"
        },
        {
          "label": "Soporte JSON",
          "href": "/herramientas/soporte.json"
        },
        {
          "label": "Buzón",
          "href": "/herramientas/soporte/"
        }
      ]
    },
    {
      "id": "reportes-soporte",
      "title": "Reportes y sugerencias",
      "priority": "P1",
      "status": "activo",
      "statusLabel": "Buzón operativo",
      "intake": "Formulario de Soporte, fallback por correo y reportes anónimos sin cuenta.",
      "trigger": "Bug de uso, enlace roto, texto confuso, sugerencia anónima, mejora UX o propuesta de módulo nuevo.",
      "action": "Clasificar como bug, mejora, fuente faltante, módulo futuro o aporte documental; derivar a Aportes si requiere evidencia.",
      "responseWindow": "Primeras 24 horas.",
      "owner": "Operación editorial",
      "publishRule": "No prometer fecha ni cobertura; registrar correcciones públicas cuando cambien datos o límites visibles.",
      "tags": [
        "p1",
        "soporte",
        "sugerencias",
        "anonimato",
        "roadmap"
      ],
      "links": [
        {
          "label": "Buzón",
          "href": "/herramientas/soporte/"
        },
        {
          "label": "API",
          "href": "/api/support"
        },
        {
          "label": "Aportes",
          "href": "/herramientas/aportes/"
        }
      ]
    },
    {
      "id": "busquedas-sin-resultado",
      "title": "Búsquedas sin resultado",
      "priority": "P1",
      "status": "manual",
      "statusLabel": "Revisión manual",
      "intake": "Consultas reportadas por usuarios, capturas del buscador y patrones detectados durante soporte.",
      "trigger": "Una persona busca un módulo, organismo, departamento, fuente o concepto que debería llevar a cobertura, límite o próximo paso.",
      "action": "Agregar sinónimos al índice, enlazar a cobertura si el dato falta o crear una cola de fuente si el pedido es razonable.",
      "responseWindow": "Primeras 24 horas.",
      "owner": "Producto y contenido",
      "publishRule": "Si no hay dato, enlazar al límite correcto; no inventar resultados ni afirmar ausencia.",
      "tags": [
        "p1",
        "buscador",
        "sin resultados",
        "sinónimos",
        "cobertura"
      ],
      "links": [
        {
          "label": "Buscador",
          "href": "/herramientas/buscar/"
        },
        {
          "label": "Cobertura",
          "href": "/herramientas/cobertura/"
        },
        {
          "label": "Guía rápida",
          "href": "/herramientas/guia-rapida/"
        }
      ]
    },
    {
      "id": "correcciones-datos",
      "title": "Correcciones de datos",
      "priority": "P1",
      "status": "preparado",
      "statusLabel": "Derivación preparada",
      "intake": "Aportes documentales, derecho de respuesta, fuente pública faltante o corrección institucional.",
      "trigger": "Alguien señala que un dato, fuente, cargo, compra, voto, documento o límite está incompleto o mal presentado.",
      "action": "Pedir fuente verificable, preservar el dato anterior si corresponde, corregir con nota de alcance y regenerar checks.",
      "responseWindow": "Primeras 24 a 48 horas.",
      "owner": "Edición y datos",
      "publishRule": "Toda corrección material debe dejar trazabilidad de fuente, fecha y motivo; no resolver por DM sin evidencia.",
      "tags": [
        "p1",
        "datos",
        "correcciones",
        "fuentes",
        "derecho de respuesta"
      ],
      "links": [
        {
          "label": "Aportes",
          "href": "/herramientas/aportes/"
        },
        {
          "label": "Cobertura",
          "href": "/herramientas/cobertura/"
        },
        {
          "label": "Estado",
          "href": "/herramientas/estado/"
        }
      ]
    },
    {
      "id": "mejoras-roadmap",
      "title": "Mejoras post-MVP",
      "priority": "P2",
      "status": "manual",
      "statusLabel": "Roadmap",
      "intake": "Sugerencias de módulo, mejoras de navegación, ideas de visualización y pedidos no bloqueantes.",
      "trigger": "La sugerencia suma utilidad pública, tiene fuente oficial posible y no rompe el alcance del MVP.",
      "action": "Convertir en ítem de roadmap, definir fuente, primer caso de uso, compuerta editorial y check mínimo.",
      "responseWindow": "Después de las primeras 24 horas.",
      "owner": "Producto",
      "publishRule": "No anunciar como promesa hasta tener fuente, alcance, límite y primer entregable verificable.",
      "tags": [
        "p2",
        "roadmap",
        "nuevo módulo",
        "mejoras",
        "post-mvp"
      ],
      "links": [
        {
          "label": "Roadmap",
          "href": "/herramientas/roadmap/"
        },
        {
          "label": "Soporte",
          "href": "/herramientas/soporte/"
        },
        {
          "label": "Casos de uso",
          "href": "/herramientas/casos-de-uso/"
        }
      ]
    }
  ]
}