This happens in step 2 when Bob accesses the series.
The problem: The OpenCast API is asynchronous so the ACL change will not be available immediately so when reading the series' ACL back, this might still return the series ACL without Bob being added. To make it worse, the result is cached by the Moodle plugin so reloading the page won’t help.
when this condition arises (i.e. IF Bob=teacher AND LMS knows series X exists AND Bob can't see series X)
-> display a more helpful error message in that case
-> destroy the locally cached version of the relevant API call (/series/X/acl) so that the problem disappears more quickly
To reproduce:
OpenCast logs:
This happens in step 2 when Bob accesses the series.
The problem: The OpenCast API is asynchronous so the ACL change will not be available immediately so when reading the series' ACL back, this might still return the series ACL without Bob being added. To make it worse, the result is cached by the Moodle plugin so reloading the page won’t help.