Problem
The PR template's final checkbox asserts that commits include Signed-off-by: trailers. None of the 102 commits on the branch merged as #96 carried one, and no workflow enforces DCO — so nothing failed, and the gap surfaced only as a checkbox that had to be left unticked with an explanation.
It cannot be fixed retroactively. Adding trailers to already-pushed commits requires the rebase AGENTS.md forbids ("Never amend or rebase a pushed commit"). Once commits are pushed, the two rules leave no legal move, which is why this was recorded as an accepted gap in #96's disposition register rather than ticked.
Scope
Fix forward only — no existing history is rewritten.
First decide whether DCO is actually wanted for this project:
- If yes: add a
commit-msg hook that appends the trailer when absent, so new commits satisfy it by construction, and enforce it in CI so the checkbox stops being an honour-system claim. Note that CI enforcement must apply from a chosen commit forward, or it will fail on all existing history.
- If no: remove the checkbox. A box that cannot be ticked truthfully trains everyone to tick boxes untruthfully, which is the more expensive failure — the template's value is that its other ~40 boxes are believed.
Acceptance criteria
- New commits carry a trailer without the author having to remember.
- The template checkbox is either mechanically satisfiable or gone.
- No pushed commit is amended or rebased.
CONTRIBUTING.md states which of the two decisions was taken.
Problem
The PR template's final checkbox asserts that commits include
Signed-off-by:trailers. None of the 102 commits on the branch merged as #96 carried one, and no workflow enforces DCO — so nothing failed, and the gap surfaced only as a checkbox that had to be left unticked with an explanation.It cannot be fixed retroactively. Adding trailers to already-pushed commits requires the rebase
AGENTS.mdforbids ("Never amend or rebase a pushed commit"). Once commits are pushed, the two rules leave no legal move, which is why this was recorded as an accepted gap in #96's disposition register rather than ticked.Scope
Fix forward only — no existing history is rewritten.
First decide whether DCO is actually wanted for this project:
commit-msghook that appends the trailer when absent, so new commits satisfy it by construction, and enforce it in CI so the checkbox stops being an honour-system claim. Note that CI enforcement must apply from a chosen commit forward, or it will fail on all existing history.Acceptance criteria
CONTRIBUTING.mdstates which of the two decisions was taken.