- 14-VALIDATION.md: per-task map 14-01-T1 to 14-06-T4, all green, the measured coverage, validated, Nyquist-compliant, Wave 0 complete, the final --all and --removal results - REQUIREMENTS.md: INTG-02 and API-08 Complete (JOBS-02, JOBS-03, SRCH-02, INTG-01, CLI-05 already were) - COVERAGE.md: every INTEGRATE row's test confirmed by --named - fetchguard-guarded-http-client and redacting-slog-handler moved to done
13 lines
724 B
Markdown
13 lines
724 B
Markdown
---
|
|
title: Framework slog handler that redacts credentials (port RedactCredentialsTap)
|
|
date: 2026-09-28
|
|
priority: medium
|
|
area: summercms.go logging
|
|
---
|
|
|
|
Port `Golem15\Apparatus\Classes\Logging\RedactCredentialsTap` as a framework `slog.Handler` wrapper: redact attribute keys `api_key`, `apikey`, `authorization`, `bearer`, `password`, `secret`, `token`, `webhook_secret`, `admin_password` (case-insensitive, nested groups), and scrub its message regex patterns.
|
|
|
|
Also verify whether `surf`'s error path already gives `SafeExceptionResponse` behaviour (generic "Internal server error" outside debug, real message logged); add a small helper only if it does not.
|
|
|
|
See `.planning/notes/apparatus-dissolved-into-framework.md`.
|