egutierrez 7ec2bb1b45 feat(eda): el Markdown del AutomaticEDA vuelca TODOS los datos del profile
El .md del grupo `eda` es la salida pensada para pegar a un LLM, así que debe
contener todo lo que el motor computó, aunque el PDF/PPTX (vista humana) resuman.
La evaluación 2053 detectó 6 datos que el .md perdía respecto al profile. Se
cierran de forma aditiva (el .md tiene MÁS que el PDF/PPTX, sin tocar esos
renderers ni los capítulos).

render_automatic_eda.py pasa el profile al serializador Markdown vía
meta['profile'] (un meta propio del MD; el de PDF/PPTX queda intacto).
render_md_impl.py añade un "Apéndice — Datos completos del perfil" al final del
documento, emitido solo cuando hay profile y degradando limpio cuando falta una
sección (lite sin modelos, profile sin correlaciones). El apéndice no se acopla
a los ids de capítulo (que editan otros agentes en paralelo).

Pérdidas cerradas:
1. Matriz de asociación COMPLETA: los N pares de correlations.pairs (no solo el
   top-17), incluidos correlation_ratio (num↔cat) y cramers_v (cat↔cat).
2. Numéricas: describe completo por columna — mean/median/mode/std/variance/cv,
   skew y kurtosis para TODAS (no solo las asimétricas), p1/p5/p25/p50/p75/p95/
   p99, iqr, min/max, outliers, distribution_type.
3. Re-expresión: nombra la transformación concreta (log1p/sqrt/yeo-johnson) con
   potencia, razón y alternativas, no un vago "considerar re-expresión".
4. KMeans: tabla scores_by_k (silhouette + inercia por k) marcando el k elegido.
5. Normalidad: el estadístico (stat) de cada test junto al p-value.
6. Encabezados de figuras de barras/scree dejan de heredar
   "Desde/Hasta/Frecuencia" del histograma; usan "Inicio/Fin/Valor" cuando el
   caption no es un histograma.

Test nuevo md_completeness_test.py: profile sintético, asserta los N pares de
correlación, skew/kurtosis de cada numérica, percentiles extendidos, log1p,
scores_by_k, stat de normalidad, headers de barras y los edges (sin modelos /
sin correlaciones / sin profile, defensivo).

Verificado con titanic (profile_level=full): 28 pares en la tabla (incl.
Sex↔Embarked cramers_v), 7 numéricas con skew+kurtosis, p5/p95/p99, scores_by_k
y JB/D'Agostino/Shapiro stat presentes. PDF/PPTX/manifest siguen saliendo.
Suite automatic_eda + render_automatic_eda_test: 134 passed.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 20:27:30 +02:00
2026-06-29 11:05:00 +02:00
2026-05-30 17:28:47 +02:00
2026-05-30 17:28:47 +02:00
2026-05-30 17:28:47 +02:00
2026-06-27 20:43:03 +02:00

fn-registry — Schema de documentación

Registry personal de código con búsqueda FTS. Diseñado para composición funcional y agentes.

Archivos

  • functions.md — Schema de la tabla functions (incluye pipelines y componentes React)
  • types.md — Schema de la tabla types
  • integrity.md — Reglas de integridad y referencias cruzadas
  • architecture.md — Visión general del sistema
  • sync_setup.md — Vincular una PC al server registry.organic-machine.com (env vars, fn sync, troubleshooting)
  • adr/ — Architecture Decision Records: decisiones de diseño (qué se decidió y por qué)
  • ../reports/ — Reportes de trabajo: artefacto local (entregable de una tarea: qué se hizo, cómo se verificó, gaps). Gitignored salvo .gitkeep, NO sube a Gitea ni se versiona (como los vaults). Convención en .claude/rules/reports.md. Decisión: ADR 0006

Tablas

Tabla Descripción
functions Funciones atómicas, pipelines y componentes React
types Tipos algebraicos (product / sum)

kind: valores posibles

Valor Descripción
function Función atómica pura o impura
pipeline Composición de funciones, siempre impura
component Componente React, extiende el schema base

fn-registry schema v1.0

S
Description
Registry personal de codigo reutilizable con busqueda FTS
Readme 188 MiB
Languages
Python 51.7%
Go 18.5%
C++ 15%
Shell 8.1%
C 3.4%
Other 3.2%