host 权限 port is_admin + 四个运行时管理命令 #80

Closed
opened 2026-07-27 05:38:20 +00:00 by KumaAgent · 0 comments
Member

Parent

#77 [PRD] arise 运营与质量(决策快照 + 六池成本治理 + 管理命令)—— ADR-0010 完整落地

What to build

让部署者能在运行时管理机器人,而不必改配置重启:切换模型、按 chat 开关工具、重新加载 persona、跑依赖自检。同时建立"谁算管理员由 host 决定"的权限地基——core 不认识群主/管理员/superuser 这些平台概念。

本片交付权限 port + 四个不依赖决策快照/成本记账的管理命令;/cost//why//why_query 依赖后续 ticket 的基础设施,各自在自己的 ticket 里落地。

Acceptance criteria

  • ArisePorts 新增 host 权限回调 is_admin(chat_id, user_id) -> bool(同 get_persona(chat_id)/get_tools(context) 既有回调先例)——core 不替 host 决定"谁算管理员"
  • 新增 /setmodel:运行时切换模型,不需重启
  • 新增 /settool:per-chat 工具开关,不需改全局配置
  • 新增 /reloadprompt:重新加载 persona,不需重启
  • 新增 /diagnose:依赖连通性自检(模型/数据库/向量库),一次看清各依赖当前通不通
  • 四个命令全部经 is_admin 校验;校验失败时明确拒绝(不静默忽略),不产生任何状态变更、不产生任何 LLM 调用,且拒绝信息不泄漏任何本来只有管理员看得到的信息
  • 命令匹配沿用既有 on_command(..., rule=to_me(), priority=1, block=True) 形状(已在跨平台拉取同意命令上验证过的先例)
  • 不碰跨平台拉取的两个用户级同意命令(允许了解我的动态/不再了解我的动态)——那是内容所有者本人的授权维度,ADR-0027 明确拒绝与管理命令权限体系混用
  • 权限校验测试注入假 is_admin 实现(恒真/恒假),断言恒假时无状态变更、无 LLM 调用
  • 管理命令处理逻辑可脱离真实 NoneBot 事件派发直接测试,仿既有命令测试模式

Blocked by

None — can start immediately

## Parent #77 [PRD] arise 运营与质量(决策快照 + 六池成本治理 + 管理命令)—— ADR-0010 完整落地 ## What to build 让部署者能在运行时管理机器人,而不必改配置重启:切换模型、按 chat 开关工具、重新加载 persona、跑依赖自检。同时建立"谁算管理员由 host 决定"的权限地基——core 不认识群主/管理员/superuser 这些平台概念。 本片交付权限 port + 四个不依赖决策快照/成本记账的管理命令;`/cost`/`/why`/`/why_query` 依赖后续 ticket 的基础设施,各自在自己的 ticket 里落地。 ## Acceptance criteria - [ ] `ArisePorts` 新增 host 权限回调 `is_admin(chat_id, user_id) -> bool`(同 `get_persona(chat_id)`/`get_tools(context)` 既有回调先例)——core 不替 host 决定"谁算管理员" - [ ] 新增 `/setmodel`:运行时切换模型,不需重启 - [ ] 新增 `/settool`:per-chat 工具开关,不需改全局配置 - [ ] 新增 `/reloadprompt`:重新加载 persona,不需重启 - [ ] 新增 `/diagnose`:依赖连通性自检(模型/数据库/向量库),一次看清各依赖当前通不通 - [ ] 四个命令全部经 `is_admin` 校验;校验失败时明确拒绝(不静默忽略),**不产生任何状态变更、不产生任何 LLM 调用**,且拒绝信息不泄漏任何本来只有管理员看得到的信息 - [ ] 命令匹配沿用既有 `on_command(..., rule=to_me(), priority=1, block=True)` 形状(已在跨平台拉取同意命令上验证过的先例) - [ ] **不碰**跨平台拉取的两个用户级同意命令(`允许了解我的动态`/`不再了解我的动态`)——那是内容所有者本人的授权维度,ADR-0027 明确拒绝与管理命令权限体系混用 - [ ] 权限校验测试注入假 `is_admin` 实现(恒真/恒假),断言恒假时无状态变更、无 LLM 调用 - [ ] 管理命令处理逻辑可脱离真实 NoneBot 事件派发直接测试,仿既有命令测试模式 ## Blocked by None — can start immediately
Yushu closed this issue 2026-07-28 03:49:00 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ProjectKuma/arise#80
No description provided.