> Also: is the information in the schema also included in the payload?

No.

> It's going to be confusing at the application layer if I have to remember to explicitly request ts in my query if it's not duplicated in the payload,

Why? If you want it at some place, you request it. Or you request it with '*' most of the time anyway.

> but duplication seems like a red flag.

That I agree with.