必须清空上下文并重开窗口,禁用claude模型、启用deepseek-v3-terminus,确保类级@validated、jwt密钥统一注入、结论需显式保存与调用。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

CodeBuddy智能体调试时,常因误信“自动闭环”而跳过关键验证环节,导致JWT签名错位、BCrypt盐值丢失、DTO校验静默失效等线上500错误——这类故障在本地测试中几乎不暴露,却会在压测时集中爆发。
误把上下文当记忆,反复污染推理链
第一步:打开CodeBuddy对话窗口,点击右上角「清空上下文」按钮→确认弹窗选择「彻底清除」。
第二步:检查当前会话标题是否变为“新对话”,若仍显示“关于UserService的第3次修改”,说明清空未生效——【必须关闭当前Tab重开新窗口才能真正重置上下文】。
第三步:新开对话后,首条消息直接输入项目约束,例如:“作为Spring Boot 3.3项目,已启用spring-boot-starter-validation和jjwt-api 0.12.5”。
模型选错,注解细节全崩
方法一:在VS Code插件侧边栏点击「模型切换」→下拉菜单中【禁用Claude-4.5-Opus】,仅保留DeepSeek-V3-Terminus与DS-0324两个选项。
方法二:若正在生成Controller层代码,手动在Prompt末尾追加:“模型限定:DeepSeek-V3-Terminus”。这能规避其对@Validated与@RestControllerAdvice的混淆使用。
方法三:执行codebuddy config list,确认model_name字段值为deepseek-v3-terminus——若显示claude-opus,则需立即执行codebuddy config set model_name deepseek-v3-terminus。
依赖注入没走通,校验器根本没加载
① 打开pom.xml,搜索spring-boot-starter-validation→确认版本号≥2.7.0且未被
② 在LoginController类名上方添加@Validated,而非只加在方法参数前——【缺少类级@Validated会导致BindingResult始终为空】。
③ 启动应用后,访问/actuator/beans,搜索validator,确认DefaultValidator对象已实例化并注册到ApplicationContext。
JWT密钥错配,token解析直接失败
方法一:从application.yml中复制spring.security.jwt.secret的值→粘贴至jwt.io的“VERIFY SIGNATURE”栏→再将接口返回的token粘贴进Encoded框。若提示“Invalid Signature”,说明CodeBuddy生成的JwtUtils.generateToken()方法里硬编码了另一套密钥。
方法二:全局搜索项目中所有“secret”字符串,重点检查JwtUtils.java和SecurityConfig.java——【CodeBuddy可能生成两处密钥:一处在配置文件,一处在工具类,且值不同】。
方法三:删掉JwtUtils.java中所有硬编码密钥,改用@Value("${spring.security.jwt.secret}")注入,确保来源唯一。
结论面板乱用,复用失效还浑然不知
在对话中说出“【code=401表示未认证】”后,必须在同一消息末尾添加#save_as_conclusion→发送→等待右下角绿色提示出现。
调用时不能写“上次说401是什么意思”,而要精确提问“{{conclusion:code=401}}代表什么”或“code=401表示什么”。
注意:删除某轮对话,其中带#save_as_conclusion的消息及对应结论将【不可恢复】;修改原消息内容不会更新结论,必须重新标记。











