"The WebGL renderer more or less already does that, but with fewer vertices since it can turn repeating areas in to a single quad."
Right. But if I have repeating areas I might as well use a Tiled Background object. I would expect tilemaps to show variety instead of identical tiles next to each other. At that point the current implementation performs no better than rendering individual sprites, right ?
"when editing the tilemap at runtime it now needs to involve the GPU - either a full or partial mesh rebuild and associated GPU upload."
The same issue exists with your current implementation too I would assume. You need to recalculate the larger quads and upload those.
"Also it means it has to switch between buffers"
You mean switching between vertex buffers for sprites & tilemaps? Currently for every tile in a (non-trivial) tilemap you switch textures, which means OpenGL will do its notoriously slow texture state validation. That is worse than VB switching I'd think.
"improvement does not carry over to the canvas2d renderer"
True. I am mostly concerned about how construct2 runs on current mobile devices, and seeing warnings pop up for every single tile in the iPad OpenGL profiler is not a great sign.