/** * 手动清理已关闭自动过期删除。 * 默认拒绝执行;仅 --force 时按 DATA_RETENTION_DAYS 删除过期邮件。 * 日常请在列表里勾选删除,或满 1000 封时按弹窗处理。 */ import { getEnv, resetEnvCache } from "../src/lib/env"; import { runDataRetentionCleanup } from "../src/services/retention/cleanup"; async function main() { resetEnvCache(); const force = process.argv.includes("--force"); const dryRun = process.argv.includes("--dry-run"); if (!force) { console.log( JSON.stringify( { skipped: true, reason: "auto retention disabled; pass --force to run DATA_RETENTION_DAYS cleanup", }, null, 2, ), ); return; } const env = getEnv(); console.log( JSON.stringify( { DATA_RETENTION_DAYS: env.DATA_RETENTION_DAYS, dryRun, }, null, 2, ), ); const stats = await runDataRetentionCleanup({ dryRun }); console.log(JSON.stringify(stats, null, 2)); } main().catch((e) => { console.error(e); process.exit(1); });