Hi James,
Thanks - that seems to have fixed the behaviour. So I guess the lesson here is that the Image.alt attribute that had previously been supported (at least through the Python API) is officially dead and that metafield ALTs are the way to go.
Cheers,
Geoff