client receive update, request HTML for either submission row or submission testcase list
user possibly gets captcha'd
site renders the same fragment once for each user who has the page open, and sends it back
This is inefficient, and takes an extra round trip. The rendered content is effectively static for each update, and we could send it as part of the update itself. The crucial sections are:
Currently, live updates work like this:
This is inefficient, and takes an extra round trip. The rendered content is effectively static for each update, and we could send it as part of the update itself. The crucial sections are:
https://github.com/DMOJ/online-judge/blob/master/judge/bridge/judgecallback.py#L143-L149
https://github.com/DMOJ/online-judge/blob/master/judge/bridge/judgecallback.py#L388-L391
...but we could likely render for all updates anyway, since they're not dependent on the permissions of the viewing user.