| 角色 | 凭证 | 怎么拿到 | 状态 |
|---|---|---|---|
| 办赛方 | 管理码 | 建赛时生成,哈希存储;错码 8 次/10 分钟触发防爆限流,对码不计数 | 已上线 |
| 协办 | 协办钥 | 办赛方在控制台发放,哈希存储;办赛方可一键重置吊销 | 本表新增 · 待建 |
| 裁判台 | 无独立凭证 | 凭赛事链接打开,只读公开数据,勾选状态只存本机;写比分仍走控制台 | 已上线(只读形态) |
| 选手 · 未绑定 | 轻认领(点中名单里的名字) | 点名即认领,无密码;只够读和发声,碰不到状态 | 已上线 |
| 选手 · 已绑定 | Google 账号绑定 player_id | 一个名单身份只绑一个 Google 账号,先绑先得;办赛方凭管理码可解绑兜底;另绑已验证邮箱作找回锚点 | 2026-11-03 定案 · 待建 |
| 观众 / 大屏 | 无 | 公开链接。说明:大屏链接里的赛事 ID 是地址不是凭证,它只有读路径,不构成权限面 | 已上线 |
| 叫号恢复 | rt 令牌 | 仅能操作叫号,48 小时过期,哈希存储 | 校验侧已上线 签发侧待修复 |
MCP 同表执行:办赛工具凭管理码(同办赛方列),选手工具为公开读。平台站务面(文档 / 想法 / 导入)走独立的 X-API-Key,与赛事权限无关,不入本表。
| 动作 | 办赛方 | 协办 | 选手 · 未绑定 | 选手 · 已绑定 | 观众 / 大屏 |
|---|---|---|---|---|---|
| 看签表、赛程、名单 | ✓ | ✓ | ✓ | ✓ | ✓ |
| 看叫号状态 | ✓ | ✓ | ✓ | ✓ | ✓ |
| 改赛事设置(名称、场馆、联系方式、赛制) | ✓ | — | — | — | — |
| 锁定 / 解锁赛事 | ✓ | — | — | — | — |
| 改名单(增删选手、改名) | ✓ | — | — | — | — |
| 生成签表 / 改排赛程 | ✓ | — | — | — | — |
| 录入比分、推进晋级 | ✓ | ✓ | — | — | — |
| 叫号操作(叫号、过号、重叫等全动作) | ✓ | ✓ | — | — | — |
| 发广播 / 通知、以赛事方身份回复会话 | ✓ | — | — | — | — |
| 提异议 / 回复会话(仅本人线程可见) | — | — | ✓ | ✓ | — |
| 签到、退赛、确认比分(仅本人场次)定案 · 待建 | — | — | — | ✓ | — |
| 看活动日志 | ✓ | — | — | — | — |
| 删除赛事 | ✓ | — | — | — | — |
| 发放 / 重置协办钥 新增 · 待建 | ✓ | — | — | — | — |
选手未绑定的异议与回复带限流(读 300 次/小时、写 60 次/小时,按赛事与方向分桶),且选手回复仅办赛方与本人可见,办赛方回复全体可见——可见性也是权限的一部分。