That’s a clever way of doing state. For dndinfinity.com, I rendered the game state as natural language (e.g. “the players are engaged in the following quests”) in the prompt, under the theory that it would be able to reason better.
What issues (if any) did you have storing state in json and just plopping that in the context window?
The biggest trade off is you sometimes get invalid JSON. So I try repairing the JSON with some regex and also just retry a few times if it returns invalid JSON that can't be repaired.
What issues (if any) did you have storing state in json and just plopping that in the context window?