Pick a coding problem. An AI writes a Python solution, the code runs in a locked box with no internet, and it's checked against tests the AI never saw. If it fails, the AI is shown what went wrong and tries again, within hard limits so it can't loop forever.
Want to see it fix its own mistake? Open a recorded run on a twisted problem where the first two attempts fail.