Thanks for answering. Good questions. IANAL either, but I figure I can share my perspective.
> Gitlab has the final say over every pull request, on what issues they'll consider pull requests for. Gitlab has a code of conduct and can ban contributors that violate that code. Gitlab prioritizes and labels issues that they want volunteers to look at.
None of that is control the law is talking about. SE exerts control over how much the work the moderators do. e.g. If you don't do enough moderating, you are no longer a moderator. Also, anyone can be a contributor. SE doesn't allow anyone to be a moderator in this case. If I'm not mistaken, you "apply" or are "invited." There is a selection process, a "hiring" committee if you will.
> Gitlab is a for-profit company. Open Source contributions get rolled up into their for-profit enterprise offerings.
GitLab also has programmers doing this work as well. They are investing in this area already. While GitLab benefits from open source contributions, they aren't reliant on it. The suggestion is that if SE suddenly had no more free moderators, they'd have to actually start investing in paid moderators.
> Fixing issues requires a great deal of specialized skill with the codebase, some of which is codebase specific and not generalizable. Individuals can choose to participate (similarly to Stack Exchange), but individuals are not free to pursue any project they want. Participation means following Gitlab's design process and looking at issue labels.
So, actually this is wrong: "but individuals are not free to pursue any project they want". That's the nature of being open source. Contributors can, if they want, start working on something else. That doesn't mean GitLab has to accept their commits, but as a contributor, I can work on something else and still contribute.
> Volunteer developers to Open Source projects often form long-term relationships with the projects they contribute to.
If their code is accepted, it will generally stick around for the life of a project. One could argue that it's very much a long-term relationship with just a single commit. That being said, I think the idea is the committing part that matters. And there you have people that commit one change, and those who commit many.
With SE, moderators all follow the same requirements. With GitLab, a contributor can be defined as a one time committer or someone who has committed hundreds of patches.
> It's true that volunteers don't do all of Gitlab's development, but is that a defense?
I think we can both agree the majority of GitLabs business needs are handled by GitLab's developers it pays. I think it's fair to say they contribute substantially financially to the software development of its product.
The way I look at it is simple. If SE were to hire moderators (which all the social networks I know of do already), would their job and roll be effectively the same as current moderators? I'm pretty sure they would look very similar.
Whereas with GitLab, you can directly compare the two and see that the open source contributors and paid developers aren't effectively the same. Requirements of code quality and passing tests aren't the same thing as minimum time spent doing the programming each month.
I don't see any issues with open source projects suffering from this. Contributors aren't treated like employees. Moderators at SE seem to be, with requirements to show up and meet performance requirements to maintain "employment" as moderators.