Because we are in a hybrid RSS/Poller situation, when creating or manipulating drafts (API mode) we can reflect directly on the Apple episode validations. Once an episode hits the public RSS and the Apple poller fetches the episode metadata, then the Apple episode validations reflect on the metadata that the poller has fetched (Poller mode). So if for some reason the RSS resource is providing episode metadata that's invalid with respect to Apple's requirements, then when we go to update some attribute in the API, we'll receive 409 validation errors attributed to the unrelated invalid fields. This "poller mode" should only happen after the episode is public and being polled. The fix for invalid data is to update the the episode metadata, publish an updated RSS resource and wait for the poller to consume the valid data.
On rare occasions, 409 metadata validation errors are being returned from the API for episodes that have never been hit by the public RSS poller. E.g. we can be creating and manipulating drafts (with no public counterpart) and we will be receiving 409 validation errors for fields not included in the API patch payload, indicating that we're in 'poller mode'.
Because we are in a hybrid RSS/Poller situation, when creating or manipulating drafts (API mode) we can reflect directly on the Apple episode validations. Once an episode hits the public RSS and the Apple poller fetches the episode metadata, then the Apple episode validations reflect on the metadata that the poller has fetched (Poller mode). So if for some reason the RSS resource is providing episode metadata that's invalid with respect to Apple's requirements, then when we go to update some attribute in the API, we'll receive 409 validation errors attributed to the unrelated invalid fields. This "poller mode" should only happen after the episode is public and being polled. The fix for invalid data is to update the the episode metadata, publish an updated RSS resource and wait for the poller to consume the valid data.
On rare occasions, 409 metadata validation errors are being returned from the API for episodes that have never been hit by the public RSS poller. E.g. we can be creating and manipulating drafts (with no public counterpart) and we will be receiving 409 validation errors for fields not included in the API patch payload, indicating that we're in 'poller mode'.