diff --git a/projects/25464650-ed5d-440e-b362-190f2852d451/Checkpoint 2026-09-29 22-53-35 UTC [d445e380d4].md b/projects/25464650-ed5d-440e-b362-190f2852d451/Checkpoint 2026-09-29 22-53-35 UTC [d445e380d4].md new file mode 100644 index 0000000..d9c22af --- /dev/null +++ b/projects/25464650-ed5d-440e-b362-190f2852d451/Checkpoint 2026-09-29 22-53-35 UTC [d445e380d4].md @@ -0,0 +1,54 @@ +--- +title: Checkpoint 2026-09-29 22:53:35 UTC [d445e380d4] +type: checkpoint +permalink: main/projects/25464650-ed5d-440e-b362-190f2852d451/checkpoint-2026-09-29-22-53-35-utc-d445e380d4 +stable_id: acc1b400-897d-43fd-a25c-2a607acdf737 +scope: project +memory_type: checkpoint +project_id: 25464650-ed5d-440e-b362-190f2852d451 +usage_profile_id: 0c9feb46-d06e-43cd-9ef0-c5813c84a998 +status: active +revision: 1 +request_id: p-platform-p1-p4-20260930-ready +created_at: '2026-09-29T22:53:35.227926+00:00' +updated_at: '2026-09-29T22:53:35.227926+00:00' +tags: +- ready-to-merge +- line-P +- feat/p-platform +- P1 +- P2 +- P3 +- P4 +--- + +# 检查点:平台线 P1–P4 ready-to-merge + +## 完成内容 +- 分支 `feat/p-platform`(基于 origin/main `22c56d1`)完成 P1–P4 并推送。 +- 工作树:`e:\code\NixMsg-wt\p`(未改主工作区)。 +- 提交: + - `d777a1e` feat: 实现配置校验与运维命令及优雅停机(P1) + - `f2fe4bd` feat: 实现写入队列合并事务与 SAVEPOINT 隔离(P2) + - `47d627c` feat: 实现 argon2 哈希池、令牌与登录锁定计数(P3) + - `bbdd4af` feat: 注册 Prometheus 指标与 Handler(P4) + +## 关键实现 +- P1:`internal/config.Validate`(拒 max_body_bytes>262144);命令 admin init/set-password、backup、check-config、healthcheck;slog JSON;serve 需已 init;/readyz;停机 Drain≤10s。 +- P2:写 goroutine 合并(≤256 或 2ms)、SAVEPOINT;`store.ErrBusy` + Ready。 +- P3:`auth.Pool`(argon2id 19MiB/t=2/p=1,池=CPU)、Session/API 令牌、MemoryLocks。 +- P4:`internal/metrics` 注册表与 Handler(未挂路由)。 +- 未改:protocol/listener/broker/web/sdk、wire.go、PRD;DEVIATIONS 仅「平台 P」。 + +## 验证 +- 工作树内 `task check` 通过(build/lint/test)。 +- 推送:`origin/feat/p-platform`(普通推送,未强推,未推 main)。工作区干净。 + +## 没做完 / 给下个会话 +- `wire.go` 仍用 auth Stub;真实 `NewPool` 等需接线。 +- `/metrics` 未挂 serve(A 线访问规则)。 +- 停机路径尚无 MQTT 长连接踢除(等 N 线)。 +- 写队列 commit 耗时未自动打到 metrics(字段已提供,接线时绑定)。 + +## 下一步 +- 总控审阅后 ff-merge `feat/p-platform`;各线 rebase。 \ No newline at end of file