from Hacker News

Bug Likelihood over Time

by Smaug123 on 1/25/25, 12:46 AM with 1 comments

  • by Smaug123 on 1/25/25, 12:46 AM

    This is from the Antithesis docs. It contains an incredibly cute idea.

    With a deterministic execution simulation system, you can sometimes automatically locate bugs as follows.

    * Identify and reproduce a symptom of a bug; say the symptom occurs at time `S`.

    * For various times `t`, rewind the simulation to time `S - t` and replay it, varying whatever sources of simulated randomness are present.

    * If there is a threshold `T` such that the simulation rarely reproduces the bug for rewinds longer than `T`, but frequently reproduces the bug for rewinds shorter than `T`, then the bug likely occurs at time `S - T`.

    Crucially, it doesn't matter how much time passes between the bug and the symptom! This method, if it works, identifies the moment when "the symptom became inevitable" (or at least less evitable); that is, the moment when the bug occurred.