2026-06-23 开发日志
记录时间:2026-06-23

今天做了什么
今天主要在补文档站的语言能力。
SoDialog 的默认语言保持简体中文,站点根路径仍然是 /。新增两套路由:
/zh-TW/:繁体中文入口。/en/:英文入口。
这次没有给核心库增加任何运行时依赖,而是使用 VitePress 自带的 locales。导航、侧边栏、首页 CTA、页脚链接、html lang、canonical、Open Graph 和 JSON-LD 都跟着当前语言走。
真正麻烦的地方不在“多一份目录”,而在“别让用户点着点着突然被送回默认语言”。所以首页里的文档卡片、快速开始按钮和页脚文档入口都改成按当前 locale 拼路径。静态 demo 和图片资源继续共享根路径,避免把同一份资源复制三遍。
文档内容的边界
今天先把三语言站点骨架打通:页面可访问、链接可走通、SEO 元信息正确、构建和 smoke 能验证。
繁中和英文正文目前还是从现有文档镜像出来的基线内容,并不是逐页人工翻译完成。这个边界要写清楚,因为“路由有了”和“翻译完成了”不是一回事。前者是信息架构,后者是内容工程。
我更愿意先把结构铺稳,再逐页翻译。这样后续改某个 API 页面时,不会一边翻译一边怀疑链接、canonical 或 sitemap 是不是也坏了。
发布这边也顺手摸了一下
本地 npm publish --access public 失败了,但不是测试失败。
实际情况是:
release:verify已经跑完,lint、构建、文档 smoke 都通过。- npm registry 能看到
sodialog当前版本。 npm whoami返回 401,说明当前环境没有有效 npm 登录态或 token。
所以问题不是包本身,而是发布身份。今天顺手把 package.json 里的 repository.url 固定成 npm 认可的格式,避免发布时再被 npm 自动纠正。
发布路径也确认了一遍:仓库已有 npm-publish.yml,推送 vX.Y.Z tag 后可以走 GitHub Actions 自动发布。更推荐 npm Trusted Publishing,让 GitHub OIDC 做身份,不再把本地登录态当成发布流程的一部分。
验证结果
- ESLint 通过。
- 文档构建通过。
- 文档 smoke 20 个用例全部通过。
npm pack --dry-run通过。- 旧 GitHub Pages 域名检索没有回归。
今天的体会是:多语言和发布自动化都不是“多配一行”的活。它们真正要解决的是同一个问题:别让项目靠记忆运行。语言路径、SEO 元信息、npm 身份、tag 版本号,这些东西最好都能被配置和测试接住,而不是靠发布当天的人类手感。