mirror of
https://github.com/gesellix/Bose-SoundTouch.git
synced 2026-09-07 15:07:17 +00:00
A speaker migrated at the DNS level keeps reporting its own MargeURL as the literal Bose cloud hostname (e.g. https://streaming.bose.com) -- DNS migration only changes how that hostname resolves on the network, never the device's own advertised URL. embeddedStereoPairGenerationPersistence's isLocal() only matched against this service's own advertised server URL, so it misclassified such a speaker as "external" and sent the stereo-pair Create preflight's generation-conflict check out over the real internet instead of checking the local datastore. Bose's cloud is still live enough to answer (just not to authenticate us), so the check failed with HTTP 401 and hard-blocked Create for an otherwise perfectly normal DNS-migrated setup. Added a DNS-hijack-aware check: if this service's own DNS hijack is active and the reported MargeURL's host is one of the known redirected Bose hostnames (discovery.InterceptedBoseHosts), treat it as local too. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>