fix(jobs): integración de columna de modalidad remota, persistencia y corrección de regularización - #68
Merged
Conversation
Agrega la columna remote (boolean, default false) al modelo Job y su migración correspondiente. Resuelve la causa raíz de DT-34: el campo nunca existió como columna persistida, pese a que IngestionService siempre lo calculó correctamente en memoria.
Verifica que remote persiste correctamente en ambos casos: valor por defecto (false) y valor explícito (true), forzando lectura real desde BD via expire_all(). Co-authored-by: Oscar Soriano <neko.dev@outlook.com> Co-authored-by: Aylin Chavira <aylinchavirachv@gmail.com> Co-authored-by: Alejandro Balderrama <alejandro64.bp@gmail.com>
…iption El script leía job.description, columna inexistente en el modelo Job (el campo real es raw_description). Este bug causaba fallo en 240/240 jobs durante el dry-run inicial, enmascarando el diagnóstico original de DT-34. Co-authored-by: Oscar Soriano <neko.dev@outlook.com> Co-authored-by: Aylin Chavira <aylinchavirachv@gmail.com> Co-authored-by: Alejandro Balderrama <alejandro64.bp@gmail.com>
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
fix/add-remote-column-to-jobs
Descripción
En este ciclo, resolvemos de manera definitiva la deuda técnica registrada como DT-34, garantizando la persistencia física del atributo de modalidad remota para las vacantes, el cual era calculado correctamente en memoria por el motor de ingesta pero era descartado silenciamente al no existir en el esquema estructural.
Detalles técnicos que integramos:
feat): Agregamos la columnaremote(tipo booleano, valor por defecto falso) al modeloJobe incluimos su respectiva migración en Alembic, estableciendo el soporte estructural para el almacenamiento de esta métrica.test): Desarrollamos pruebas de integración de caracterización específicas para el modeloJob. Las pruebas certifican la persistencia escribiendo y forzando una lectura real directa desde el motor de base de datos (mediante la purga de la sesión conexpire_all()), evaluando tanto el valor por defecto como las asignaciones explícitas.fix): Reparamos el script de backfill (backfill_remote_flag.py). El script original apuntaba a un atributo inexistente (job.description) en lugar del mapeo correcto en el modelo (job.raw_description), lo cual ocasionaba una falla total (240/240 errores) durante las simulaciones iniciales enmascarando el diagnóstico de la deuda DT-34.Notas Operativas (Intervención de Datos)
Tipo de cambio
Cómo probar
cd backend), activamos el entorno virtual.flask db upgradepytest tests/integration/test_job_model_remote_column.py -vpython scripts/backfill_remote_flag.pyChecklist