Skip to content

[AI-FSSDK] [FSSDK-12834] Replace non-numeric holdout placeholder IDs in event-construction tests#646

Merged
muzahidul-opti merged 4 commits into
masterfrom
ai/jaeopt/FSSDK-12834-holdout-event-p2
Jul 1, 2026
Merged

[AI-FSSDK] [FSSDK-12834] Replace non-numeric holdout placeholder IDs in event-construction tests#646
muzahidul-opti merged 4 commits into
masterfrom
ai/jaeopt/FSSDK-12834-holdout-event-p2

Conversation

@jaeopt

@jaeopt jaeopt commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Summary

Per FR-011 / SC-007 of the decision-event ID normalization spec, every pre-existing test that constructs an event payload must use valid decimal-digit string IDs. Non-numeric holdout placeholders implicitly relied on the pre-fix pass-through behavior and would either silently change their on-the-wire output after the normalization landed or assert the wrong thing.

Changes

  • Replace non-numeric holdout id, variation id, and trafficAllocation entityId placeholders with numeric-string IDs across all holdout-related test fixtures whose tests dispatch impression events (BatchEventBuilder, DecisionListener, decide-API, decide-reasons, local-holdout suites).
  • Update the one event-level assertion that previously expected the non-numeric placeholder to fall through, so it now asserts the realistic numeric IDs and a numeric variation_id (matching the post-fix happy-path normalization).
  • Leave the dedicated invalid-input-path tests in BatchEventBuilderTests_HoldoutIds.swift and the no-dispatch DecisionServiceTests_Holdouts.swift fixtures unchanged — the former intentionally exercises the fallback contract, the latter never reaches the event builder.

Jira Ticket

FSSDK-12834

@jaeopt jaeopt closed this Jun 26, 2026
@coveralls

Copy link
Copy Markdown

Coverage Status

Coverage is 93.849%ai/jaeopt/FSSDK-12834-holdout-event-p2 into master. No base build found for master.

@jaeopt jaeopt reopened this Jun 26, 2026
jaeopt added 3 commits June 26, 2026 20:25
Drop FSSDK-12813 / FSSDK-12834 references from production and test
code (ticket IDs belong in commit messages and PR titles, not source).
Tighten the verbose multi-line docstrings down to one short line each
or remove them where the code is self-explanatory.

No behavior change.

@muzahidul-opti muzahidul-opti left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@muzahidul-opti muzahidul-opti merged commit 7babd8c into master Jul 1, 2026
10 of 12 checks passed
@muzahidul-opti muzahidul-opti deleted the ai/jaeopt/FSSDK-12834-holdout-event-p2 branch July 1, 2026 12:20
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.

3 participants