Claude Code 团队按风险决定一个 PR 要几个人批,我用 Spring Boot 把这套规则写成了 CI 关卡
Claude Code 团队按风险决定人工批准人数:低风险 0 人、中风险 1 人、高风险 2 人,机器人批准不算人,批准只对具体提交有效,审查三轮封顶。我用 Spring Boot 4.1.1 把这些规则写成读真实 git 数据的 CI 关卡,风险判定改用路径规则,并在 5 个样例分支上实测。
从 Java 与 Spring,到 AI 与开源。分享经得起实践的知识,和认真做技术的人一起成长。
Claude Code 团队按风险决定人工批准人数:低风险 0 人、中风险 1 人、高风险 2 人,机器人批准不算人,批准只对具体提交有效,审查三轮封顶。我用 Spring Boot 4.1.1 把这些规则写成读真实 git 数据的 CI 关卡,风险判定改用路径规则,并在 5 个样例分支上实测。
Spring Boot 3.5 起 heapdump 默认 access 为 none,exposure.include=* 不再放出它;env 的值从 3.0 起就默认打码。用 Spring Boot 4.1.1 把五组配置各跑一遍,看默认值挡住了什么,以及拨开哪两道开关后密码会泄露。
Newsletter 工具 Buttondown 从 2017 年起一直是创始人 Justin Duke 在 Stripe 上班之余的副业,2022 年初他才辞职全职做。按他 2026 年 9 月的自述,公司年化收入已超过 100 万美元,自筹且盈利。本文按他在 Hacker News、播客和官方年度回顾里的数字,复盘它的慢增长、辞职时机、口碑获客和定价。
JDK 27 GA 前不到一个月,C2 的 EncodeISOArray intrinsic 被发现会把字符串前 4 个字节写坏(JDK-8390546,P1),最后在 GA 构建 27+35 里回退修掉。用 Spring Boot 实测 27-ea+23/24/34、27 GA 和 28-ea+20:ea+24 和 ea+34 稳定复现,关掉压缩对象头就消失。还钉着 27 EA 镜像的该换了。
Spring Security 从 6.4 引入通行密钥起就默认把凭证存在内存里,重启后同一把密钥登录返回 401。在 Boot 4.1.1(Security 7.1.1)上用 Chrome 虚拟认证器实测:换成两个 JDBC 仓库后重启照常登录,官方建表脚本第二次启动会报表已存在;和密码组成 MFA 时要用 7.1 的 WEBAUTHN_REGISTERED 条件,否则没注册过的用户进不了注册页。
Gunnar Morling 的纯 Java Parquet 库 Hardwood 发布 1.1.0.Beta2:写入端新增 endRowGroup() 手动切 row group,tryWriteRow() 遇到坏记录返回 Rejected 而不中断 writer,S3 读取请求更少,还有 footer 缓存和两项破坏性变更。附 Spring Boot 4.1.1 实测:按月写 3000 行,跳过 7 条坏记录,得到 3 个 row group。
按 2026 年 10 月 16 日的官方定价,计算 Resend、Postmark、Amazon SES 在每月 3000、3 万、20 万封事务邮件时的月费,并列出免费档日限、超量开关、附件费等计费细节。
在 Spring Boot 4.1.1 上实测 Spring Framework 7 的 API 版本控制:@GetMapping(version) 写两个版本,请求头、查询参数、路径段三种解析方式,缺版本和未支持版本的 400 响应,以及 RestClient 和 RestTestClient 怎么带版本。默认版本的键是 spring.mvc.apiversion.default。
JDK 27 + Spring Boot 4.1.1 实测 AOT 缓存:fat jar 里的嵌套依赖进不了缓存,启动几乎不变;用 jarmode=tools 解压后训练,5 次启动的中位数从 1.228 秒降到 0.542 秒。附类加载计数和缓存失效实验。
Google ADK Java 1.12.0 新增实验性的 Workflow、Node、Edge、Route、JoinNode 等工作流类型,BaseAgent 改为继承 BaseNode。单个节点可以直接运行,但 Workflow.runNode 目前返回 UnsupportedOperationException,整张图还不能跑。同版还新增了禁止 Agent 配置声明本地 stdio MCP 服务器的开关。