From 5d12e3871513c935100095d1fa5d5b14b74fc3d3 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 2 Jan 2026 02:04:19 +0000 Subject: [PATCH] Add CHANGELOG and Dockerfile - Session 2026-01-02 - Document API v5.2 changes - Document edge_type field - Document image cleanup and Airtable recovery - Add Dockerfile for containerization --- CHANGELOG.md | 122 +++++++++++++++++++++++++++++++++++++++++++++++++++ Dockerfile | 8 ++++ 2 files changed, 130 insertions(+) create mode 100644 CHANGELOG.md create mode 100644 Dockerfile diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..f0092f3 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,122 @@ +# HST System - Changelog 2 Enero 2026 + +## Servidor: 72.62.2.84 (HST) + +--- + +## 1. API Flask (hst-api) - v5.2 + +### Nuevos Endpoints + +| Endpoint | Método | Descripción | +|----------|--------|-------------| +| `/api/graph/edges` | GET | Lista edges con `source_h`, `target_h`, `weight`, `type`, `id` | +| `/api/graph/edges` | POST | Crear conexión: `{source_h, target_h, weight, type}` | +| `/api/graph/edges/` | DELETE | Eliminar conexión por ID | + +### Campos Añadidos en Respuestas + +```json +{ + "als": "inv factura", + "h_maestro": "abc123..." +} +``` + +--- + +## 2. Base de Datos + +### Tabla `graph` - Nuevo Campo + +| Campo | Tipo | Descripción | +|-------|------|-------------| +| edge_type | varchar(30) | Clasificación de relación | + +**Valores edge_type:** +- `mirror` - Misma entidad en sistemas distintos +- `sequence` - Orden temporal/lógico +- `composition` - Parte de un todo +- `dependency` - Requiere otra entidad +- `maturity` - Evolución/versión +- `manual` - Definido manualmente +- `db` - Generado automáticamente + +### Correcciones de Datos + +| Acción | Detalles | +|--------|----------| +| Aliases flg | 65 registros: `"{ref} {nombre}"` → `"flg {nombre}"` | +| Migración | SPE_VELOCIDAD, SPE_HERRAMIENTA_UNIVERSAL → tabla hst | +| Duplicados | Eliminados cie, cil, cio de spe (mantenidos en hst) | + +--- + +## 3. Imágenes + +### Limpieza Ejecutada + +| Acción | Cantidad | +|--------|----------| +| Thumbnails eliminados | Todos en /thumb/ | +| Imágenes huérfanas eliminadas | 1,892 | +| Placeholder creado | placeholder.png (150x150) | + +### Recuperación desde Airtable + +**10 banderas recuperadas:** + +| País | Hash | +|------|------| +| sri lanka | 95cdad8b... | +| saudi arabia | 6c1925d6... | +| el salvador | 56e07143... | +| United Arab Emirates | dd64913c... | +| new zealand | 22c26429... | +| Czech Republic | 1c769ecb... | +| república dominicana | 79170726... | +| united kindom | 1c75c7e1... | +| hong kong | 21bd3229... | +| Great Britain | b5cbec1a... | + +### Estado Final Imágenes + +| Tabla | Con imagen | Sin imagen | Total | +|-------|------------|------------|-------| +| hst | 81 | 9 | 90 | +| flg | 65 | 0 | 65 | +| spe | 705 | 0 | 705 | +| vsn | 0 | 0 | 0 | +| vue | 0 | 20 | 20 | +| **Total** | **851** | **29** | **880** | + +**Imágenes en disco:** 923 (922 asignadas + placeholder) + +--- + +## 4. Frontend + +### tzrtech.org/hst_images/index.html + +- Filtro cambiado: `if (record.img || record.mrf)` → `if (record.mrf)` +- Usa imágenes principales (no thumbnails) +- Placeholder para tags sin imagen +- Muestra alias en lugar de ref + +### graph.tzrtech.org + +- Edges visualizándose correctamente (776 conexiones) +- Posiciones iniciales de líneas corregidas +- Simulación reiniciada al cargar edges + +--- + +## 5. Repositorio Git + +**Gitea:** http://localhost:3000/admin/hst-api + +### Commits + +1. `22fb0ae` - HST API v5.2 - Add als, h_maestro, graph/edges endpoints +2. `4df8ae2` - Add edge_type support to graph table and API +3. `9891f50` - Add README with API documentation and edge_type reference diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..8779310 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,8 @@ +FROM python:3.11-slim +WORKDIR /app +ENV PYTHONDONTWRITEBYTECODE=1 +ENV PYTHONUNBUFFERED=1 +RUN pip install flask flask-cors psycopg2-binary gunicorn +COPY app.py . +EXPOSE 5000 +CMD ["gunicorn", "-w", "2", "-b", "0.0.0.0:5000", "--reload", "app:app"]