Files
PMon Dev f632672a82 feat: PMon V4.0 功能开发收口(1.0.9)—— 主干
把 V4.0 骨架以来的全部功能开发固化为主干基线,内容包括:
  · client/            全量 Android/macOS 客户端(Flutter + Rust 核心)
  · server/            网关、业务服务、仓储层
  · deploy/            compose、Dockerfile、init.sql + migrate.sql(幂等迁移)
  · shared/ tests/     协议、编解码、指标清单与全部测试套件
  · docs/ README       架构方案与运维手册

本轮之前修复的主要缺陷(详见各文件注释与 client/README.md):
  · 首次部署路径(init.sql 的 device_tokens 建表顺序)
  · 每 20 分钟硬切以外的设备身份漂移与**设备归并**(shared/device-identity.js)
  · 配置无版本号、无校验导致的病态残留(host/config_migration.dart)
  · 数据库迁移从不执行(deploy/migrate.sql + compose 的 migrate 服务)

验证:客户端 282/282、全量回归 20 套件 0 失败。

⚠️ 水墨屏专属实现(看板、水墨屏令牌、einkMode、常亮)**不在本分支**,
   由 feature/eink 承载,主干不受其影响。
2026-09-16 01:06:24 +08:00

35 lines
918 B
Plaintext

# PMon 构建上下文排除清单
#
# 为什么必须存在:两个 Dockerfile 的 build.context 都是仓库根(见 docker-compose.yml),
# 没有本文件时 `docker compose build` 会把宿主的 node_modules、rust-core/target、
# .git 全部打进构建上下文上传给 daemon —— 上下文轻松上 GB,构建极慢且无意义。
#
# 注意:不要排除 package-lock.json —— 各阶段的 npm ci 依赖它。
# 依赖目录(镜像内由 builder 阶段 npm ci 生成)
**/node_modules
# Rust 构建产物(镜像不构建 Rust;采集核心随客户端分发,不进服务端镜像)
rust-core/target
# 版本控制与开发环境
.git
.gitignore
.dockerignore
# 文档与方案原文(运行时不需要)
docs/
*.md
# 本机环境变量与密钥(绝不进镜像)
.env
.env.*
!.env.example
deploy/certs/
# 编辑器与系统垃圾
**/.DS_Store
**/.vscode
**/.idea
**/*.log