collect.ts logs raw IP+UA on every hit (streams PII to CloudWatch indefinitely) while docs promise inputs are discarded. Error ingest stores body.user and 20 breadcrumbs verbatim with zero scrubbing. docs/features/privacy.md claims full anonymization default; code default is partial. Fix: delete the log line; PII-scrub module (emails/JWTs/bearer tokens/query strings) for error ingest; log retention in deploy templates; docs truth pass.
From the production-readiness audit (docs/research/production-readiness.md, eacf996). Verified with live probes where stated.