Your Name
3d01919511
test: 添加权限系统Schema验证测试并修复H2测试环境
...
- 创建PermissionSchemaVerificationTest (21个测试用例)
- 使用JPA实体+ddl-auto=create-drop自动建表
- 验证PRD定义的10张权限系统表结构和字段
- 修复H2兼容性(IDENTITY语法)
Phase 1数据库表创建完成:10张权限相关表
2026-03-04 21:33:43 +08:00
Your Name
891b90ebb7
feat(db): 创建权限管理系统数据库迁移文件
...
- V21: 权限核心表(6张) - 角色/权限/用户角色/部门等
- V22: 审批流程表(5张) - 流程配置/节点/实例/记录/历史
- V23: 审计与权限审计表(4张) - 审计日志/权限审计/快照/部门层级
共创建15张数据库表,完成Phase 1数据库表创建任务
2026-03-04 19:53:26 +08:00
Your Name
0eed01e9eb
docs: 完善项目文档并清理过时文件
...
新增文档:
- API_INTEGRATION_GUIDE.md: API集成指南(快速开始、SDK示例、常见场景)
- DEPLOYMENT_GUIDE.md: 部署指南(环境要求、生产部署、Docker部署)
- CONFIGURATION_GUIDE.md: 配置指南(环境配置、数据库、Redis、安全)
- DEVELOPMENT_GUIDE.md: 开发指南(环境搭建、项目结构、开发规范)
文档更新:
- api.md: 补充8个缺失的API端点(分享跟踪、回调、用户奖励)
文档清理:
- 归档18个过时文档到 docs/archive/2026-03-04-cleanup/
- 删除3个调试文档(ralph-loop-*)
代码清理:
- 删除4个.bak备份文件
- 删除1个.disabled测试文件
文档结构优化:
- 从~40个文档精简到12个核心文档
- 建立清晰的文档导航体系
- 完善文档间的交叉引用
2026-03-04 10:41:38 +08:00
Your Name
0b9d82c8d3
test(web): add edge case tests for interceptors
...
- Add inactive token test for UserAuthInterceptor (line 27)
- Add 1xx status code test for ApiResponseWrapperInterceptor (line 31)
- Add production profile and Redis null tests for RateLimitInterceptor
Coverage improvement: Web package 83% -> 85% (92/108 branches)
Overall: 66% (429/646 branches), +2 branches from previous commit
2026-03-04 09:58:38 +08:00
Your Name
c50e32d9e5
test: 提升ActivityService测试覆盖率到91% - 新增2个边界测试
...
- 新增createActivity时间验证测试(结束时间早于开始时间)
- 新增evictActivityCache缓存清除测试
覆盖率提升:
- ActivityService: 90% → 91% (+1%)
- Service包: 89% → 90% (+1%) 🎉 突破90%!
- 总体分支覆盖率: 65.3% → 65.4% (+0.1%)
- 新增覆盖分支: 1个
- 距离70%目标: 还需28个分支
2026-03-03 17:42:38 +08:00
Your Name
ac74323646
test: 为PosterRenderService添加边界测试 - 虽未提升覆盖率但增强测试完整性
...
- 新增escapeHtml测试
- 新增无效字体大小处理测试
- 新增null模板名fallback测试
说明: PosterRenderService剩余9个未覆盖分支主要是图片I/O和异常处理,
需要集成测试或特殊mock才能覆盖,投入产出比较低。
当前覆盖率: 65.3% (422/646分支)
距离70%目标: 还需29个分支
2026-03-03 17:24:15 +08:00
Your Name
f92818c73e
test: 提升ShareTrackingService测试覆盖率到100% - 新增3个边界测试
...
- 新增空白referer和userAgent的转化漏斗测试
- 新增null IP和null params的指标测试
- 新增null params的点击记录测试
覆盖率提升:
- ShareTrackingService: 82% → 100% (+18%) ✨
- Service包: 87% → 89% (+2%)
- 总体分支覆盖率: 64.5% → 65.3% (+0.8%)
- 新增覆盖分支: 5个
- 距离70%目标: 还需29个分支
2026-03-03 16:54:54 +08:00
Your Name
52175fde22
test: 提升ApiKeyEncryptionService测试覆盖率 - 新增4个边界测试
...
- 新增legacy默认密钥在生产环境的测试
- 新增空白密钥在生产环境的测试
- 新增environment为null的场景测试
- 新增非生产环境允许默认密钥的测试
覆盖率提升:
- ApiKeyEncryptionService: 73% → 84% (+11%)
- Service包: 86% → 87% (+1%)
- 总体分支覆盖率: 64.1% → 64.5% (+0.4%)
- 新增覆盖分支: 3个
- 距离70%目标: 还需34个分支
2026-03-03 16:46:30 +08:00
Your Name
11a73653aa
test: 提升Web包测试覆盖率 - 新增UrlValidator边界测试
...
新增测试:
- UserExperienceController: maskPhone方法测试
- UrlValidator: IPv6公网地址、0.0.0.0地址、无效主机名、URI异常处理
覆盖率提升:
- 总体分支: 63.6% → 63.8% (+1个分支)
- Web包: 78% → 79% (+1%)
- 新增测试: 5个
- 距离70%目标: 还需39个分支
累计成果(本次会话):
- 新增测试: 17个
- 分支覆盖: +8个 (404→412)
- Controller包: 73% → 89% (+16%)
- Web包: 78% → 79% (+1%)
2026-03-03 12:35:27 +08:00
Your Name
bbd27dca1d
test: 提升ActivityController测试覆盖率 - 新增topN边界测试
...
- 新增3个测试覆盖topN参数的边界条件
* topN超过列表大小的场景
* topN为0的场景
* topN为负数的场景
覆盖率提升:
- 总体分支覆盖率: 63.3% → 63.6% (+2个分支)
- Controller包: 84% → 89% (+5%)
- ActivityController: 77% → 更高
- 新增测试用例: 3个
- 距离70%目标: 还需40个分支
本次会话总成果:
- 新增测试: 12个
- 分支覆盖: +7个 (404→411)
- Controller包: 73% → 89% (+16%)
2026-03-03 12:03:56 +08:00
Your Name
81934725f3
test: 提升ShareTrackingController测试覆盖率
...
- 新增2个测试覆盖时间范围和参数处理
* getShareMetrics提供时间范围的场景
* registerShareSource处理null参数的场景
覆盖率提升:
- 总体分支覆盖率: 63% → 63.3% (+2个分支)
- Controller包: 80% → 84% (+4%)
- ShareTrackingController: 70% → 更高
- 新增测试用例: 2个
- 距离70%目标: 还需42个分支
2026-03-03 11:58:22 +08:00
Your Name
4f5060724b
test: 提升Controller测试覆盖率 - 新增IP提取和分页边界测试
...
- ShortLinkController: 新增3个测试覆盖IP地址提取逻辑
* X-Forwarded-For头部处理
* RemoteAddr回退逻辑
* 空白X-Forwarded-For处理
- UserExperienceController: 新增4个测试覆盖分页边界条件
* size=0时返回空列表
* 负数page处理
* Math.max边界逻辑
覆盖率提升:
- 总体分支覆盖率: 62% → 63%
- Controller包: 73% → 80% (+7%)
- 新增测试用例: 7个
- 距离70%目标: 还需44个分支
2026-03-03 11:51:55 +08:00
Your Name
f815fdf5b8
test: 提升ActivityController测试覆盖率 - 新增13个API契约测试
...
- 新增创建/更新/获取活动测试
- 新增活动统计和关系图测试
- 新增排行榜分页测试(topN, page, size边界条件)
- 新增排行榜CSV导出测试(带/不带topN)
- 新增null/负数/无效参数处理测试
- 新增页码超出范围返回空列表测试
覆盖率提升:
- Controller包: 67% → 73% (+6%)
- 指令覆盖率: 85% → 86% (+1%)
- 总分支覆盖率: 62% (保持)
距离70%目标还需47个分支,完成度90%
2026-03-03 11:33:49 +08:00
Your Name
76db4317ad
test: 提升ShareConfigService测试覆盖率 - 新增12个边界条件测试
...
- 新增null参数处理测试(extraParams, utmParams, title, description, imageUrl)
- 新增空集合处理测试(empty utmParams, empty extraParams)
- 新增null key/value过滤测试
- 新增占位符解析测试(timestamp)
- 新增默认模板回退测试
- 新增模板注册和获取测试
覆盖率提升:
- 分支覆盖率: 61% → 62% (+1%)
- Service包: 83% → 85% (+2%)
距离70%目标还需50个分支,完成度89%
2026-03-03 11:22:06 +08:00
Your Name
376bbcd99a
test: 提升ActivityService测试覆盖率 - 新增21个边界条件和异常处理测试
...
- 新增calculateReward边界条件测试(null/empty tiers, 无达成层级)
- 新增calculateMultiLevelReward的null规则测试
- 新增generateLeaderboardCsv的topN边界条件测试
- 新增getActivityGraph的maxDepth和limit边界条件测试
- 新增API密钥验证异常路径测试(revoked, invalid hash, missing)
- 新增文件上传null contentType测试
- 新增活动访问权限额外场景测试
覆盖率提升:
- 分支覆盖率: 57.8% → 61% (+3.2%)
- Service包: 74% → 83% (+9%)
- 指令覆盖率: 84% → 85% (+1%)
- 行覆盖率: 90.56% → 92% (+1.44%)
距离70%目标还需55个分支,完成度87%
2026-03-03 11:17:33 +08:00
Your Name
046151140f
test: 提升UserExperienceController测试覆盖率
...
- 新增4个测试用例,覆盖分页边界和未测试端点
- 测试invited-friends分页超出范围返回空列表
- 测试rewards分页超出范围返回空列表
- 测试getShareMeta端点(默认模板)
- 测试getShareMeta端点(自定义模板)
覆盖率提升:
- UserExperienceController: 50% → 更高
- Controller包: 63% → 67% (+4%)
- 总体分支: 57.8% (374/646)
- 测试用例: 8 → 12 (+4)
2026-03-03 10:57:14 +08:00
Your Name
777b60e974
test: 继续提升PosterRenderService测试覆盖率
...
- 新增5个测试用例,覆盖background处理的所有分支
- 测试background图片加载成功场景
- 测试background图片加载失败降级到背景色
- 测试background为空白字符串时使用背景色
- 测试HTML渲染中的background-image样式
- 测试URL编码异常处理
覆盖率提升:
- PosterRenderService: 68% → 74% (+6%)
- Service包: 72% → 74% (+2%)
- 总体分支: 57% (372/646)
- 测试用例: 8 → 13 (+5)
2026-03-03 10:41:58 +08:00
Your Name
f8ed2defb7
test: 提升PosterRenderService测试覆盖率
...
- 新增6个测试用例,覆盖更多分支场景
- 测试template为null时使用默认模板
- 测试button元素的background和borderRadius
- 测试null content处理
- 测试rect元素渲染(有/无background)
覆盖率提升:
- PosterRenderService: 59% → 68% (+9%)
- Service包: 70% → 72% (+2%)
- 总体分支: 56% (367/646)
2026-03-03 10:30:19 +08:00
Your Name
a21f39a8ec
test: 提升测试覆盖率 - 添加ApiResponseTest和RewardTest,修复ShareTrackingControllerTest
...
- 新增ApiResponseTest: 19个测试用例,覆盖ApiResponse及其内部类
- 测试成功响应、错误响应、分页响应
- 测试PaginationMeta的分页计算逻辑
- 测试Meta和Error内部类
- 测试Builder模式
- 新增RewardTest: 完整的领域对象测试
- 测试POINTS和COUPON两种奖励类型
- 测试equals/hashCode实现
- 测试边界条件
- 修复ShareTrackingControllerTest编译错误
- 移除重复的测试方法
- 添加缺失的AssertJ静态导入
当前覆盖率: 指令83%, 分支56%, 行90.24%
目标: 分支覆盖率达到85%
2026-03-03 10:23:32 +08:00
Your Name
3e2d1ece71
test: 提升测试覆盖率 - 添加拦截器和UrlValidator测试
...
- 新增 ApiResponseWrapperInterceptorTest (完整测试)
- 新增 ApiKeyAuthInterceptorTest (完整测试)
- 新增 UrlValidatorTest (完整测试)
- 覆盖率提升:
- 指令覆盖率: 81.89% → 83.59%
- 分支覆盖率: 51.55% → 57.12%
- 行覆盖率: 88.48% → 90.51%
- 新增测试用例覆盖:
- API版本头设置逻辑
- API Key认证流程(null/空白/吊销/哈希验证)
- URL验证(协议/localhost/私有IP/特殊地址)
- 边界条件和异常处理
2026-03-02 15:22:12 +08:00
Your Name
91a0b77f7a
test(cache): 修复CacheConfigTest边界值测试
...
- 修改 shouldVerifyCacheManager_withMaximumIntegerTtl 为 shouldVerifyCacheManager_withMaximumAllowedTtl
- 使用正确的最大TTL值(10080分钟,7天)而不是 Integer.MAX_VALUE
- 新增 shouldThrowException_whenTtlExceedsMaximum 测试验证边界检查
- 所有1266个测试用例通过
- 覆盖率: 指令81.89%, 行88.48%, 分支51.55%
docs: 添加项目状态报告
- 生成 PROJECT_STATUS_REPORT.md 详细记录项目当前状态
- 包含质量指标、已完成功能、待办事项和技术债务
2026-03-02 13:31:54 +08:00
Your Name
32d6449ea4
feat(jpa): persist Activity in create/update/get with defaults; fix H2 defaults; replace existence checks with repository
2025-09-30 21:20:20 +08:00
Your Name
2f5f819c0d
feat(jpa): add JPA entities and repositories aligned to Flyway; chore(deps): remove unused AMQP deps
2025-09-30 21:01:26 +08:00
Your Name
e8fc04886e
feat(perf): remove Thread.sleep via DelayProvider; chore(cache): add Redis cache TTL + JDK serialization; chore(test): migrate javax->jakarta for embedded redis; chore(config): add dev/test/prod profiles; chore(security): strengthen API key hashing with PBKDF2
2025-09-30 20:34:39 +08:00
Your Name
8a7afc8a00
chore: initial commit with CI pipeline, review and tasks docs
2025-09-30 16:39:51 +08:00