From 25a24d33d9aa4ed9c75392076b9a4366f820eb3a Mon Sep 17 00:00:00 2001 From: ila Date: Sat, 22 Aug 2026 09:19:17 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E5=90=8C=E6=AD=A5=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E7=AB=AF=E7=99=BB=E5=BD=95=E5=A5=91=E7=BA=A6=20(#29)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/02-architecture-and-code-map.md | 5 +++-- docs/04-local-development-and-verification.md | 8 ++++---- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/docs/02-architecture-and-code-map.md b/docs/02-architecture-and-code-map.md index aae7ac3..6278d18 100644 --- a/docs/02-architecture-and-code-map.md +++ b/docs/02-architecture-and-code-map.md @@ -2,8 +2,8 @@ generated: true (请先修改 Gitea Wiki,禁止直接编辑本文件) wiki_page: Architecture-and-Code-Map wiki_url: https://git.ilapage.cn/OPC/chorus/wiki/Architecture-and-Code-Map.- -wiki_revision: 8c1c40529eb6da550fdfc395ec878a0431c9ef30 -synchronized_at: 2026-08-21T15:02:17Z +wiki_revision: a670339f38d3c83e267afa475dcd8b825c8ed8d6 +synchronized_at: 2026-08-22T01:15:06Z # 架构与代码地图 @@ -42,6 +42,7 @@ chorus/ - `admin/app/chorus/` 实现 Provider、ProviderModel、PromptTemplate、RoutePool、Generation 与终端用户查询 API。所有 Chorus API 经过固定 go-admin 的 JWT 与 Casbin 链;JWT 只从 `Authorization: Bearer` 读取,不接受 Query 或 Cookie token。 - 原 go-admin 的 AutoMigrate、代码生成、Swagger、WebSocket 与静态文件路由未导入生产入口。`/api/v1/chorus/` 不提供 DELETE;被引用记录使用启停而不是物理删除。 - 通用操作日志对 `/api/v1/chorus` 完全跳过请求体与结果持久化,避免把凭据写入 `sys_oper_log`;配置变更和被拒绝的探测由 `admin_audit_events` 记录脱敏摘要。 +- 管理端 `POST /api/v1/login` 在 `prod` 与 `dev` 都只接收必填的 `username`、`password`;生产入口不注册验证码、代码生成、Swagger、WebSocket 或静态文件路由。 ## MVP-0 的最小形态 diff --git a/docs/04-local-development-and-verification.md b/docs/04-local-development-and-verification.md index 2ba1641..b82c160 100644 --- a/docs/04-local-development-and-verification.md +++ b/docs/04-local-development-and-verification.md @@ -2,8 +2,8 @@ generated: true (请先修改 Gitea Wiki,禁止直接编辑本文件) wiki_page: Local-Development-and-Verification wiki_url: https://git.ilapage.cn/OPC/chorus/wiki/Local-Development-and-Verification.- -wiki_revision: 6975232fead63ed60c480fb4bf7c0e9188a430d1 -synchronized_at: 2026-08-21T15:02:26Z +wiki_revision: c133df3e7f58ab1d066804fbc89110bc8172541c +synchronized_at: 2026-08-22T01:15:11Z # 本地开发与验证 @@ -153,7 +153,7 @@ go run ./cmd/chorus-admin-bootstrap go -C admin run . server --config "<受保护 settings.yml 路径>" ``` -该命令只启动 go-admin 管理 API,不执行 migration、seed 或 AutoMigrate,也不注册代码生成、Swagger、WebSocket 或静态文件路由。管理 API 使用 `Authorization: Bearer `;不要在 URL 或 Cookie 放置 token。连通性探测默认返回 403 且不出站。只有经过人工批准的单次真实检查,才在本次受保护进程设置 `CHORUS_ADMIN_ALLOW_CONNECTIVITY_PROBES=1`,并同时提供正数 `CHORUS_ADMIN_CONNECTIVITY_COOLDOWN_SECONDS`、`CHORUS_PROVIDER_HTTP_TIMEOUT_SECONDS` 和 `CHORUS_PROVIDER_MAX_RESPONSE_BYTES`。 +该命令只启动 go-admin 管理 API,不执行 migration、seed 或 AutoMigrate,也不注册验证码、代码生成、Swagger、WebSocket 或静态文件路由。`POST /api/v1/login` 在 `prod` 与 `dev` 都只接收必填的 `username`、`password`,不需要验证码字段。管理 API 使用 `Authorization: Bearer `;不要在 URL 或 Cookie 放置 token。连通性探测默认返回 403 且不出站。只有经过人工批准的单次真实检查,才在本次受保护进程设置 `CHORUS_ADMIN_ALLOW_CONNECTIVITY_PROBES=1`,并同时提供正数 `CHORUS_ADMIN_CONNECTIVITY_COOLDOWN_SECONDS`、`CHORUS_PROVIDER_HTTP_TIMEOUT_SECONDS` 和 `CHORUS_PROVIDER_MAX_RESPONSE_BYTES`。 ### 3. go-admin schema-first 生成(MVP-1) @@ -292,7 +292,7 @@ go -C admin test -count=1 ./... $env:CHORUS_RUN_ADMIN_TESTS = $null ``` -覆盖凭据加密、轮换和回退、普通更新不清除凭据、路由发布版本冲突、JWT/Casbin 路由边界、禁用探测不出站,以及探测冷却只预留一次。根模块的 migration up/down/up 回归仍需在可丢弃库执行:`go test -count=1 ./migrations -run TestMVP1MigrationsUpDownUpMySQL`。 +覆盖凭据加密、轮换和回退、普通更新不清除凭据、路由发布版本冲突、JWT/Casbin 路由边界、生产模式账号密码登录(无验证码)、禁用探测不出站,以及探测冷却只预留一次。根模块的 migration up/down/up 回归仍需在可丢弃库执行:`go test -count=1 ./migrations -run TestMVP1MigrationsUpDownUpMySQL`。 ## 完成修改前