const assert = require('node:assert/strict'); const test = require('node:test'); const { formatLogArg, normalizeForJson } = require('./workspace'); test('normalizeForJson redacts nested OAuth tokens', () => { const result = normalizeForJson({ access_token: 'access-secret', refresh_token: 'refresh-secret', nested: { id_token: 'id-secret', Authorization: 'Bearer secret', safe: 'visible', }, }); assert.equal(result.access_token, '[REDACTED]'); assert.equal(result.refresh_token, '[REDACTED]'); assert.equal(result.nested.id_token, '[REDACTED]'); assert.equal(result.nested.Authorization, '[REDACTED]'); assert.equal(result.nested.safe, 'visible'); assert.deepEqual(JSON.stringify(result).match(/secret/g), null); }); test('formatLogArg redacts inspected objects', () => { const text = formatLogArg({ credentials: { access_token: 'access-secret' } }); assert.match(text, /\[REDACTED\]/); assert.doesNotMatch(text, /access-secret/); });