[Docs] Adopt a DCO sign-off, or stop claiming the foundation holds the copyright #594

Closed
opened 2026-07-22 16:18:12 +00:00 by brenno · 3 comments
Owner

Found in the pre-publication contributor-journey review.

Evidence: git log --format=%B | grep -ci "signed-off-by"0 across 2,197 commits. CONTRIBUTING.md:18-20 and docs/CONTRIBUTING_GUIDELINES.md:165 state "by contributing you agree … EUPL-1.2" and nothing more — no DCO, no CLA, no sign-off. Meanwhile AUTHORS.md:7-8 says copyright "is held by Stichting LibreKAT".

Why this matters now: a sentence in a document is the weakest contributor agreement the open-source world recognises, and it leaves no per-commit record. The moment the first outside pull request lands, the AUTHORS.md sentence becomes false, and the foundation has no evidence the contributor had the right to submit the work. Both are cheap to fix before the first contribution and awkward afterwards.

Proposal: adopt the DCO verbatim (dco.txt in the root), require git commit -s, add one checkbox to the pull-request template. Change AUTHORS.md:7-8 to "copyright in the foundation own contributions is held by Stichting LibreKAT; contributors retain copyright in theirs, licensed under EUPL-1.2." No CLA — it would be out of character for this project and few people sign them.

Found in the pre-publication contributor-journey review. **Evidence:** `git log --format=%B | grep -ci "signed-off-by"` → **0** across 2,197 commits. `CONTRIBUTING.md:18-20` and `docs/CONTRIBUTING_GUIDELINES.md:165` state "by contributing you agree … EUPL-1.2" and nothing more — no DCO, no CLA, no sign-off. Meanwhile `AUTHORS.md:7-8` says copyright "is held by **Stichting LibreKAT**". **Why this matters now:** a sentence in a document is the weakest contributor agreement the open-source world recognises, and it leaves no per-commit record. The moment the first outside pull request lands, the `AUTHORS.md` sentence becomes false, and the foundation has no evidence the contributor had the right to submit the work. Both are cheap to fix before the first contribution and awkward afterwards. **Proposal:** adopt the DCO verbatim (`dco.txt` in the root), require `git commit -s`, add one checkbox to the pull-request template. Change `AUTHORS.md:7-8` to "copyright in the foundation own contributions is held by Stichting LibreKAT; contributors retain copyright in theirs, licensed under EUPL-1.2." No CLA — it would be out of character for this project and few people sign them.
Author
Owner

Half opgelost in #656 (gemerged): de onjuiste auteursrechtclaim in AUTHORS.md is rechtgezet — de stichting houdt het recht op haar eigen bijdragen, bijdragers op de hunne, onder EUPL-1.2. Daarmee is de zin niet langer onwaar zodra de eerste externe pull request landt.

Wat openstaat is de andere helft: het aannemen van de DCO. Dat legt elke bijdrager een verplichting op (git commit -s) en is een bestuursbesluit van de stichting, niet iets wat een reparatieronde namens haar neemt. De ingrediënten liggen klaar: dco.txt in de root, git commit -s in CONTRIBUTING, één vinkje in het PR-sjabloon. Blijft open tot dat besluit er is.

Half opgelost in #656 (gemerged): de onjuiste auteursrechtclaim in `AUTHORS.md` is rechtgezet — de stichting houdt het recht op haar eigen bijdragen, bijdragers op de hunne, onder EUPL-1.2. Daarmee is de zin niet langer onwaar zodra de eerste externe pull request landt. Wat openstaat is de andere helft: het aannemen van de DCO. Dat legt elke bijdrager een verplichting op (`git commit -s`) en is een bestuursbesluit van de stichting, niet iets wat een reparatieronde namens haar neemt. De ingrediënten liggen klaar: `dco.txt` in de root, `git commit -s` in CONTRIBUTING, één vinkje in het PR-sjabloon. Blijft open tot dat besluit er is.
Author
Owner

Claim eraf. Dit issue wacht niet op werk maar op een besluit, en dan hoort er geen in-progress op te staan — dat suggereert dat iemand ermee bezig is.

Zoals je zelf al schreef: de AUTHORS.md-helft is opgelost in #656, en de DCO is een bestuursbesluit van de stichting. Ik heb dat op main nagekeken en het klopt.

Claim eraf. Dit issue wacht niet op werk maar op een besluit, en dan hoort er geen `in-progress` op te staan — dat suggereert dat iemand ermee bezig is. Zoals je zelf al schreef: de `AUTHORS.md`-helft is opgelost in #656, en de DCO is een bestuursbesluit van de stichting. Ik heb dat op `main` nagekeken en het klopt.
Author
Owner

Opgelost in PR #707, op main. Je zei "eens, doe maar" — het bestuursbesluit dat ik niet namens de stichting kon nemen, en nu wel kon uitvoeren.

  • dco.txt in de root: de standaardtekst 1.1, ongewijzigd;
  • git commit -s verplicht in CONTRIBUTING.md, met de reden en de --amend/--signoff-reparatie erbij;
  • één vinkje bovenaan het PR-sjabloon;
  • AUTHORS.md leunde al op "de stichting houdt het recht op haar eigen bijdragen, bijdragers op de hunne" (sinds #656), met een terzijde dat er nog geen instrument was dat die splitsing waar maakte. Dat instrument is er nu; het terzijde is bijgewerkt.

Geen CLA, zoals je voorstel. Handhaving is met de hand — er is geen runner voor een sign-off-poort (#592) — dus CONTRIBUTING zegt expliciet dat een ontbrekende sign-off het ene is dat een PR ophoudt ook als de code deugt.

Opgelost in PR #707, op main. Je zei "eens, doe maar" — het bestuursbesluit dat ik niet namens de stichting kon nemen, en nu wel kon uitvoeren. - `dco.txt` in de root: de standaardtekst 1.1, ongewijzigd; - `git commit -s` verplicht in `CONTRIBUTING.md`, met de reden en de `--amend`/`--signoff`-reparatie erbij; - één vinkje bovenaan het PR-sjabloon; - `AUTHORS.md` leunde al op "de stichting houdt het recht op haar eigen bijdragen, bijdragers op de hunne" (sinds #656), met een terzijde dat er nog geen *instrument* was dat die splitsing waar maakte. Dat instrument is er nu; het terzijde is bijgewerkt. Geen CLA, zoals je voorstel. Handhaving is met de hand — er is geen runner voor een sign-off-poort (#592) — dus `CONTRIBUTING` zegt expliciet dat een ontbrekende sign-off het ene is dat een PR ophoudt ook als de code deugt.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
LibreKAT/Ocideck#594
No description provided.