feat: Update docker-compose configuration to use environment variables for sensitive data, enhance testing documentation with new LaTeX files for capacity planning, and refine README for clarity on compilation and testing processes.
This commit is contained in:
@@ -0,0 +1,78 @@
|
||||
\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}Objetivo: 100\,000 facturas al mes}{2}{chapter.1}\protected@file@percent }
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\newlabel{ch:objetivo}{{1}{2}{Objetivo: 100\,000 facturas al mes}{chapter.1}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {1.1}Qu\'e pregunta responde este documento}{2}{section.1.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {1.2}Traducci\'on a ritmo (facturas/hora)}{2}{section.1.2}\protected@file@percent }
|
||||
\@writefile{lot}{\contentsline {table}{\numberline {1.1}{\ignorespaces Ritmo m\'inimo para cumplir 100k/mes.}}{2}{table.1.1}\protected@file@percent }
|
||||
\newlabel{tab:objetivos-h}{{1.1}{2}{Ritmo m\'inimo para cumplir 100k/mes}{table.1.1}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {1.3}C\'omo usar este documento}{2}{section.1.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {2}Arquitectura del pipeline}{4}{chapter.2}\protected@file@percent }
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\newlabel{ch:arq-cap}{{2}{4}{Arquitectura del pipeline}{chapter.2}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {2.1}Patrones de dise\~no relevantes}{4}{section.2.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {2.2}Flujo de negocio (punta a punta)}{4}{section.2.2}\protected@file@percent }
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {2.1}{\ignorespaces Pipeline punta a punta. La descarga la hace el \textbf {agent Selenium} (PC); el servicio \texttt {bot-descarga} solo orquesta jobs/claim/heartbeats.}}{5}{figure.2.1}\protected@file@percent }
|
||||
\newlabel{fig:pipeline-negocio}{{2.1}{5}{Pipeline punta a punta. La descarga la hace el \textbf {agent Selenium} (PC); el servicio \texttt {bot-descarga} solo orquesta jobs/claim/heartbeats}{figure.2.1}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {2.3}Vista de componentes}{5}{section.2.3}\protected@file@percent }
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {2.2}{\ignorespaces Arquitectura bajo prueba. El \textbf {gateway no habla con Postgres}: solo hace proxy HTTP. Usan la BD compartida: \texttt {extraction} (+ workers), \texttt {cleaning} y \texttt {bot-descarga}. \texttt {count-api} hace OCR y \textbf {devuelve JSON} (no escribe en PG); el Desktop/extraction persiste esos resultados con \texttt {POST /count-jobs} en Postgres.}}{5}{figure.2.2}\protected@file@percent }
|
||||
\newlabel{fig:arquitectura}{{2.2}{5}{Arquitectura bajo prueba. El \textbf {gateway no habla con Postgres}: solo hace proxy HTTP. Usan la BD compartida: \texttt {extraction} (+ workers), \texttt {cleaning} y \texttt {bot-descarga}. \texttt {count-api} hace OCR y \textbf {devuelve JSON} (no escribe en PG); el Desktop/extraction persiste esos resultados con \texttt {POST /count-jobs} en Postgres}{figure.2.2}{}}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {3}Modelo de capacidad por etapa}{6}{chapter.3}\protected@file@percent }
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\newlabel{ch:modelo}{{3}{6}{Modelo de capacidad por etapa}{chapter.3}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {3.1}C\'omo leer los n\'umeros}{6}{section.3.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {3.2}Tabla de capacidad (datos julio 2026)}{6}{section.3.2}\protected@file@percent }
|
||||
\@writefile{lot}{\contentsline {table}{\numberline {3.1}{\ignorespaces Ritmo por etapa. Pipeline $\approx \mathop {\mathgroup \symoperators m\acute {\dotlessi }n}$ de etapas (cuello OCR). $^{\mathrm {P}}$Conservador $\sim $100 $<$ 139; techo observado OCR $\sim $325 puede cubrir 139 si el host no degrada m\'as.}}{6}{table.3.1}\protected@file@percent }
|
||||
\newlabel{tab:capacidad}{{3.1}{6}{Ritmo por etapa. Pipeline $\approx \min $ de etapas (cuello OCR). $^{\mathrm {P}}$Conservador $\sim $100 $<$ 139; techo observado OCR $\sim $325 puede cubrir 139 si el host no degrada m\'as}{table.3.1}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {3.3}C\'omo se obtiene el ritmo del pipeline}{7}{section.3.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {3.4}Gr\'afico 1 --- etapas vs objetivos}{8}{section.3.4}\protected@file@percent }
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces Azul = host compartido (medido/estimado). Verde = host dedicado (estimado). L\'ineas = m\'inimos para 100k/mes.}}{8}{figure.3.1}\protected@file@percent }
|
||||
\newlabel{fig:capacidad}{{3.1}{8}{Azul = host compartido (medido/estimado). Verde = host dedicado (estimado). L\'ineas = m\'inimos para 100k/mes}{figure.3.1}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {3.5}Gr\'afico 2 --- \textquestiondown llegamos a 100k/mes?}{8}{section.3.5}\protected@file@percent }
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces Solo capacidad (barras) vs metas (l\'ineas). Modelo por cuello OCR; no es E2E de 100k.}}{9}{figure.3.2}\protected@file@percent }
|
||||
\newlabel{fig:pipeline-metas}{{3.2}{9}{Solo capacidad (barras) vs metas (l\'ineas). Modelo por cuello OCR; no es E2E de 100k}{figure.3.2}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {3.6}Qu\'e concluir aqu\'i}{9}{section.3.6}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {4}Evidencias que alimentan el modelo}{10}{chapter.4}\protected@file@percent }
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\newlabel{ch:evidencias}{{4}{10}{Evidencias que alimentan el modelo}{chapter.4}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {4.1}Resumen}{10}{section.4.1}\protected@file@percent }
|
||||
\@writefile{lot}{\contentsline {table}{\numberline {4.1}{\ignorespaces Medido vs estimado (campa\~na julio 2026).}}{10}{table.4.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {4.2}Detalle por prueba}{10}{section.4.2}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {4.3}A\'un no medido a escala}{11}{section.4.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {5}Coste LLM (100k que pasan conteo)}{12}{chapter.5}\protected@file@percent }
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\newlabel{ch:coste}{{5}{12}{Coste LLM (100k que pasan conteo)}{chapter.5}{}}
|
||||
\@writefile{lot}{\contentsline {table}{\numberline {5.1}{\ignorespaces Presupuesto LLM: $100\,000 \times 0{,}0257 = 2\,570$ USD. No incluye agent Selenium, orquestaci\'on \texttt {bot-descarga}, OCR, infra ni reintentos.}}{12}{table.5.1}\protected@file@percent }
|
||||
\newlabel{tab:coste-llm-100k}{{5.1}{12}{Presupuesto LLM: $100\,000 \times 0{,}0257 = 2\,570$ USD. No incluye agent Selenium, orquestaci\'on \texttt {bot-descarga}, OCR, infra ni reintentos}{table.5.1}{}}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {6}Veredicto}{13}{chapter.6}\protected@file@percent }
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\newlabel{ch:veredicto}{{6}{13}{Veredicto}{chapter.6}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {6.1}La respuesta corta}{13}{section.6.1}\protected@file@percent }
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {6.1}{\ignorespaces Barras = capacidad. L\'ineas = metas. Rojo no llega a 139; verde llega a 139 pero no a 570.}}{13}{figure.6.1}\protected@file@percent }
|
||||
\newlabel{fig:veredicto-brecha}{{6.1}{13}{Barras = capacidad. L\'ineas = metas. Rojo no llega a 139; verde llega a 139 pero no a 570}{figure.6.1}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {6.2}Si hoy no est\'a garantizado: qu\'e hace falta}{14}{section.6.2}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {6.3}Por meta operativa}{14}{section.6.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {7}Requisitos sugeridos y pr\'oximos pasos}{15}{chapter.7}\protected@file@percent }
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\newlabel{ch:requisitos}{{7}{15}{Requisitos sugeridos y pr\'oximos pasos}{chapter.7}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {7.1}Para lograr 100k/mes (lista simple)}{15}{section.7.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {7.2}Pr\'oximas mediciones}{15}{section.7.2}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {7.3}Documentos relacionados}{15}{section.7.3}\protected@file@percent }
|
||||
\gdef \@abspage@last{16}
|
||||
Reference in New Issue
Block a user