case c: modules which add full new functionalities (medical_*) can be mantained in both versions but migrated for v9.0.+

>>>> Put here more cases

Then it is not a rule black and white in my opinion and can be decided repository by repository.

Honestly technically __unported__ was a bad Idea since the begining but we have it now and I think it do not add any value make a huge effort again, it must be discussed repo by repo and the project leader take the role of judge case by case.

3. do you have ideas how to tackle the two objectives above (preferably
without going through a huge reorganisation of our repositories, cf.
note below)?

I think best is have them:

1.- installable false

2.- Little script that read such information and index in the README.md or in a new file the modules on such repositories that need work to be migrated.

PS: I do not like even a little the idea of 1 repo 1 module, it is a huge amount of mantainance problems I use 10 / 12 repositories by project, just think in fork 100 makes me fear that such approach will be possible in some moment), because CVS it the power of auditory and sharable code, use "normal" zip stuff and so on, will stop a lot the collaboration and will bring more and more leechers (which have not intended to be leechers but it will be so difficult to simply pull and load).