Files
cdp_hub/docs/02-requirements.md
T

2.9 KiB

产品需求

ID 需求 优先级
BR-001 支持 Chrome 和 Edge,允许自动发现或手动指定 executable。 P0
BR-002 启动配置支持 user-data-dir、profile-directory、URL、代理、headless 和额外参数。 P0
BR-003 启动前检测目标 user data dir 是否占用,禁止同一环境重复启动。 P0
BR-004 实例列表显示浏览器类型、PID、user data dir、启动时间和状态。 P0
BR-005 支持优雅关闭、强制关闭和重启,并明确操作影响。 P0
BR-006 监控启动失败、异常退出、退出码和进程消失。 P0
BR-007 启动参数按数组传递,不通过 shell 拼接。 P0
BR-008 只允许管理工具注册且经过身份校验的 PID。 P0
BR-009 支持本地配置持久化,绝不保存浏览器凭证。 P1
BR-010 提供 CLI 或本地 API,供脚本启动、查询和关闭实例。 P1
BR-011 Chub 启动的 Chrome/Edge 必须启用仅限 loopback 的本地 CDP;端口从设置的起始端口分配,空值默认 9666。 P1
BR-012 同一 user data dir 被外部浏览器占用时,只能在其 CDP 端点可验证时关联为外部实例;不得接管生命周期。 P1
BR-013 用户可以刷新已保存实例的状态,并编辑未运行实例的名称、浏览器类型、user data dir 和启动 URL;刷新和编辑不得扩大到未授权的浏览器进程。 P1

验收标准

  • 两个不同 user data dir 可以并行启动,互不阻塞。
  • 同一 user data dir 的第二次启动被拒绝,并显示已知 PID/来源。
  • 新启动实例使用 127.0.0.1 上的远程调试端口;从默认或已保存的起始端口开始递增,并在列表显示实际关联端口。
  • 外部实例只有在其 DevToolsActivePort 和本地 CDP 端点均通过浏览器类型校验时才显示“外部已关联”;关联后不得显示关闭、强制关闭或重启入口。
  • 外部实例未启用 CDP、端点失效或权限不足时,显示“外部占用”或“未知占用”,且不得再次使用同一目录启动浏览器。
  • 关闭操作不会影响其他 Chrome/Edge 实例。
  • 工具重启后,无法确认身份的外部进程只能报告 UNKNOWN,不得被关闭。
  • 异常退出后状态在合理时间内变为 EXITED/FAILED。
  • 参数中不出现密码、Cookie、Token 或代理 userinfo。
  • UI 覆盖加载、空、占用、启动失败、关闭中、成功和权限错误。
  • 刷新仅检查 Chub 已保存的实例;任务执行中不可重复触发,过期结果不得覆盖已经删除或编辑后的记录。
  • 实例编辑支持保存、取消和 Escape;有未保存修改时必须先确认,运行中或外部关联实例不能修改浏览器类型或 user data dir。

不做

全局杀 Chrome/Edge、自动登录、页面操作、验证码处理、平台 API 集成、远程控制和跨用户权限提升;通过 CDP 管理或关闭外部实例。