These are not always hard rules, and I wouldn't call them
recommendations either, Kevin's phrase of "is likely to work" is the
most precise one.
There are clearcut cases where you can be 100% sure that something
won't run on a given platform (e.g. using dart:mirrors and Flutter).
There are also indications when something is specific to a platform
(e.g. dart:html and web). We also have special cases, where you may
import 'package:http', which depends on 'dart:io', but still allows
you to use the library on the web.
All of this is tracked through transitive dependencies, separately
decided for each library, and then aggregated to the package level.
The thing gets a bit more complex with packages with multiple
libraries which may target different platforms.
If you don't agree with the categorization, please file an issue and
we will refine the analysis if it is a bug in the classification.
Cheers,
Istvan