Files
dtic-DIIAA/docs/ambito/dtic-DASUTEN/A04.P007_Bugs-Operativos.md
T

274 lines
8.4 KiB
Markdown

# Registro de Bugs y Problemas Operativos DASUTEN
> **Ámbito:** A04 — dtic-DASUTEN
> **Código:** A04.P007
> **Estado:** 🟢 ACTIVO (operación continua)
> **Responsable:** DTIC - DIIAA
---
## 📊 Tablero de Estado
| Bug-ID | Título | Prioridad | Estado | Fecha Reporte | Fecha Cierre |
|:------:|--------|:---------:|:------:|:--------------|:-------------|
| #001 | [Error plantillas en Práctica](#bug-001-error-de-plantillas-en-sección-práctica) | Alta | 🔍 Diagnóstico | 2026-04-16 | — |
| #002 | [Impresión - rutas hardcodeadas](#bug-002-impresión-no-funciona-rutas-hardcodeadas) | Alta | ✅ Cerrado | 2026-04-13 | 2026-04-13 |
| #003 | [Zona horaria incorrecta](#bug-003-zona-horaria-incorrecta-en-servidor) | Media | ✅ Cerrado | 2026-04-14 | 2026-04-14 |
| #004 | [Restore diferencial - escape rutas](#bug-004-restore-diferencial-fallaba-por-escape-de-rutas) | Alta | ✅ Cerrado | 2026-04-16 | 2026-04-16 |
**Leyenda de Estados:**
- 🆕 Reportado → 🔍 En diagnóstico → 🛠️ En solución → ✅ Resuelto → 📚 Cerrado
---
## 🎯 Objetivo del Documento
Este registro centraliza la **gestión de bugs y problemas operativos** del sistema DASUTEN en producción.
**Características:**
- **Vivo:** Se actualiza con cada nuevo bug reportado
- **Trazable:** Cada bug tiene ID único y historial completo
- **Acción:** Estado claro y próximos pasos definidos
- **Histórico:** Bugs cerrados permanecen como referencia
---
## 📋 Bugs Activos
### BUG #001: Error de Plantillas en Sección "Práctica"
| Metadato | Valor |
|----------|-------|
| **Reportado por** | Andrea Almirón |
| **Fecha** | 2026-04-16 |
| **Prioridad** | Alta |
| **Estado** | 🔍 En diagnóstico |
| **Impacto** | Bloquea sección completa de Práctica |
#### Descripción
Al intentar trabajar en la sección **Práctica**, el sistema muestra un error relacionado con **plantillas de documentos**.
#### Contexto Técnico
El sistema DASUTEN utiliza plantillas Word/Excel para generar documentos imprimibles:
- `C:\SysDasuten\Sistema\Word\` (97 archivos .doc)
- `C:\SysDasuten\Sistema\Excel\` (Recibo.xls)
#### Antecedentes Relacionados
| Bug-ID | Problema | Solución |
|--------|----------|----------|
| #002 | Impresión no funcionaba — rutas a `C:\Sistema\` | Symlink `C:\Sistema → C:\SysDasuten\Sistema` |
#### Hipótesis
1. **Ruta de plantillas incorrecta** — El ejecutable VFP busca en una ruta que no existe
2. **Permisos de archivo** — Las plantillas no son legibles desde el contexto de ejecución
3. **Referencia en código** — La sección "Práctica" tiene una ruta hardcodeada diferente
#### Próximos Pasos
- [ ] Identificar mensaje de error exacto (captura de pantalla de la usuaria)
- [ ] Verificar ruta de plantillas que busca el sistema
- [ ] Confirmar si las plantillas existen en esa ruta
- [ ] Revisar logs de eventos de Windows (si aplica)
#### Solución a Implementar
Pendiente de diagnóstico. Opciones probables:
- Symlink adicional si la ruta es diferente
- Modificación de configuración en `.ini` o registro
- Ajuste de permisos de archivos
---
## 📜 Histórico de Bugs Cerrados
### BUG #002: Impresión no Funciona - Rutas Hardcodeadas
| Metadato | Valor |
|----------|-------|
| **Reportado por** | Andrea Almirón |
| **Fecha** | 2026-04-13 |
| **Prioridad** | Alta |
| **Estado** | ✅ Cerrado |
| **Tiempo de resolución** | < 2 horas |
#### Descripción
La función de impresión del sistema DASUTEN no funcionaba. Los documentos no se generaban.
#### Causa Raíz
El ejecutable de Visual FoxPro tenía hardcodeada la ruta legacy `C:\Sistema\` para las plantillas, pero el directorio real estaba en `C:\SysDasuten\Sistema\`.
#### Solución Implementada
```powershell
# Symlink para redirigir ruta legacy a ruta actual
New-Item -ItemType SymbolicLink -Path "C:\Sistema" -Target "C:\SysDasuten\Sistema"
```
#### Validación
- [x] Impresión de documentos funcional
- [x] Validado por usuaria Andrea Almirón
#### Lección Aprendida
El sistema VFP asume rutas legacy. Documentar todos los paths hardcodeados antes de migraciones futuras.
---
### BUG #003: Zona Horaria Incorrecta en Servidor
| Metadato | Valor |
|----------|-------|
| **Reportado por** | Monitoreo DTIC |
| **Fecha** | 2026-04-14 |
| **Prioridad** | Media |
| **Estado** | ✅ Cerrado |
| **Tiempo de resolución** | < 30 minutos |
#### Descripción
El servidor `dasu-sql4` tenía configurada una zona horaria incorrecta, lo que afectaba los timestamps de la base de datos y los backups.
#### Causa Raíz
La zona horaria configurada era "Romance Standard Time" (UTC+2, Europa del Este) en lugar de "Argentina Standard Time" (UTC-3).
#### Solución Implementada
```powershell
# Configurar zona horaria correcta
Set-TimeZone -Id "Argentina Standard Time"
```
#### Validación
- [x] `Get-TimeZone` retorna "Argentina Standard Time"
- [x] Timestamps de SQL Server correctos
- [x] Backups con horarios OK
#### Lección Aprendida
Verificar timezone en deploy inicial de cualquier servidor Windows. Incluir en checklist de provisioning.
---
### BUG #004: Restore Diferencial Fallaba por Escape de Rutas
| Metadato | Valor |
|----------|-------|
| **Reportado por** | Pipeline de Backups |
| **Fecha** | 2026-04-16 |
| **Prioridad** | Alta |
| **Estado** | ✅ Cerrado |
| **Tiempo de resolución** | < 1 hora |
#### Descripción
El script Ruby de restore diferencial fallaba al intentar ejecutar comandos en el servidor Windows.
#### Causa Raíz
Las rutas Windows en el script Ruby no tenían el escape correcto de backslashes. Ejemplo:
```ruby
# Incorrecto
"C:\Program Files\Microsoft\..."
# Correcto
"C:\\Program Files\\Microsoft\\..."
```
#### Solución Implementada
Modificación del archivo `dasuten_restaurar_diferencial_dasu-sql4.rb`:
- Escape de todas las rutas Windows con dobles backslashes
- Validación de sintaxis Ruby
Commit: `faf46be8 [Bugfix] dasuten_restaurar_diferencial_dasu-sql4.rb — Escape rutas Windows`
#### Validación
- [x] Restore diferencial ejecuta sin errores de sintaxis
- [x] Backup restaurado correctamente en entorno de prueba
#### Lección Aprendida
Los scripts Ruby que interactúan con Windows requieren escape estricto de rutas. Considerar uso de `%q{}` o forward slashes donde sea compatible.
---
## 🔧 Metodología de Gestión de Bugs
### Flujo de Trabajo
```
🆕 Reportado → 🔍 Diagnóstico → 🛠️ En solución → ✅ Resuelto → 📚 Cerrado
```
### Criterios de Estado
| Estado | Criterio |
|--------|----------|
| 🆕 **Reportado** | Bug ingresado en el registro, pendiente de análisis inicial |
| 🔍 **Diagnóstico** | Equipo analizando causa raíz, reproduciendo el error |
| 🛠️ **En solución** | Causa identificada, implementación de fix en curso |
| ✅ **Resuelto** | Fix implementado, pendiente validación del usuario |
| 📚 **Cerrado** | Usuario validó solución, bug se mueve a histórico |
### Bitácora Web
Los detalles de cada intervención se registran en:
- **URL:** http://localhost:5174/bitacoras/
- **Filtro:** Ámbito `dtic-DASUTEN`
- **Búsqueda:** `[A04.P007]` o `BUG-###`
---
## 📝 Lecciones Aprendidas (Consolidado)
| Fecha | Bug | Causa Raíz | Solución | Prevención |
|-------|-----|------------|----------|------------|
| 2026-04-13 | #002 Impresión | Rutas hardcodeadas legacy | Symlink `C:\Sistema` | Documentar paths en código VFP |
| 2026-04-14 | #003 Timezone | "Romance Standard Time" | `Set-TimeZone` Argentina | Checklist de provisioning |
| 2026-04-16 | #004 Escape rutas | Backslashes sin escape en Ruby | `C:\\Program Files\\...` | Linter/validación de scripts |
---
## 🛠️ Herramientas Disponibles
```bash
# SSH a dasu-sql4 (vía srv-dasu)
./adn/tools/run nodos info dasu-sql4
# SSH a dasu-pc (vía Tailscale)
./adn/tools/run nodos info dasu-pc
# Ejecutar PowerShell remoto
ruby adn/tools/candados/candados.rb run dasu-sql4:Administrador "<comando PowerShell>"
# Ver logs de bitácora
./adn/tools/run db evento:listar --ambito dtic-DASUTEN --descripcion "P007"
# Buscar eventos por Bug-ID
./adn/tools/run db evento:listar --ambito dtic-DASUTEN --descripcion "BUG-001"
```
---
## 📅 Historial de Versiones del Documento
| Versión | Fecha | Cambios |
|---------|-------|---------|
| 2.0 | 2026-04-16 | Reestructuración completa: formato escalable para múltiples bugs |
| 1.0 | 2026-04-16 | Versión inicial — Bug #001: Error plantillas Práctica |
---
**Última actualización:** 2026-04-16
**Próxima revisión:** Al cerrar BUG #001 o al reportarse nuevo bug