andrewgu-oai
79b7606803
Keep credentials out of app-server logs ( #39993 )
...
## Why
App-server logs can be persisted or included in submitted diagnostics, so credentials used by model providers, authentication refreshes, and attestation requests must not appear in diagnostic output.
## What changed
- Add `RedactedString`, which preserves serialization and string access while replacing debug output with `<redacted>`.
- Use it for model-provider bearer tokens, header and query values, authentication command arguments, and attestation tokens.
- Avoid logging JSON-RPC error payloads and parser or authentication errors that may echo credentials; retain safe context such as error codes and categories.
## Testing
- Add an app-server regression test that exercises provider credentials, refreshed authentication tokens, and attestation tokens, then verifies none appear in persisted SQLite or submitted diagnostic logs.
GitOrigin-RevId: 8c50408adf94d93847658b1320682cf3b637d2cc
2026-08-21 19:04:32 +00:00
..
2026-08-21 03:31:56 +00:00
2026-08-20 17:46:05 +00:00
2026-08-13 00:00:16 +00:00
2026-08-20 18:29:35 +00:00
2026-08-20 17:46:05 +00:00
2026-08-21 02:33:50 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 17:46:05 +00:00
2026-08-13 00:00:16 +00:00
2026-08-20 17:46:05 +00:00
2026-08-17 11:44:56 +00:00
2026-07-09 03:40:08 +00:00
2026-08-21 19:04:32 +00:00
2026-08-21 19:04:32 +00:00
2026-08-17 13:16:05 +00:00
2026-08-13 00:00:16 +00:00
2026-08-21 16:50:34 +00:00
2026-08-20 08:10:08 +00:00
2026-08-18 07:32:03 +00:00
2026-08-20 17:46:05 +00:00
2026-08-21 03:31:56 +00:00
2026-08-13 00:00:16 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 18:29:35 +00:00
2026-08-20 18:29:35 +00:00
2026-08-20 17:46:05 +00:00
2026-06-18 14:09:38 +02:00
2026-08-17 21:49:30 +00:00
2026-08-21 19:04:32 +00:00
2026-08-20 05:29:12 +00:00
2026-08-13 00:00:16 +00:00
2026-08-20 16:52:16 +00:00
2026-08-21 17:12:42 +00:00
2026-08-18 22:10:43 +00:00
2026-08-20 18:29:35 +00:00
2026-08-13 00:00:16 +00:00
2026-08-13 00:00:16 +00:00
2026-08-13 00:00:16 +00:00
2026-08-13 00:00:16 +00:00
2026-06-15 21:53:47 -07:00
2026-08-13 00:00:16 +00:00
2026-08-19 01:15:10 +00:00
2026-08-04 15:23:43 +00:00
2026-08-20 08:10:08 +00:00
2026-08-20 08:10:08 +00:00
2026-08-19 01:26:16 +00:00
2026-08-20 18:17:28 +00:00
2026-08-21 17:12:42 +00:00
2026-05-18 21:03:51 -07:00
2026-08-13 00:00:16 +00:00
2026-08-20 17:46:05 +00:00
2026-08-17 10:01:59 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 17:46:05 +00:00
2026-08-14 18:26:20 +00:00
2026-08-20 11:57:32 +00:00
2026-08-20 18:29:35 +00:00
2026-08-21 17:29:41 +00:00
2026-08-20 08:10:08 +00:00
2026-08-20 19:09:04 +00:00
2026-06-08 13:55:15 -07:00
2026-08-20 17:46:05 +00:00
2026-08-17 11:44:56 +00:00
2026-08-17 11:44:56 +00:00
2026-08-20 17:46:05 +00:00
2026-07-14 10:37:23 +00:00
2026-08-14 19:07:15 +00:00
2026-07-22 20:23:35 +00:00
2026-08-13 00:00:16 +00:00
2026-08-21 06:41:28 +00:00
2026-08-01 01:17:26 +00:00
2026-08-21 17:29:41 +00:00
2026-08-20 17:46:05 +00:00
2026-08-13 00:00:16 +00:00
2026-08-13 00:00:16 +00:00
2026-08-20 18:29:35 +00:00
2026-08-20 17:54:42 +00:00
2026-08-13 00:00:16 +00:00
2026-08-13 00:00:16 +00:00
2026-08-21 19:04:32 +00:00
2026-07-22 00:50:28 +00:00
2026-08-18 05:46:08 +00:00
2026-08-13 00:00:16 +00:00
2026-08-13 23:13:37 +00:00
2026-08-20 08:10:08 +00:00
2026-08-20 18:29:35 +00:00
2026-08-13 00:00:16 +00:00
2026-07-23 19:19:35 +00:00
2026-08-13 00:00:16 +00:00
2026-08-20 17:46:05 +00:00
2026-08-13 00:00:16 +00:00
2026-08-20 05:42:20 +00:00
2026-08-21 15:24:56 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 18:29:35 +00:00
2026-08-20 08:10:08 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 17:46:05 +00:00
2026-08-13 00:00:16 +00:00
2026-08-13 00:00:16 +00:00
2026-08-20 07:29:43 +00:00
2026-08-21 03:31:56 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 19:19:41 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 17:46:05 +00:00
2026-08-13 19:25:05 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 18:29:35 +00:00
2026-08-20 19:43:54 +00:00
2026-08-21 14:04:33 +00:00
2026-08-10 19:26:52 +00:00
2026-08-13 00:00:16 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 17:46:05 +00:00
2026-08-14 01:23:59 +00:00
2026-08-13 00:00:16 +00:00
2026-08-21 03:31:56 +00:00
2026-08-20 17:46:05 +00:00
2026-08-20 18:29:35 +00:00
2026-08-20 06:29:32 +00:00