FAILURE MAP
← Case archive

FA-74104 / Feature flag rollout bucketing / Member archive

Global holdout exclusion: Holdout percentage admits one extra bucket · case 04

A 5 percent holdout actually withholds 6 percent of users, and 0 percent still withholds bucket 0.

Member previewVariant 4 · 3 implementations · 8 checks per implementation

Case contract

h = crc32("holdout:" + user) % 100 and b = crc32(flag + ":" + user) % 100. Users listed exactly in force get treatment (forced). Otherwise h < holdout_pct puts the user in the global holdout (control, holdout). Otherwise b < rollout gives treatment, else control (reason rollout). Return [variant, reason, h, b].

Why this case matters

A global holdout measures the cumulative effect of all launches and must stay uncontaminated.

One recorded failure

Sample boundary fixture

This sample comes from the broken implementation of a controlled reproducer.

Boundary fixtureActualExpectedOutcome
holdout sample 16["control", "holdout", 48, 62]["control", "rollout", 48, 62]Failed

MEMBER ARCHIVE

The complete case is available to members.

This record includes three runnable implementations, regression fixtures, execution results, and source hashes.

Member access is invitation-based. Sign in with your invited account to inspect the sources.

Sign in to the archive ↗