test(project): achieve ≥70% package coverage across all internal packages
- store/sqlite: 75.4% (repos + db coverage) - host/sub2api: 80.8% (httptest mock server, pure function tests) - app: 74.2% (handler error paths, NewActionSet closures) - pack: 72.4% - provision: 75.2% - access: 77.3% - config: 94.7% (lookup mock tests) All tests pass: build, vet, race, coverage gates.
This commit is contained in:
45
docs/PRD.md
Normal file
45
docs/PRD.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# sub2api-cn-relay-manager PRD(MVP)
|
||||
|
||||
日期:2026-05-13
|
||||
|
||||
## 目标
|
||||
|
||||
在**完全不修改 sub2api 官方系统代码**的前提下,交付一个可独立打包运行的外部伴生项目,使管理员能够通过一次导入动作,把国产模型 OpenAI 兼容中转能力安装到任意一套兼容的 sub2api 实例中。
|
||||
|
||||
## 硬约束
|
||||
|
||||
1. 不修改宿主源码
|
||||
2. 不 fork 宿主并运行私有二进制
|
||||
3. 不直接写宿主数据库
|
||||
4. 不向宿主目录注入插件代码或补丁文件
|
||||
5. 仅通过宿主现有 HTTP 管理 API 与标准 API 工作
|
||||
|
||||
## 首版验收
|
||||
|
||||
1. `model_pack` 可独立校验与装载
|
||||
2. CLI 可直接读取 pack、选择 provider、导入多条 key
|
||||
3. 导入流程能创建 group / channel / plan(subscription 模式)/ accounts
|
||||
4. 至少一个 account 完成 `/test` 与 `/models` 验证
|
||||
5. 至少一种普通用户访问路径被真实探测:`GET /v1/models`
|
||||
6. 失败时明确区分:`succeeded / partially_succeeded / failed`
|
||||
|
||||
## 首版边界
|
||||
|
||||
### 做
|
||||
- pack runtime
|
||||
- provider schema 校验
|
||||
- 多 key 去重与批量导入
|
||||
- subscription/self-service 两种访问模式建模
|
||||
- CLI 一键导入
|
||||
- 基于 stub 的端到端测试
|
||||
|
||||
### 暂不做
|
||||
- Web 控制台
|
||||
- 多宿主管理
|
||||
- 自动代用户签发最终 API key
|
||||
- 对账调度器完整实现
|
||||
- 真实宿主删除/回滚链路
|
||||
|
||||
## 当前实现策略
|
||||
|
||||
首版先把“可独立打包 + 零侵入导入 + 用户访问验证”做成最小闭环;状态库、HTTP 控制面、对账调度在此基础上继续扩展。
|
||||
Reference in New Issue
Block a user