feat: Update testing documentation and introduce comprehensive report for IPSExtractor campaign. Add sections for executive summary, objectives, environment details, and methodology. Enhance README with compilation instructions and data sources for metrics analysis.

This commit is contained in:
erik
2026-07-13 21:10:43 -05:00
parent 6bf413c4ce
commit 311a4bd6d3
39 changed files with 1641 additions and 67 deletions
+132
View File
@@ -0,0 +1,132 @@
\relax
\providecommand \babel@aux [2]{\global \let \babel@toc \@gobbletwo }
\@nameuse{bbl@beforestart}
\catcode `"\active
\catcode `<\active
\catcode `>\active
\@nameuse{es@quoting}
\providecommand\hyper@newdestlabel[2]{}
\providecommand\HyField@AuxAddToFields[1]{}
\providecommand\HyField@AuxAddToCoFields[2]{}
\babel@aux{spanish}{}
\@writefile{toc}{\contentsline {chapter}{\numberline {1}Resumen ejecutivo}{4}{chapter.1}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{ch:resumen}{{1}{4}{Resumen ejecutivo}{chapter.1}{}}
\@writefile{toc}{\contentsline {section}{\numberline {1.1}Veredicto global}{4}{section.1.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {1.2}KPIs de la campa\~na}{4}{section.1.2}\protected@file@percent }
\@writefile{lot}{\contentsline {table}{\numberline {1.1}{\ignorespaces KPIs ejecutivos de la campa\~na.}}{4}{table.1.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {1.3}Respuesta directa: 100\,000 facturas/mes}{4}{section.1.3}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {1.4}Riesgo principal}{5}{section.1.4}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{\numberline {2}Objeto y alcance}{6}{chapter.2}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{ch:alcance}{{2}{6}{Objeto y alcance}{chapter.2}{}}
\@writefile{toc}{\contentsline {section}{\numberline {2.1}Objeto}{6}{section.2.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {2.2}Alcance incluido}{6}{section.2.2}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {2.3}Fuera de alcance de esta campa\~na}{6}{section.2.3}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {2.4}Definici\'on de factura}{6}{section.2.4}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{\numberline {3}Entorno bajo prueba}{7}{chapter.3}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{ch:entorno}{{3}{7}{Entorno bajo prueba}{chapter.3}{}}
\@writefile{toc}{\contentsline {section}{\numberline {3.1}Hardware y sistema}{7}{section.3.1}\protected@file@percent }
\@writefile{lot}{\contentsline {table}{\numberline {3.1}{\ignorespaces Host de ejecuci\'on.}}{7}{table.3.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {3.2}Baseline de memoria (2026-07-13)}{7}{section.3.2}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {3.3}Salud del stack}{7}{section.3.3}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces Huella de memoria por contenedor (idle). MLflow domina el host.}}{8}{figure.3.1}\protected@file@percent }
\newlabel{fig:memoria}{{3.1}{8}{Huella de memoria por contenedor (idle). MLflow domina el host}{figure.3.1}{}}
\@writefile{toc}{\contentsline {chapter}{\numberline {4}Metodolog\'ia}{9}{chapter.4}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{ch:metodologia}{{4}{9}{Metodolog\'ia}{chapter.4}{}}
\@writefile{toc}{\contentsline {section}{\numberline {4.1}Tipos de prueba}{9}{section.4.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {4.2}Herramientas}{9}{section.4.2}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {4.3}SLOs perfil \texttt {shared8g}}{9}{section.4.3}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {4.4}Comandos representativos}{9}{section.4.4}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{\numberline {5}Resultados --- pruebas unitarias}{10}{chapter.5}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{ch:unitarias}{{5}{10}{Resultados --- pruebas unitarias}{chapter.5}{}}
\@writefile{toc}{\contentsline {section}{\numberline {5.1}Scorecard}{10}{section.5.1}\protected@file@percent }
\@writefile{lot}{\contentsline {table}{\numberline {5.1}{\ignorespaces Resultados unitarios. $^{*}$Base 3 PASS confirmados en Ubuntu; ampliaci\'on features/clustering (+8) y Timing sobre 3 PDFs reales requieren \texttt {go test} en host con Tesseract.}}{10}{table.5.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.2}Cobertura agent}{10}{section.5.2}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.3}Cobertura API store}{10}{section.5.3}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.4}Cobertura count-api}{10}{section.5.4}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5.1}{\ignorespaces Unitarias ejecutadas vs pendientes.}}{11}{figure.5.1}\protected@file@percent }
\newlabel{fig:unitarias}{{5.1}{11}{Unitarias ejecutadas vs pendientes}{figure.5.1}{}}
\@writefile{toc}{\contentsline {chapter}{\numberline {6}Resultados --- humo y funcional}{12}{chapter.6}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{ch:humo}{{6}{12}{Resultados --- humo y funcional}{chapter.6}{}}
\@writefile{toc}{\contentsline {section}{\numberline {6.1}Humo gateway}{12}{section.6.1}\protected@file@percent }
\@writefile{lot}{\contentsline {table}{\numberline {6.1}{\ignorespaces Humo HTTP.}}{12}{table.6.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.2}Funcional E2E-07 (worker offline $\rightarrow $ 409)}{12}{section.6.2}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.3}Script preparado}{12}{section.6.3}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{\numberline {7}Resultados --- pruebas de carga}{13}{chapter.7}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{ch:carga}{{7}{13}{Resultados --- pruebas de carga}{chapter.7}{}}
\@writefile{toc}{\contentsline {section}{\numberline {7.1}Tabla consolidada}{13}{section.7.1}\protected@file@percent }
\@writefile{lot}{\contentsline {table}{\numberline {7.1}{\ignorespaces M\'etricas de carga k6 (perfil shared8g).}}{13}{table.7.1}\protected@file@percent }
\newlabel{tab:carga}{{7.1}{13}{M\'etricas de carga k6 (perfil shared8g)}{table.7.1}{}}
\@writefile{toc}{\contentsline {section}{\numberline {7.2}ST-GW-01}{13}{section.7.2}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {7.3}ST-BOT-01 --- comparativa}{13}{section.7.3}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {7.4}Throughput gateway}{13}{section.7.4}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {7.1}{\ignorespaces p95 y max por caso. BOT1-max (23\,s) fuera de escala visual relativa --- ver tabla.}}{14}{figure.7.1}\protected@file@percent }
\newlabel{fig:latencias}{{7.1}{14}{p95 y max por caso. BOT1-max (23\,s) fuera de escala visual relativa --- ver tabla}{figure.7.1}{}}
\@writefile{lof}{\contentsline {figure}{\numberline {7.2}{\ignorespaces Before/after heartbeats (eje limitado; valores exactos en tabla~\ref {tab:carga}).}}{14}{figure.7.2}\protected@file@percent }
\newlabel{fig:bot-before-after}{{7.2}{14}{Before/after heartbeats (eje limitado; valores exactos en tabla~\ref {tab:carga})}{figure.7.2}{}}
\@writefile{lof}{\contentsline {figure}{\numberline {7.3}{\ignorespaces Throughput observado en health liveness (no equivale a PDFs/h).}}{14}{figure.7.3}\protected@file@percent }
\newlabel{fig:throughput}{{7.3}{14}{Throughput observado en health liveness (no equivale a PDFs/h)}{figure.7.3}{}}
\@writefile{toc}{\contentsline {chapter}{\numberline {8}Capacidad: 100\,000 facturas al mes}{15}{chapter.8}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{ch:capacidad}{{8}{15}{Capacidad: 100\,000 facturas al mes}{chapter.8}{}}
\@writefile{toc}{\contentsline {section}{\numberline {8.1}Traducci\'on del objetivo}{15}{section.8.1}\protected@file@percent }
\@writefile{lot}{\contentsline {table}{\numberline {8.1}{\ignorespaces Throughput m\'inimo para cumplir 100k/mes.}}{15}{table.8.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {8.2}Modelo por etapa}{15}{section.8.2}\protected@file@percent }
\@writefile{lot}{\contentsline {table}{\numberline {8.2}{\ignorespaces Facturas/hora estimadas. $^{*}$Sujeto a cuota LLM. $^{\dagger }$Con $N$ agents en paralelo.}}{15}{table.8.2}\protected@file@percent }
\newlabel{tab:capacidad}{{8.2}{15}{Facturas/hora estimadas. $^{*}$Sujeto a cuota LLM. $^{\dagger }$Con $N$ agents en paralelo}{table.8.2}{}}
\@writefile{toc}{\contentsline {section}{\numberline {8.3}Interpretaci\'on}{15}{section.8.3}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {8.1}{\ignorespaces Brecha de capacidad. Gateway real $\gg $1000/h; se trunca para legibilidad.}}{16}{figure.8.1}\protected@file@percent }
\newlabel{fig:capacidad}{{8.1}{16}{Brecha de capacidad. Gateway real $\gg $1000/h; se trunca para legibilidad}{figure.8.1}{}}
\@writefile{toc}{\contentsline {section}{\numberline {8.4}Veredicto}{16}{section.8.4}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {8.5}Requisitos m\'inimos sugeridos para 100k/mes}{16}{section.8.5}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{\numberline {9}An\'alisis y hallazgos}{17}{chapter.9}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{ch:analisis}{{9}{17}{An\'alisis y hallazgos}{chapter.9}{}}
\@writefile{toc}{\contentsline {section}{\numberline {9.1}Hallazgos}{17}{section.9.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {9.2}Scorecard global}{17}{section.9.2}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {9.1}{\ignorespaces Distribuci\'on de resultados por tipo de prueba.}}{17}{figure.9.1}\protected@file@percent }
\newlabel{fig:scorecard}{{9.1}{17}{Distribuci\'on de resultados por tipo de prueba}{figure.9.1}{}}
\@writefile{toc}{\contentsline {section}{\numberline {9.3}Limitaciones}{17}{section.9.3}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{\numberline {10}Conclusiones y recomendaciones}{18}{chapter.10}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{ch:conclusiones}{{10}{18}{Conclusiones y recomendaciones}{chapter.10}{}}
\@writefile{toc}{\contentsline {section}{\numberline {10.1}Conclusiones}{18}{section.10.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {10.2}Recomendaciones}{18}{section.10.2}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {10.3}Pr\'oxima campa\~na sugerida}{18}{section.10.3}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{\numberline {11}Anexos}{19}{chapter.11}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{ch:anexos}{{11}{19}{Anexos}{chapter.11}{}}
\@writefile{toc}{\contentsline {section}{\numberline {11.1}Datos fuente}{19}{section.11.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {11.2}Extracto ST-GW-01}{19}{section.11.2}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {11.3}Extracto ST-BOT-01 \#2}{19}{section.11.3}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {11.4}Unitarias}{19}{section.11.4}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {11.5}Scripts}{19}{section.11.5}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {11.6}Reproducibilidad}{20}{section.11.6}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{\numberline {12}Resultados --- latencia count-api (PDFs reales)}{21}{chapter.12}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{ch:count-latency}{{12}{21}{Resultados --- latencia count-api (PDFs reales)}{chapter.12}{}}
\@writefile{toc}{\contentsline {section}{\numberline {12.1}Fixtures}{21}{section.12.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {12.2}Unitarias pipeline ampliadas}{21}{section.12.2}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {12.3}Timings por etapa}{21}{section.12.3}\protected@file@percent }
\@writefile{lol}{\contentsline {lstlisting}{\numberline {12.1}Medici\'on en Ubuntu}{21}{lstlisting.12.1}\protected@file@percent }
\@writefile{lot}{\contentsline {table}{\numberline {12.1}{\ignorespaces Latencia por etapa (ms). Completar tras \texttt {-run Timing} en el host con Tesseract.}}{22}{table.12.1}\protected@file@percent }
\newlabel{tab:count-timing}{{12.1}{22}{Latencia por etapa (ms). Completar tras \texttt {-run Timing} en el host con Tesseract}{table.12.1}{}}
\gdef \@abspage@last{23}