Skip to content

[Test] NyxID App — Org Approval Presentation #546

@wanghuan-520

Description

@wanghuan-520

背景

#376 已关闭,需要补充一个独立的移动端回归测试任务,确认 NyxID App 是否已经能清楚展示 org approval / org grant 语义。

原问题关注点不是后端 approval 是否能创建,而是移动端 app 是否能让用户清楚区分:

  • personal approval
  • org approval
  • org grant

相关移动端页面 / 入口:

  • NyxID App notification / push entry
  • NyxID App pending approval detail
  • NyxID App approval history
  • NyxID App active grants / grant detail

相关后端 / Web 准备入口:

  • Dashboard → Organizations → Org Detail → Approvals
  • Dashboard → AI Services
  • /api/v1/approvals/*
  • org-owned service proxy request

测试环境

  • Hosted frontend:https://nyx.chrono-ai.fun
  • Hosted API:https://nyx-api.chrono-ai.fun
  • 测试时间:2026-04-28
  • 测试账号:一个已登录的普通用户账号,且该账号是目标组织的 admin。
  • 移动端:用户本机 NyxID App;需要记录待测 app version / build number。

本文不包含真实 token、cookie、API key secret、push token 或其他敏感凭据。

已完成前置覆盖

  • Web/API 侧可以创建或使用 org-owned service。
  • Web/API 侧可以配置 org approval policy。
  • 使用受控 API key / proxy 请求可以触发 org approval。
  • 后端 pending approval request 可以创建成功。
  • Web API 查询 pending approvals 时,可以看到对应 org approval 请求。
  • 当前测试用户存在已注册 push device。
  • 触发 approval 后,后端侧 device 使用时间会更新。

以上只说明后端 approval 创建和通知链路至少部分可达;移动端展示仍需要单独验证。

测试范围

App Build / Login

  • 记录待测 NyxID App version / build number。
  • 使用固定测试账号登录移动端 app。
  • 确认 app 登录账号与 Web/API 触发 approval 的账号一致。
  • 确认 app push permission 已开启。
  • 确认 app 可以正常看到 approval 相关基础页面。

Personal Approval Baseline

  • 触发一次 personal service approval。
  • 移动端 notification / pending request 能正常出现。
  • request detail 明确表现为 personal approval,且不会误显示 org 上下文。
  • approve / reject 操作仍正常。
  • approval history 中 personal approval 展示语义正确。

Org Approval Request

  • 触发一次 org-owned service approval。
  • 移动端 notification / pending request 能正常出现。
  • request detail 明确展示 org context,例如 org name / org badge / org avatar / org label。
  • 用户不需要依赖服务名或猜测,就能判断该 request 属于组织。
  • approve / reject 操作使用实时 org admin 权限,并能成功完成。
  • approval history 中 org approval 仍保留明确组织上下文。
  • 同一账号同时存在 personal approval 和 org approval 时,列表中两类 approval 可以清楚区分。

Org Grant Presentation

  • 创建或复用一次 org grant。
  • 移动端 active grants / grants detail 能展示该 grant。
  • grant 展示中明确包含组织上下文。
  • 用户可以区分 personal grant 与 org grant。
  • grant 对应的 service / scope 信息展示清楚。
  • grant reuse 场景下,移动端历史或状态展示不会把 org grant 误表现为 personal grant。

Negative / Edge Cases

  • 非 org admin 用户不会看到仅 admin 可决策的 org approval 操作。
  • viewer / 无 proxy 权限用户不会被误导为可以 approve 或使用 org grant。
  • org approval 过期后,移动端状态显示正确。
  • org approval 已被其他 admin 决策后,移动端状态显示正确。
  • app 离线或未收到 push 时,重新打开 app 后能通过 pending/history 页面看到正确状态。

Evidence

  • 记录待测 app version / build number。
  • 保存 personal approval notification / detail / history 截图。
  • 保存 org approval notification / detail / history 截图。
  • 保存 org grant list / detail 截图。
  • 记录测试用 org、service、approval request、grant 的非敏感标识或可脱敏标识。

PASS 标准

该测试 issue 可以关闭 / 标记完成的条件:

  • 上述核心路径已完成移动端实测。
  • personal approval、org approval、org grant 在移动端展示上可以明确区分。
  • org approval / org grant 至少在 notification、detail、history / grants 关键视图中有清楚组织上下文。
  • 没有发现会导致用户把 org approval 误认为 personal approval 的展示问题。
  • 测试证据已记录。

不在本轮阻塞范围

以下内容不作为本测试 issue 的阻塞项:

  • 移动端 UI 视觉精修。
  • Push provider 自身延迟或系统通知样式限制。
  • 非 org approval 相关的移动端审批功能重构。
  • Web approval UI 的展示优化。
  • Telegram / email approval notification 的 org 展示。

当前结论

当前不是确认 #376 未修复,而是该 closed issue 仍需要移动端实机回归测试覆盖。

在该测试任务完成前,#376 的回归状态应保持为:

Related

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions