Drop the install hint for a provider the host cannot run (fixes v0.6.0 release run)

Merged
TO
10d ago
+64-8

The v0.6.0 release run (run 39871181972) failed in Build, Test & Package on ExitCodeTests.Run_MissingRequiredPlugin_Returns3_WithInstallHint, so nothing was published.

Cause

On a host with no ROCm and no MIGraphX plugin vendored, which is what the release runner is, run --provider migraphx --require-provider printed two messages:

  • "migraphx is not applicable on this host" (#37's host-aware hint), and
  • from ProviderListing.NotListedReason, "run 'linml catalog install migraphx'". Installing wouldn't help on such a host.

PR CI passed because the CLI tests share static plugin-registry state in one process. In that run's order, a registration failure was already recorded for the plugin, and that path doesn't print an install hint.

Fix

  • ProviderListing.NotListedReason(provider, installable = true): when installable is false, a plugin that isn't loaded gets no install hint.
  • ProviderArgs.NotApplicableNote (pulled out of ProviderUnavailableHint) reports wrong architecture, or MIGraphX without ROCm. InferencePipeline.UnavailableReason passes installable: false when it applies.

Tests

  • New ProviderArgsTests.UnavailableReason_ProviderTheHostCannotRun_HasNoInstallHint. It fails without the fix, gives the same result whatever ran before it, and runs on any host without ROCm.
  • New ProviderListingTests.NotListedReason_UnloadedPluginTheHostCannotRun_HasNoInstallHint.
  • Full suite passes (387). Ran run --provider migraphx --require-provider with an empty HOME: it exits 3 and prints only the not-applicable reason.

šŸ¤– Generated with Claude Code