An deinem Taster ist (zumindest in deinem wokwi-Link) kein pulldown-Widerstand.
Auch nach Wechsel der LCD - lib in Wokwi (<LiquidCrystal_I2C.h>) ist zwar der Fehler weg, aber es passiert erstmal nix.
Ich verstehe den Sketch so, dass nacheinander die LEDs ROT - ROT/GELB - GRÜN leuchten sollen.
Das wäre doch erstmal ein Ziel, das du schaffen können solltest. Danach kannst du einbauen, dass es erst auf Tasterdruck passiert. Wenn das geht, ist es früh genug, sich um deine Schieberegister-Anzeige zu kümmern, für die du wohl Mühe haben wirst, das in wokwi nachzubauen.
So schnell dass du die Anzeige im Microsekundenbereich aktualisierst, wird es aber sowieso nicht, warum diesen Teil nicht erstmal weglassen? Also ab da die Zeit bis zum nächsten Tastendruck messen und dann einmalig anzeigen? ( Serial Ausgabe in Wokwi ) Der nächste Tastendruck startet dann wieder die Startsequenz.