This page currently says:
- Work already performed by students cannot retroactively become a GCI task (GCI contest rules, section 4.2).
That rule says:
- 4.2 Claiming a Task. To work on a task, you must first claim it by clicking the “Claim this task” button, subject to the following:
- (a) you may only claim one (1) task at a time;
- (b) you may not claim a task that is currently claimed by another contestant;
- (c) you may not claim a task that you have already completed; and
- (d) you may not claim more than two (2) tasks labeled as beginner tasks.
I assume we are referring to 4.2(c). I believe that could be read literally to match the exact behaviour of the GCI system. Where a student has already claimed and completed a task, it is not available for them to claim again. It actually disappears from the task list that they can see when logged in.
We are reading it to mean that even if they have done some work on a problem, possibly because they were trying to do a different task but ran into trouble, they can't claim that work.
e.g. a student is doing GCI task `A`, and encounters a bug `B` which impedes them from doing task `A`. As they want to finish task `A`, they decided to debug `B`, create a phab task `B` and toss a good patch into Gerrit to solve it. As the bug is now sorted out, they can now finish GCI task `A` unimpeded. They want to work on GCI task `B` that resolves phab task `B`.
According to our reading of this rule, they would be prohibited from working on GCI task `B` because they have already completed it.
If that is correct, participants should not create phab tasks or gerrits except for their current GCI task, which is IMO not a good behaviour to instill in participants.
I would appreciate more justification for our reasoning here. I can definitely see the need for some rule here, more advanced than the GCI rule 4.2(c), especially preventing them from claiming work which was uploaded into Gerrit before GCI started. By the same rule though, should we also be preventing participants from doing the "set up your Vagrant" task if they did that task the previous year, or if we know they were using Vagrant just before GCI started?