Update: 260118_tareas_tablas.md - hashtags como proceso largo
This commit is contained in:
@@ -16,67 +16,45 @@ Crear trigger `validar_set_hst_por_tabla()` que:
|
||||
2. Verifique que el `set_hst` está en `hst_permitidos`
|
||||
3. Rechace si no está permitido
|
||||
|
||||
### Tablas afectadas
|
||||
- tzzr_storage.atc
|
||||
- tzzr_core_itm_base.itm, loc, ply
|
||||
- tzzr_core_produccion.mth
|
||||
- tzzr_core_secretaria.secretaria_bck, secretaria_mst
|
||||
- tzzr_core_oracle.oracle_mst
|
||||
- Y demás tablas con set_hst
|
||||
|
||||
---
|
||||
|
||||
## 2. Campo hashtags (ANÁLISIS COMPLETADO - DECISIÓN PENDIENTE)
|
||||
## 2. Migración hashtags legacy (PROCESO LARGO)
|
||||
|
||||
### Situación actual
|
||||
- 15 tablas tienen campo `hashtags` (JSONB)
|
||||
- Contienen **texto legible**: `["payment", "cable", "invoice"]`
|
||||
- **228 tags únicos**, 2,747 usos totales
|
||||
- Deberían contener **hashes mrf** referenciando `hst`
|
||||
### Situación
|
||||
- 15 tablas con campo `hashtags` (JSONB)
|
||||
- Contienen texto: `["payment", "cable", "invoice"]`
|
||||
- Deberían contener hashes mrf → `hst`
|
||||
- **228 tags únicos**, 2,747 usos
|
||||
|
||||
### Problema detectado
|
||||
Los tags de texto son ambiguos y no mapean 1:1 a entradas hst:
|
||||
- "cable" → 6 entradas hst diferentes (plano, cinta, rígido, link...)
|
||||
- "compra" → 4 entradas hst diferentes
|
||||
- "2025" → 3 entradas hst diferentes
|
||||
### Problema
|
||||
Tags ambiguos sin mapeo 1:1:
|
||||
- "cable" → 6 hst diferentes
|
||||
- "compra" → 4 hst diferentes
|
||||
|
||||
**Crear hst automáticamente NO es viable** - contaminaría la tabla curada (1077 entradas) con datos duplicados/ambiguos.
|
||||
### Plan de migración
|
||||
1. **Crear tabla de mapeo**: `legacy_tag_mapping(tag_texto, mrf_destino, estado)`
|
||||
2. **Poblar con tags únicos**: INSERT desde las 15 tablas
|
||||
3. **Entrenar agentes**: Para asistir en curación
|
||||
4. **Revisión humana**: Resolver ambigüedades
|
||||
5. **Aplicar migración**: UPDATE masivo cuando mapeo esté completo
|
||||
6. **Validar**: Trigger para nuevos hashtags solo mrf
|
||||
|
||||
### Opciones
|
||||
| Opción | Pros | Contras |
|
||||
|--------|------|---------|
|
||||
| **A. Deprecar** | Sin pérdida, backward compatible | Campo legacy permanece |
|
||||
| **B. Limpiar** | Limpio, fuerza uso correcto | Pierde datos legacy |
|
||||
| **C. Curación manual** | Preserva valor | Costoso en tiempo |
|
||||
| **D. Ignorar** | Nada que hacer | Deuda técnica |
|
||||
|
||||
### Recomendación
|
||||
**Opción A + validación**:
|
||||
1. Mantener hashtags texto como legacy (read-only)
|
||||
2. Crear campo `hashtags_mrf` (JSONB) para nuevos tags validados
|
||||
3. Trigger que valide que todos los mrf existen en `hst`
|
||||
4. Gradualmente migrar cuando sea necesario
|
||||
### Estado: Pendiente - proceso manual a largo plazo
|
||||
|
||||
---
|
||||
|
||||
## 3. Sincronización hst_rules
|
||||
|
||||
### Tarea
|
||||
Verificar que `hst_rules` esté sincronizada entre:
|
||||
- DECK (tzzr.tzzr_core_hst.hst_rules)
|
||||
- HST (pendiente verificar)
|
||||
Verificar sync entre DECK y HST.
|
||||
|
||||
---
|
||||
|
||||
## 4. Campo set_flg
|
||||
|
||||
### Situación
|
||||
- Campo similar a set_hst pero para flags
|
||||
- Investigar tablas que lo usan
|
||||
- Documentar restricciones necesarias
|
||||
Documentar tablas que lo usan y restricciones.
|
||||
|
||||
---
|
||||
|
||||
## Historial
|
||||
- 2026-01-18: Análisis hashtags completado. Migración automática descartada.
|
||||
- 2026-01-18: FK set_hst creadas en 16 tablas (datos inválidos limpiados)
|
||||
- 2026-01-18: Hashtags identificado como proceso manual largo (mapeo + agentes)
|
||||
- 2026-01-18: FK set_hst creadas en 16 tablas
|
||||
|
||||
Reference in New Issue
Block a user