FAILURE MAP
← Case archive

FA-74325 / Feature flag rollout bucketing / Member archive

Seeded weighted rollout: Buckets past the weights get no variation · case 05

When weights sum below 100000, some users evaluate to no variation at all.

Member previewVariant 5 · 3 implementations · 8 checks per implementation

Case contract

Hash text is (str(seed) if seed is not None else flag_key + "." + salt) + "." + ident, plus "." + secondary when secondary is not None (an empty string still counts). bucket = int(first 15 hex digits of sha1(text), 16) / 0xFFFFFFFFFFFFFFF. weights are in 1/100000 units; return the first index whose cumulative weight / 100000 exceeds the bucket, else the last index, as [index, round(bucket, 6)].

Why this case matters

Seeds let several flags share one bucketing so a cohort sees consistent variations.

One recorded failure

Sample boundary fixture

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

Boundary fixtureActualExpectedOutcome
weights short of total go to last index[null, 0.233147][1, 0.233147]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 ↗