9a84bee265
- probe_only is consumed inside __init__ only; no instance attribute. - _sync_manager is assigned only on the probe branch, after the connection is up, so a normal SSHEnvironment whose constructor fails still behaves exactly as before (its __del__ cleanup does not reach the shared socket teardown). - _remote_home has no reader on the probe path; not assigned. - prompt_builder passes probe_only=True unconditionally: which backends honor it is the builder table's decision, not a caller-side env_type check. - Tests trimmed to the probe_only contract: the cleanup-raises case was green on main (pre-existing try/except), the socket-name length and double-cleanup assertions covered pre-existing behaviour.