Andrew Fribush

fig. 2.17.3: a commit dropped anywhere along the mutation run, and which guard refuses it

fig. 2.17.3 · a commit dropped anywhere along the mutation run, and which guard refuses it.
THREE GUARDS: NO COMMIT CARRIES A MUTANTWITH THE THREE GUARDSBEFORE THE GUARDSONE BLOCK IS ONE MUTANT’S TURN IN THE RUNNER: WRITE THE MUTANT, RUN GAME.CHECKS,RESTORE SIM.PY.LOCK · .MUTANTS.LOCK HELD FOR THE WHOLE RUNCLEANCLEAN123456789101112STAMP ON LINE 1 AT EVERY WRITECOMMIT REFUSED BY THE LOCK: .MUTANTS.LOCK PRESENTSIM.PY LINE 1: # MUTANT: INSTRUMENT COSTS DO NOTSCALE · THE GATE WOULD REFUSE THE STAMP NEXTLOCK.MUTANTS.LOCK IS HELD FROM THE FIRST WRITE TO THE LAST RESTORE; THERUNNER, VERIFY.SH AND PRE-COMMIT ALL REFUSE WHILE IT EXISTSSTAMPLINE 1 OF THE MUTATED SIM.PY READS “# MUTANT: <NAME>, MUTATION RUN INPROGRESS, DO NOT COMMIT”, SO THE FILE NAMES ITS OWN STATEGATEPRE-COMMIT REFUSES ANY COMMIT WHILE THE LOCK EXISTS, AND ANY STAGED SIM.PYCARRYING THE STAMP

source: vicky game/mutants.py lines 88-143 · .git/hooks/pre-commit lines 5-13 · verify.sh lines 5-8 · docs/BUILD-LOG.md lines 727-756 (703-732 at HEAD 93c9f5e) · fd3212d:game/sim.py line 814 · mutantGuards.data.ts

View in context: Testing assertions by reintroducing bugs → · All figures

Andrew Fribush, software and computer engineer in Austin. I build consequential systems where software meets institutions: finance, healthcare, commerce, government data, and the mechanisms that govern AI agents. Taking new engagements: hello@andrewfribush.com.