Fare, I wonder, why ironclad fails with your patch.
I have checked the source, ironclad.asd creates new *ironclad-readtable* and binds cl:*readable* to it in the :around method for compile-op (like a home-made around hook)
So, it looks like ironclad does not modify any global behavior.
What your patch does?
PS.
My opinion.
I would never write a library which modifies global *readtable* during load, it's of course a bad style (when ASDF around hooks provide an easy instrument for my code to use custom readtable without affecting global readtable)
Should ASDF fail the libraries which modify global readtable - I doubt it's ASDF role.
Should ASDF provide libraries with clean readtable when they are build - seems like a good service, so doesn't matter what I did in REPL, (ql:quickload :any-library) always works the same way.
But I am not sure 100%, this is a complex issue, more intensive consideration is needed.
It's rational to collect the information we already have into a ticket, and consider it more detailed when other currently active issues are closed, as Robert suggests.
Best regards, - Anton