I tracked it down to prodigy/app.py. There is a function called "get_project" that calls assert_known_session with one argument, None. This is on line 362. Then the function assert_known_session then checks that whatever was passed in is not None, but if it IS None then it returns an exception (which is what I got).
If I just completely comment out the assert_known_session(None) line, everything works.
So my question is, is there something in my own app I need to tweak so this will work, or is it just a small bug on your side (always passing NONE to that function)? Hope that all made sense! Thanks!
Thanks for the super detailed report and the digging! This is very strange And you don't have the PRODIGY_ALLOWED_SESSIONS environment variable set, by any chance? If you run the following in your environment, what does it return?
from prodigy.util import get_valid_sessions
print(get_valid_sessions())
The logic here is supposed to check that the session ID used in named multi-user sessions is valid, if the user defines a list of allowed sessions. So if you set PRODIGY_ALLOWED_SESSIONS=alexis,ines, only those names are allowed as ?session= and everything else raises an error, which prevents inconsistent sessions due to typos etc. But if no allowed sessions are set, that logic shouldn't raise.