feat(skills): add mandatory linting gate before commits and PRs
- gitea-implementierung: lint gate (PHP/CSS/HTML) as first quality gate step - gitea-fix-refactoring: lint gate before every fix commit - gitea-merge-release: lint gate before PR creation - All gates abort on failure (exit code != 0)
This commit is contained in:
@@ -101,6 +101,26 @@ Zyklus-Counter dokumentieren in `memory/gitea-specs/issue-<number>-fix-cycles.md
|
||||
- Bei QA-Fail → **Test- & QA-Agent** (Phase 4)
|
||||
- Bei Zyklus > 3: ⏸ Pause + Martin informieren
|
||||
|
||||
### Code-Quality-Gates (PFLICHT vor jedem Commit)
|
||||
|
||||
**Vor JEDEM Commit müssen ALLE konfigurierten Linter erfolgreich durchlaufen.**
|
||||
Falls ein Linter fehlschlägt: **Commit abbrechen**, Fehler beheben, dann erneut versuchen.
|
||||
|
||||
```bash
|
||||
# PHP Syntax Check
|
||||
find . -name "*.php" -not -path "*/vendor/*" -exec php -l {} \; 2>&1 | grep -v "No syntax errors"
|
||||
|
||||
# CSS Lint (stylelint)
|
||||
npx stylelint "**/*.css" --config .stylelintrc.json --allow-empty-input
|
||||
|
||||
# HTML Lint (htmlhint) – nur .html Dateien, nicht .php
|
||||
npx htmlhint "**/*.html" --config .htmlhintrc --ignore "**/*.php"
|
||||
|
||||
# Projekt-spezifische Linter (falls vorhanden)
|
||||
npm run lint
|
||||
```
|
||||
**Jeder Linter muss Exit-Code 0 zurückgeben. Sonst: KEIN Commit.**
|
||||
|
||||
## Regeln
|
||||
- Ein Fix = ein Commit (atomic)
|
||||
- Kein Refactoring ohne klaren Grund
|
||||
|
||||
Reference in New Issue
Block a user