Skip to content
Gelhaus Solutions
Apps Services Security Contact
EN DE
Apps / contribution-checker / Contribution Checker terms

Contribution Checker terms

AGPL-3.0, which entitles you to the source of the instance you are using, and what running a CLA flow makes you responsible for.

Last updated 6 September 2026 Auf Deutsch lesen →

On this page

  1. What this covers
  2. Licence, and your right to the source
  3. If we host it for your project
  4. The CLA is between you and your contributors
  5. Automated checks are advisory
  6. Artificial intelligence
  7. Acceptable use
  8. Availability
  9. No warranty, no service level, and limited liability
  10. How long a signature is kept

This applies alongside the general terms of service and privacy policy. Where they differ on a point about contribution-checker specifically, this page wins.

What this covers

Contribution Checker manages the paperwork around outside contributions to a software project: an application to contribute, a contributor licence agreement signed individually or by a company, automated checks on a pull request, and the ledger recording all of it.

These sit alongside the general terms of service.

It is not a GHub product and does not run on GPlatform. We host it, and it is licensed on its own terms, below.

Licence, and your right to the source

Contribution Checker is licensed under the GNU Affero General Public License, version 3 or later.

That has a consequence worth stating rather than leaving to be found: under section 13 of the AGPL, anyone who interacts with our hosted instance over a network is entitled to receive its Corresponding Source. Ask, and you get it. You may run it yourself, modify it, and offer it to others, provided you do the same for anyone who uses your instance and keep it under the same licence.

There is no business licence to buy here and no feature behind a key. The GHub arrangement — Elastic License, commercial use by agreement — does not apply to this product.

If we host it for your project

You are the controller of your contributors' data and we are your processor: the data processing agreement and its annex apply.

What you are taking on is more than an account list. This service takes signatures, and it keeps them:

  • A signature carries a printed legal name, the exact affirmation the signer was shown, the IP address they signed from, and — where they drew or uploaded rather than typed — the image itself.
  • A corporate agreement additionally carries the company's legal name, registered address, authorised representative and point of contact, plus the roster of people it covers.
  • The ledger recording all of it is hash-chained, so it can be shown not to have been rewritten.

That is a body of evidence about identifiable people, held for as long as the project needs to show who agreed to what. Decide deliberately that you want it before you turn it on.

The CLA is between you and your contributors

We provide the mechanism. The agreement itself is yours: its wording, its versions, whether a corporate agreement needs your approval, and who is on a roster.

We do not check that your CLA is enforceable, do not advise on it, and take no position on whether a signature you collected binds anybody. Publishing a new version and requiring re-signature is a decision with legal effect for every contributor, and it is yours.

Automated checks are advisory

Pull-request quality checks, application triage and the rest produce advice. They do not approve, deny or merge anything. A human decision is recorded against every application, and the appeal path exists because automated triage is sometimes wrong.

Artificial intelligence

AI tasks are off by default, per project, every one of them, and a configuration the software cannot parse degrades to off rather than on.

Where you turn one on, it runs through OpenRouter, which routes to whichever model provider serves the request. The content of what is being judged — a contributor's application answers, a pull request body — is sent there. The pre-filter that decides whether to call a model at all is a cost control, not a redaction step; it does not strip anything before sending.

The prompt instructs the model not to infer nationality, gender, age or employment from a name or writing style, and to flag text that appears to be addressed to it rather than to a reviewer. Those are real safeguards and they are not a guarantee.

If that is not acceptable for your contributors, leave the AI tasks off. Everything else works without them.

On the instance we host, AI is on for the projects Gelhaus Solutions runs itself. The provider is OpenRouter, routing to Groq (gpt-oss-120b). It is not switched on for anybody else's project — that stays your decision, per project, and it starts off.

Acceptable use

Beyond the general terms: do not use a CLA flow to collect identity documents or personal data you have no need for, and do not use the appeal or review records to build a case about a contributor unrelated to their contribution.

Availability

No service level is promised unless a separate signed agreement states one.

No warranty, no service level, and limited liability

This product is provided as it is and as it happens to be available, without warranty of any kind, and is used at your own risk. No uptime, response time or restoration time is owed unless a separate signed agreement states one. Where it is provided free of charge, liability is limited to intent and gross negligence (Section 521 BGB).

To the fullest extent the law permits, we are not liable for damage arising from its use, its unavailability, or any loss of data — and keeping your own backups is your responsibility. The limits that mandatory law requires, the exclusions that apply within them, and the additional cap that applies to business customers are set out in full in the general terms of service, which govern this product and are not restated here.

How long a signature is kept

A signed agreement is kept for as long as the project keeps the contribution it covers, and ten years after the last contribution under it. That is the retention default, and it applies unless the project operating the instance sets a different one.

The reason it is long is the reason the ledger exists: a contributor agreement is the evidence that a project had the right to distribute what it distributed, and that question is asked years later or not at all. Deleting the signature while the code remains would leave the project unable to answer it.

What that covers is the agreement and its evidence — the printed name, the affirmation shown, the timestamp, the signature image where one was drawn or uploaded, and the address the signature came from. Where you ask for erasure, the account and its contact details go; the signature record is kept on the basis of Art. 6(1)(f) for the establishment and defence of legal claims, and Art. 17(3)(e) is why erasure does not reach it. You will be told that rather than left to assume it worked.

Gelhaus Solutions

Self-hosted applications, and the platform that hosts them for the people who would rather not.

Site

  • Apps
  • Security
  • Writing
  • Contact
  • Sitemap

GHub

  • GAnalytics
  • contribution-checker
  • GAdvisory
  • GeGroups
  • GControl

Legal

  • Impressum
  • Privacy
  • Terms
  • Data processing
  • Withdrawal
  • Report content

Elsewhere

  • egelhaus@ennogelhaus.de
  • @egelhaus
  • @egelhaus
© 2026 Enno Gelhaus Built and shipped in Germany