My best guess is that the bird flew into the garage when I had it open, and was trapped. (That's happened once before, but I managed to free the bird that time.) Then later in the evening I had the door from the house to the garage open so Fish could go out there and sit on the car--maybe the bird moved from garage to house at that point. Or maybe Fish caught it in the garage and hid the body in the house for later play.
However, sometime after I went to bed, one of the cats (probably Fish) played with the bird in the living room, scattering little feathers all over part of the carpet and one cat-scratching post. No blood and gore, thank heavens, and I just hope the poor bird was dead before the play began. With my almost-exclusively-indoor cats, I'm not used to this.