For example, after a game is completed or a poll is completed, and the users start a new game or poll, the previous updates are not needed. Is there a way to mark the previous updates for deletion after receiving the “new game/etc.” update? If not, does the data continue to accumulate over time with no deletions?
Yes, it is not possible to delete webxdc update currently.
There is an idea to implement a “squash” API to allow replacing updates 1..N with a single update locally, but it is not implemented yet.
For games and polls you can avoid accumulating a lot of updates by not allowing to start a new poll or game from the same instance, so users will have to create a new instance (e.g. by forwarding the app to the same chat), then they can also delete old instances when they are not needed anymore.
Just a small remark that needs to be said here for future reference. Once you delete the message that sent in the webxdc to the chat, all updates from that instance will be marked for automatic deletion to be cleaned up within days.
I.e., setting up disappearing messages in your chats would also ensure app data won’t accumulate either.