Every way pitboard can fail. Each variant has a message naming the cause and an action, a stable code for programs to branch on, and an exit code.