The setup plan was still advertising configure_client actions for clients
whose MCP registration already matched the desired command and Hopper
environment. As a result, an otherwise idempotent rerun requested
confirmation for changes that would not be applied.
- add SetupHost#clientNeedsConfigure to read a client config without
mutating it
- filter detected clients in discoverSetupActions before building the plan
- align the package verifier's "aligned" run with the platform-specific
status so Linux (where the fake Hopper path is unsupported) is expected
to report needs_human while keeping an empty plan