A module refused by plan tier says so on the instance

An instance on a plan that does not cover a package the registry declares in its default set — a free instance and the enterprise Hosting package, say — used to see only the consequences: canPatch=False pointing at Modules:Assemblies, /health saying "install the package from the registry" (which the instance cannot do), and no package card at all. The refusal was logged on the registry, where the instance cannot read it.

The registry now returns that verdict to the instance as a typed refusal — package, required tier, instance plan — and the instance says it in one sentence wherever it used to name the consequence:

⛔ Not installed on this instance: Hosting needs plan tier enterprise, this instance is on free.

The sentence appears on /health's required_modules line, on the package's card in the Plugin Catalog (with no Install button, since the instance cannot install it), on the activation report, and on the self-updater's [SelfUpdate] starting line when the Kubernetes patcher's package is what was refused. The enumeration defence is unchanged: a package from a source the instance is not granted stays indistinguishable from one that does not exist.

Reconnecting…
The connection to the server was interrupted. Trying to restore it…
Trying again…
The connection could not be restored. Reloading the page…
The server was updated. Reloading the page to pick up the latest version.