--- title: Checkpoint 2026-09-30 00:08:17 UTC [974592113c] type: checkpoint permalink: main/projects/25464650-ed5d-440e-b362-190f2852d451/checkpoint-2026-09-30-00-08-17-utc-974592113c stable_id: 818c2a11-094f-428d-abf4-f92bc1bd11a3 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: a3-checkpoint-68e790b-20260930 created_at: '2026-09-30T00:08:17.135370+00:00' updated_at: '2026-09-30T00:08:17.135370+00:00' tags: - ready-to-merge - A3 - 后台接口A - feat/a3-admin-rest --- # 检查点:后台接口 A · A3 ready-to-merge ## 线 / 任务 - 线:后台接口 A - 任务:A3 注册设置、群管理、记录查询、概览、只读设置、/metrics 访问规则 - 分支:`feat/a3-admin-rest`(已推送 origin,未推 main) - 提交:`68e790be60fa0177868aa1236bc91122f4802562` feat: 实现管理后台 A3 注册群消息概览与 metrics 门禁 - 工作树:`e:\\code\\NixMsg-wt\\a3` - 基线:`origin/main` = `0efcfbb` ## 完成内容 - GET/PUT `/api/admin/registration`:开关、手填/生成 16 位安全码;明文只给已登录管理员;审计不写码 - 群:列表/创建/改名/解散/成员增减/转让;后台加人走 AdminAddMembers(无对话密码);列表详情 SQL,变更走 group.Service - GET messages 筛选与详情 deliveries;不读 message_bodies;响应无 body/正文 - overview(含 endpoints_self)、settings 只读 - `/metrics`:`httpx.MetricsGate`;共用端口无 token→404、错 token→401;单独 admin 监听不鉴权 - serve 注入 Groups/Config/Version;未改上行分发、未改停用/删除处理函数 - DEVIATIONS「后台接口 A」增补 A3 节 ## 验证 - `task check` 通过(web build、go build、golangci-lint 0、go test ./... 全绿) - httptest:注册开关、记录详情无测试正文、共用端口无令牌拿不到 /metrics ## 没做完的路由 - A1/A2/A3 管理 REST 路由均已实现;无 501 stub - 未做:自定义群 id(非空 id 返回 400) ## 给下个会话 - 总控审阅后 ff-only 合并 `feat/a3-admin-rest` - 标签:ready-to-merge - 勿强推 main