⚒ transforma-cuba

← back to repo

Commit history

            
                * 1816bcc (HEAD -> main) docs(design): estado editable persiste en el volumen a través de updates
                * 9f7b99f chore(deploy): Makefile con atajos airgapped (make airgap-usb, -tar, -smoke)
                * 7114519 fix(deploy): persistir los almacenes editables nuevos en el volumen /data
                * 3dc2dde docs(design): integrar la pantalla de alertas en el diseño
                * a290af9 feat(alertas): pantalla #/alertas + badge en la navegación
                * b173aa7 feat(alertas): motor de alertas por prioridad (backend)
                * 82fe884 docs: spec de alertas (medidas a vigilar por prioridad)
                * 3c3e991 docs(design): integrar configuración editable e ingestión en el diseño
                * e52c96b feat(config): UI editable de modelo y fuentes en #/setup
                * c20be11 feat(config): modelo y fuentes editables en caliente (backend)
                * 24e3efe docs: spec de configuración editable (modelo + fuentes)
                * e08e451 feat(setup): ingestión de documentos → indicadores + estado de pasos (nivel 2)
                * 9c409e8 docs(spec): ingestión de documentos → indicadores + estado de pasos (nivel 2)
                * 4951914 feat(setup): sección Fuentes de opinión real + Buscar ahora
                * 3236cad fix(web): topbar isolation:isolate — arregla bloque blanco al scrollear
                * 24f24ca feat(setup): sección Modelo de IA con config real + probar conexión
                * d089cf0 feat(web): navegación principal como desplegable en vez de pills
                * cf5d92a feat(opinion): la lectura de cada segmento acumula todas sus fotos
                * 996ca79 fix(firecrawl): reintentos sobre 5xx (el scrapeo da 502 intermitentes)
                * 8464c04 refactor(opinion): reemplaza Tavily por Firecrawl como motor de búsqueda
                * 57fd44b docs(design): opinión persiste en beaver (no JSON)
                * 9edbbf8 chore(opinion): semilla con las fotos reales ya publicadas
                * b7d8207 refactor(opinion): store en beaver + arregla el pipeline de opinión
                * ed6b918 docs(design): reescribe DESIGN.md como síntesis top-down actual
                * 6180741 fix(airgapped): usar network_mode host para alcanzar el LLM local
                * ab3419e feat(deploy): update-usb-drive.sh + airgap-smoke.sh (e2e verificado)
                * e1e5b8c feat(deploy): install.sh interactivo (LLM /models + reintento, basic auth, puerto)
                * bcb724f feat(deploy): build-airgapped.sh (uv export + docker build + save) + compose tmpl
                * 596b39b docs(deploy): know-how del despliegue airgapped
                * 39b960d feat(deploy): Dockerfile airgapped (fastembed horneado + weasyprint + entrypoint)
                * 06f8c9d feat(deploy): basic auth opcional (BASIC_AUTH_USER) + /healthz
                * 1a40e65 docs: plan de implementación del despliegue airgapped
                * 50cc990 docs: spec de despliegue airgapped (install.sh + dashboard-docker.tar.gz)
                * 2153c6d fix(llm): no enviar response_format json_object a endpoints locales (LM Studio 400)
                * 414b8fe feat(pptx): exportar el resumen como PDF además de PPTX, desde un desplegable
                * d86bfe0 feat(pptx): vendorea prism + escudo del Gobierno en la portada (theme cuba)
                * 83abb88 feat(pptx): generar presentación (resumen ejecutivo, plantilla Cuba) con prism
                * 1787ac2 fix(indicadores): la cobertura se agrega del grafo VIGENTE, no de un corpus obsoleto
                * b52eb35 feat(indicadores): sec-cuellos (real) y coh-indice (estimado) desde el grafo
                * 65a5965 feat(search): FASTEMBED_CACHE_DIR configurable para despliegues offline
                * d2bb406 feat(reporte): páginas de detalle opcionales por sección (Gantt, todas las medidas…)
                * 72e7357 feat(chat): el chatbot flotante se contextualiza a la medida en su detalle
                * f920923 fix(ui): escudo más pequeño y centrado (crop por flood-fill)
                * 4956cf4 feat(chat): contexto de la medida en su detalle (backend)
                * d6b9fff feat(ui): escudo del Gobierno de Cuba como favicon, logo del navbar y header del reporte
                * c14aea4 style(chat): quita el caret de streaming (no aportaba)
                * 498e3b0 feat: streaming del chatbot en todas las superficies (chat, análisis, explicar)
                * b0216bc feat(llm): streaming SSE (_chat_stream + ask/analizar/explicar_relacion _stream)
                * 2237889 feat(reporte): generar reporte PDF (weasyprint) con secciones a elegir + IA
                * e9800d9 feat(medidas): semáforo de nivel de dependencia por medida