FA-73940 / Feature flag rollout bucketing / Member archive
Prerequisite flag chain: Evaluation continues past an unmet prerequisite · case 05
The reported blocking prerequisite is the last failing one, and later broken references surface.
Case contract
flags maps key -> {on, off, serve, prereqs:[[key, required variation]]}. Missing flags yield [None, MISSING, key]; revisiting a flag on the current path yields [None, CYCLE, key] (checked before on/off). An off flag serves [off, OFF, None]. Prerequisites are evaluated in order; MISSING/CYCLE results propagate unchanged; the first prerequisite that is OFF or serves a different variation stops evaluation with [off, PREREQUISITE_FAILED, that prerequisite key]. A prerequisite that itself failed counts as serving its off variation. Otherwise [serve, ON, None].
Why this case matters
Prerequisite chains gate dependent features and must fail closed with an actionable reason.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| first unmet prerequisite stops evaluation | ["off", "PREREQUISITE_FAILED", "c"] | ["off", "PREREQUISITE_FAILED", "b"] | 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 ↗