Contributing
Dieses Repo ist der stabile veröffentlichte Vertrag. Halte ihn klein, halte ihn stabil. Nahezu jede Änderung unterliegt der Versionierung - lies das zuerst.
Dependency-Regeln
Die Abstractions-Assembly darf ausschliesslich referenzieren:
- die BCL, und
- die Framework-Referenz
Microsoft.AspNetCore.App.
Füge keine Referenzen auf Schuly.Application hinzu (diese Typen leben in SchulyBackend und werden nicht veröffentlicht).
Das Repo liefert die Backend-DLLs
Schuly.Domain.dllundSchuly.Infrastructure.dllals vorgebaute Binaries untersrc/Schuly.Plugin.Abstractions/libs/aus (synchronisiert vom Backend), damit Plugins typisierten DB-Zugriff erhalten; die EF-Core-Packages, die diese DLLs benötigen, sind in der csproj deklariert. Mach daraus keine Projektreferenzen und ziehe keinen weiteren Backend-Quellcode in dieses Repo.
Workflow (verbindlich)
- Ein gelabeltes Issue eröffnen, das die Änderung beschreibt. Verwende das richtige Label, damit release-drafter die nächste Version korrekt bestimmt (
breaking-change,feature,documentation,CI/CD,dependencies,bug,refactor). - Von
mainabzweigen:feature/<issue#>_PascalCaseoderfix/<issue#>_PascalCase. Nie direkt aufmaincommitten. - Einen PR öffnen mit
Closes #<issue>. Der PR-Body besteht nur aus Summary +Closes #<issue>- keine Testpläne. - Squash-mergen und den Branch löschen.
Commit-Betreffs sind kurz und im Imperativ gehalten.
Keine AI-Zuschreibung
Füge niemals AI-/Assistenten-Zuschreibungen hinzu - weder in Commit-Messages, PR-Beschreibungen noch Issue-Texten. Keine Co-Authored-By-Trailer, keine "generated with"-Zeilen. Niemals.
Den passenden Versionssprung wählen
Siehe die Tabelle in Versionierung. Das PR-Label, das du wählst, steuert die Release-Version - wähle es also bewusst.
