# 博客重基建 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//`,不共用网络外露端口(仅 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 增量提议 ```diff 本仓库将公开:任何凭据/密钥/初始密码不入库,一律宿主 0600 文件(gitea/artalk 的 init-credentials 模式);infra/<服务>/ 为入库快照,运行时实例在 ~/docker_apps/<服务>/,app.ini 类种子快照严禁回覆盖运行时(首启密钥)。端口约定:gitea 13020 / artalk 13030 仅绑回环,公网一律经 nginx。worker 契约模式:草稿入库不安装,nginx 集成单点在 orchestrator。 ``` ## 被拒绝的扩展提议 - 无 ## 门禁证据 - check_spec_package.py exit 0 ## 遗留事项 - 无;问题处置见下方结构化区块 ## 问题处置 ```json { "issues": [], "version": 1 } ```