ENGINEERING INDEX / ENTRY 11
CASE 11 / AUDIT / USEFUL PRIVACY
An audit log must keep the clue, not the key.
A blanket match on 'key' or 'auth' can make logs useless; a permissive matcher can leak secrets. J-Bot's parameter redactor distinguishes credential-bearing names from ordinary data keys.
Source project: J-BotFocused tests passedReviewed September 25, 2026
How can an audit trail hide credentials without erasing ordinary field names that explain what happened?
02 / THE SYSTEM
Where the handoffs happen.
Component-aware matching catches password, token, private-key, and authorization names while leaving fields such as primary_key and authority intact. Nested parameters are checked too.
- 01Receive audit parameters
- 02Classify field names
- 03Redact sensitive values
- 04Keep useful context
What the record earns.
Sensitive-field and false-positive redaction cases passed.
- Observed receipt
- On September 25, 2026, redaction tests passed within a 49-test J-Bot safety batch, including earlier over-redaction regressions and nested secret cases.
- Source and scope
- J-Bot jbot_core/audit.py and tests/test_audit_redaction.py; inspected dirty checkout at HEAD 9f94d83.
04 / THE LIMIT
What this does not prove.
A field-name redactor cannot guarantee that free-text values contain no secrets. No claim is made that all logs or sinks are sanitized.
Where the work goes next.
Inspect one representative redacted audit event and test free-text and downstream-sink behavior separately.