Java 后端 VibeCoding
这个技能用于 Java 后端维护、功能改造、线上类问题排查、数据同步链路、清洗流程和生产相似环境调试。核心目标是:基于现有代码做最小可靠改动,并用真实证据验证结果。
工作原则
- 先理解代码再改动:定位 Controller/API 入口、Service 调用链、DAO/Mapper/Repository、配置、定时任务、数据库表和外部依赖。
- 优先最小改动:保持现有业务逻辑、接口结构、数据语义和错误处理习惯不变,除非用户明确要求重构或调整。
- 用户说“先出方案”时,只给方案,不直接改代码;用户说“直接实现”时,继续完成编码、验证和总结。
- 不混入无关改动:工作区可能有用户或历史遗留文件,提交时只提交本次任务相关文件。
- 按用户习惯沟通:如果用户偏好中文交流和中文 commit message,后续保持中文。
标准流程
- 确认需求,并用
rg、配置文件、入口类和关键 Service 建立当前代码上下文。 - 判断任务类型:接口行为、查询逻辑、业务规则、数据清洗、ETL、数据库结构、依赖构建、定时任务、前端契约。
- 明确风险边界:接口兼容性、数据语义、幂等性、全量/增量同步、事务范围、失败兜底、性能影响。
- 按现有模式做最小实现:复用当前项目的编码风格、异常语义、Mapper 写法和配置方式。
- 用最强可用证据验证:编译/测试、真实接口调用、数据库查询、日志确认、复现实例输入输出。
- 总结结果:说明改了什么、验证了什么、是否有前端配合点、是否还有环境或数据阻塞。
- 需要提交时,先
git status和git diff,只 stage 相关文件,使用符合用户习惯的提交信息,并报告提交号。
可选五角色协作模式
当用户明确要求使用子代理、角色拆分、并行协作或当前会话已经授权“五个子代理按需触发”时,按任务复杂度启用以下角色;简单问题不强行拆分。
- 需求理解:梳理用户目标、业务约束、验收口径、已有上下文和不应改动的边界。
- 方案计划:基于现有代码提出低风险实施路径、影响范围、回滚点和验证方式。
- 编码实现:只在明确写入范围内做最小代码改动,避免和其他角色重复修改同一文件。
- 代码审查:重点检查 bug、回归风险、异常处理、数据库兼容性、接口兼容性和遗漏测试。
- 测试总结:汇总编译、单测、接口、日志、数据库验证结果,区分已验证、未验证和环境阻塞。
使用子代理时,先判断哪些任务能并行推进;主流程保留关键路径工作,不把立即阻塞的核心判断完全交给子代理。
判断规则
- 真实运行结果优先于推测;服务已启动时,优先实际调用接口或查询数据库验证。
- 不把脏数据直接判成代码 bug;要区分源数据异常、清洗规则配置、字段长度/类型不匹配、游标时间窗和 Java 逻辑问题。
- 不混淆构建问题类型;父 POM 缺失、私服依赖缺失、Maven 插件下载失败、JDK 版本不匹配,不等于源码编译错误。
- 涉及数据库时要一起看实体类、Mapper XML/SQL、DDL/迁移脚本、真实表结构和运行数据。
- 涉及定时或增量任务时,要检查触发入口、游标/水位、时间窗口、重叠窗口、幂等性和手工执行是否记录任务状态。
- 涉及接口契约变化时,要明确告诉前端 endpoint、请求参数、响应字段、状态码、兼容性和响应语义是否变化。
参考清单
- 运行时、接口、数据库验证:读取
references/verification-checklist.md。 - 表结构、字段、实体、Mapper 调整:读取
references/database-change-checklist.md。 - Maven、私服、依赖、JDK 问题:读取
references/maven-dependency-checklist.md。 - 提交和交付:读取
references/git-commit-checklist.md。