odboy
|
a2c26cea98
|
feat(config): 增强配置解析的语法校验与错误处理
- 重构 ParseConfigToKVMap 使其在解析失败时返回 error 而非静默忽略
- 新增 ValidateConfig 方法,在保存和更新配置前校验语法正确性
- 将 XML 解析器从简单字符串匹配改为标准库 xml.NewDecoder,支持嵌套标签和实体转义
- 在配置保存和更新接口中集成语法校验,校验失败返回 400 错误
- API 拉取配置时解析失败的条目记录日志并跳过,避免整体请求中断
- 新增 config_parse_test.go 覆盖各配置类型的正常与异常场景
|
2026-09-08 21:19:55 +08:00 |
|
odboy
|
92c09df103
|
feat(config): 增强配置历史管理并统一数据库时间
- 新增 dao.Now() 函数获取数据库毫秒精度时间,避免多实例时钟偏差
- 增量同步查询增加上界(updated_at <= upperBound)防止竞态条件
- 配置创建、更新、删除、回滚统一使用数据库时间替代 time.Now()
- 配置历史新增 operate 字段记录操作类型(update/delete/rollback)
- 删除配置和回滚操作前增加历史快照记录
- 新增 DeleteHistory 接口支持手动删除单条历史记录
- 移除 GetHistory 的 Limit(5) 限制,返回完整历史列表
- 删除应用时同步更新关联配置的 updated_at 以便增量同步识别
- version 字段改为必填,前后端同步增加校验规则
- 前端历史列表增加操作类型列、删除按钮及表格最大高度限制
- 数据库表结构 datetime 升级为 datetime(3) 支持毫秒精度
|
2026-09-06 21:04:25 +08:00 |
|
odboy
|
c0a7631d5c
|
feat(client): 配置拉取请求中添加 token 认证字段
- 请求 payload 中新增 token 字段,将配置中的 Token 传递给服务端
- 新增 client_test.go 验证 fetchChanged 正确发送 token 和 lastTime
|
2026-09-03 21:15:18 +08:00 |
|
odboy
|
a62dbfe74c
|
fix(sql): 修复SQL注入漏洞改用参数化查询
- app.go 将查询条件从字符串拼接改为占位符参数绑定
- config.go 将查询条件从字符串拼接改为占位符参数绑定
- user.go 将查询条件从字符串拼接改为占位符参数绑定
- 移除 app.go 中重复的条件构建逻辑
- 对 group_id、enabled 等参数增加类型校验与错误处理
|
2026-09-01 21:17:57 +08:00 |
|
odboy
|
d2c0afa20e
|
refactor: 移除未使用的 user_permission 表及权限加载逻辑
- 删除 UserPermission 模型与 xorm Sync2 注册
- 移除登录/鉴权时从 user_permission 加载授权的逻辑
- 应用列表查询去掉 user_permission 子查询,仅保留负责人和业务组条件
- SQL 导出文件删除建表语句,新增 drop_user_permission.sql 升级脚本
|
2026-08-29 21:11:20 +08:00 |
|
odboy
|
d6a052e0a4
|
feat: 新增 Docker Compose 一键部署(MySQL + 后端 + 前端)
- 新增 docker-compose.yml,按健康检查顺序启动 MySQL 8、Go 后端与 Nginx 前端
- 新增 server/web 多阶段 Dockerfile、nginx 反向代理配置与 .dockerignore
- 后端支持 KENAITO_* 环境变量覆盖配置,新增 /health 健康检查接口
- 补充中英文 README 与 Docker 部署文档、.env.example 环境变量模板
|
2026-08-27 21:17:10 +08:00 |
|
odboy
|
005bd2490c
|
chore(web): 默认路由重定向调整为 profile/list
|
2026-08-24 21:09:43 +08:00 |
|
odboy
|
182765e4a0
|
feat: 新增 Spring Boot 3 客户端 SDK 及 demo
- 新增 kenaito-conf-springboot3-client,支持配置拉取、增量同步、@Value/@ConfigurationProperties 动态刷新和本地缓存
- 新增 kenaito-conf-springboot3-client-demo(端口 8084)及 Dockerfile.springboot3
- 完善中英文 README、Docker 部署文档,修正 Spring Boot 2 客户端配置键名与 demo 端口说明
- 修复增量同步将服务端 code=0 成功响应误判为错误的问题
|
2026-08-22 21:02:15 +08:00 |
|
odboy
|
5f67274e3f
|
feat: 新增 Bash 和 Dart 客户端 SDK 及 demo
- 新增 kenaito-conf-bash-client(Bash 4.0+,依赖 curl、jq)及对应 demo
- 新增 kenaito-conf-dart-client(Dart 2.12+,空安全)及对应 demo
- 新增 Dockerfile.bash(debian:bookworm-slim)和 Dockerfile.dart(dart:3.5)
- README 技术栈和项目结构补充 Bash、Dart 客户端
- README_EN.md 同步更新
- README_DOCKERFILE.md 补充 Bash、Dart 构建命令
- 修复 Bash 客户端 curl 2>&1 混入 stderr 导致响应解析失败
- 修复 Dart 客户端 latest.fetch.timestamp 类型转换兼容 string/num
|
2026-08-19 21:11:28 +08:00 |
|
odboy
|
97a5843483
|
feat(ruby-client): 新增 Ruby 客户端 SDK 及 demo,移除 C 语言支持
- 新增 kenaito-conf-ruby-client(Ruby 2.5+)及对应 demo
- 新增 Dockerfile.ruby
- README 技术栈移除 C,项目结构补充 Ruby 客户端
- README_EN.md 同步更新
- README_DOCKERFILE.md 补充 Ruby 构建命令
|
2026-08-17 21:16:19 +08:00 |
|
odboy
|
548f86b0da
|
fix: Rust 客户端删除配置日志补充具体 key 列表,移除 Rust 待测试标记
|
2026-08-14 21:07:42 +08:00 |
|
odboy
|
f63bcfa78b
|
feat: 新增 C++ 和 Rust 客户端 SDK 及 Docker 构建支持
- 新增 kenaito-conf-cpp-client / kenaito-conf-rust-client 及对应 demo
- 新增 Dockerfile.cpp / Dockerfile.rust
- README 目录结构补充 C++/Rust 客户端
- README_DOCKERFILE 补充 Windows docker run 命令,新增 C++/Rust 段落
|
2026-08-11 21:14:04 +08:00 |
|
odboy
|
436971d154
|
refactor: README_DOCKERFILE.md
|
2026-08-09 21:07:37 +08:00 |
|
odboy
|
1f93260b4c
|
docs(readme): 为所有客户端SDK补充本地容灾功能说明
|
2026-08-06 21:11:47 +08:00 |
|
odboy
|
dfda597159
|
refactor: Dockerfile.go
|
2026-08-04 21:18:20 +08:00 |
|
odboy
|
09e637584f
|
docs(readme): 为所有客户端SDK添加英文版README及语言切换链接
|
2026-08-01 21:06:23 +08:00 |
|
odboy
|
89b2c4b478
|
docs(readme): 添加英文版README并增加多语言切换入口
|
2026-07-30 21:17:21 +08:00 |
|
odboy
|
c288122373
|
feat(php-client): 实现 PHP 客户端 SDK 及示例
|
2026-07-27 21:17:44 +08:00 |
|
odboy
|
924c87e250
|
docs(readme): 移除 Kotlin 客户端相关文档内容
|
2026-07-25 21:17:15 +08:00 |
|
odboy
|
accfb229af
|
feat(lua-client): 新增 Lua 客户端 SDK 及 demo,修复 Dockerfile 构建问题
|
2026-07-22 21:06:38 +08:00 |
|
odboy
|
295de72308
|
feat(lua-client): 新增 Lua 客户端 SDK 及示例
|
2026-07-20 21:18:35 +08:00 |
|
odboy
|
881c9319df
|
docs(readme): 移除客户端 API 中不存在的 /api/ping 接口
|
2026-07-17 21:05:51 +08:00 |
|
odboy
|
c27f4e8985
|
docs(readme): 修复 Go 客户端 import 路径
|
2026-07-15 21:02:54 +08:00 |
|
odboy
|
2ee6dcf3ee
|
docs: 移除 Spring Boot 3.x 支持说明,仅保留 Spring Boot 2.x
|
2026-07-12 21:03:03 +08:00 |
|
odboy
|
259805b55e
|
docs: 删除 demo 项目的 README,修复 Go 客户端文档中的加密功能描述
|
2026-07-10 21:05:08 +08:00 |
|
odboy
|
1f6da33371
|
feat(perl-client): 新增 Perl 客户端 SDK 及 demo,各客户端版本统一为 1.0.3
|
2026-07-07 21:11:04 +08:00 |
|
odboy
|
a70d378b91
|
docs(dockerfile): 更新 Docker 配置文档格式与测试状态
|
2026-07-05 21:04:52 +08:00 |
|
odboy
|
75443cd39e
|
feat(clients): 各客户端支持环境变量配置,Spring Boot 2 客户端优化选择性刷新
- Dockerfile.springboot2: 更换基础镜像为阿里云私有镜像
- .NET/SpringBoot2 demo: 配置项改为从环境变量读取,支持 Docker 传参
- Spring Boot 2 客户端: @Value/@ConfigurationProperties 刷新优化为只刷新受变更 key 影响的字段
- README_DOCKERFILE.md: 标注 .NET 客户端 Docker 测试通过
|
2026-07-02 21:16:53 +08:00 |
|
odboy
|
d55ef1dfa6
|
chore(python-client): 删除演示项目中的配置缓存文件
|
2026-06-29 21:04:37 +08:00 |
|
odboy
|
25fdd23e15
|
docs(readme): 标注Python客户端Docker测试通过状态
|
2026-06-27 21:16:08 +08:00 |
|
odboy
|
bd6525f9a9
|
docs(readme): 标注Go和Node.js客户端Docker测试通过状态
- 在Go客户端标题添加"测试通过"标注
- 在Node.js客户端标题添加"测试通过"标注
|
2026-06-24 21:03:47 +08:00 |
|
odboy
|
ec33f8c52a
|
fix: 客户端日志打印变更配置名称,修复 Node.js Dockerfile 和 ConfigList 页面布局
- 各客户端 deleted/changed 日志增加具体配置名称输出
- Node.js Dockerfile 改为单阶段构建,修复依赖找不到问题
- ConfigList.vue 查询条件拆分为独立卡片,新增查询/重置按钮
- Node.js 客户端日志统一使用 console.error
|
2026-06-22 21:14:27 +08:00 |
|
odboy
|
b513435723
|
docs: 重构 README_DOCKERFILE.md,按客户端分节组织构建和运行命令
|
2026-06-19 21:10:21 +08:00 |
|
odboy
|
639475b730
|
feat: 实现配置删除通知机制(deletedKeys)
- 服务端 fetchChangedConfigs 接口新增 deletedKeys 字段,返回已删除配置的 key 列表
- Go/Node.js/Python/Spring Boot 客户端支持解析 deletedKeys 并删除本地配置
- Spring Boot 客户端新增 removeConfigs 方法,同步更新 Spring Environment
|
2026-06-17 21:07:51 +08:00 |
|
odboy
|
82523b9236
|
feat: 添加多语言客户端 Docker 支持
- 新增 .NET 客户端 SDK 和 demo 项目
- 添加 Go/Node.js/Python/.NET/SpringBoot2 的 Dockerfile
- Go demo 支持从环境变量读取配置
- 创建 README_DOCKERFILE.md 文档说明 Docker 使用方法
- 更新根目录 README.md 标记 .NET 客户端为已支持
|
2026-06-14 21:07:35 +08:00 |
|
odboy
|
18b8c4c18b
|
fix: 客户端实例上报 IP 地址优先使用 IPv4
新增 getClientIP 辅助函数,将 IPv6 环回地址(::1)转为 127.0.0.1,
避免在线客户端列表显示 IPv6 地址。
|
2026-06-12 21:17:12 +08:00 |
|
odboy
|
96c66c251b
|
feat: 应用管理和业务组管理负责人列改为显示数量
|
2026-06-09 21:05:23 +08:00 |
|
odboy
|
32a5cf8f85
|
refactor: 移除应用管理页面的新建配置按钮
|
2026-06-07 21:15:24 +08:00 |
|
odboy
|
4a965c4218
|
fix: 修复 ProfileList.vue 模板 div 标签未闭合问题
|
2026-06-04 21:07:42 +08:00 |
|
odboy
|
9d475eacba
|
feat: 环境管理页面添加环境名称模糊查询,统一双卡片布局
|
2026-06-02 21:08:32 +08:00 |
|
odboy
|
d9043c6f78
|
perf: 优化 N+1 查询,改为批量 IN 查询
- config.go List 方法:配置列表查询应用名称从循环内逐条查询改为批量 IN 查询
- config_api.go recordClientInstances:客户端实例上报从循环内逐条查询+写入改为批量 IN 查询+批量插入
|
2026-05-30 21:04:38 +08:00 |
|
odboy
|
fd16a61c87
|
feat: 后台管理页面查询条件统一改为独立卡片+按钮触发模式
业务组管理、用户管理、配置管理、应用管理页面的查询条件拆分为独立卡片,
新增查询/重置按钮,移除下拉选中即时触发查询的交互;
应用管理新增应用名称、应用编码模糊查询和业务组精确查询条件。
|
2026-05-28 21:09:26 +08:00 |
|
odboy
|
9889a08a4f
|
添加 Apache 2.0 开源许可证
|
2026-05-25 21:16:15 +08:00 |
|
odboy
|
1d94dbf8e1
|
优化:仅在 debug 模式下显示 SQL 日志
|
2026-05-23 21:01:16 +08:00 |
|
odboy
|
c0aa5b6806
|
refactor: 使用 TableName() 替代硬编码表名 client_instance
|
2026-05-20 21:06:06 +08:00 |
|
odboy
|
07e984828a
|
refactor: 移除启动时旧数据迁移逻辑
|
2026-05-17 21:15:58 +08:00 |
|
odboy
|
0b2e836c27
|
feat: 业务组和应用支持多负责人,修复权限查询表名错误
- 业务组 MasterUid 改为 MasterUids(逗号分隔多用户ID)
- 应用 OwnerId 改为 OwnerIds(逗号分隔多用户ID)
- 前端负责人下拉框改为多选
- 权限查询改用 FIND_IN_SET 匹配多负责人
- 修复 user_permissions 表名错误(应为 user_permission)
- 所有数据库实体添加 TableName() 方法显式指定表名
- xorm tag 显式指定 owner_ids/master_uids 列名
- 启动时自动清理 owner_ids 中的空格
|
2026-05-15 21:09:40 +08:00 |
|
odboy
|
5e55d899c3
|
refactor: 重构菜单结构,配置列表改为应用维度管理
|
2026-05-12 21:01:49 +08:00 |
|
odboy
|
b1e738791b
|
chore(gitignore): 清理简化忽略规则
|
2026-05-10 21:05:35 +08:00 |
|
odboy
|
1d2d1ab83e
|
style: 格式化 recordClientInstances 字段对齐并移除未使用的 fmt 导入
|
2026-05-07 21:16:20 +08:00 |
|