Understand the failure.
Verify the repair.
Small, reproducible software failures. The broken implementation, the fix that didn’t work, and the one that passed—preserved together.
Explore the cases ↓How results are verified ↗WHAT THE ARCHIVE CONTAINS
100840 executable cases. 20168 are open.
Every case records the implementation that fails, the fix that did not work, and the repair that passed its checks—with recorded outputs and source hashes. This release adds 100840 cases across 20168 failure mechanisms and 254 domains.
The open tier gives you the failure and the unsuccessful fix for one case in every mechanism. The remaining 80672 cases, 5 variants per mechanism, are member-only: the verified repair, its recorded checks, and the full fixture suite are held in the member archive. Read the methodology ↗
A RECORD OF WHAT WENT WRONG
Browse the archive / 100840
Leaky bucket meter: denied request still pours water · case 01
Rejected traffic keeps the bucket full, so a throttled client can never recover while it retries.
Leaky bucket meter: denied request still pours water · case 02
Rejected traffic keeps the bucket full, so a throttled client can never recover while it retries.
Leaky bucket meter: denied request still pours water · case 03
Rejected traffic keeps the bucket full, so a throttled client can never recover while it retries.
Leaky bucket meter: denied request still pours water · case 04
Rejected traffic keeps the bucket full, so a throttled client can never recover while it retries.
Leaky bucket meter: denied request still pours water · case 05
Rejected traffic keeps the bucket full, so a throttled client can never recover while it retries.
Leaky bucket queue shaper: departure scheduled before arrival · case 01
After an idle period requests are reported as departing before they arrived.
Leaky bucket queue shaper: departure scheduled before arrival · case 02
After an idle period requests are reported as departing before they arrived.
Leaky bucket queue shaper: departure scheduled before arrival · case 03
After an idle period requests are reported as departing before they arrived.
Leaky bucket queue shaper: departure scheduled before arrival · case 04
After an idle period requests are reported as departing before they arrived.
Leaky bucket queue shaper: departure scheduled before arrival · case 05
After an idle period requests are reported as departing before they arrived.
Leaky bucket queue shaper: request departing now counted as queued · case 01
A request arriving at the same instant another departs is dropped.
Leaky bucket queue shaper: request departing now counted as queued · case 02
A request arriving at the same instant another departs is dropped.
Leaky bucket queue shaper: request departing now counted as queued · case 03
A request arriving at the same instant another departs is dropped.
Leaky bucket queue shaper: request departing now counted as queued · case 04
A request arriving at the same instant another departs is dropped.
Leaky bucket queue shaper: request departing now counted as queued · case 05
A request arriving at the same instant another departs is dropped.
Leaky bucket queue shaper: next slot computed from arrival · case 01
Queued requests are spaced from their arrival rather than from the previous departure, compressing the output rate.
Leaky bucket queue shaper: next slot computed from arrival · case 02
Queued requests are spaced from their arrival rather than from the previous departure, compressing the output rate.
Leaky bucket queue shaper: next slot computed from arrival · case 03
Queued requests are spaced from their arrival rather than from the previous departure, compressing the output rate.
Leaky bucket queue shaper: next slot computed from arrival · case 04
Queued requests are spaced from their arrival rather than from the previous departure, compressing the output rate.
Leaky bucket queue shaper: next slot computed from arrival · case 05
Queued requests are spaced from their arrival rather than from the previous departure, compressing the output rate.
Leaky bucket queue shaper: dropped request reserves a slot · case 01
Each drop delays every later accepted request by one interval.
Leaky bucket queue shaper: dropped request reserves a slot · case 02
Each drop delays every later accepted request by one interval.
Leaky bucket queue shaper: dropped request reserves a slot · case 03
Each drop delays every later accepted request by one interval.
Leaky bucket queue shaper: dropped request reserves a slot · case 04
Each drop delays every later accepted request by one interval.
Leaky bucket queue shaper: dropped request reserves a slot · case 05
Each drop delays every later accepted request by one interval.
Hierarchical tenant and global token buckets: tenant charged when the global bucket denies · case 01
A tenant loses its own tokens for requests the shared limit rejected.
Hierarchical tenant and global token buckets: tenant charged when the global bucket denies · case 02
A tenant loses its own tokens for requests the shared limit rejected.
Hierarchical tenant and global token buckets: tenant charged when the global bucket denies · case 03
A tenant loses its own tokens for requests the shared limit rejected.
Hierarchical tenant and global token buckets: tenant charged when the global bucket denies · case 04
A tenant loses its own tokens for requests the shared limit rejected.
Hierarchical tenant and global token buckets: tenant charged when the global bucket denies · case 05
A tenant loses its own tokens for requests the shared limit rejected.
Hierarchical tenant and global token buckets: global reason reported before tenant reason · case 01
Tenants over their own limit are told the shared service is saturated.
Hierarchical tenant and global token buckets: global reason reported before tenant reason · case 02
Tenants over their own limit are told the shared service is saturated.
Hierarchical tenant and global token buckets: global reason reported before tenant reason · case 03
Tenants over their own limit are told the shared service is saturated.
Hierarchical tenant and global token buckets: global reason reported before tenant reason · case 04
Tenants over their own limit are told the shared service is saturated.
Hierarchical tenant and global token buckets: global reason reported before tenant reason · case 05
Tenants over their own limit are told the shared service is saturated.
Hierarchical tenant and global token buckets: tenant refills from the global clock · case 01
A tenant idle while others were active never refills, because the elapsed time is measured from anyone's last request.
Hierarchical tenant and global token buckets: tenant refills from the global clock · case 02
A tenant idle while others were active never refills, because the elapsed time is measured from anyone's last request.
Hierarchical tenant and global token buckets: tenant refills from the global clock · case 03
A tenant idle while others were active never refills, because the elapsed time is measured from anyone's last request.
Hierarchical tenant and global token buckets: tenant refills from the global clock · case 04
A tenant idle while others were active never refills, because the elapsed time is measured from anyone's last request.
Hierarchical tenant and global token buckets: tenant refills from the global clock · case 05
A tenant idle while others were active never refills, because the elapsed time is measured from anyone's last request.
Hierarchical tenant and global token buckets: new tenant starts empty · case 01
A tenant's first request is denied although it has never used its quota.
Hierarchical tenant and global token buckets: new tenant starts empty · case 02
A tenant's first request is denied although it has never used its quota.
Hierarchical tenant and global token buckets: new tenant starts empty · case 03
A tenant's first request is denied although it has never used its quota.
Hierarchical tenant and global token buckets: new tenant starts empty · case 04
A tenant's first request is denied although it has never used its quota.
Hierarchical tenant and global token buckets: new tenant starts empty · case 05
A tenant's first request is denied although it has never used its quota.
Hierarchical tenant and global token buckets: global bucket capped at tenant capacity · case 01
The shared bucket can never hold more than one tenant's capacity, throttling the fleet.
Hierarchical tenant and global token buckets: global bucket capped at tenant capacity · case 02
The shared bucket can never hold more than one tenant's capacity, throttling the fleet.
Hierarchical tenant and global token buckets: global bucket capped at tenant capacity · case 03
The shared bucket can never hold more than one tenant's capacity, throttling the fleet.
Hierarchical tenant and global token buckets: global bucket capped at tenant capacity · case 04
The shared bucket can never hold more than one tenant's capacity, throttling the fleet.
Hierarchical tenant and global token buckets: global bucket capped at tenant capacity · case 05
The shared bucket can never hold more than one tenant's capacity, throttling the fleet.
AIMD adaptive concurrency limit: additive increase per acknowledgement · case 01
The limit grows by one per success instead of one per window, overshooting capacity quickly.
AIMD adaptive concurrency limit: additive increase per acknowledgement · case 02
The limit grows by one per success instead of one per window, overshooting capacity quickly.
AIMD adaptive concurrency limit: additive increase per acknowledgement · case 03
The limit grows by one per success instead of one per window, overshooting capacity quickly.
AIMD adaptive concurrency limit: additive increase per acknowledgement · case 04
The limit grows by one per success instead of one per window, overshooting capacity quickly.
AIMD adaptive concurrency limit: additive increase per acknowledgement · case 05
The limit grows by one per success instead of one per window, overshooting capacity quickly.
AIMD adaptive concurrency limit: multiplicative decrease ignores the minimum · case 01
Repeated losses drive the limit below the configured minimum, stalling all traffic.
AIMD adaptive concurrency limit: multiplicative decrease ignores the minimum · case 02
Repeated losses drive the limit below the configured minimum, stalling all traffic.
AIMD adaptive concurrency limit: multiplicative decrease ignores the minimum · case 03
Repeated losses drive the limit below the configured minimum, stalling all traffic.
AIMD adaptive concurrency limit: multiplicative decrease ignores the minimum · case 04
Repeated losses drive the limit below the configured minimum, stalling all traffic.
AIMD adaptive concurrency limit: multiplicative decrease ignores the minimum · case 05
Repeated losses drive the limit below the configured minimum, stalling all traffic.
AIMD adaptive concurrency limit: increase not capped at the maximum · case 01
The limit grows past the configured maximum.
AIMD adaptive concurrency limit: increase not capped at the maximum · case 02
The limit grows past the configured maximum.
AIMD adaptive concurrency limit: increase not capped at the maximum · case 03
The limit grows past the configured maximum.
AIMD adaptive concurrency limit: increase not capped at the maximum · case 04
The limit grows past the configured maximum.
AIMD adaptive concurrency limit: increase not capped at the maximum · case 05
The limit grows past the configured maximum.
AIMD adaptive concurrency limit: successes do not count down the cooldown · case 01
After one loss the limiter ignores later losses until more losses arrive, reacting too slowly.
AIMD adaptive concurrency limit: successes do not count down the cooldown · case 02
After one loss the limiter ignores later losses until more losses arrive, reacting too slowly.
AIMD adaptive concurrency limit: successes do not count down the cooldown · case 03
After one loss the limiter ignores later losses until more losses arrive, reacting too slowly.
AIMD adaptive concurrency limit: successes do not count down the cooldown · case 04
After one loss the limiter ignores later losses until more losses arrive, reacting too slowly.
AIMD adaptive concurrency limit: successes do not count down the cooldown · case 05
After one loss the limiter ignores later losses until more losses arrive, reacting too slowly.
AIMD adaptive concurrency limit: losses during cooldown do not count it down · case 01
A sustained burst of losses keeps the limiter in cooldown and prevents any further decrease.
AIMD adaptive concurrency limit: losses during cooldown do not count it down · case 02
A sustained burst of losses keeps the limiter in cooldown and prevents any further decrease.
AIMD adaptive concurrency limit: losses during cooldown do not count it down · case 03
A sustained burst of losses keeps the limiter in cooldown and prevents any further decrease.
AIMD adaptive concurrency limit: losses during cooldown do not count it down · case 04
A sustained burst of losses keeps the limiter in cooldown and prevents any further decrease.
AIMD adaptive concurrency limit: losses during cooldown do not count it down · case 05
A sustained burst of losses keeps the limiter in cooldown and prevents any further decrease.
AIMD adaptive concurrency limit: reported limit rounded to nearest · case 01
The advertised concurrency exceeds the fractional limit.
AIMD adaptive concurrency limit: reported limit rounded to nearest · case 02
The advertised concurrency exceeds the fractional limit.
AIMD adaptive concurrency limit: reported limit rounded to nearest · case 03
The advertised concurrency exceeds the fractional limit.
AIMD adaptive concurrency limit: reported limit rounded to nearest · case 04
The advertised concurrency exceeds the fractional limit.
AIMD adaptive concurrency limit: reported limit rounded to nearest · case 05
The advertised concurrency exceeds the fractional limit.
Concurrency limiter with expiring leases: lease still held at its expiry instant · case 01
A slot stays occupied one tick past its lease, rejecting a waiting acquirer.
Concurrency limiter with expiring leases: lease still held at its expiry instant · case 02
A slot stays occupied one tick past its lease, rejecting a waiting acquirer.
Concurrency limiter with expiring leases: lease still held at its expiry instant · case 03
A slot stays occupied one tick past its lease, rejecting a waiting acquirer.
Concurrency limiter with expiring leases: lease still held at its expiry instant · case 04
A slot stays occupied one tick past its lease, rejecting a waiting acquirer.
Concurrency limiter with expiring leases: lease still held at its expiry instant · case 05
A slot stays occupied one tick past its lease, rejecting a waiting acquirer.
Concurrency limiter with expiring leases: unknown release frees someone else's slot · case 01
A stray release from a client that never acquired evicts the oldest legitimate holder.
Concurrency limiter with expiring leases: unknown release frees someone else's slot · case 02
A stray release from a client that never acquired evicts the oldest legitimate holder.
Concurrency limiter with expiring leases: unknown release frees someone else's slot · case 03
A stray release from a client that never acquired evicts the oldest legitimate holder.
Concurrency limiter with expiring leases: unknown release frees someone else's slot · case 04
A stray release from a client that never acquired evicts the oldest legitimate holder.
Concurrency limiter with expiring leases: unknown release frees someone else's slot · case 05
A stray release from a client that never acquired evicts the oldest legitimate holder.
Concurrency limiter with expiring leases: duplicate acquire renews the lease · case 01
A holder re-acquiring extends its lease indefinitely and is told it was granted a new slot.
Concurrency limiter with expiring leases: duplicate acquire renews the lease · case 02
A holder re-acquiring extends its lease indefinitely and is told it was granted a new slot.
Concurrency limiter with expiring leases: duplicate acquire renews the lease · case 03
A holder re-acquiring extends its lease indefinitely and is told it was granted a new slot.
Concurrency limiter with expiring leases: duplicate acquire renews the lease · case 04
A holder re-acquiring extends its lease indefinitely and is told it was granted a new slot.
Concurrency limiter with expiring leases: duplicate acquire renews the lease · case 05
A holder re-acquiring extends its lease indefinitely and is told it was granted a new slot.
Concurrency limiter with expiring leases: expiry runs only on acquire · case 01
Releasing an already expired lease is reported as a successful release.
Concurrency limiter with expiring leases: expiry runs only on acquire · case 02
Releasing an already expired lease is reported as a successful release.
Concurrency limiter with expiring leases: expiry runs only on acquire · case 03
Releasing an already expired lease is reported as a successful release.
Concurrency limiter with expiring leases: expiry runs only on acquire · case 04
Releasing an already expired lease is reported as a successful release.
Concurrency limiter with expiring leases: expiry runs only on acquire · case 05
Releasing an already expired lease is reported as a successful release.
INSPECTABLE BY DESIGN
Every result has a runnable source.
Runnable implementations with recorded outputs, source hashes, and explicit contracts. Related variants share a failure mechanism and belong together in evaluation splits.
Read the methodology ↗