Skip to case
TWILIGHT TECH LABSTHE ENGINEERING PROJECT BOOK

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
01 / THE ENGINEERING QUESTION

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.

  1. 01Receive audit parameters
  2. 02Classify field names
  3. 03Redact sensitive values
  4. 04Keep useful context
03 / THE CLAIM LEDGER

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.

05 / NEXT PROOF

Where the work goes next.

Inspect one representative redacted audit event and test free-text and downstream-sink behavior separately.