- T1-T7 全部勾选,spec_verify --all 七项 exit=0 入 runs.jsonl - check 门禁收敛;交付:备份三件套/gitea 28.2.0/Artalk 2.10.0/ git.wait4x.online + /artalk 公网接入/发布链地基与回滚预案 - 生产 Halo 全程未动(healthy + 200 复查通过) - 含 spec pre-commit/pre-push 门禁钩子入库 Spec: 2026-10-24_add-blog-infra Co-authored-by: GLM-5.3
3.6 KiB
3.6 KiB
博客重基建 Phase 0:备份/gitea/Artalk/发布链地基 - 完成总结
交付结论
- 结果:完成
- 完成时间:2026-10-24 22:35
假设回顾
已验证假设
- ESA 控制台添加子域需用户手动操作(本会话无 ESA API 凭据)
- gitea/gitea 与 artalk 官方 docker 镜像可直接拉取(经本机 clash 代理)
- gitea web UI 上传默认限制(单次 5 文件)可在 app.ini 调大,不影响本包验收
仍未完全验证的假设
- 无
交付范围
已交付
- T1 生产备份(halo_db + halo2 目录)
- T2 翻译引擎确认(new-api 网关)
- T3 gitea 部署(容器 13020,nginx conf 草稿不安装)
- T4 Artalk 部署(容器 13030,nginx conf 草稿不安装)
- T5 域名接入(依赖用户 ESA 操作 + T3/T4 草稿)
- T6 发布链地基(webhook 脚本骨架 + 回滚预案)
- T7 Phase 0 验收(全量复跑 + 生产无恙复查)
未交付
- 无
偏差说明
- 无
简化决策
保持简单的关键选择
- 两个容器各自独立 compose 于
~/docker_apps/<name>/,不共用网络外露端口(仅 127.0.0.1 绑定,公网经 nginx) - nginx 集成(conf 安装/reload)只由 orchestrator 执行;worker 只交草稿——多写者单点集成
- 暂不引入:watchdog 容器、gitea runner(Phase 4 再上构建)、redis
本轮明确不做的内容
- Astro 站点本身(Phase 1)、内容迁移(Phase 2)、双语管线(Phase 3)、上线切换(Phase 4)
变更边界
本轮主要改动模块
- 见 tasks.md 的 boundary 记录
明确未触碰的区域
- Astro 站点本身(Phase 1)、内容迁移(Phase 2)、双语管线(Phase 3)、上线切换(Phase 4)
验证证据
备注
- 机器证据:runs.jsonl(见验证范围的机器验证率)
验证范围
- 级别:package
- 机器验证率:7/7
- 规则:check 与 done 复用该范围;只有记录升级触发时才执行全项目检查
哲学生效证据
行为成效回填
- Development Record 行为门禁通过
一致性门禁回顾
- 验收面(checklist 或成功标准)已通过
Git 记录
- 日期时间:2026-10-24 22:35
- 范围:博客重基建 Phase 0:备份/gitea/Artalk/发布链地基
- 功能:T1 生产备份(halo_db + halo2 目录);T2 翻译引擎确认(new-api 网关);T3 gitea 部署(容器 13020,nginx conf 草稿不安装);T4 Artalk 部署(容器 13030,nginx conf 草稿不安装);T5 域名接入(依赖用户 ESA 操作 + T3/T4 草稿);T6 发布链地基(webhook 脚本骨架 + 回滚预案);T7 Phase 0 验收(全量复跑 + 生产无恙复查)
- 操作:提交 / 推送
- 成效:Development Record 行为门禁通过
- 提交:pending local commit
- 提交区间:9a61e69f2f9f44b468fce700b888bb75a78f12ee..f16b9487d3fc31d8610f9987e831ab10b48b3fd1
- 推送:not-run (push stage follows commit)
AGENTS.md 增量提议
本仓库将公开:任何凭据/密钥/初始密码不入库,一律宿主 0600 文件(gitea/artalk 的 init-credentials 模式);infra/<服务>/ 为入库快照,运行时实例在 ~/docker_apps/<服务>/,app.ini 类种子快照严禁回覆盖运行时(首启密钥)。端口约定:gitea 13020 / artalk 13030 仅绑回环,公网一律经 nginx。worker 契约模式:草稿入库不安装,nginx 集成单点在 orchestrator。
被拒绝的扩展提议
- 无
门禁证据
- check_spec_package.py exit 0
遗留事项
- 无;问题处置见下方结构化区块
问题处置
{
"issues": [],
"version": 1
}