fix(session-coordinator): 保存 WalletName 和 InviteCode 到数据库
- CreateSessionInput 添加 WalletName 和 InviteCode 字段 - gRPC handler 从请求中读取并传递这些字段 - CreateSession use case 在创建会话时设置这些字段 修复: 通过邀请码查询会话时找不到记录的问题 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
591dc50eb9
commit
21985abde5
|
|
@ -159,6 +159,8 @@ func (s *SessionCoordinatorServer) CreateSession(
|
||||||
Participants: participants,
|
Participants: participants,
|
||||||
MessageHash: req.MessageHash,
|
MessageHash: req.MessageHash,
|
||||||
ExpiresIn: time.Duration(req.ExpiresInSeconds) * time.Second,
|
ExpiresIn: time.Duration(req.ExpiresInSeconds) * time.Second,
|
||||||
|
WalletName: req.WalletName,
|
||||||
|
InviteCode: req.InviteCode,
|
||||||
}
|
}
|
||||||
|
|
||||||
// Parse and set keygen_session_id if provided (for signing sessions)
|
// Parse and set keygen_session_id if provided (for signing sessions)
|
||||||
|
|
|
||||||
|
|
@ -55,6 +55,8 @@ type CreateSessionInput struct {
|
||||||
ExpiresIn time.Duration
|
ExpiresIn time.Duration
|
||||||
DelegateUserShare *DelegateUserShare // For sign sessions with delegate party
|
DelegateUserShare *DelegateUserShare // For sign sessions with delegate party
|
||||||
KeygenSessionID uuid.UUID // For sign sessions: which keygen session's shares to use
|
KeygenSessionID uuid.UUID // For sign sessions: which keygen session's shares to use
|
||||||
|
WalletName string // For co_managed_keygen: wallet name
|
||||||
|
InviteCode string // For co_managed_keygen: invite code for participants
|
||||||
}
|
}
|
||||||
|
|
||||||
// ParticipantInfo contains information about a participant
|
// ParticipantInfo contains information about a participant
|
||||||
|
|
|
||||||
|
|
@ -138,6 +138,18 @@ func (uc *CreateSessionUseCase) Execute(
|
||||||
zap.String("keygen_session_id", req.KeygenSessionID.String()))
|
zap.String("keygen_session_id", req.KeygenSessionID.String()))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 4.2 Set wallet name and invite code for co_managed_keygen sessions
|
||||||
|
if req.WalletName != "" {
|
||||||
|
session.WalletName = req.WalletName
|
||||||
|
}
|
||||||
|
if req.InviteCode != "" {
|
||||||
|
session.InviteCode = req.InviteCode
|
||||||
|
logger.Info("Co-managed keygen session created with invite code",
|
||||||
|
zap.String("session_id", session.ID.String()),
|
||||||
|
zap.String("wallet_name", req.WalletName),
|
||||||
|
zap.String("invite_code", req.InviteCode))
|
||||||
|
}
|
||||||
|
|
||||||
// 5. Add participants and generate join tokens
|
// 5. Add participants and generate join tokens
|
||||||
tokens := make(map[string]string)
|
tokens := make(map[string]string)
|
||||||
if len(req.Participants) == 0 {
|
if len(req.Participants) == 0 {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue