[webrtc-pc] [[receptive]] can get stuck in wrong state (#3081)

fippo has just created a new issue for https://github.com/w3c/webrtc-pc:

== [[receptive]] can get stuck in wrong state ==

tl;dr:
Rollback should bring you back to the pre-offer state, if it's possible at all, both for local and remote offers.
It does not.

While looking at mute @henbos, @alvestrand and me came up with some minor gaps in how receptive is defined. [Full story here](https://webrtc-review.googlesource.com/c/src/+/411360)

1. "process remote tracks" can only make [[Receptive]] false, not true, meaning you can easily get stuck in a non-receptive state:
```
Full-O/A: sendrecv (receptive=true)
SRD-offer: inactive (receptive=false)
Rollback: sendrecv again but stuck in receptive=false?
```
2. To only "rollback" the receptiveness in "have-remote-offer" means we don't roll it back in "have-local-offer", so again we get stuck with the wrong receptiveness sate.

Please view or discuss this issue at https://github.com/w3c/webrtc-pc/issues/3081 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 22 October 2025 07:56:54 UTC