Skip to content

fix(doku-lint): Gate 3 prueft PR-Titel statt letzten Rohcommit - #19

Draft
Klangschalen wants to merge 1 commit into
mainfrom
claude/busy-allen-49f7w8
Draft

fix(doku-lint): Gate 3 prueft PR-Titel statt letzten Rohcommit#19
Klangschalen wants to merge 1 commit into
mainfrom
claude/busy-allen-49f7w8

Conversation

@Klangschalen

Copy link
Copy Markdown
Owner

Ziel

Teil von plans/commit-nachrichten-sauber-nightly.md (claude-config, Tor 2). Der Nightly Repo-Check meldete am 01.09.2026 19 von 32 Commits faelschlich als unsauber, weil sie einen Klammer-Zusatz wie feat(hwg): trugen. Diese Gate 3 in doku-lint.yml erlaubte den Zusatz zwar schon, prueft aber git log -1 (letzten Rohcommit des Feature-Branchs) statt des PR-Titels - bei Squash-Merge mit squash_merge_commit_title=PR_TITLE (Tor 1) wird jedoch der PR-Titel zur endgueltigen Commit-Nachricht auf dem Standardzweig.

Aenderungen

  • Gate 3 prueft bei pull_request-Events github.event.pull_request.title (ueber env:, nicht direkt interpoliert - Skript-Injektions-Schutz wie in claude-config PR #347/#351), bei anderen Events bleibt git log -1.
  • Ausdruck erweitert um ci|build|perf|style|revert, Pflicht-Leerzeichen+Text nach dem Doppelpunkt, Scope-Zeichensatz um ._/- ergaenzt - deckungsgleich mit der SSoT claude-config rules/commit-nachrichten-norm.md.
  • README.md und CHANGELOG.md aktualisiert.

Wirkt sofort in allen 28 Repos, die diesen Workflow per @main einbinden - kein Re-Pin noetig.

Nachweise

  • python3 -c "import yaml; yaml.safe_load(...)" - YAML gueltig.
  • grep -qP gegen alle Positiv-/Negativ-Beispiele der Norm lokal durchgespielt: 9 von 9 korrekt (feat:, fix(hwg):, ci:, refactor(hwg)!: bestehen; Merge pull request, decide:, kein Praefix, Grossschreibung, fehlendes Leerzeichen fallen durch).

Risiken und Rueckweg

warn_only bleibt Default true in allen 28 Callern - nichts blockt neu. Rueckweg: PR schliessen bzw. revert des einen Commits.

Freigabe

  • Nicht direkt auf main gearbeitet
  • Keine Geheimnisse eingecheckt
  • Fremde Aenderungen nicht uebernommen oder verworfen
  • Dokumentation aktualisiert (README, CHANGELOG)
  • Erforderliche menschliche Freigabe eingeholt

🤖 Generated with Claude Code

https://claude.ai/code/session_01AhupZQQHR6qSgvEE1RDKtU


Generated by Claude Code

Der Nightly Repo-Check meldete am 01.09.2026 19 von 32 Commits faelschlich
als unsauber, weil sie einen Klammer-Zusatz trugen (feat(hwg):), den diese
Gate schon vorher erlaubte - aber Gate 3 pruefte git log -1 (letzter
Rohcommit des Feature-Branchs), nicht den PR-Titel. Bei Squash-Merge mit
squash_merge_commit_title=PR_TITLE (Tor 1, siehe claude-config
plans/commit-nachrichten-sauber-nightly.md) wird der PR-Titel zur
endgueltigen Commit-Nachricht - der Rohcommit landet nie auf dem
Standardzweig.

Aenderung: bei pull_request-Events wird github.event.pull_request.title
geprueft (ueber env, nicht direkt in ${{ }} interpoliert - Fremdeingabe
gehoert nicht in einen run-Block, siehe claude-config PR #347/#351), bei
push-Events bleibt git log -1 die einzige verfuegbare Quelle. Ausdruck
erweitert um ci/build/perf/style/revert und ein Pflicht-Leerzeichen +
Text nach dem Doppelpunkt, Scope-Zeichensatz um . _ / ergaenzt -
deckungsgleich mit der SSoT rules/commit-nachrichten-norm.md in
claude-config.

Wirkt sofort in allen 28 Repos, die diesen Workflow per @main einbinden -
kein Re-Pin noetig.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AhupZQQHR6qSgvEE1RDKtU
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants