Repository navigation
Conversation
…6 (SCRUM-1123) Co-Authored-By: Claude Opus 5.5 <[email protected]>
…res uniformes y rutas del Gateway
- CorrelationIdFilter: X-Correlation-ID al MDC (patron de logs ya lo leia) y
a la respuesta; "none" si falta, igual que Core.
- GlobalExceptionHandler + ApiError: forma {error, code, correlationId}
comun con Core para 400/404/405/415/500.
- HealthController separado; RulesController responde con y sin el prefijo
/api/v1/rules porque el Gateway lo recorta antes de reenviar (antes
/api/v1/rules/evaluate-rate llegaba como /evaluate-rate y daba 404).
- Quita @crossorigin("*"): CORS es responsabilidad unica del Gateway.
- CI tambien en push a develop.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
…les Service
POST /api/v1/rules/categories/evaluate (tambien sin prefijo, por el Gateway)
con el contrato declarado por Core en US-03.1.1-M2.2: { allowed,
ruleSetVersion, violations[] } + normalized.
- CategoryRuleEvaluator: funcion pura con las reglas de
crear_categoria_servicio() (migracion 003): nombre normalizado 3-60 con
letra (MANI-CAT-422N), flujo operativo permitido (MANI-CAT-422F); UPDATE
parcial; OPERATE exige categoria activa (MANI-CAT-422C).
- Tenant solo desde X-Tenant-Id (claim del Gateway/Core); tenantId del
cuerpo distinto => 403 TENANT_MISMATCH. CREATE/UPDATE exigen rol ADMIN.
- CategoryRulesProperties: parametros en mani.rules.category.* con override
por tenant y version trazable; configuracion incoherente falla el arranque.
- El 409 por nombre duplicado sigue en el indice unico (requiere estado).
Co-Authored-By: Claude Opus 5.5 <[email protected]>
…ra/Quality Gate - CategoryRuleEvaluatorTest: limites 2/3/60/61, conteo por caracteres como char_length (emoji), letras Unicode, normalizacion, flujos, acumulacion de violaciones, UPDATE parcial, OPERATE, reglas configurables, determinismo. - CategoryRulesPropertiesTest: binding real con override por tenant (UUID), version trazable y configuracion incoherente que impide el arranque. - CategoryRulesControllerTest: contrato HTTP completo, prefijo del Gateway, roles ADMIN/admin_tenant vs ALLY, TENANT_REQUIRED/TENANT_MISMATCH, 400/401/403/415; UnexpectedErrorTest: 500 uniforme sin filtrar detalle. - jacoco:check en verify (lineas >= 85 %, ramas >= 80 %); hoy 93.6 % / 87.8 %. - CI: SonarCloud con sonar.qualitygate.wait=true cuando existe SONAR_TOKEN; publica reportes de Surefire. 85 pruebas, mvn verify en verde. Co-Authored-By: Claude Opus 5.5 <[email protected]>
…ia-rules-java [SCRUM-1070] US-03.1.1-M6: reglas de categoría en el Rules Service Java
[SCRUM-1123] Sincroniza develop con main (PR #1 entró a main)
…e reglas Agrega quality-gate.yml en dos jobs: pruebas, cobertura JaCoCo y compilado en ubuntu-latest; scanner en el runner self-hosted de la VM de Calidad con espera del Quality Gate (proyectos mani-java y mani-java-pr). Los PRs desde forks fallan el check en vez de omitirlo. La configuracion de Sonar pasa del pom.xml (SonarCloud) a sonar-project.properties, y ci.yml deja de intentar el analisis de SonarCloud.
…onarqube [SCRUM-1265] Quality Gate de SonarQube self-hosted para el servicio de reglas
El analisis de mani-java avisaba 'Missing sonar.java.test.libraries'. El job de pruebas copia tambien las dependencias de alcance test a target/test-dependency, se publican en el artefacto y el properties las declara en sonar.java.test.libraries.
[SCRUM-1265] Agrega las dependencias de prueba al análisis de SonarQube
chore(release): promover develop a release (Sprint 4)
santiagohb2830
requested review from
Nicolas11Leon,
SarAlbN1 and
dsavilam
as code owners
October 22, 2026 01:55
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.
Promoción de
release(QA) amain(PROD) del Sprint 4, según ADR-0028.Qué entra
releaseene90f32b: 11 commits, sin conflictos conmain.Validación en QA (21-oct-2026)
releasedesplegado en la VM de QA con las imágenes:staging(Core8ad4a35, Dispatch0998a3d, Gatewayf042817, Flutter8e606e4, Rulese90f32b, Landinga82b94e); los 6 contenedores responden 200 encheck-qa.sh.releaseen verde sobre el SHA de este PR (publicación de imagen:stagingcorrecta).Al fusionar
mainpublica la imagen:latest(PROD, ADR-0028). Fusionar con merge commit, sin squash; el despliegue a producción es manual.Revisor: @dsavilam.