When a project is not declared in the info.yml file, and not available through other means, it is linked to the default project, which always has enabled modules, causing such unused projects not to be discovered.
The discovery process needs to be smarter and obtain project information, possibly from the d.o. API or some heuristics based on the filesystem layout.
One possibility might be to check how update and upgrade_manager access the project information in these cases.