feat: 完善 AI Studio Key 自动化流程

This commit is contained in:
2026-09-23 15:39:20 +08:00
parent f41a979462
commit 04309f60c7
45 changed files with 6600 additions and 119 deletions
@@ -0,0 +1,22 @@
'use strict';
const assert = require('assert');
const { redactText } = require('../src/utils/diagnostics');
const secret = 'DoNotLeak123456';
const input = `https://example.test/path?username=user@example.com&password=${secret}&confirmation_password=${secret}&pli=1`;
const redacted = redactText(input);
assert(!redacted.includes(secret), '诊断脱敏后不得保留密码值');
assert(redacted.includes('password=***'));
assert(redacted.includes('confirmation_password=***'));
const googleApiKey = `AIza${'A'.repeat(35)}`;
const geminiApiKey = `AQ.${'B'.repeat(30)}`;
const keyRedacted = redactText(`https://example.test?key=${googleApiKey}&gemini=${geminiApiKey}`);
assert(!keyRedacted.includes(googleApiKey), 'Google API Key 不得进入诊断日志');
assert(!keyRedacted.includes(geminiApiKey), 'Gemini API Key 不得进入诊断日志');
assert(keyRedacted.includes('key=AIza***'));
assert(keyRedacted.includes('gemini=AQ.***'));
console.log('diagnostics_sensitive_url_redaction.test.js: PASS');