Implementing Failure (part 1)
After a few more unrelated things around the house, I implemented the player lives and obstacle collisions:

The player flickers for an invincibility period, and those partially transparent green circles shoot outward when you hit an obstacle.
Next I need to make it do something when you run out of lives.