diff --git a/backend/mpc-system/services/service-party-app/electron/main.ts b/backend/mpc-system/services/service-party-app/electron/main.ts index f6c80c82..ebd4ceaf 100644 --- a/backend/mpc-system/services/service-party-app/electron/main.ts +++ b/backend/mpc-system/services/service-party-app/electron/main.ts @@ -859,15 +859,30 @@ function setupIpcHandlers() { ipcMain.handle('grpc:getSessionStatus', async (_event, { sessionId }) => { try { const result = await accountClient?.getSessionStatus(sessionId); + // 从 activeKeygenSession 获取更完整的信息 + const threshold = activeKeygenSession?.threshold || { t: 0, n: result?.total_parties || 0 }; + const participants = result?.participants?.map((p, idx) => ({ + partyId: p.party_id, + partyIndex: p.party_index, + name: activeKeygenSession?.participants?.find(ap => ap.partyId === p.party_id)?.name || `参与方 ${idx + 1}`, + status: p.status, + joinedAt: new Date().toISOString(), + })) || []; + return { success: true, session: { sessionId: result?.session_id, + walletName: activeKeygenSession?.walletName || '', status: result?.status, completedParties: result?.completed_parties, totalParties: result?.total_parties, sessionType: result?.session_type, publicKey: result?.public_key, + threshold: threshold, + participants: participants, + currentRound: 0, + totalRounds: 4, }, }; } catch (error) {