game-save.txt
Add saving to my game. State: <paste the state object>

- Serialise only what's needed to rebuild — never functions, images or
  DOM nodes. Tell me what you excluded.
- A schema version in the save. On load, migrate old versions rather
  than wiping them.
- Corrupt or unparseable save starts a fresh game instead of crashing.
- Every read and write in try/catch — private browsing throws on
  storage access, and that must never break the game.
- Save on meaningful events, not every frame. Say which you chose.

Then show me how to add a new field without breaking existing saves.

The try/catch is not defensive padding. An unhandled storage exception at startup is a blank screen, and it only happens to people using a private window.