变更记录
俱乐部 OWNER 专属 scope 授予
- 将 P0 对
club.compliance.read_files、club.safety.read_sensitive、club.coaches.read、club.coaches.write、club.federations.read的“任何发放者均不支持”决定,改为仅允许精确当前俱乐部的 OWNER 授予。 - 权限 wildcard 与角色证据保持分离:ADMIN、自定义 wildcard 持有者和其他俱乐部的 OWNER 均不能授予这些 scope。
- scope 目录、凭据创建和 scope 更新统一使用服务端授予上限。既有 key 仍只有明确 scope;保留严格缩小能力,轮换不会扩大 scope。
P5 合同发布
- 发布仅签名认证,删除旧 Bearer 和运行时 mock demo 指南。
- 冻结当前清单:96 个显式 controller 操作,包括公开
GET /health,以及 85 个路径模板上的 95 个签名/v1操作。 - 增加中英文路由集合一致性、source-ledger 漂移、缺翻译和缺 spec 失败,以及双语文档构建 gate。
- 记录 workspace Redis 限流、失败关闭幂等、五种签署 webhook、权威对账和当前发放/worker 限制。
P6 独立 Partner worker
- 新增显式
PARTNER_ROLE=api|worker启动;默认api保持向后兼容,未知 role 启动即失败。 - 将 webhook 队列消费与恢复从 Academy 所有模式移入仅健康检查的 worker;Partner API 与 Academy 保留共享 producer。
- 同一 bundle 新增相互独立的 API/worker Kubernetes Deployment;只有 API 拥有 Service/公开路由。
- 新增隔离 Postgres/Redis 运行时检查,覆盖 role 路由、queue registry identity、consumer ownership 与关闭清理。