Files
qipai/docs/devlogs/2026-06-15-M00-A-单仓库基线.md

72 lines
5.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 开发日志:2026-06-15 M00-A/M00-B 单仓库基线
## 范围
- 建立 `D:\qipai` 单一 Git 根和固定 origin。
- 创建进度文档、仓库地图、部署状态、参考清单和脱敏日志。
-`参考/` 首批文件生成外层 SHA-256。
- 脱敏旧 `参考/env` 中的密码类字段。
- 创建根目录菜单脚本和 Windows/WSL 检查脚本骨架。
- 对 4 个参考压缩包执行隔离解包初审,识别技术栈、依赖目录和敏感配置风险。
- 将含密钥/依赖/真实数据风险的原始参考包和 SQL 从 Git 跟踪中移出,仅保留哈希和审计结论。
- 生成 `docs/reference-page-map.md``docs/db-schema-inventory.md``docs/reference-api-inventory.md` 作为可提交脱敏摘要。
- 生成 `scripts/dev/windows/push-module.ps1``check-gitea-ssh.ps1`,串联模块检查、提交、推送和远端校验。
- 生成 `scripts/setup/*.sh` 和新版 `setup.sh` 菜单,覆盖 `/opt/apps` 目录、仓库状态、dry-run 发布清单、备份 manifest、恢复/回滚提示和诊断。
- 继续补强 M00-E,新增固定 API 域名 Nginx 模板、Ubuntu 菜单第 4 项域名/HTTPS 检查和 Windows 域名检查脚本。
- 继续补强 TLS-001,新增 Certbot 状态检查、证书签发/续期命令说明和 WSL 域名检查 WARN 记录。
- 继续补强 IOT-001,新增 EMQX Ubuntu 安装说明、ACL 模板、授权模板和菜单第 3 项/`--mqtt` 检查。
- 继续补强 OPS-004,新增备份策略模板、恢复 runbook 和 `setup.sh --backup-status` 检查。
## 起始状态
- `D:\qipai` 初始不是 Git 仓库。
- 根目录仅有 `V4.8.md``参考/`
- `参考/` 包含多个压缩包、SQL、旧运行包和旧启动脚本。
## 复用/改写/弃用判断
- 旧小程序、后台和同类项目压缩包:仅作参考,待隔离解包审计后再迁入正式目录。
- 旧 SQL:仅参考表结构,不直接导入真实数据。
-`.env`:只保留变量类别,真实值已脱敏。
- `mazongjian-server.xjar`:仅观察旧接口行为,不反编译、不作为新系统运行依赖。
- `easy-joy-life-main.zip`:含 Spring Boot 后端、小程序、SQL、PEM 和支付配置;只抽象参考订单/设备/钱包/权限设计,原包不提交。
- `24h_qipaishi-master(1).zip``小程序源代码.zip`:含微信原生小程序页面、依赖目录、旧 AppID 和旧 API 域名;只记录页面和业务流程,原包不提交。
- `db_20260427.sql`:含旧业务数据、文件 URL 和任务日志;原 SQL 不提交,后续生成脱敏 schema-only。
## 部署影响
有。新增并升级 `setup.sh``scripts/setup/*.sh` 菜单式部署骨架,补充 `api.txyundm.cn` Nginx 模板、域名/HTTPS/Certbot 检查、证书命令说明、EMQX 安装说明、ACL 模板、备份策略模板和恢复 runbook,但未执行生产部署。
## 测试记录
- Windows 检查:已执行 `scripts/dev/windows/test-all.ps1`,工作区、参考目录、行尾检查通过;发现 `参考/mazongjian-server.xjar` 超过 100MB,已按大文件阻断项记录并忽略。
- 敏感信息检查:已执行 `scripts/dev/windows/check-secrets.ps1`,未发现明文敏感信息模式。
- 参考解包审计:`check-reference.ps1` 已输出 ZIP-AUDIT 摘要;`easy-joy-life-main.zip` 发现 5 个敏感配置/证书类文件;两个小程序包各发现依赖目录。
- 脱敏摘要:已生成页面地图、数据库结构清单和接口线索文档。
- Windows 推送脚本:已新增,遇到 SSH 主机指纹问题时停止,不自动覆盖 `known_hosts`
- PowerShell 语法检查:`push-module.ps1``check-gitea-ssh.ps1` 均已通过 Parser 检查。
- 部署脚本:WSL 已执行 `bash -n setup.sh scripts/setup/*.sh``setup.sh --preflight``setup.sh --status``setup.sh --diagnose`;输出 PASS/WARN,未执行生产写入。
- 域名/HTTPS:新增菜单检查和 Windows 检查脚本;WSL `setup.sh --https` 显示 `api.txyundm.cn` 可解析到 `101.42.38.246`,但线上证书主题为 `CN=git.txyundm.cn``/health` 不可达,生产 DNS/证书/健康接口仍不得标记通过。
- Certbot:新增 `scripts/setup/certbot.sh``deploy/certbot/api.txyundm.cn.commands.md`;生产签发、续期 dry-run 和 `certbot.timer` 尚未执行。
- WSL 域名脚本:`scripts/dev/wsl/check-api-domain.sh` 已改为输出 PASS/WARN,不因生产健康接口暂未上线而中断整体验证。
- EMQX:新增 `scripts/setup/emqx.sh``deploy/emqx/install-ubuntu24-amd64.md`、ACL 模板和授权模板;WSL `setup.sh --mqtt` 可运行并确认模板存在,生产安装、端口限制、真实账号和 MQTT 冒烟尚未执行。
- 备份/恢复:新增 `deploy/backup/backup-policy.template.json``deploy/backup/backup-restore-runbook.md``setup.sh --backup-status`WSL 检查确认模板存在,`/opt/apps/backups/*` 未初始化按预期 WARN,真实 `mysqldump`、EMQX 导出和上传文件归档尚未执行。
- WSL 检查:已执行 `check-env.sh``check-workspace.sh``verify-linux.sh``prepare-test-copy.sh``cleanup-test-copy.sh`;临时副本创建和清理通过。完整 Linux 构建待正式后端/后台项目生成后执行。
- Git fetch/push:首次多次失败后,`git push origin main` 已成功;随后 `git fetch origin main` 校验 `HEAD == origin/main` 通过。
## 风险
- 参考压缩包尚未完成逐文件解包审计。
- `mazongjian-server.xjar` 体积约 194MB,暂不纳入普通 Git 提交;待确认 Git LFS 或等价归档策略。
- 原始小程序包、`easy-joy-life-main.zip` 和旧 SQL 已确认不适合直接提交;后续必须生成脱敏摘录或结构化迁移草案。
- M00-D/M00-E 尚未完成,M00 整体不能标记 DONE。
## Git 与 Gitea
- 远端:`ssh://git@git.txyundm.cn:2222/panda/qipai.git`
- 分支:`main`
- commit:本地 HEAD(最终哈希见 `git log -1 --oneline`
- push 结果:成功
- HEAD 与 origin/main:一致
- 重试命令:无;后续模块继续使用 `scripts/dev/windows/push-module.ps1`