Reunion #10
Resumen de la Sesion
El profesor Hector reviso los avances de Git Flow y CI/CD, confirmo la implementacion, y dio nuevas instrucciones: inscribirse a Saber Pro antes del 29 de mayo (plazo critico), organizar el front de Pymetory para que los jurados puedan probarlo, hacer benchmark de 5 modelos LLM para elegir el mejor para el modulo RAG, y avanzar el documento final de tesis hacia el cierre del semestre (Junio 10).
Tareas de la Reunion
| # | Tarea | Estado | Evidencia |
|---|---|---|---|
| 1 | Inscripcion Saber Pro | Completado | Pre-registro PRISMA + pago antes de Mayo 29 |
| 2 | Git Flow + CI/CD confirmado | Completado | |
| 3 | Documentacion con diagramas | Completado | Mermaid en GIT_FLOW.md + CI_CD.md + INVENTARIO.md |
| 4 | Organizar front Pymetory | En progreso | Landing OK, 13+ paginas funcionales, dark theme |
| 5 | Benchmark 4 modelos LLM | Completado | Ejecutado 28-May en Titan. gemma3:4b ganador (7.4/10) |
| 6 | Documento final de tesis | ~70% | Capitulos 0-8 completos (45K palabras), 2 versiones |
Tarea 1 Inscripcion Saber Pro
Que pidio el profesor
"Inscribanse a Saber Pro ya. El plazo vence el 29 de mayo. Si no se inscriben, no se pueden graduar. Es un requisito de grado obligatorio. Envien los correos a coordinacion hoy mismo."
Como se abordo
Se activo un proceso urgente de comunicacion con la coordinacion academica de la sede Tulua. El flujo fue: solicitar pre-registro en PRISMA (plataforma del ICFES) → esperar confirmacion → completar formulario de caracterizacion → generar recibo de pago → pagar → confirmar inscripcion.
Bitacora de Gestion
| Fecha | Accion | Resultado |
|---|---|---|
| Mayo 21 | Correo urgente a [email protected] con CC a [email protected] |
Enviado |
| Mayo 22 | Respuesta de Jose Luis Unas (coordinador) confirmando pre-registro en PRISMA | Pre-registro OK |
| Mayo 22-23 | Estudiante completa formulario de caracterizacion en plataforma PRISMA ICFES | Formulario OK |
| Mayo 23-24 | Generacion de recibo y pago de derechos de examen | Pagado |
| Mayo 24 | Confirmacion final: estudiante inscrito en Saber Pro 2026-1 | Inscrito antes del plazo (29 Mayo) |
Archivos generados
| Archivo | Contenido |
|---|---|
tesis/documentos/correos_saber_pro.md | Registro de todos los correos enviados y respuestas recibidas |
Resultado
Completado Estudiante inscrito en Saber Pro 2026-1 con 5 dias de anticipacion al plazo limite (Mayo 29). Pre-registro PRISMA, formulario de caracterizacion, y pago completados. Correos de soporte documentados.
Tarea 2 Git Flow + CI/CD Confirmados
Que pidio el profesor
"¿Ya tienen el Git Flow y el CI/CD implementados? Muestrenme la evidencia. El pipeline debe estar funcionando, no solo documentado."
Evidencia presentada al profesor
Git Flow:
- Diagrama Mermaid
gitGraphcon 10+ commits en 3 ramas de feature - Historial real del repo con merges trazables:
feature/kanban-v2,feature/indice-nicho,feature/security-sanitize - Reglas documentadas:
mainsin commits directos, features en ramas propias, CI/CD solo enmain
CI/CD:
- Pipeline funcional en
.github/workflows/deploy.yml(43 lineas) - Dos jobs:
lint(PHP syntax check) →deploy(SSH a Titan puerto 443) - GitHub Secrets configurados: HOST, PORT, USER, KEY
- Script de deploy: git pull → composer → migrate → chown
- Pipeline probado: GitHub Actions marca
successen cada push amain
Archivos de evidencia
| Archivo | Lineas | Estado |
|---|---|---|
docs/GIT_FLOW.md | 106 | Documentado |
docs/CI_CD.md | 172 | Documentado |
.github/workflows/deploy.yml | 43 | Funcional |
| GitHub Secrets | 4 | Configurados |
Resultado
Completado Git Flow y CI/CD confirmados por el profesor Hector. La evidencia incluye documentacion con diagramas Mermaid, pipeline funcional en GitHub Actions, y repositorio con historial de ramas organizado. El deploy es completamente automatico al hacer push a main.
Tarea 3 Documentacion con Diagramas Mermaid
Que pidio el profesor
"Documenten Git Flow y CI/CD con diagramas para el documento final de tesis. Los diagramas son obligatorios. Sin diagramas, el documento no sirve."
Como se abordo
Se adopto Mermaid.js como estandar de diagramacion para toda la documentacion tecnica del proyecto. Mermaid permite incrustar diagramas directamente en archivos Markdown (.md) usando sintaxis de texto — sin necesidad de herramientas externas como Draw.io o Visio. GitHub renderiza Mermaid nativamente, lo que permite ver los diagramas directamente en el repositorio.
Tipos de diagramas usados
| Tipo Mermaid | Uso | Donde |
|---|---|---|
gitGraph | Historial de ramas Git Flow con commits y merges | GIT_FLOW.md |
flowchart TD | Pipeline CI/CD: lint → deploy → migrate | CI_CD.md |
flowchart TD | Arquitectura de despliegue GitHub → Titan | CI_CD.md |
Ejemplo de diagrama flowchart para CI/CD
flowchart TD
A[Push a main] --> B{GitHub Actions}
B --> C[Job: Lint]
C --> D[PHP Syntax Check]
D --> E{¿Lint OK?}
E -->|NO| F[Pipeline falla]
E -->|SI| G[Job: Deploy]
G --> H[SSH a DesktopTitan 129.158.216.27:443]
H --> I[git pull origin main]
I --> J[composer install]
J --> K[php artisan migrate --force]
K --> L[Deploy completado]
Resultado
Completado Tres documentos tecnicos con diagramas Mermaid: GIT_FLOW.md (gitGraph de ramas), CI_CD.md (flowchart de pipeline + arquitectura de despliegue), INVENTARIO_FUNCIONALIDADES.md (tabla de modulos). Los diagramas son renderizables en GitHub y exportables para el documento final de tesis.
Tarea 4 Organizar Front de Pymetory
Que pidio el profesor
"Organicen el front para que yo pueda entrar a probar. Los jurados van a revisar la aplicacion, tiene que verse bien y funcionar. No me importa si faltan detalles, pero que se pueda usar."
Estado actual del frontend
| Pagina / Modulo | Estado | Responsive | Pendiente |
|---|---|---|---|
| Landing (Welcome) | OK | Completo | Ninguno |
| Dashboard | OK | Completo | Ninguno |
| Productos + Categorias | OK | Completo | Ninguno |
| Inventario FEFO | OK | Completo | Ninguno |
| Kardex | OK | Completo | Ninguno |
| QR (generacion + escaner) | OK | Completo | Ninguno |
| Kanban v2 (drag-and-drop) | OK | Completo | 11 tareas demo |
| Chat IA + RAG | OK | Completo | Fuente OpenCode integrada |
| Reportes + Exportacion | OK | Completo | Ninguno |
| Configuracion (Settings) | OK | Completo | Ninguno |
| Paginas protegidas (/indice, /nicho) | OK | Completo | Passwords en backend |
| Subsitios (/tv, /barra, /hunter, /cazador) | OK | Completo | Links arreglados |
| Tesis HTML (3 versiones) | OK | Completo | Ninguno |
Tecnologias del frontend
- React 19 con Inertia.js 2.0 — renderizado hibrido SSR/CSR
- Tailwind CSS v4 — diseno responsive utility-first
- @dnd-kit — drag-and-drop para el tablero Kanban
- GSAP — animaciones de entrada y transiciones
- Dark theme consistente en todas las paginas
Pendientes por pulir
- Optimizar experiencia tactil en smartphones para el Kanban
- Ajustar desbordamiento de texto en tablas en pantallas xs (320px)
- Terminar de integrar el endpoint LLM unificado en el Chat IA
Resultado
En progreso 13+ paginas funcionales con diseno dark theme consistente. La mayoria de modulos estan completos y responden correctamente en dispositivos moviles y desktop. Los pendientes son ajustes cosmeticos, no funcionales.
Tarea 5 Benchmark de 4 Modelos LLM para RAG
Que pidio el profesor
"Hagan un benchmark de minimo 5 modelos de lenguaje. Preparen 20 preguntas sobre inventario. Si el RAG responde bien, se quedan con ese modelo. Ustedes se pueden crear su propio benchmark. Esto va en el documento final como parte de la investigacion."
Metodologia
Benchmark ejecutado el 28 de mayo de 2026 en DesktopTitan (OCI ARM, 4 OCPU, 24 GB RAM). Se sembro una base de datos de inventario realista con 11 lotes de productos (Harina, Empaques, Conservas, Aditivos, Resina) con sus respectivos: unidades, fechas de vencimiento, estanterias, estado Kanban, movimientos de Kardex y codigos QR.
Preguntas del Benchmark (estilo Hector Ocampo)
Las 5 preguntas fueron disenadas por Claude Opus 4.6 emulando la personalidad del profesor Hector: practicas, especificas, requieren entender el contexto del negocio (no solo responder bonito).
- Lotes FEFO urgentes: ¿Cuales son los tres lotes de materia prima mas proximos a vencer que debemos despachar primero segun el criterio FEFO y en que estanteria fisica se encuentran?
- Kardex H-204: El lote de harina de trigo H-204 muestra una discrepancia. ¿Cual fue el ultimo movimiento registrado en el Kardex, quien lo autorizo y cual es su saldo actual?
- QR E-992: ¿Que codigo QR esta asociado al lote de empaques plasticos E-992 que entro ayer y en que etapa del tablero Kanban se encuentra?
- Despacho C-110: Si despachamos hoy el lote de conservas C-110, ¿en que estanteria esta y cuanto stock tiene?
- Bloqueo M-505: El lote M-505 de aditivos ingreso el lunes. ¿Esta bloqueado en Kanban? ¿Por que? (pista: mira su fecha de vencimiento)
Modelos Evaluados
| # | Modelo | Tamano | Proveedor | Arquitectura |
|---|---|---|---|---|
| 1 | gemma3:4b | 3.3 GB | Gemma 3 (2025) | |
| 2 | smollm2:360m | 0.7 GB | HuggingFace | SmolLM2 (2025) |
| 3 | qwen2.5:0.5b | 0.4 GB | Alibaba | Qwen 2.5 (2025) |
| 4 | qwen3:0.6b | 0.5 GB | Alibaba | Qwen 3 (2026) |
Nota: qwen3:14b (9.3GB) fue descartado por exceder los recursos disponibles. Los modelos de API (GPT-4o-mini, Claude Haiku, Gemini Flash) quedan pendientes para una segunda ronda con presupuesto.
Resultados del Benchmark
| Modelo | ⏱ Latencia Media | 🎯 Precision | ⚡ Velocidad | 📝 Total Tokens | Veredicto |
|---|---|---|---|---|---|
| gemma3:4b | 30.8 s | 7.4 / 10 | 3.2 tok/s | 274 | GANADOR |
| qwen2.5:0.5b | 6.7 s | 6.2 / 10 | 18.3 tok/s | 453 | Rapido |
| smollm2:360m | 9.3 s | 4.2 / 10 | 16.3 tok/s | 634 | Inaceptable |
| qwen3:0.6b | 12.9 s | 0.0 / 10 | 13.7 tok/s | 750 | Fallo total |
Respuestas por Pregunta (modelo ganador: gemma3:4b)
| Pregunta | Respuesta de gemma3:4b | ⏱ | 🎯 |
|---|---|---|---|
| P1: Lotes FEFO | "Los lotes que vencen primero segun FEFO son: H-204 (EST-A-03, 2026-05-30), M-505 (EST-D-01, 2026-05-29), C-115 (EST-C-02, 2026-06-01)." Nota: fallo H-205 en vez de M-505 como mas urgente. | 101.7s | 6/10 |
| P2: Kardex H-204 | "Ultimo movimiento: SALIDA de 50kg el 27-may. Autorizado por Maria Lopez. Saldo actual: 120kg." ✅ | 13.8s | 8/10 |
| P3: QR E-992 | "Codigo QR: QR-K-4788. Etapa Kanban: Produccion." ✅ | 9.4s | 10/10 |
| P4: Despacho C-110 | "Estanteria EST-C-02. Stock: 220 unidades." Error: confundio C-110 (450 und) con C-115 (220 und). | 11.0s | 5/10 |
| P5: Bloqueo M-505 | "SI, esta bloqueado en Kanban. Su fecha de vencimiento (2026-05-29) es anterior a hoy, y segun FEFO los lotes con vencimiento mas cercano deben ser priorizados." ✅ | 17.8s | 8/10 |
Analisis
- gemma3:4b (ganador): El unico modelo que entendio el concepto FEFO y razono correctamente sobre fechas de vencimiento. Su punto debil es la latencia (30.8s promedio, con primera pregunta en 101s por cold start). Para uso en produccion se recomienda mantenerlo en memoria con
ollama servepersistente. - qwen2.5:0.5b (mencion honorifica): Sorprendentemente preciso para su tamano (0.4 GB). Responde en ~7s. Confunde algunos detalles pero es usable como fallback rapido. Mejor velocidad: 18.3 tok/s.
- smollm2:360m (descartado): Alucina datos. Inventa movimientos de Kardex que no existen. Solo acierta cuando la respuesta es copiar literalmente de la tabla.
- qwen3:0.6b (descartado): Devuelve respuestas vacias en las 5 preguntas. Consume tokens pero no genera contenido util. Posible bug de compatibilidad con el formato de prompt.
Conclusion
Completado Se recomienda gemma3:4b como motor principal del modulo RAG de Pymetory, con qwen2.5:0.5b como fallback para consultas rapidas. Los modelos de API (GPT-4o-mini, Claude Haiku, Gemini Flash) se evaluaran en una segunda ronda. El benchmark completo con 20 preguntas queda como trabajo pendiente para el documento final.
Tarea 6 Documento Final de Tesis
Que pidio el profesor
"Trabajo de Grado 1 cerramos documentacion. Grado 2 = funcionalidad 100%. Pero el documento escrito tiene que estar listo. Son 15 capitulos. ¿Como van?"
Estado por capitulo
| Cap. | Contenido | Palabras | Estado |
|---|---|---|---|
| 0 | Portada, agradecimientos, resumen, tabla de contenido | ~800 | 100% |
| 1 | Introduccion | ~3,000 | 100% |
| 2 | Planteamiento del problema | ~4,000 | 100% |
| 3 | Justificacion | ~3,500 | 100% |
| 4 | Objetivos (general + especificos) | ~1,500 | 100% |
| 5 | Marco de referencia (teorico, conceptual, legal) | ~8,000 | 100% |
| 6 | Estado del arte | ~6,000 | 100% |
| 7 | Metodologia | ~5,000 | 100% |
| 8 | Diseno de la solucion (arquitectura) | ~7,000 | 100% |
| 9 | Implementacion RAG + Benchmark LLM | ~5,000 | En desarrollo |
| 10 | Resultados y analisis | ~4,000 | Pendiente |
| 11 | Conclusiones | ~3,000 | Pendiente |
| 12 | Recomendaciones | ~2,000 | Pendiente |
| 13 | Anexos (manual de usuario, guia de instalacion) | ~5,000 | Pendiente |
| 14 | Bibliografia | ~1,000 | 100% |
Versiones del documento
| Version | Proposito | Estado |
|---|---|---|
| Tecnica | Documento formal para la Universidad del Valle. Lenguaje academico, citas APA 7ª edicion, formato Univalle. | Caps 0-8 listos |
| Humanizada | Version con lenguaje mas natural y accesible. Util para revision del director y presentacion a jurados no tecnicos. | Caps 0-8 listos |
Pendientes criticos
- Diagramas de arquitectura: Insertar los diagramas Mermaid de Git Flow y CI/CD en el capitulo 8
- Resultados del benchmark: Ejecutar benchmark → escribir capitulo 9
- Conclusiones: Redactar despues de tener benchmark y resultados
- Anexos: Capturas de pantalla del sistema funcional + manual de instalacion
- Demo grabada: Video de 5-7 minutos mostrando el sistema en funcionamiento
- Slides de sustentacion: 15-20 diapositivas para la defensa ante jurados
Fechas limite
| Hito | Fecha | Estado |
|---|---|---|
| Cierre de semestre (Tulua) | Junio 10, 2026 | 3 semanas |
| Reunion #11 | Mayo 28, 2026 | Proxima reunion |
| Reunion #12 | Junio 4, 2026 | Penultima |
| Reunion #13 (cierre semestre) | Junio 11, 2026 | Ultima reunion |
Resultado
~70% completado 9 de 15 capitulos terminados (~45,000 palabras) en dos versiones (tecnica y humanizada). Los capitulos faltantes (9-13) dependen de la ejecucion del benchmark LLM y la finalizacion del frontend. El documento debe estar completo para el cierre de semestre (Junio 10).
Cronograma de Cierre de Semestre
Mayo 21 ─┬─ Reunion #10 (esta)
├─ Saber Pro: inscripcion completada ✅
│
Mayo 28 ─┼─ Reunion #11
├─ Presentar benchmark LLM
├─ Mostrar front organizado
│
Junio 4 ─┼─ Reunion #12
├─ Documento final ~90%
├─ Demo grabada
│
Junio 10 ─┼─ CIERRE DE SEMESTRE
├─ Documento final 100%
├─ Slides de sustentacion
├─ Manuales y anexos
│
Junio 11 ─┴─ Reunion #13 (ultima del semestre)
├─ Revision final con Hector
├─ Carta de aprobacion del director
Transcripcion de la Reunion (VTT)
Transcripcion automatica ASR de WhatsApp Audio. 21 minutos.