Thanks for the pointer. Useful to know about, but unfortunately not helpful in this case.
If I try to discard all the held messages in a list using bin/discard from command line nothing happens. In that the command executes OK, but when I go back to the web interface for the list the messages are still there, and still won't respond to any commands entered via the web interface.
I've got a sort-of work around for junk messages held (which is most of them), which is to turn on auto-discard of messages held for more than 2 days. It seems I can change the configuration of Mailman, and non-interactive controls work. I just can't manunally interact with messages ... however, in one list I've got one held message I want to approve. I can't see a command line command for doing that in the list, and under current scheme I'd loose the message after 2 days. I've found a work-around (forwarding the notification email on to list recipients) but it is not ideal.
Pity. In theory Mailman should be helpful for what I want to do (have a single inbound mailbox in Lion that forwards inbound messages to multiple mail users), but suspect I'll have to engineer some other solution - such as creating a user for each mailbox and then putting some rules into mail processing to auto-forward everything as required. Probably sensible, as I understand Mailman is dropped in 10.8 server ...