2 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
a03c163c1d |
chore: 清理过时与误提交产物;取消 archive/(过时就删,历史交给 git)
## 起因
用户问"历史留痕?看看有没有过时的和无用的东西可以删除" ——
**不该把"归档"当免检区**。逐项查证后:确认了 3 类该删的、1 类归错类的、1 个不能删的。
## 一、删除:被"顺手 git add"误带进无关提交的产物
用 `git log --diff-filter=A` 追来历,发现它们**根本不是有意提交的**:
| 文件 | 来历 | 判据 |
|---|---|---|
| `换电柜用锂电池充电器1TN标准通信协议 - RS485 V1.0(1).pdf` | `652bde4`(nginx 路由修复) | 与 `docs/hardware/1TN协议标准_苏州翌工电源_V1.0.pdf` **MD5 完全相同**(`B723A1FC…`)—— 纯重复 |
| `package.json` + `package-lock.json` | `652bde4`(同上) | 唯一依赖 `html-docx-js`,**全仓无任何脚本引用**(当次把合同 md 转 docx 的一次性工具残留) |
| `9b0d3b8a…jpg` / `d6e6add1…png` / `ea4410ba…jpg` | `8bc7812`("23 个函数拆分")/ `999885c`(协议对齐) | **零引用**,且混在与图片毫无关系的重构提交里 —— 误提交的截图 |
## 二、归错类(**不是过时,所以不删**):`开发文档.md` → `hardware/硬件与系统设计文档.md`
原本被塞进 `archive/`,但通读目录后确认它含**硬件设计内容**,这些在 `AGENTS.md`/`docs/tech/` 里**没有**:
硬件架构、仓控/柜控主板设计、指示灯状态机、充电控制逻辑(握手/双模式/动态调整/无协议模式)、
BMS 协议适配、安全防护联动、性能指标、第三方服务配置。
⇒ 它是**归错类而非过时**:**硬件部分仍是权威参考**,只有第 7 章(软件平台)被现行文档取代。
已在 `docs/README.md` 写明"两者冲突时软件口径以 `AGENTS.md` 为准"。
## 三、删除:两份 2026-07-06 报告(**问题已全部解决**)
逐条核对了它们"发现的问题",**无一条仍然成立**:
| 报告 | 当时的问题 | 现状 |
|---|---|---|
| 深度分析报告 | 敏感信息泄露(AGENTS.md 明文密码) | 已成 `AGENTS.md` 的**明示豁免**条目 |
| | 目录名不一致(可能用 taro,需确认) | 已确认 `h5-uniapp`,无 taro |
| | `test/` 目录缺失 | `test/` 已存在且有 7 项验收脚本 |
| | 温度单位不一致(K×100 vs 0.1°C) | 已统一为 K×100 |
| 数据单位审查报告 | SOC/SOH 单位标注错误 | `API.md` 早已重写;该报告基准 `tcp-protocol.md` 已不存在 |
## 四、**不删**:`生产环境.txt`(并修掉自相矛盾的表述)
它是**唯一凭据清单**(阿里云账号/小程序 AppSecret/腾讯地图 key/SSL AccessKey 都在其中),
且被 `docs/tech/小程序用户端.md` 明确引用为"密钥记录处"。
但原文写着"仅记录在内网 Git 仓库 `生产环境.txt`,**不入代码仓库**"—— **与事实矛盾**
(`git ls-files` 实测它**已入库**)。已改为准确表述:只记录在该文件、**绝不写进任何源码/.env**、
**不要删除**(新凭据追加到那里,不要散落别处)。
> 🔐 **留给你的决定**:该文件含大量明文凭据。现策略与 `AGENTS.md`「明文密码」豁免一致(内网仓库),
> 若要收紧,建议把它加入 `.gitignore` 并另存到密码管理器 —— 但这会改变 agent 的直连方式,故未擅自改。
## 五、取消 `archive/` 目录本身
**不再设归档**。理由:被删内容在 **git 历史里完整可查**(`git log -- <原路径>`),
归档的"留痕"价值因此为零,却持续制造"这文件还算不算依据"的歧义。
已把该结论写进 `docs/README.md` 的维护约定:**过时就删;仍有价值的归到正确的类。**
## 六、其他归位
- `营业执照.jpg`(主体资质,小程序/备案用)→ `docs/contract/`
- 根目录现在只剩 5 个必要文件:`.gitignore` / `AGENTS.md` / `README.md` / `opencode.json` / `生产环境.txt`
## 校验
- docs 相对链接 **0 断链**(搬迁引入的 2 处已在上一提交修好,本次复检通过);
- 已删除文件的残留引用:**仅剩 `docs/README.md` 的处置记录/映射表**(旧名必须出现,属预期);
- `cargo check --all-targets` 两服务零 error/warning(本次只动文档与仓库清理,未碰源码逻辑)。
|
||
|
|
619c96c85f |
docs: 文档分类整理 —— AGENTS.md 只留判据与链接,详细篇按用途归入 docs/ 子目录
## 为什么要做
`AGENTS.md` 曾达 **90,370 B**,而工作区指令预算是 **65,536 B** —— 系统按**保留头部**截断,
于是**尾部约 25 KB 永远不会被加载**:组织架构、数据模型、TCP 协议、数据单位规范、
微信小程序用户端**全部处于"写了但读不到"的状态**。手册实际上部分失效。
## 一、AGENTS.md 瘦身:90,370 → 60,227 B(余量 5,309 B,尾部不再被截断)
三个**纯参考型大段**整段搬迁到 `docs/tech/`(**内容逐字保留,未删改**),
原位置换成「判据 + 链接」:
| 原 AGENTS.md 章节 | 大小 | 现位置 |
|---|---|---|
| `## 部署与维护` | 17,611 B | `docs/tech/部署手册.md` |
| `## 数据模型` | 12,100 B | `docs/tech/数据模型.md` |
| `## 微信小程序用户端` | 10,262 B | `docs/tech/小程序用户端.md` |
替换后的章节**只留改动前必须先知道的硬约束**(例如:产物名与测试环境落地名不一致、
ETXTBSY 的 `.new`→`stop`→`mv`→`start` 流程、`stream{}` 不可重加、发布顺序 device 先 api 后、
建表顺序即依赖顺序且写错报 MySQL 1824、时间列必须 DATETIME、`cabinets.status` 是配置态不表示在线……),
其余指向详细篇。**判据留在常驻加载的 AGENTS.md,逐项参考移出**。
## 二、docs/ 分类(原 21 个文件平铺 → 五个用途目录)
```
docs/
├── README.md 新增:文档地图(分类/权威性/旧名→现名映射/维护约定)
├── protocol/ 设备协议(冻结,对硬件交付)★唯一权威
│ ├── 柜控板固件对接文档.md
│ └── 1TN协议标准_*.md / *.pdf
├── tech/ 平台技术文档(开发/运维必读)
│ ├── API.md · 数据模型.md · 部署手册.md · 小程序用户端.md
├── contract/ 合同·规格·验收标准(商务依据,不描述实现)
├── compound-notes/ 单点经验笔记(原有)
└── archive/ ⛔ 历史留痕(只读,不代表现状,不可作依据)
├── 开发文档.md(早于现行实现)
└── 审查报告/深度分析报告-2026-07-06
```
- 19 个文件用 `git mv` 迁移(保留历史),3 个未跟踪文件用普通移动;
- **内容零改动**(唯一例外是引用替换),已核验 `docs/tech/API.md` 的 `git diff` 为空。
## 三、全仓引用同步:40 处 / 10 个文件
路径不只出现在文档里,还散落在**源码注释**(`db/migrate.rs`、`routes/cabinets.rs`、
`workers/report_worker.rs`、`tcp/connection.rs`、`h5-uniapp/utils/format.ts`)、
`test/tcp_e2e_smoke.py`、`tasks/001-*.md`、`README.md`、`AGENTS.md` 中,全部同步。
**并已实测校验命令能失败**:往 `docs/tech/API.md` 植入 `<!-- probe: docs/API.md -->`
→ 命中;删除 → 无输出。
> ⚠️ 过程中踩了一个坑并已修:这些 `.md` 多为 **CRLF**,我第一次用 `\n` 正则删除时
> **没匹配上 `\r\n`**,以为删干净了其实残留了一行 —— 靠 `git diff` 非空才发现。
> 已把「CRLF 必须按 `\r?\n` 处理」写进 `docs/README.md` 的维护约定。
## 四、顺带查实的失效引用(归档保留原文,不改写历史)
- `docs/tcp-protocol.md`:仅出现在 2026-07-06 的两份历史报告里(当时的事实);
- `docs/柜控板-平台TCP接口文档.md`:仅出现在协议文档 **v1.1 变更记录**里
(记录"已删除该内部重复文档"这件事),**不是活链接**,无需修复。
两者已在 `docs/README.md` 的「旧名 → 现名映射」表中给出对应关系。
|