From 45f9098e89bbddd31b82f393675a2ce92a9e7285 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=8F=E7=8A=80=E9=BA=9F?= Date: Wed, 26 Aug 2026 19:07:23 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20CHANGELOG=20=E7=BA=B3=E5=85=A5=20git?= =?UTF-8?q?=20=E7=AE=A1=E7=90=86=EF=BC=9BAGENTS.md=20=E4=B8=AD=E5=A4=AE?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E7=A9=BA=E9=97=B4=E8=B7=AF=E5=BE=84=E6=94=B9?= =?UTF-8?q?=E7=9B=B8=E5=AF=B9=E5=BC=95=E7=94=A8=20../workbuddy.xpcool.com?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 10 ++++++++-- .workbuddy/memory/CHANGELOG.md | 18 ++++++++++++++++++ AGENTS.md | 2 +- api/admin/admin/login/login.go | 1 + 4 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 .workbuddy/memory/CHANGELOG.md create mode 100644 api/admin/admin/login/login.go diff --git a/.gitignore b/.gitignore index 7ef8d1e..f0fab95 100644 --- a/.gitignore +++ b/.gitignore @@ -18,7 +18,13 @@ temp.yaml bin **/config/config.yaml -# WorkBuddy 本地记忆(不入库,跨账号上下文见 AGENTS.md 与 docs/change-log/) -.workbuddy/ +# WorkBuddy 本地记忆:仅放行变更记录(CHANGELOG.md),其余本地数据不入库 +.workbuddy/* +!.workbuddy/memory/ +.workbuddy/memory/* +!.workbuddy/memory/CHANGELOG.md # server runtime logs log/ + +# 本地环境变量(含数据库口令),禁止提交 +.env* diff --git a/.workbuddy/memory/CHANGELOG.md b/.workbuddy/memory/CHANGELOG.md new file mode 100644 index 0000000..e1a9dfc --- /dev/null +++ b/.workbuddy/memory/CHANGELOG.md @@ -0,0 +1,18 @@ +# service.xpcool.com 变更记录 +> 倒序:最新在上。格式:YYYY-MM-DD | 类型 | 摘要 + +2026-08-26 | CFG | CHANGELOG 纳入 git 管理(.gitignore 放行 .workbuddy/memory/CHANGELOG.md),中央工作空间迁移至 ../workbuddy.xpcool.com(相对路径索引) + +2026-08-26 | CHG | 统一 API 前缀 /api/service/(admin→/api/service/admin、user→/api/service/user、open→/api/service/open);服务端口统一 10100(dev/prod/test);DB admin_menu 权限映射前缀同步;前端 vite 代理与 api 文件同步适配(全 POST + 动作式路径),路由回归 29 条一致 +2026-08-26 | CHG | 遗留 /v1 全移除(URL 前缀 /admin/v1→/admin、/api/v1→/api、/api/open/v1→/api/open);全部接口改 POST(5 组 CRUD 冲突路径改动作式 /list /create /update/{id} 等);DB admin_menu 权限映射 path 同步;全项目英文注释转中文(含 dao/entity/do/table 生成模板),路由回归 29 条全 POST 一致 +2026-08-26 | FIX | 修复审计落库失败:admin_operation_log.request_param 为 JSON 列,仅合法 JSON 入库、其余存 NULL(此前一直失败被「尽力而为」吞掉,系统日志查不到数据) +2026-08-26 | CHG | 区分系统日志与服务器日志:审计服务由 admin/system/audit 归位为 admin/system/log(package admin_system_log,含 Record+List),新增 GET /admin/v1/system/log 分页查询 + system:log:list 权限映射(菜单 id=63);服务器日志保持 admin/base/log +2026-08-26 | CHG | login 资源迁移至 admin/admin/login(api+service),全 api/service 包名统一为「路径下划线拼接」(package admin_admin_login / admin_system_menu / user_auth 式);恢复 api/open 并规范化(去 v1,包名 open_tools_ip 式);controller/cmd 引用同步,路由回归 28 条一致 +2026-08-26 | REQ | 后台登录接口联调通过:login/info/codes/menu-routes/RBAC/refresh(单次)/logout 全链路 curl 验证 OK(库 service_xpcool_com) +2026-08-26 | FIX | 联调发现并修复 admin refresh 单次使用漏洞:Refresh 撤销旧会话后补 RowsAffected 校验,重复使用旧 refreshToken 返回 code 10002 +2026-08-26 | CFG | 新建 .env.dev 本地配置(DB_DSN=mysql:root:root123@tcp(127.0.0.1:3306)/service_xpcool_com?loc=Local + JWT_SECRET),.gitignore 追加 .env* 防口令入库 +2026-08-26 | CHG | 清理模板:删除 api/hello、api/open、common/tools 及 controller/hello、controller/open;API 目录去掉 v1 层(api/admin/system/auth/auth.go 式),service 层完全镜像;URL 前缀保持 /admin/v1 兼容前端 +2026-08-26 | CHG | 目录重构:API 层资源目录化(api/admin/v1/system/auth/auth.go 式);service 层严格镜像 API 多级结构(internal/service/admin/system/auth/auth.go 式),接口随实现归位、admin_rbac 拆为 admin/role/menu_manage 三包,controller/cmd 引用同步,路由回归 29 条一致 +2026-08-26 | CHG | 补全管理端登录接口:新增 Refresh/Logout 端点(/admin/v1/system/auth/refresh|logout),登录改走 issue 把刷新令牌 JTI 落库,与 user 端刷新撤旧机制一致 +2026-08-26 | CHG | 同步三铁律(中文注释/做记录/中文优先)至 AGENTS.md「统一工作约定」小节 +2026-08-26 | CFG | 建立统一变更记录机制(CHANGELOG),接入 xpcool.com 中央索引 diff --git a/AGENTS.md b/AGENTS.md index 11a7072..7123887 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -119,7 +119,7 @@ go test ./... ## 统一工作约定(xpcool.com 中央规则) -> 与中央 `xpcool.com/.workbuddy/memory/MEMORY.md` 保持一致;本项目变更流水在 `.workbuddy/memory/CHANGELOG.md`。 +> 与中央 `../workbuddy.xpcool.com/.workbuddy/memory/MEMORY.md` 保持一致;本项目变更流水在 `.workbuddy/memory/CHANGELOG.md`。 1. **中文注释**:写/改代码时,在应有处(函数、复杂逻辑、配置项、非显然分支)加中文注释。 2. **做记录**:每次请求/变更/修复/文档动作,都在本项目 `.workbuddy/memory/CHANGELOG.md` 顶部追加一条,格式 `YYYY-MM-DD | 类型 | 一句话摘要`(类型:REQ/CHG/FIX/DOC/CFG/DEP)。 diff --git a/api/admin/admin/login/login.go b/api/admin/admin/login/login.go new file mode 100644 index 0000000..43003ee --- /dev/null +++ b/api/admin/admin/login/login.go @@ -0,0 +1 @@ +package login