chore(quick-260921-bi2): Lint-Konfiguration bereinigen, Messgrundlage herstellen

- overrides fuer Testdateien (noExplicitAny off) und apps/api (useImportType off, siehe
  Regelbeschreibung "Caveat with TypeScript experimental decorators")
- Fixture-Ausnahme in files.includes ohne angehaengten Doppelstern (Biome-Hinweis
  useBiomeIgnoreFolder befolgt)
- Entwickleranleitung auf den neuen Stand gebracht: 754 Befunde (633 echt, 121 Test), beide
  Ausnahmen begruendet, Folgeaufgaben benannt

Rueckstand: 2923 -> 754, Fehlerstufe weiterhin 0. security-Regelgruppe unangetastet.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TPPB4ApQxzSU1rwV2Ffj9J
This commit is contained in:
2026-09-21 08:46:06 +02:00
parent e7c2c4c6a9
commit 8d1c8f320b
2 changed files with 39 additions and 7 deletions
+23 -1
View File
@@ -8,7 +8,7 @@
"files": {
"includes": [
"**",
"!**/__fixtures__/**",
"!**/__fixtures__",
"!apps/web/src/app/globals.css"
]
},
@@ -42,6 +42,28 @@
}
}
},
"overrides": [
{
"includes": ["**/*.spec.ts", "**/*.spec.tsx", "**/*.test.ts", "**/*.test.tsx"],
"linter": {
"rules": {
"suspicious": {
"noExplicitAny": "off"
}
}
}
},
{
"includes": ["apps/api/**"],
"linter": {
"rules": {
"style": {
"useImportType": "off"
}
}
}
}
],
"javascript": {
"parser": {
"unsafeParameterDecoratorsEnabled": true
+16 -6
View File
@@ -62,12 +62,22 @@ Linting/Formatierung laufen über **Biome** (`biome.json`, Zeilenlänge 100, 2 S
aktiv) — es gibt kein ESLint/Prettier im Projekt. `pnpm lint` führt seit dem Vorgang #35 in jedem
der fünf Workspaces tatsächlich `biome lint .` aus, und der CI-Schritt „Lint" prüft damit echt statt
nur grün zu melden. Das Tor blockiert nur auf echte Fehler; Stilhinweise laufen als Warnungen mit
und stoppen den Lauf nicht. Aktuell stehen rund 2800 solcher Warnungen offen — überwiegend aus der
Regelfamilie um den Typ `any` sowie Barrierefreiheits-Hinweise in `apps/web` —, die bewusst als
eigener Durchlauf stehen bleiben und nicht Teil dieses Vorgangs waren. `pnpm lint` formatiert dabei
nichts und besteht auch nicht auf Formatierung; für Formatierung gibt es getrennt
`biome format --write`, das absichtlich von Hand angestoßen wird. Testrunner ist **Vitest** in
beiden Apps (`apps/api/vitest.config.ts`, `apps/web/vitest.config.ts`); für `apps/web` läuft die
und stoppen den Lauf nicht. Seit dem Vorgang 260921-bi2 trägt `biome.json` genau zwei gezielte
Ausnahmen, sonst keine: In Testdateien (`**/*.spec.ts`, `**/*.spec.tsx`, `**/*.test.ts`,
`**/*.test.tsx`) ist `suspicious/noExplicitAny` abgeschaltet, weil `any` dort ausnahmslos an
Attrappen hängt und eine Umschreibung viel Bewegung bei null Gewinn wäre. In `apps/api/**` ist
`style/useImportType` abgeschaltet, weil die dortige Korrektur die von NestJS über
`emitDecoratorMetadata` erzeugten Abhängigkeitsdaten zerstört — Biome räumt das in der eigenen
Regelbeschreibung ein (`biome explain useImportType`, Abschnitt „Caveat with TypeScript
experimental decorators") und rät dort selbst zum Abschalten bei solchen Dekoratoren; der Schaden
würde von keinem Tor dieses Projekts bemerkt, da kein Test `createTestingModule` aufruft. Nach der
Konfigurationsbereinigung steht der Rückstand bei 754 Warnungen (633 in echtem Quelltext, 121 in
Testdateien), Fehlerstufe weiterhin 0 — vorher waren es 2923. Als eigene, benannte Folgeaufgaben
stehen noch aus: ein maschineller Durchgang über die verbleibenden mechanischen Regeln plus toter
Code, und danach ein von Hand gepflegter Durchgang über die Barrierefreiheits-Befunde in `apps/web`.
`pnpm lint` formatiert dabei nichts und besteht auch nicht auf Formatierung; für Formatierung gibt es
getrennt `biome format --write`, das absichtlich von Hand angestoßen wird. Testrunner ist **Vitest**
in beiden Apps (`apps/api/vitest.config.ts`, `apps/web/vitest.config.ts`); für `apps/web` läuft die
`jsdom`-Umgebung mit `@testing-library/react`.
## Lokale Entwicklungsumgebung