odboy
|
bb90f9cf79
|
feat(config): 新增配置回收站与还原功能
- 配置列表支持 deleted=1 查询已删除配置
- 新增 POST /admin/config/restore/:id,还原配置并写入 restore 历史
- 前端新增回收站页面,配置列表「新建配置」右侧增加红色入口按钮
|
2026-09-23 21:13:30 +08:00 |
|
odboy
|
185e458b45
|
refactor(config): 统一使用应用服务器时间
- 删除 dao.Now(),不再额外执行 SELECT NOW(3)
- 配置写入、历史记录和增量游标全部使用 time.Now()
- 移除数据库时间获取失败的错误分支
|
2026-09-21 21:11:34 +08:00 |
|
odboy
|
28c727501f
|
fix(config): 统一历史记录与配置的数据库时间来源
- saveHistory 接收调用方传入的数据库时间,不再使用 time.Now()
- 更新、删除、回滚先取 dao.Now(),避免取时间失败时产生无效历史
- 历史表 created_at 升级为 datetime(3),新增迁移脚本
|
2026-09-18 21:14:53 +08:00 |
|
odboy
|
1f8cae5a8b
|
refactor(auth): 移除 RO/RW 权限机制并完善配置历史
- 删除 GrantPermissons 与 buildPermissionCode,权限只判断超管、组管理员和应用负责人
- GetHistory 增加权限校验,避免越权读取配置历史
- 配置历史改为分页查询,前端历史弹窗增加分页并处理删除后的页码回退
|
2026-09-16 21:11:09 +08:00 |
|
odboy
|
af3cf2f6e6
|
feat(token): 将token迁移至请求体并兼容旧版客户端
- C++客户端在请求payload中添加token字段
- .NET客户端在请求payload中添加token字段
- Rust客户端在请求payload中添加token字段
- SpringBoot2客户端移除buildTokenParameter调用,改为将token放入请求体
- SpringBoot3客户端移除buildTokenParameter调用,改为将token放入请求体
- SpringBoot2/3客户端新增getToken方法供内部调用
- 服务端增加兼容逻辑,优先从请求体获取token,为空时回退至URL query参数
|
2026-09-13 21:07:56 +08:00 |
|
odboy
|
70cb3e301e
|
refactor(api): 移除未生效的 fetchAll 参数
- 删除 FetchChangedRequest 中未使用的 FetchAll 字段
- addChangedConfigs 去掉 fetchAll 参数及两处调用
|
2026-09-11 21:05:41 +08:00 |
|
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 |
|
odboy
|
1382c7a9f6
|
refactor: 将定时任务抽取到独立的 scheduler 包
|
2026-05-05 21:13:46 +08:00 |
|
odboy
|
9a7679960c
|
refactor: 添加 logger 模块并优化客户端实例清理逻辑
- 新增 logger 模块,统一使用 zap.SugaredLogger
- 将 config_api.go 中的 fmt.Printf 改为 logger.SugaredLogger.Errorf
- 客户端实例清理逻辑改为定时任务(每分钟执行)
- 清理条件改为 last_ping_at 超过 5 分钟
|
2026-05-02 21:01:26 +08:00 |
|
odboy
|
8957286bb5
|
fix: 修复客户端实例记录问题并删除父应用功能
- 客户端实例唯一标识改为 app_config_id+appName+env+ip 四元组
- 新增 last_ping_at 字段,轮询即更新,拉取配置时更新 last_fetch_at
- FetchChangedConfigs 无变更时也记录客户端实例
- 清理逻辑改为基于 last_ping_at 超过5分钟删除
- 删除父应用(ParentId)相关功能
|
2026-04-30 21:06:36 +08:00 |
|
odboy
|
ed94f53306
|
feat: 实现客户端实例上报功能
- 新增 ClientInstance 模型,记录客户端 IP 与配置项的关联
- 配置拉取接口(fetchAll/fetchChanged)自动记录客户端信息
- 配置列表页面展示每个配置的在线客户端数量
- 点击可查看具体 IP 地址、拉取方式、最后拉取时间
- 超过 5 分钟未拉取的记录自动清理
- 注释掉 /api/ping 接口
|
2026-04-27 21:07:37 +08:00 |
|
odboy
|
b4b38fa0c7
|
chore: 删除多个客户端模块
移除以下未完成的客户端模块:
- C++ 客户端和 demo
- .NET 客户端和 demo
- Kotlin 客户端和 demo
- Lua 客户端和 demo
- PHP 客户端和 demo
- Ruby 客户端和 demo
- Rust 客户端和 demo
更新根目录 README.md,移除相关说明。
|
2026-04-25 21:05:00 +08:00 |
|
odboy
|
7efca9440a
|
chore: 删除 C 客户端和 demo
移除 kenaito-conf-c-client 和 kenaito-conf-c-client-demo 模块。
|
2026-04-22 21:08:02 +08:00 |
|
odboy
|
5f95415b0f
|
fix(c-client): 修复 SDK 头文件保护和 demo 编译问题
- SDK main.c: 添加条件编译 #ifndef/#define KENAITO_CONF_CLIENT_IMPL
- Demo main.c: 移除 #include SDK 源文件,改为 extern 声明函数
- 修复 demo 中访问 configs.count 的编译错误
编译方式:
gcc -o demo main.c ../kenaito-conf-c-client/main.c \
-I/usr/local/opt/cjson/include -L/usr/local/opt/cjson/lib \
-lcurl -lcjson -lpthread
|
2026-04-20 21:11:38 +08:00 |
|
odboy
|
638d2842e4
|
fix(c-client): 修正 cJSON 头文件路径和编译说明
- 修正头文件引用:cjson/cJSON.h(macOS Homebrew 标准路径)
- 更新 README 编译说明:
- macOS: 添加 -I/usr/local/opt/cjson/include 包含路径
- Ubuntu/Debian: 使用 pkg-config 自动获取包含路径
- 移除多余的 -lcjson 链接参数(编译时不需要)
|
2026-04-17 21:05:26 +08:00 |
|
odboy
|
7bf1dff3ce
|
feat(c-client): 实现完整的 C 客户端 SDK
核心功能:
- JSON 解析:使用 cJSON 解析服务端返回的配置
- 配置缓存:自动保存到本地 .kenaito-config-cache.json 文件
- 定时同步:后台线程定时拉取配置变更(默认 10 秒)
- 配置变更回调:配置变更时自动触发回调函数
- 全量/增量拉取:首次全量拉取,后续通过 lastTime 增量拉取
- 优雅退出:支持信号处理,Ctrl+C 优雅关闭
API:
- config_client_init() - 初始化客户端
- config_client_start() - 启动客户端(全量拉取 + 后台同步)
- config_client_get() - 获取配置值
- config_client_stop() - 停止客户端并保存缓存
依赖:
- libcurl(HTTP 请求)
- cJSON(JSON 解析)
- pthread(后台同步线程)
编译:
- SDK: gcc -c main.c -o kenaito_conf.o -lcurl -lcjson
- Demo: gcc -o demo main.c ../kenaito-conf-c-client/main.c -lcurl -lcjson -lpthread
|
2026-04-15 21:02:16 +08:00 |
|
odboy
|
102c62b64b
|
docs(c-client): 修正 macOS 依赖说明
macOS 系统自带 libcurl,无需额外通过 brew 安装。
|
2026-04-12 21:05:14 +08:00 |
|
odboy
|
455d6aa6f0
|
docs(c-client): 完善 README 文档
- 添加完整的依赖安装说明(macOS/Ubuntu/Debian/CentOS)
- 补充快速开始示例代码和配置变更监听示例
- 添加完整的 API 参考文档
- 补充配置参数表格
- 添加完整示例代码
- 添加 Demo 运行指南
- 补充注意事项(JSON 解析、缓存、线程安全等)
- 添加与其他客户端对比表格
- 添加版本历史和后续开发计划
|
2026-04-10 21:00:37 +08:00 |
|
odboy
|
8dfe811555
|
docs: 清理 C/C++ 客户端中加密相关的残留引用
- docs(c-client): 移除 OpenSSL 加密库依赖说明
- 移除 README 中的 OpenSSL 依赖和 AES-128-CBC 解密功能说明
- 更新编译命令,移除 -lssl -lcrypto
- main.c 注释移除 decrypt 提及
- docs(cpp-client): 移除 OpenSSL 加密库依赖说明
- 移除 README 中的 OpenSSL 依赖和 AES 解密功能说明
- 更新编译命令,移除 -lssl -lcrypto
- docs(README): 更新 C/C++ 客户端说明
- 移除 libcurl + OpenSSL 的描述
- 更新编译命令,移除加密库链接
说明:项目已确认不使用配置加密功能,所有加密相关代码和配置已清理完毕。
|
2026-04-07 21:08:45 +08:00 |
|
odboy
|
c1d6725700
|
docs(readme): 更新 Node.js 客户端测试状态为通过
- 将 kenaito-conf-nodejs-client 状态从"待测试"更新为"测试通过"
- 将 kenaito-conf-nodejs-client-demo 状态从"待测试"更新为"测试通过"
|
2026-04-04 21:07:48 +08:00 |
|
odboy
|
5a0297c590
|
docs(python-client): 更新文档状态及表格格式对齐
- 将Python客户端SDK和示例状态从"待测试"更新为"测试通过"
- 格式化配置项表格,调整列宽对齐提升可读性
- 格式化环境变量表格,统一各列对齐方式
|
2026-04-02 21:11:14 +08:00 |
|
odboy
|
95d48ddde6
|
docs(springboot2-client): 完善 Spring Boot 2 客户端文档并更新配置项命名
- 新增 kenaito-conf-springboot2-client 详细 README 文档
- 更新主 README 中客户端状态为"测试通过"
- 统一配置项前缀为 kenaito.configcenter(原 kenaito.config)
- 移除 Spring Boot 3 客户端相关描述和文件
- 移除 application-dev.properties 中的加密配置项
- 版本号升级至 1.0.3
|
2026-03-30 21:08:12 +08:00 |
|
odboy
|
87fca6db79
|
refactor(springboot2): 重命名 CCPropertyPlaceholderConfigurer 为 KenaitoPropertyPlaceholderConfigurer
- 统一品牌命名,将 CCPropertyPlaceholderConfigurer 重命名为 KenaitoPropertyPlaceholderConfigurer
- 更新相关代码和引用
|
2026-03-28 21:05:52 +08:00 |
|
odboy
|
751a0f770f
|
refactor: 配置刷新优化和加密功能移除
- refactor(springboot2): 简化配置刷新逻辑,移除 EnvironmentChangeEvent 包装
- ConfigChangeHanlder 直接接收 Map<String,String> 参数
- 移除 EnvironmentChangeEvent 事件类
- 优化 token 参数构建和敏感信息脱敏处理
- refactor(server): 移除配置加密功能
- 删除 CryptoConfig 结构体和相关配置项
- 移除 application-dev.properties 中的加密配置
- 项目不再使用配置加密功能
- docs: 更新 README 和模块文档
- fix: 修复 Node.js 客户端配置缓存
|
2026-03-25 21:00:59 +08:00 |
|
odboy
|
c2e599097e
|
feat(springboot3): 添加 RefreshScope 自动配置支持
- 新增 KenaitoRefreshAutoConfiguration 类,实现 ApplicationContextAware
- 更新 spring.factories,注册 EnableAutoConfiguration
- 与 Spring Boot 2 客户端保持一致,支持 @Value 和 @ConfigurationProperties 动态刷新
|
2026-03-23 21:04:15 +08:00 |
|
odboy
|
82707de831
|
docs: 更新 README API 文档,补充完整路由列表
|
2026-03-20 21:17:24 +08:00 |
|
odboy
|
858dfcb5cf
|
feat: 查询条件优化和 xorm session 修复
|
2026-03-18 21:01:04 +08:00 |
|
odboy
|
6ab368f21e
|
feat(group): 业务组禁用后限制用户登录和配置拉取
|
2026-03-15 21:19:48 +08:00 |
|
odboy
|
928a95fccd
|
fix: 修复多个代码质量缺陷
|
2026-03-13 21:11:06 +08:00 |
|
odboy
|
932db9fbdc
|
fix: 修复多个安全缺陷和功能问题
- 移除加密相关代码(服务端和所有客户端)
- 修复 JWT 验证未检查签名算法的问题
- 修复重置密码使用不安全随机数的问题
- 实现 Logout 服务端失效机制
- 修复历史版本对比 diff 颜色标记错误
- 修复占位符解析循环引用风险
- 添加用户禁用状态检查
- 更新 bug 清单文档
|
2026-03-10 21:07:22 +08:00 |
|
odboy
|
f41d53da41
|
feat(web): 配置历史对比改为左右分栏,支持修改行识别
- 对比视图从上下布局改为左右分栏(当前生效 vs 历史版本)
- 新增 modified 行类型,相邻的删除+新增行配对标记为已修改(黄色高亮)
- 移除 diff npm 依赖,改用内置 LCS 算法实现行级对比
- 弹窗宽度调整为 1200px 适配双栏布局
|
2026-03-08 21:14:04 +08:00 |
|
odboy
|
4c3648cf7f
|
feat: 新增 8 个语言客户端 SDK
- PHP 客户端 (kenaito-conf-php-client)
- .NET 客户端 (kenaito-conf-dotnet-client)
- C 客户端 (kenaito-conf-c-client)
- C++ 客户端 (kenaito-conf-cpp-client)
- Lua 客户端 (kenaito-conf-lua-client)
- Kotlin 客户端 (kenaito-conf-kotlin-client)
- Rust 客户端 (kenaito-conf-rust-client)
- Ruby 客户端 (kenaito-conf-ruby-client)
每个客户端包含完整的 SDK 实现和 demo 示例,支持:
- 配置拉取(全量/增量)
- AES-128-CBC 解密
- 本地缓存
- 变更回调
- Token 认证
更新根目录 README.md:
- 技术栈列表新增 8 种语言
- 项目结构新增 16 个目录
- 客户端接入章节新增 8 个使用示例
|
2026-03-05 21:14:42 +08:00 |
|
odboy
|
2f5c343347
|
refactor(go-client): 拆分 demo 到独立目录并添加 README
- 将 kenaito-conf-go-client/example/ 拆分为独立的 kenaito-conf-go-client-demo/
- 添加 kenaito-conf-go-client/README.md 使用说明
- 更新根目录 README.md 项目结构
|
2026-03-03 21:10:12 +08:00 |
|
odboy
|
f0158c829c
|
chore(demo): Node.js demo 依赖改为版本号引用
- kenaito-conf-nodejs-client-demo 的 package.json 中 kenaito-conf 依赖从 file: 路径改为 ^1.0.0
- 已通过 npm link 安装到本地仓库,直接引用版本号即可
|
2026-02-28 21:19:11 +08:00 |
|
odboy
|
03a95abb4b
|
refactor: 客户端目录统一添加 kenaito-conf- 前缀
- go-client → kenaito-conf-go-client
- python-client → kenaito-conf-python-client
- python-client-demo → kenaito-conf-python-client-demo
- nodejs-client → kenaito-conf-nodejs-client
- nodejs-client-demo → kenaito-conf-nodejs-client-demo
- 更新所有 README 和 package.json 中的路径引用
|
2026-02-26 21:13:49 +08:00 |
|
odboy
|
710659350d
|
feat(web): Token 列显示掩码并支持一键复制
- Token 列显示前4位+****+后4位掩码格式
- 添加复制按钮,点击复制完整 Token 到剪贴板
- 列宽从 120 调整为 200 以容纳掩码和按钮
|
2026-02-23 21:06:59 +08:00 |
|
odboy
|
08b2ba4c25
|
refactor(api): fetchAllConfigs 接口从 GET 改为 POST
- 服务端: 新增 FetchAllRequest 结构体,参数通过 JSON body 传递
- 服务端: 路由从 api.GET 改为 api.POST
- Go/Python/Node.js/Java 客户端同步更新为 POST + JSON body
- 与 fetchChangedConfigs 接口风格统一,token 不再暴露在 URL 中
|
2026-02-20 21:18:43 +08:00 |
|
odboy
|
b011b3a0b3
|
feat(app): 实现应用 Token 校验功能
- 服务端: fetchAllConfigs 和 fetchChangedConfigs 添加 Token 校验
- 前端: 应用列表添加 Token 列和生成/删除 Token 按钮
- 客户端: Python/Node.js/Java 客户端传递 token 参数
- Java: 简化 buildTokenParameter 直接传递 token 值
|
2026-02-18 21:02:30 +08:00 |
|
odboy
|
65c537b831
|
feat(app): 注册 Token 生成/删除路由
|
2026-02-15 21:16:24 +08:00 |
|
odboy
|
b895321e9e
|
feat(app): 添加生成/删除应用 Token 的 API
- GenerateToken: 生成 64 字符随机 Token 并保存到应用
- DeleteToken: 清空应用 Token
|
2026-02-13 21:11:47 +08:00 |
|
odboy
|
8bb39f8b49
|
feat(app): Application 模型添加 Token 字段
|
2026-02-10 21:14:25 +08:00 |
|
odboy
|
98c5b62d0d
|
feat(client): 添加 Node.js 客户端及示例应用
- 新增 nodejs-client 模块,提供 ConfigClient 配置拉取、定时同步、变更监听
- 使用 Node.js 内置 crypto 模块实现 AES 解密,零外部依赖
- 新增 nodejs-client-demo Express 示例应用,端口 8083
- 更新 README.md,补充 Python 和 Node.js 客户端使用说明
- 修复 fetchAllConfigs API 响应格式判断逻辑
|
2026-02-08 21:02:57 +08:00 |
|
odboy
|
c31746d7d1
|
feat(client): 添加 Python 客户端及示例应用
- 新增 python-client 模块,提供 ConfigClient 配置拉取、定时同步、变更监听
- 使用 pyaes 替代 cryptography 实现 AES 解密,避免编译问题
- 新增 python-client-demo Flask 示例应用
- .gitignore 添加 Python 相关忽略规则
|
2026-02-05 21:05:19 +08:00 |
|
odboy
|
6653c752e7
|
fix(config): 统一配置键名并修复 EnvironmentInitializer 属性读取
- 统一使用 kenaito.config.baseUrl 替代 kenaito.config.base.url
- 更新示例配置参数(appName、profile、数据库配置键名)
- EnvironmentInitializer 添加从 Spring Environment 提取 kenaito.config.* 属性的逻辑
- .gitignore 添加 target 目录忽略规则
|
2026-02-03 21:10:48 +08:00 |
|
odboy
|
2549c76366
|
chore(example): 更新示例配置参数与键名
|
2026-01-31 21:13:31 +08:00 |
|
odboy
|
baaec4c4b3
|
feat(config): 添加配置历史版本内容查看功能
- 新增历史版本内容弹窗,支持查看配置详细内容
- JSON类型内容自动格式化为易读格式
- 操作时间使用formatTime方法格式化为可读格式
- 新增getTypeName方法展示配置类型名称
- 历史弹窗宽度从700px调整为900px以适配新内容
- 更新开发环境数据库连接配置
|
2026-01-29 21:01:28 +08:00 |
|
odboy
|
0148646e98
|
refactor
|
2026-01-26 21:13:51 +08:00 |
|
odboy
|
7f67ca4bfc
|
docs: 添加 UI 配色规范和品牌名称要求
|
2026-01-24 21:00:45 +08:00 |
|
odboy
|
a6bd08c569
|
style: 更新布局页面配色为科技蓝主题
|
2026-01-21 21:14:51 +08:00 |
|
odboy
|
e68b37f376
|
style: 优化登录页面,升级为科技风现代界面
|
2026-01-19 21:19:23 +08:00 |
|
odboy
|
5c9c4c50cb
|
docs: 更新 README,补充 Java 客户端模块、修正 API 路由和配置说明
|
2026-01-16 21:17:54 +08:00 |
|