Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clarify the Charter so that contractors are explicity counted as affialiated #1650

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

mcollina
Copy link
Member

Some people mighrt be contracted to work on OSS on behalf of companies. This does not make them less affiliated, and it might be used to circumvent the affiliation rules.

@mcollina
Copy link
Member Author

cc @nodejs/tsc

@mcollina
Copy link
Member Author

Copy link
Contributor

@ShogunPanda ShogunPanda left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

TSC-Charter.md Outdated Show resolved Hide resolved
Co-authored-by: Antoine du Hamel <[email protected]>
Copy link
Member

@tniessen tniessen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On a side note, I would naively assume that "contractual obligations" is too broad, but I am neither a lawyer nor is English my native language.

Copy link
Member

@mhdawson mhdawson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Member

@ljharb ljharb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

with my CPC hat on

@legendecas
Copy link
Member

Not a lawyer, I assume sponsorships that bound with goals are not considered as some sort of "by any possible means, ... and contractual obligations". Is this a correct assumption?

@tniessen
Copy link
Member

@legendecas Naively, I'd assume that paying for a streaming service is a contractual obligation, but that what you are describing is not :)

Copy link

@tobie tobie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Comment on lines +40 to +46
the same company (by any possible means, both as employment and contractual
obligations).
If a change in TSC voting membership or a change of employment by a TSC voting member
creates a situation where more than one-fourth of the TSC voting membership are
affiliated with the same company, then the situation must be immediately remedied
by the removal of voting member status from one or more TSC voting members affiliated
with the over-represented company.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
the same company (by any possible means, both as employment and contractual
obligations).
If a change in TSC voting membership or a change of employment by a TSC voting member
creates a situation where more than one-fourth of the TSC voting membership are
affiliated with the same company, then the situation must be immediately remedied
by the removal of voting member status from one or more TSC voting members affiliated
with the over-represented company.
the same company (by any possible means, both as employment and contractual
obligations).
If a change in TSC voting membership or a change of employment by a TSC voting member
creates a situation where more than one-fourth of the TSC voting membership are
affiliated with the same company, then the situation must be immediately remedied
by the removal of voting member status from one or more TSC voting members affiliated
with the over-represented company.
Affiliation definition:
- Affiliation includes direct employment, substantial contractual obligations (e.g., over 50% of income from one company), or formal representation of a company's interests (board member, etc..). Contributions funded through general-purpose sponsorship platforms (e.g., Tidelift, GitHub Sponsors) are not automatically considered an affiliation unless they are explicitly tied to a single company's funding or interests.
- Contractors and freelancers are considered affiliated with a company only if the majority of their time or income is tied to a single company for work directly related to the project's scope.
- Individuals funded by public grants or organizations serving as fiscal hosts (e.g., Alpha Omega, STF) are not considered affiliated unless their work explicitly and exclusively represents the interests of a single company.
- TSC members must update their affiliations quarterly or upon any significant change in their employment or contractual status. A shared disclosure registry should be maintained to track affiliations transparently while protecting personal privacy.

I appreciate this policy change and the intent behind it, as it aims to foster diversity and balanced representation within the TSC 👏.

However, I’d like to highlight a few scenarios where the updated wording might create complexities or unintended challenges:

1. Maintainers Funded by Sponsorship Platforms: Developers supported through platforms like Tidelift, GitHub Sponsors, or Open Collective may now fall under the “affiliation” category if a significant portion of their income originates from a single company using these platforms. This could inadvertently include individuals whose primary contributions are to other open-source projects. Also in some cases you have to sign a service contract sharing an employer/client with the platform itself (Tidelift case)

2. Contractors and Fiscal Hosts: The inclusion of contractors under the expanded definition of affiliation could lead to complications. For instance, if a company acts as a fiscal host for public grants (e.g., Alpha Omega, STF) and engages several contractors for open-source contributions, all those contractors might be considered affiliated, potentially affecting the TSC's compliance with the rule. Note that Public grants/foundations are not in scope as they are non-profit and we only refer to "companies" in this policy.

3. Broader Scope and Implications: The broadened definition of affiliation increases the administrative burden on TSC members to maintain updated and accurate records of their affiliations. This is particularly relevant for freelancers or contractors who often work with multiple clients simultaneously, some of which may fall under the scope of this policy.

Given these broader implications, it might be beneficial to establish a mechanism for regularly updating and tracking affiliations. This could include clear guidelines on what constitutes "affiliation" in various scenarios and a streamlined process to ensure compliance while minimizing misunderstandings

By adding a sharper definition we can avoid some of this scenarios, but maybe I am overthinking here 🤔

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sponsorship doesn’t create contractual obligations by definition, and I’d say any time there’s money changing hands that’s tied to specific deliverables, it’s an affiliation, and github sponsors doesn’t require a specific callout. (Tidelift is a gray area where the money is paid unrelated to deliverables, but there’s a contractual expectation that certain standards should be maintained, so I’d prefer to see that not count as an affiliation)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.