Well here's an embarrassing problem. PulseAudio doesn't seem to be working. I've been trying to load the sound applet for a week or so and I checked ps aux | grep pulse and found that there's no PA daemon running!
Sound is still working. I assume everything has fallen back to ALSA.
Furthermore I've tried to start PA from the command line. pulseaudio -D just errors out with nothing useful, just E: main.c: Daemon startup failed.
pulseaudio on its own raises a little more:
$ pulseaudio
E: main.c: Unknown command: !/usr/bin/pulseaudio -nF
E: main.c: Failed to initialise daemon.
I can start it as root with --system but nothing can connect to it. That's not the right way to run PA, so I'd rather fix it than bodge around it.