czlonkowski
c3b691cedf
feat(telemetry): capture error messages with security hardening
## Summary
Enhanced telemetry system to capture actual error messages for debugging
while implementing comprehensive security hardening to protect sensitive data.
## Changes
- Added optional errorMessage parameter to trackError() method
- Implemented sanitizeErrorMessage() with 7-layer security protection
- Updated all production and test call sites (atomic change)
- Added 18 new security-focused tests
## Security Fixes
- ReDoS Prevention: Early truncation + simplified regex patterns
- Full URL Redaction: Changed [URL]/path → [URL] to prevent leakage
- Credential Detection: AWS keys, GitHub tokens, JWT, Bearer tokens
- Correct Sanitization Order: URLs → credentials → emails → generic
- Error Handling: Try-catch wrapper with [SANITIZATION_FAILED] fallback
## Impact
- Resolves 272+ weekly errors with no error messages
- Protects against ReDoS attacks
- Prevents API structure and credential leakage
- 90.75% test coverage, 269 tests passing
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-03 15:53:13 +02:00
..
2025-06-14 10:36:54 +02:00
2025-06-25 10:55:34 +02:00
2025-07-28 22:56:15 +02:00
2025-06-14 10:36:54 +02:00
2025-06-13 11:54:42 +02:00
2025-06-08 08:21:38 +00:00
2025-08-02 21:14:00 +02:00
2025-06-09 00:33:17 +02:00
2025-06-09 00:33:17 +02:00
2025-06-09 00:33:17 +02:00
2025-07-28 22:45:09 +02:00
2025-07-28 23:25:42 +02:00
2025-07-28 22:56:15 +02:00
2025-07-28 22:56:15 +02:00
2025-07-15 16:46:30 +02:00
2025-06-15 01:11:02 +02:00
2025-07-11 00:48:43 +02:00
2025-07-17 21:35:00 +02:00
2025-06-08 08:21:38 +00:00
2025-06-08 08:21:38 +00:00
2025-07-10 12:49:25 +02:00
2025-08-02 21:14:00 +02:00
2025-09-14 11:03:47 +02:00
2025-09-14 11:03:47 +02:00
2025-06-16 12:37:45 +02:00
2025-07-28 23:25:42 +02:00
2025-08-02 00:01:01 +02:00
2025-07-10 09:22:34 +02:00
2025-09-03 14:12:01 -07:00
2025-07-31 11:48:31 +02:00
2025-06-18 23:09:18 +02:00
2025-06-13 16:12:40 +02:00
2025-06-26 14:30:45 +02:00
2025-09-22 21:05:27 +02:00
2025-09-22 21:05:27 +02:00
2025-06-29 17:43:29 +02:00
2025-07-10 09:22:34 +02:00
2025-09-22 23:16:24 +02:00
2025-07-11 00:48:43 +02:00
2025-07-11 00:48:43 +02:00
2025-07-11 00:48:43 +02:00
2025-07-10 09:22:34 +02:00
2025-07-11 00:48:43 +02:00
2025-06-13 13:10:20 +02:00
2025-07-10 09:22:34 +02:00
2025-09-20 01:13:02 +02:00
2025-09-20 01:13:02 +02:00
2025-08-01 14:23:48 +02:00
2025-06-29 17:43:29 +02:00
2025-06-26 14:30:45 +02:00
2025-06-26 14:30:45 +02:00
2025-09-24 23:57:25 +02:00
2025-06-14 10:36:54 +02:00
2025-08-02 21:14:00 +02:00
2025-07-11 00:48:43 +02:00
2025-07-15 16:46:30 +02:00
2025-06-14 15:02:49 +02:00
2025-07-06 17:01:05 +02:00
2025-09-26 09:06:19 +02:00
2025-09-26 09:06:19 +02:00
2025-09-26 09:06:19 +02:00
2025-10-03 15:53:13 +02:00
2025-09-26 09:06:19 +02:00
2025-09-26 09:06:19 +02:00
2025-09-26 09:06:19 +02:00
2025-06-26 12:25:06 +02:00
2025-07-15 16:46:30 +02:00
2025-07-10 09:22:34 +02:00
2025-09-26 09:06:19 +02:00
2025-09-26 09:06:19 +02:00
2025-09-26 09:06:19 +02:00
2025-08-02 00:01:01 +02:00
2025-06-16 00:03:20 +02:00
2025-08-02 00:01:01 +02:00
2025-07-28 23:25:42 +02:00
2025-07-28 23:25:42 +02:00