I managed to find a way to take of the aforementioned "short-cuts" and that seemed to provide a big win (that benchmark is now down to 17.6 seconds). I suspect that the real-world benefit will be even greater since it involves removing a "re-application" which was a compounding problem.
In play-testing since this change, things feel much better as there is no longer an obvious stutter when placing/breaking torches yet the update to the lighting model is still immediate.
It was a bit of a hack but such a tiny one, and meaningfully confined to the client, so it should be ok. Also, it isn't entirely inconsistent with the model, just an odd path into the data.
Made a few other changes today meaning that the only remaining changes to make are to add the audio (which is probably all going to be just pulled from OctoberPlains) and fix a few of the models which are either inside-out or have really bad edge bleeding.
I haven't seen any bugs (and an old one I keep waiting for hasn't re-appeared) but I do wonder if some performance work will be required once the release candidate comes out. No obvious problems but is something I want to verify.
So, this means that things seem back on track.