5194de3c04
- 0050: jupyter_exec reescrito sin Y.js (REST + KernelClient). Bug raíz adicional: HEAD /api/contents da 405 → cambiado a GET. 9 tests (5 unit + 4 e2e). - 0052: footprint_aurgi cerrado. Bug fix en setup_geo_stack_docker_pipeline (verify aborta si compose up falla; nombre de contenedor incorrecto). - Nueva primitiva docker_container_running_py_infra (7 tests). - /full-git-push y /full-git-pull pasan a modo automático: auto-commit + push sin preguntar, aborta solo si detecta secrets. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
67 lines
3.4 KiB
Markdown
67 lines
3.4 KiB
Markdown
---
|
|
title: "Extracción masiva de footprint_aurgi → registry"
|
|
status: completed
|
|
created: 2026-05-04
|
|
completed: 2026-05-05
|
|
---
|
|
|
|
## Cierre (2026-05-05)
|
|
|
|
Los 9 batches completos: 41 funciones + 4 tipos + app `footprint_geo_stack` + 4 pipelines.
|
|
Tests: 240 pasan, 2 skip esperados (1 por `osm2pgsql` ausente, 1 por geo stack no
|
|
relanzable sin `.env` con `VALHALLA_DATA_DIR`).
|
|
|
|
Bugs encontrados y arreglados al cerrar el issue:
|
|
|
|
1. `setup_geo_stack_docker_pipeline` abortaba `verify` si `docker compose up -d` fallaba.
|
|
Ahora corre verify aunque el `up` falle (caso típico: stack ya vivo, lanzado con su
|
|
`.env` en otra parte).
|
|
2. El check de PostGIS usaba el nombre `footprint_postgis` que no coincide con el
|
|
`container_name: better_maps_postgis` del compose. Corregido + credenciales reales
|
|
(`-U geoserver -d gis`).
|
|
|
|
Función primitiva añadida como subproducto: `docker_container_running_py_infra` con
|
|
tests unitarios + integración (7 tests, todos pasan). Reutilizable para cualquier
|
|
verificador de stack.
|
|
|
|
# 0052 — Extracción de funciones de `sources/footprint_aurgi/`
|
|
|
|
Extracción de 45 funciones + 4 tipos del proyecto interno `footprint_aurgi` (código propio Aurgi, sin LICENSE — `source_license: internal-aurgi`).
|
|
|
|
## Capacidades cubiertas
|
|
|
|
1. Geocodificación y routing (Valhalla)
|
|
2. Generación de isócronas (sync + async batch)
|
|
3. Stack Docker geo (PostGIS + Martin + Valhalla)
|
|
4. Spatial primitivas (haversine, point-in-polygon, bbox, sindex)
|
|
5. Visualización en mapa (basemap OSM, KDE, alpha-shape hulls)
|
|
6. PDFs reporting (compresión ghostscript, table pages)
|
|
7. Estadística para distribuciones reales (skew/kurt, trimmed/geo means)
|
|
8. Fuzzy joining adaptativo
|
|
9. Normalización España (CP→provincia)
|
|
10. Data prep (CSV→Parquet via duckdb)
|
|
|
|
## Batches
|
|
|
|
| # | Dominio | Funciones | Owner |
|
|
|---|---|---|---|
|
|
| 1 | geo (puras) + tipos | haversine, point_in_polygon, bbox, extent, distance_bucket + LonLat, BBox, IsochroneRequest, Centro | agent-A |
|
|
| 2 | core (string ES) | slugify_ascii, normalize_for_join, cp_provincia_es, infer_provincia_from_cp | agent-B |
|
|
| 3 | datascience (stats) | trimmed_mean, geometric_mean, detect_distribution_type, best_central_tendency, summary_stats, kde_density_levels, alpha_shape_concave_hull | agent-C |
|
|
| 4 | datascience (fuzzy) | fuzzy_merge_adaptive, words_to_dataset, remove_words_from_column | agent-D |
|
|
| 5 | geo (Valhalla client) | valhalla_route, valhalla_matrix_1_to_n, valhalla_isochrone, valhalla_isochrones_async | agent-E |
|
|
| 6 | geo (I/O + viz) | load_geojson_polygons, load_boundary_gdf, add_basemap_osm, add_basemap_with_timeout, plot_kde_2d, plot_heatmap_log | agent-F |
|
|
| 7 | infra (PDF + data) | compress_pdf_ghostscript, render_table_page_pdfpages, add_header_logo, safe_read_csv_fallback, csv_to_parquet_duckdb, osm2pgsql_ingest | agent-G |
|
|
| 8 | infra (docker stack) | docker-compose footprint geo (PostGIS + Martin + Valhalla) — levantar y verificar | agent-H |
|
|
| 9 | pipelines | setup_geo_stack_docker, compute_centers_reachability, generate_isochrones_by_zone, count_points_per_zone | agent-I (wave 2) |
|
|
|
|
## Fuente
|
|
|
|
- Path: `sources/footprint_aurgi/`
|
|
- Sub-proyectos: aurgi_mapas, better_maps, frontend_mapas, fuzzy_joins, ponderacion_isochronas, zonas_mapas_aurgi
|
|
- Atribución uniforme: `source_repo: "internal:footprint_aurgi"`, `source_license: "internal-aurgi"`
|
|
|
|
## Resultado esperado
|
|
|
|
Reporte final por función: ✅ tests pasan / ❌ tests fallan / ⚠️ stub (requiere infra externa).
|