Compare commits

...
3 Commits
Author SHA1 Message Date
simandClaude Sonnet 5.5 0e625c5381 ai-app: Test an unkritische Stelle (Konflikt mit Nachbar-PRs vermeiden)
Core-Schnittstellen-Vertragstests / contract-tests (pull_request) Waiting to run
DB-Integrationstests / db-tests (pull_request) Waiting to run
Supply-Chain-Scan (Go) / govulncheck (pull_request) Waiting to run
Supply-Chain-Scan (npm) / npm-audit (pull_request) Waiting to run
Core-Pflichttest-Gate / pflichttest-gate (pull_request) Waiting to run
RBAC-Rollenhierarchie-Pflichtgate / rbac-policy-invariant (pull_request) Waiting to run
CI / Core-Modul (Build/Vet/Test) (push) Waiting to run
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Waiting to run
CI / Connect Security-Test-Gate (QA-01 AC4, Merge-Gate) (push) Waiting to run
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Waiting to run
CI / Web (dms-browser) (push) Waiting to run
CI / Web (pdf-viewer) (push) Waiting to run
CI / Web (shl) (push) Waiting to run
Supply-Chain-Scan (Go) / govulncheck (push) Waiting to run
AI-Pflichttest-Gate / pflichttest-gate (pull_request) Waiting to run
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (push) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (pull_request) Waiting to run
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (pull_request) Waiting to run
CI / Connect Security-Test-Gate (QA-01 AC4, Merge-Gate) (pull_request) Waiting to run
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (pull_request) Waiting to run
CI / Web (dms-browser) (pull_request) Waiting to run
CI / Web (pdf-viewer) (pull_request) Waiting to run
CI / Web (shl) (pull_request) Waiting to run
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (pull_request) Blocked by required conditions
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-06 23:28:41 +01:00
simandClaude Sonnet 5.5 0ef867daba ai-app: serverWriteTimeout vor main() (vermeidet Konflikt mit Nachbar-PRs)
CI / Core-Modul (Build/Vet/Test) (push) Waiting to run
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Waiting to run
CI / Connect Security-Test-Gate (QA-01 AC4, Merge-Gate) (push) Waiting to run
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Waiting to run
CI / Web (dms-browser) (push) Waiting to run
CI / Web (pdf-viewer) (push) Waiting to run
CI / Web (shl) (push) Waiting to run
Supply-Chain-Scan (Go) / govulncheck (push) Waiting to run
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (push) Canceled after 0s
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-06 23:25:40 +01:00
simandClaude Sonnet 5.5 e659fdaa59 ai-app: WriteTimeout ueber dem Provider-Timeout
CI / Core-Modul (Build/Vet/Test) (push) Waiting to run
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Waiting to run
CI / Connect Security-Test-Gate (QA-01 AC4, Merge-Gate) (push) Waiting to run
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Waiting to run
CI / Web (dms-browser) (push) Waiting to run
CI / Web (pdf-viewer) (push) Waiting to run
CI / Web (shl) (push) Waiting to run
Supply-Chain-Scan (Go) / govulncheck (push) Waiting to run
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (push) Canceled after 0s
Der Server kappte Antworten nach 15s, Inferenzaufrufe (Ollama bis 120s)
liefen dadurch ins Leere. Real gefunden bei /suggest/title und
/suggest/correspondent mit gemma4:26b (leere Antwort, curl-Code 000).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-06 23:22:53 +01:00
2 changed files with 10 additions and 1 deletions

No files matched your search

+4 -1
View File
@@ -202,6 +202,9 @@ func build(pool *pgxpool.Pool, cfg config, prov provider.Provider, workerID stri
return wiring{mux: mux, queue: q, worker: worker, quotaStore: quotaStore}
}
// Muss ueber dem Provider-Timeout (120s) liegen, sonst kappt der Server langsame Inferenz-Antworten.
const serverWriteTimeout = 130 * time.Second
func main() {
cfg, err := loadConfig(os.Getenv)
if err != nil {
@@ -226,7 +229,7 @@ func main() {
Handler: w.mux,
ReadHeaderTimeout: 5 * time.Second,
ReadTimeout: 15 * time.Second,
WriteTimeout: 15 * time.Second,
WriteTimeout: serverWriteTimeout,
IdleTimeout: 60 * time.Second,
}
+6
View File
@@ -87,6 +87,12 @@ func TestLoadConfig_Defaults(t *testing.T) {
}
}
func TestServerWriteTimeoutCoversProviderTimeout(t *testing.T) {
if serverWriteTimeout <= 120*time.Second {
t.Fatalf("serverWriteTimeout = %v, muss ueber dem Provider-Timeout von 120s liegen", serverWriteTimeout)
}
}
func newTestPool(t *testing.T) *pgxpool.Pool {
t.Helper()
dsn := os.Getenv("TEST_TENANT_DSN")