9a0bcb83cc
- MASTER §10 改为规范名映射 + 状态;新增 §11 迁移执行记录 - ports/server-core.md、CURRENT.md 更新
2.7 KiB
2.7 KiB
server-core 记忆
角色
核心服务端(FastAPI,四层架构):身份/平台 API + 培训子应用(app/training/),对外 opc.pinesound.cn。
仓库(已迁 OPC-Hub)
OPC-Hub/server-core@b90539a(已从Pine/server-core转让,历史保留;Pine/*旧仓库备份保留)。- 本地
code/server-core=OPC-Hub/server-core全新克隆(origin=infoepoch,infoepoch_lan 副远端)。 - 这是四层架构版(
app/api(routers+schemas)、app/infrastructure、app/services、app/domain,async 仓储),非旧扁平版。
进度 / 现状(阶段0-1 已 port 至四层仓库)
- 八端口 RBAC / select-identity / token 吊销 / require_port 完整(最成熟部分)。
- 阶段0-1 新增:统一登录(手机/微信)+ 算力打通 + 契约。
本次改动文件(锚点)
| 文件 | 说明 | 锚点 |
|---|---|---|
app/config.py |
+算力/短信/微信配置 | app/config.py (COMPUTE_BASE_URL 等) |
app/models.py |
User 补 wx_openid/phone |
app/models.py User |
app/repositories.py |
create 支持 wx/phone;+set_wx_openid/set_phone | app/repositories.py UserRepository |
app/services/sms.py |
验证码(stub 默认) | 新增 |
app/services/wechat.py |
code2session(空 appid 直通) | 新增 |
app/services/compute_client.py |
new-api 客户端 | 新增 |
app/schemas/*.py |
登录/算力 Pydantic | 新增 |
app/routers/auth.py |
+send-code/phone-login/wx-login/wx-phone | app/routers/auth.py |
app/routers/relay.py |
上游改走 compute-engine(可回退 deepseek) | app/routers/relay.py |
app/routers/rbac_operator.py |
+compute/ping、compute/provision | app/routers/rbac_operator.py |
已实现(功能)
- 登录:
/auth/login(密码)、/auth/send-code、/auth/phone-login、/auth/wx-login、/auth/wx-phone;多身份select-identity。 - 算力:
/admin/compute/ping、/admin/compute/provision;compute_client封装 create_user/issue_pat/get_balance/get_month_usage/get_logs(路径为默认值,待实测核对)。 - 契约:
app/schemas/,新端点带response_model;OpenAPI 111 路径。
已知问题 / 待办
- 8 个 RBAC 既有失败测试(
test_rbac.py/test_operator_rbac.py/test_pine_universal.py),非本次引入,待排查。 - 无
app/training、无data/opc.db(阶段2 建)。 - compute_client 管理路由路径需按 compute-engine
controller/user.go实测。 - 单测:
tests/test_phone_wx_login.py、tests/test_compute_client.py(均过)。
下一步(阶段 2)
courses/activities/bookings/tests 建表 + /admin/* 端点 + /opc/* 业务端点。