Skimming through that slime-devel thread, it's not clear there is a consensus on whether this is the right approach.
There is consensus about two things: 1. Understanding readtables in SLIME is useful and desired 2. Frobbing made by (in-readtable) is kludgy and potentially harmful.
But I'm not sure people understood that the change I suggest is breaking.
Currently, once readtable is associated to a package, every file with that package implies that readtable due to record in *readtable-alist*. So it is enough to issue (in-readtable) once in the package and it sticks to that package until changed.
After suggested modification to SLIME and NAMED-READATBLES, explicit in-readtable form is required at every file, and also every time we issue in-package form in REPL. We are also free to add records to *readtable-alist* manually.
How will user adapt to suggested modifications? Simplest way is to fill *readtable-alist* in his initialization file.
After suggested modification to SLIME and NAMED-READATBLES, explicit in-readtable form is required at every file
in my understanding that has always been the published API/contract of IN-READTABLE.
and also every time we issue in-package form in REPL.
again, in my understanding IN-READTABLE and IN-PACKAGE were meant to be independent. it's only a kludge that the implementation was intertwined for a while, because proper implementation required slime supporting IN-READTABLE similar to how it supports IN-PACKAGE. no one got to implement it before you, so the *READTABLE-ALIST* based kludge made things work good enough for the time being.
i think catering for user code that relied on the sideffect of that kludge is not a priority.