Happy New year, Codeforces.
I had this idea for about a month. I heard problem setters complaining about some people used their coach mode authority to enlarge some problems' TL in the Gym just for letting their submissions passed. What's worse, these guys even forgot to change it back, which causes some troubles for participants afterwards.
Moreover, I also have similar experience. Back in 2020, I did SWERC2019 with my friends. Then after a few days, I returned and found that my competition record disappeared from the scoreboard. Someone must press the 'to practice' or 'devirtualize' button. If you press those buttons, the website will ask you if you confirm your action (which is not reversible). Therefore, I pretty sure there is someone who just don't want to see my partipation record on the scoreboard for some reasons that I could never realize.
Just in case some of you don't know (maybe hasn't discovered yet) what the coach mode can do, here are some authority that you can do with a coach mode:
- Read any submission and data (this is well-known);
- Edit TL, ML for any problem;
- Add, delete problems of any contest
- Add, delete teams' participation record, ghosts from the scoreboard
- Rejudge, skip, reject any submission
The Codeforces community is getting larger, and therefore it is getting relatively easier to achieve Master rating (>=2100), which is what I know about getting a coach mode authority (maybe slightly different but generally it is i guess). I think it is about time to restrict the coach mode authority tighter before anything worse happens.
The simplest way is, of course, to limit it by increasing the rating bound(maybe >=2400). But it might be too mean for the community. But at least, I feel it will be more appropiate to let the contest/problem setter has more rights to modify the contest by himself. And I feel it is OK to let the normal coach mode only have the authority to read submissions and data instead of everything. I haven't got time to think about more possible options and I hope we can have some discussions in the comment.
I don't know whether Mike will see this blog so I think I should @MikeMirzayanov here. And I still want to express my gratefulness for building and maintaining such a useful and convenient platform (including Polygon) for all CP participants and problem setters.
UPD1: Some comments say that if you are purple and have done a few contests, you also will get a coach mode authority.
UPD2: Just check another example, in 2021-2022 ICPC, NERC, Southern and Volga Russian Regional Contest, you will see that Team Longest SubRoutine also got removed from the scoreboard for no reason (Confirmed by the team that it is not by their hands). This is truly a disregard to the team's effort and may ruin their training log.
Actually I am not very happy about not seeing any officials including Mike himself to respond this. I feel this is a serious issue at least as important as finding and solving potential hardware issues.
I didnt even know you could do that with coach mode. 100% agree that this is too much. You should probably have at least to send a request to whatever are the organizers of the gym contests to edit those things.
Also another very important thing would be not to allow coach mode to access others code at least during the time the contest in Gym is going live.
Agreed, and I'm heavily in favor of nerfing coach mode to only have point 1: "Read any submission and data." For any other point, if you want to make changes to a contest you should have to contact the contest creator first. I find it really bizarre that there's nothing stopping me from just going to the gym tab right now and wiping all the data from every contest.
Meanwhile, I cannot change one of my past contests' name and I don't know why I can't....I just want all my Gp of Nanjing share the same pattern of naming, which is sad.
Do you have any research on which this claim is based? Also afaik purples can access coach mode too(maybe with some additional restriction like 30+ rounds).
Because that's how the rating system works that you will gain ratings from others. And now we have much more users than before. Moreover, it was harder to reach Yellow few years ago when participants > 1800 can only do Div.1 contests. After people < 2100 are allowed to do rated Educational rounds and Div.2 rounds, it just become much more easier.
I might or might not know about the purples with 30+ rounds rule. I feel the main problem is for all these years, rating/contests rules has changed many time, but the coach mode rule never changes.
please dont increase required rating, we people clone the contest and practice on it, until now, i didnt even know we could change the time limit of task or what, it will affect many users like me.
just change the other access rights, dont change the view official solution rights.
You don't need a coach mode to clone a contest. They are not related.
I think what original commenter means is that it is sometimes very difficult to figure out editorial/ solutions for a random gym contest. At such a moment the ability to read other participant's code is very valuable. I think the given rules are fair enough (purple with 30 contests/ yellow) to be a beneficiary of such an ability. (the point 1 you have mentioned). I don't know what just raising the barrier does to this fundamental possibility of misuse. This is just a band-aid solution. I think the rights for the main creator of the contest and other random coaches should not be equal. That should solve the issue.
Yes right that's what I want to convey.
I believe Coach Mode is actually enabled when you're 1900, if you've done 30+ contests. So it's even lower than you thought.
Do you really think people won't do this just because they are above 2400...
I do believe that people above 2400 are less likely to do these things. But it is all about limiting the total number of people who can have this authority. At least, people with rating above 2400 are less than people with rating above 2100 (or 1900). Moreover, there are some more reasons or excuses that might be too personal to share with.
But you are right, limiting the authority itself is much more helpful than restricting the number of users....
I think 1: "Read any submission and data." should be opened for everyone(what's the reason to restrict this?)
On the other points, coaches only have the right to create or edit their contest, and for other coaches' contests, asking authorization by the creator is good.
"Anyone should be able to read submissions and data."
Now you will see random gray guys topping every single gym leaderboard.
I catch that coaches can read the submissions of running contests(why is it possible?)
I want to say in the previous comment that, on finished gym contests, I think it's just unfair Masters or above have right to read submissions and CM or below not...
In my opinion, random gray guys topping every contest is much better than not being able to read the code. Gym is about training, and what if you want to get know a solution? Yesterday I didn't know I was able to read the code I was interested in using coach mode. Today this ability seems to me as kind of hacking, cheating.
Of course, the feature must be editable by authors and (at least by default) nobody can read the code during the contest running time. To add up, it seems to me quite logical to have the same system in CF rounds and GYM trainings. However, we have editorials with codes for CF rounds, so we can't prevent gray coders from topping every CF round participating virtually.
Interesting. A friend ed1d1a8d and I only recently discovered this functionality. I had initially thought it was unintended, so I messaged Mike about it privately this morning.
Raising the rating/contest cutoff to enable coach mode still leaves much of the Gym exposed to any adversaries which gain access (via hacking/etc.) to any of the coach mode enabled user accounts. Imagine if I stole the password to a Google employee’s work account, and I could take down all of Google with that.
I’m actually (still) not too clear on the intended use cases of coach mode. If we could settle on that, it may be easier to define what proper permissions look like for it. As it stands, coach mode is similar to unaudited write access in Github, which would be a disaster. Cloning contests is great (fork); perhaps one way to design a better system is to have a synonym for pull requests in Codeforces?
Sometimes I see that TL is different in pdf and in the contest. I always thought this is intended, but seems like not. Can I somehow check what was the initial TL?
Press the edit button of the problem, clean up the TL in the edit line, then you will see a default TL written in light grey characters...In this way you can figure out whether the current TL is consistent with the Polygon package.
sometimes, in the contest environment, the problem has another TL because of the machine. It may be different from codeforces
Another example about the thing is [problem:103492Z].
So can somebody delete the problem?
I just deleted it. Also prove that the coach mode can do such thing…
Sorry that was probably my testing of coach mode…
A stupid question, how to read full data with a coach mode? In fact I dont know how to do this...
I also want to know that, can anyone explains it a bit?
You can access files via ftp, but only if contest was uploaded as files. It is true for most old contests, when Polygon was not popular or didn't exist.
Now I think everything is created in Polygon, so sending a PM to the author is the only way.
Auto comment: topic has been updated by chenjb (previous revision, new revision, compare).
I just found someone has edited TL in one of my gyms and made his suboptimal solution Accepted. He has TL now again :)
MikeMirzayanov, you should restrict everyone except authors to do modifications listed in 2-5.
This is still happening. People with coach mode get Accepted with wrong solutions in gyms just increasing time limit. Why do they have such rights?
MikeMirzayanov
I mean, I understand why, because of the architecture. The problem object remains the same even if the contest is cloned, and as it must be possible to modify TL in a clone, it just became a problem's property that coaches have access to.
I suggest to introduce "override settings" for a contest where you can modify any parameters (including problem TL/MLs) of exactly this contest, not touching other clones or the original.