Stackt auf #378 (Base feat/common-modul). Nach dessen Merge auf main umstellen.
Problem
Die Gate-Workflows der Module diffen nur -- <modul>/. Änderungen an common/svcauth (Konstantzeit-Token-Vergleich) oder common/tenantregistryclient (Mandantenprüfung) würden nie gegen die Pflichttest-Regel geprüft, sobald diese Pakete aus den Modulen nach common/ wandern.
Änderung
common/pflichttestgate: CheckDiff(changedFiles, patterns), gleiche Logik wie die bisherigen Modul-Gates, Pfadmuster kommen vom Aufrufer (parametrisiert, wie besprochen)
common/cmd/pflichttestgate + .gitea/workflows/common-pflichttest-gate.yml: prüft PRs an common/ auf svcauth, tenantregistryclient, auditclient, policyclient, apierror, httpharden
common/README.md: PRs an common/ nennen betroffene Module; Breaking Changes nur mit neuer Minor-Version
Die bestehenden Modul-Gates bleiben unverändert (eigene Kopien); ihre Ablösung durch dünne Aufrufer von common/pflichttestgate gehört in die modulweisen Umstellungs-PRs.
Verifikation (Host 131)
gofmt sauber, go vet und go test grün (5 Unit-Tests). Gate-Binary praktisch geprüft: svcauth.go ohne Test im Diff → Exit 1 mit Meldung; mit svcauth_test.go → Exit 0.
Nicht geprüft: der Workflow selbst (nie gelaufen).
Stackt auf #378 (Base `feat/common-modul`). Nach dessen Merge auf `main` umstellen.
## Problem
Die Gate-Workflows der Module diffen nur `-- <modul>/`. Änderungen an `common/svcauth` (Konstantzeit-Token-Vergleich) oder `common/tenantregistryclient` (Mandantenprüfung) würden nie gegen die Pflichttest-Regel geprüft, sobald diese Pakete aus den Modulen nach `common/` wandern.
## Änderung
- `common/pflichttestgate`: `CheckDiff(changedFiles, patterns)`, gleiche Logik wie die bisherigen Modul-Gates, Pfadmuster kommen vom Aufrufer (parametrisiert, wie besprochen)
- `common/cmd/pflichttestgate` + `.gitea/workflows/common-pflichttest-gate.yml`: prüft PRs an `common/` auf `svcauth`, `tenantregistryclient`, `auditclient`, `policyclient`, `apierror`, `httpharden`
- `common/README.md`: PRs an `common/` nennen betroffene Module; Breaking Changes nur mit neuer Minor-Version
Die bestehenden Modul-Gates bleiben unverändert (eigene Kopien); ihre Ablösung durch dünne Aufrufer von `common/pflichttestgate` gehört in die modulweisen Umstellungs-PRs.
## Verifikation (Host 131)
`gofmt` sauber, `go vet` und `go test` grün (5 Unit-Tests). Gate-Binary praktisch geprüft: `svcauth.go` ohne Test im Diff → Exit 1 mit Meldung; mit `svcauth_test.go` → Exit 0.
Nicht geprüft: der Workflow selbst (nie gelaufen).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
patrick
changed target branch from feat/common-modul to main2026-10-27 18:15:26 +01:00
CheckDiff(changed, patterns): gleiche Logik wie die Modul-Gates, Pfadmuster
vom Aufrufer. cmd/pflichttestgate + Workflow decken svcauth,
tenantregistryclient, auditclient, policyclient, apierror, httpharden ab.
README: Auswirkungsliste und Minor-Version bei Breaking Changes.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
patrick
merged commit 8db663b7db into main2026-10-27 18:15:31 +01:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Stackt auf #378 (Base
feat/common-modul). Nach dessen Merge aufmainumstellen.Problem
Die Gate-Workflows der Module diffen nur
-- <modul>/. Änderungen ancommon/svcauth(Konstantzeit-Token-Vergleich) odercommon/tenantregistryclient(Mandantenprüfung) würden nie gegen die Pflichttest-Regel geprüft, sobald diese Pakete aus den Modulen nachcommon/wandern.Änderung
common/pflichttestgate:CheckDiff(changedFiles, patterns), gleiche Logik wie die bisherigen Modul-Gates, Pfadmuster kommen vom Aufrufer (parametrisiert, wie besprochen)common/cmd/pflichttestgate+.gitea/workflows/common-pflichttest-gate.yml: prüft PRs ancommon/aufsvcauth,tenantregistryclient,auditclient,policyclient,apierror,httphardencommon/README.md: PRs ancommon/nennen betroffene Module; Breaking Changes nur mit neuer Minor-VersionDie bestehenden Modul-Gates bleiben unverändert (eigene Kopien); ihre Ablösung durch dünne Aufrufer von
common/pflichttestgategehört in die modulweisen Umstellungs-PRs.Verifikation (Host 131)
gofmtsauber,go vetundgo testgrün (5 Unit-Tests). Gate-Binary praktisch geprüft:svcauth.goohne Test im Diff → Exit 1 mit Meldung; mitsvcauth_test.go→ Exit 0.Nicht geprüft: der Workflow selbst (nie gelaufen).
🤖 Generated with Claude Code