What "protocol" services like Sonos or Chromecast use to communicate between devices over the same WiFi? In particualr, how do those devices make themselves discoverable and how do they "fish" for incoming communication?
At layer-1 and layer-2, Wi-Fi is used instead of a wired protocol like ethernet.
Above that, the layer-3 protocol (IPv4, IPv6, etc.) will be the same, as will the layer-4 protocol (TCP, UDP, etc.).
Protocols above layer-4 are explicitly off-topic here but they will be the same as used on a wired network.
The whole idea behind the network stack is that each layer in the stack is independent of the other layers in the stack. For instance, IPv4 happily runs on many different layer-2 protocols (ethernet, Wi-Fi, PPP, frame relay, HDLC, etc.), and it doesn't know or care which layer-2 protocol carries it. Layer-2 protocols, such as ethernet and Wi-Fi, can carry any number of layer-3 protocols (IPv4, IPX, IPv6 AppleTalk, etc.), and they don't care which layer-3 protocol they are carrying.
As far as an application is concerned, nothing has changed, because the application is oblivious to the lower-level protocols being used.
Access points use beacons to give away their position to other hosts, such as laptops and smartphones. Then these hosts connect to the access point, the same way they would connect to a wired network, although they use another transmission medium, in this case the air.
Then services like the ones you mentioned just interact with the access point, which transfers the frames to the other stations (and the other way around). As far as I know, Chromecast can also interact point-to-point without a LAN, but I'm not sure if it creats an adhoc network or not.