目标
每次 previous_response_id 请求重走 §8 scope resolution port 验证 scope 匹配;跨 origin (api_key vs channel) resume 默认禁止。
范围
- resume 时:re-resolve current scope via §8 scope resolution port → 必须 ==
actor.scope_id。
- 验证语义不是「token 还有效」,是「resolve 出的 scope 仍匹配」,防 token rotation 越权。
- 验证
origin_kind 与本次请求 ingress 一致。
- 跨 origin (api_key 起的 response 被 channel webhook 续,反之亦然) 默认 reject;feature gate 留接口预留,v1 默认关闭。
验收
- 单测覆盖 token rotation 后 resume 仍按 scope 匹配判断。
- 跨 origin resume reject 测试通过。
- 错误返回语义清晰(区分 scope mismatch 与 origin mismatch)。
不做
- channel webhook ingress 本身(v1 out of scope)。
- 跨 origin feature gate 启用配置 UI(v1 不需要)。
依赖
建立在「Establish run/session ownership actor」+「Add scope resolution port」之上。
来源
discussion #609 §13
目标
每次
previous_response_id请求重走 §8 scope resolution port 验证 scope 匹配;跨 origin (api_key vs channel) resume 默认禁止。范围
actor.scope_id。origin_kind与本次请求 ingress 一致。验收
不做
依赖
建立在「Establish run/session ownership actor」+「Add scope resolution port」之上。
来源
discussion #609 §13