feat(team-mode): add team session registry with tests

This commit is contained in:
YeonGyu-Kim
2026-04-28 10:45:41 +09:00
parent 3a93cb776f
commit a91023961c
2 changed files with 122 additions and 0 deletions
@@ -0,0 +1,33 @@
export type TeamSessionRole = "lead" | "member"
export type TeamSessionEntry = {
teamRunId: string
memberName: string
role: TeamSessionRole
}
const registry = new Map<string, TeamSessionEntry>()
export function registerTeamSession(sessionId: string, entry: TeamSessionEntry): void {
registry.set(sessionId, entry)
}
export function lookupTeamSession(sessionId: string): TeamSessionEntry | undefined {
return registry.get(sessionId)
}
export function unregisterTeamSession(sessionId: string): void {
registry.delete(sessionId)
}
export function unregisterTeamSessionsByTeam(teamRunId: string): void {
for (const [sessionId, entry] of registry.entries()) {
if (entry.teamRunId === teamRunId) {
registry.delete(sessionId)
}
}
}
export function clearTeamSessionRegistry(): void {
registry.clear()
}