Files
codex-market-app/test-sync.js
T

47 lines
1.8 KiB
JavaScript
Raw Normal View History

// test-sync.js —— 测试增强后的会话同步功能
const providerSync = require("./electron/lib/provider_sync");
console.log("=== 会话同步测试 ===\n");
// 1. 检查 Codex 是否在运行
console.log("1. 检查 Codex 运行状态...");
const isRunning = providerSync.codexRunning();
if (isRunning) {
console.error("❌ Codex 正在运行,请先完全退出 Codex(Cmd+Q 或 Quit)再测试");
process.exit(1);
}
console.log("✅ Codex 未运行,可以同步\n");
// 2. 检查当前 provider
console.log("2. 检查当前 provider...");
const targetProvider = providerSync.targetProvider();
console.log(`✅ 当前 provider:${targetProvider}\n`);
// 3. 执行同步
console.log("3. 开始同步会话...");
const log = (msg) => console.log(` ${msg}`);
const onProgress = (p) => {
if (p.phase) console.log(` [进度] ${p.phase} ${p.done || ""}/${p.total || ""}`);
};
providerSync.syncProviderToCurrent(log, onProgress)
.then((result) => {
console.log("\n=== 同步完成 ===");
console.log(`✅ 目标 provider: ${result.target}`);
console.log(`✅ 总会话数: ${result.totalConversations}`);
console.log(`✅ 修改文件: ${result.changedFiles}`);
console.log(`✅ 用户消息会话: ${result.userEvents}`);
console.log(`✅ 更新 provider: ${result.provRows} 行`);
console.log(`✅ 更新 has_user_event: ${result.ueRows} 行`);
console.log(`✅ 新增线程: ${result.insertedRows} 行`);
console.log(`✅ 项目分组: ${result.projectRows} 个`);
console.log(`✅ 索引重建: ${result.indexRebuilt} 条`);
console.log(`✅ 备份位置: ${result.backup}`);
console.log("\n现在可以打开 Codex,所有会话应该都能在侧边栏看到了 🎉");
})
.catch((err) => {
console.error("\n❌ 同步失败:", err.message || err);
console.error(err.stack);
process.exit(1);
});