Skip to content

UNOMI-884: Platform polish audit (Phase 2 PR 3)#786

Merged
sergehuber merged 2 commits into
masterfrom
UNOMI-884-platform-polish
Jun 29, 2026
Merged

UNOMI-884: Platform polish audit (Phase 2 PR 3)#786
sergehuber merged 2 commits into
masterfrom
UNOMI-884-platform-polish

Conversation

@sergehuber

Copy link
Copy Markdown
Contributor

Summary

Mega-PR 3 (L + M + N + O + P) §2 audit: master is already ahead on nearly all scoped paths via earlier merges (#760 UNOMI-884, #762 UNOMI-904, #773 UNOMI-883, #768 UNOMI-920, #781 UNOMI-948, #774 past-event). Blind checkout from unomi-3-dev would regress V2 auth, condition validation, rangeQuery null handling, and past-event null guards.

One residual fix ported from unomi-3-dev (UNOMI-680 tenant handling):

  • GraphQLServletSecurityValidator: when JAAS auth succeeds but X-Unomi-Tenant-Id is invalid, fall back to ExecutionContext.systemContext() instead of leaving a potentially wrong tenant context.

Audit — intentionally skipped (master wins)

Bundle Paths Reason
L REST auth AuthenticationFilter, V2ThirdPartyConfigService, DefaultRestAuthenticationConfig Master #760, #762
M OpenSearch OpenSearchPersistenceServiceImpl, past-event query builders, dispatchers Master #781, #773, #760; 3-dev removes null guards
N GraphQL GraphQLSchemaProvider, GraphQLSchemaUpdater Whitespace-only diff; UNOMI-680 fixes already on master
O Validation NumericValueTypeValidator, ComparisonOperatorValueTypeValidator, ConditionValidationServiceImpl Master uses AbstractNumericValueTypeValidator + #773
P API toString api/** model toString(), YamlUtils, tests Master #768, #755

Test plan

  • mvn -pl graphql/cxs-impl compile
  • GraphQL request with valid JAAS credentials + invalid X-Unomi-Tenant-Id → system context, no cross-tenant leakage
  • GraphQL request with valid tenant header → tenant context unchanged
  • CI Javadoc + unit/integration suites

…hase 2 PR 3)

§2 audit of mega-PR 3 (L+M+N+O+P) found master already ahead via #760, #762, #773, #768, #781 on auth, validation, toString, rangeQuery, and past-event wiring. Port the remaining GraphQL security fix: fall back to system context when X-Unomi-Tenant-Id is invalid after JAAS login.
…llback

Closes the test-coverage gap from the prior commit's invalid-tenant
fallback fix: adds JUnit/Mockito test deps to cdp-graphql-api-impl
and covers the JAAS-authenticated branches of
GraphQLServletSecurityValidator (invalid tenant header, valid tenant
header, missing Authorization header). Also documents why the
fallback explicitly sets systemContext() instead of leaving the
thread-local context untouched.
@sergehuber sergehuber merged commit df5f313 into master Jun 29, 2026
6 checks passed
@sergehuber sergehuber deleted the UNOMI-884-platform-polish branch June 29, 2026 07:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant