2026-05-28 18:37:07 +08:00
|
|
|
# URL / 渠道变更
|
|
|
|
|
|
|
|
|
|
## 触发条件
|
|
|
|
|
|
|
|
|
|
- 控制台域名变更(如 `bailian.console.aliyun.com` → 新域名)
|
|
|
|
|
- API endpoint 迁移
|
|
|
|
|
- 文档站迁移
|
|
|
|
|
- 调整 / 删除 / 新增渠道追踪参数(`source_channel` 等)
|
|
|
|
|
|
|
|
|
|
## URL 的分层架构
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
core/config/schema.ts ← API endpoint / 文档站(region-aware)
|
|
|
|
|
REGIONS{cn, us, intl} dashscope.aliyuncs.com 等
|
|
|
|
|
DOCS_HOSTS{cn, us, intl} help.aliyun.com/zh/model-studio
|
2026-07-09 15:03:48 +08:00
|
|
|
BAILIAN_HOST bailian.cn-beijing.aliyuncs.com (OpenAPI)
|
2026-05-28 18:37:07 +08:00
|
|
|
|
2026-07-06 21:50:50 +08:00
|
|
|
runtime/src/urls.ts ← 用户面控制台 URL(cn-only)
|
2026-05-28 18:37:07 +08:00
|
|
|
BAILIAN_CONSOLE_ROOT bailian.console.aliyun.com
|
|
|
|
|
BAILIAN_CONSOLE BAILIAN_CONSOLE_ROOT/cn-beijing
|
|
|
|
|
API_KEY_PAGE BAILIAN_CONSOLE/?tab=app#/api-key
|
2026-07-19 16:05:35 +08:00
|
|
|
TOKEN_PLAN_PAGE BAILIAN_CONSOLE_ROOT/cn-beijing?tab=plan#/efm/subscription/overview
|
2026-07-24 10:56:48 +08:00
|
|
|
MCP_WEBSEARCH_PAGE BAILIAN_CONSOLE?tab=mcp#/mcp-market/detail/WebSearch
|
2026-05-28 18:37:07 +08:00
|
|
|
|
|
|
|
|
core/files/upload.ts ← 文件上传 endpoint(cn-pinned)
|
|
|
|
|
UPLOAD_API ${REGIONS.cn}/api/v1/uploads
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## 必查清单
|
|
|
|
|
|
|
|
|
|
### A. TS 源码(必须 import,不准硬编码)
|
|
|
|
|
|
|
|
|
|
- [ ] `packages/core/src/config/schema.ts` 是所有 API/docs 基址的源头
|
2026-07-06 21:50:50 +08:00
|
|
|
- [ ] `packages/runtime/src/urls.ts` 是所有用户面控制台 URL 的源头
|
2026-05-28 18:37:07 +08:00
|
|
|
- [ ] 改完后 grep 验证:
|
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
|
# 控制台 URL — 应只在 urls.ts 出现
|
|
|
|
|
grep -rnE "https://bailian\.console\.aliyun\.com" packages/ --include="*.ts" \
|
|
|
|
|
| grep -v "node_modules" | grep -v "/dist/"
|
2026-07-06 21:50:50 +08:00
|
|
|
# 期望:匹配 packages/runtime/src/urls.ts;
|
|
|
|
|
# 当前遗留例外:packages/commands/src/commands/auth/login-console.ts(登录站点映射)、
|
|
|
|
|
# packages/core/src/advisor/recommend.ts(模型文档 deep link)。触碰时优先收敛到统一 URL 模块。
|
2026-05-28 18:37:07 +08:00
|
|
|
|
|
|
|
|
# API endpoint — 应只在 schema.ts 和 upload.ts 出现
|
|
|
|
|
grep -rnE "https://dashscope[a-z-]*\.aliyuncs\.com" packages/ --include="*.ts" \
|
|
|
|
|
| grep -v "node_modules" | grep -v "/dist/"
|
|
|
|
|
# 期望:只匹配 schema.ts(REGIONS)、upload.ts(派生)、tests
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### B. 非 TS 文件(只能人工同步,无法 import)
|
|
|
|
|
|
2026-06-08 15:29:51 +08:00
|
|
|
- [ ] `skills/bailian-cli/reference/` 各 `<group>.md` 中 API/控制台 URL(`generate:reference` 重建后核对并提交)
|
2026-06-08 18:38:15 +08:00
|
|
|
- [ ] `README.md` / `README.zh.md` 中所有 URL
|
2026-05-28 18:37:07 +08:00
|
|
|
|
|
|
|
|
### C. 渠道追踪参数
|
|
|
|
|
|
2026-07-06 21:50:50 +08:00
|
|
|
- [ ] **当前现状**:TS 源码不带 `source_channel=...`;README / package README 中保留 `cli_github` / `key_github` 等用户入口追踪参数
|
|
|
|
|
- [ ] 如未来调整追踪参数,统一评估 README、`packages/cli/README*`、`packages/core/README*` 与 package homepage,不要单点改造成不一致
|
|
|
|
|
- [ ] grep `source_channel=`,确认每个残留都属于预期用户面文档或已批准的追踪入口
|
2026-05-28 18:37:07 +08:00
|
|
|
|
|
|
|
|
## 完成后自查
|
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
|
# 验证错误 hint 不再泄漏旧 URL
|
2026-07-09 19:39:13 +08:00
|
|
|
HOME=/tmp/empty pnpm -F bailian-cli exec tsx src/main.ts text chat --message x
|
2026-05-28 18:37:07 +08:00
|
|
|
# 看输出的 Get API Key URL 是否走新值
|
|
|
|
|
|
|
|
|
|
# 验证 banner / help
|
2026-07-09 19:39:13 +08:00
|
|
|
pnpm -F bailian-cli exec tsx src/main.ts # banner
|
|
|
|
|
pnpm -F bailian-cli exec tsx src/main.ts help # help 命令
|
2026-05-28 18:37:07 +08:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## 常见漏点
|
|
|
|
|
|
2026-07-06 21:50:50 +08:00
|
|
|
- ✗ 改了 `urls.ts` / 登录站点 / 文档 deep link 但忘记同步 README(用户最先看到)
|
|
|
|
|
- ✗ 在 runtime / command 文件里 inline `https://bailian.console.aliyun.com/...` 而不是从 `urls.ts` import
|
2026-05-28 18:37:07 +08:00
|
|
|
- ✗ 在 core 的 hint 里写 URL(违反 [error-hint-change.md](error-hint-change.md) 不变量 1)
|