跳到主内容
@wquguru
精选88r/LLMDevs(Reddit)技巧与观点

ZeroSlop:用确定性CI拦截AI代码PR膨胀与12类安全漏洞

AI agents write 3x more code, yet PRs take 4x longer to get merged: Enforcing deterministic AST invariants & 12 CWE security shields in GitHub CI

原文
发到 X
推荐理由

直击AI Coding当前痛点,提供了从问题诊断到具体CI配置的可落地方案,适合正在引入AI Agent的团队参考其安全与质量门禁策略。

TL;DR: AI coding agents increased raw PR volume by 300%, yet overall merge velocity has dropped by 40% because Senior Engineers spend 15–20 hrs/week untangling 200-line hallucinated wrappers, deleted tests, and subtle CWE security flaws. After shipping patches into tier-1 upstream systems repos (LLVM #215076, Meta Velox #18529, DuckDB #26443, Apache DataFusion #24394, Microsoft Pyright #11605, Tokio #8595, ClickHouse #114954, OpenAI Triton #12221), we codified those exact deterministic CI gates into an open GitHub Actions workflow (ZeroSlop · Architecture & Simulator) that strips 94% of AI bloat, enforces 12 CWE security shields, and gets PRs merged 100% green in minutes.

TL;DR:AI 编码代理使原始 PR 数量增加了 300%,但由于高级工程师每周花费 15–20 小时来梳理 200 行的幻觉包装器、被删除的测试以及细微的 CWE 安全漏洞,整体合并速度下降了 40%。在向一级上游系统仓库(LLVM #215076、Meta Velox #18529、DuckDB #26443、Apache DataFusion #24394、Microsoft Pyright #11605、Tokio #8595、ClickHouse #114954、OpenAI Triton #12221)提交补丁后,我们将这些确切的确定性 CI 门禁固化为了一个开源 GitHub Actions 工作流(ZeroSlop · 架构与模拟器),该工作流可消除 94% 的 AI 冗余代码,强制执行 12 项 CWE 安全防护,并使 PR 在几分钟内实现 100% 绿色通过。

1. The 2026 Engineering Bottleneck: Why AI PRs Stall in Review

1. 2026 年工程瓶颈:为何 AI 生成的 PR 在审查中停滞

When shipping patches into upstream systems repos like LLVM, Meta Velox, DuckDB, or Tokio, a real production fix is 4 to 15 lines of surgical invariant changes paired with a deterministic regression test that passes CI on the first push.

在向 LLVM、Meta Velox、DuckDB 或 Tokio 等上游系统仓库提交补丁时,真正的生产环境修复通常仅包含 4 到 15 行针对不变量的精准修改,并附带一个在首次推送时即可通过 CI 的确定性回归测试。

Inside commercial teams using Cursor, Copilot, or Claude Code, the opposite happens:

在使用 Cursor、Copilot 或 Claude Code 的商业团队内部,情况则恰恰相反:

  • 94% Diff Bloat: An agent generates a 240-line wrapper class instead of fixing a 4-line boundary condition (interactive diff breakdown).
  • Weakened Tests: When a test fails, the agent silently deletes or loosens the assertion to manufacture a green check.
  • Noisy LLM Review Bots: Conversational AI review bots run another LLM to dump 25 chatty comments on top of a bloated PR—without shrinking the diff or getting the PR merged.
  • 94% 的差异膨胀:代理生成了一个 240 行的包装类,而不是修复一个 4 行的边界条件(交互式差异分解)。
  • 弱化的测试:当测试失败时,代理会静默地删除或放宽断言,以制造出绿色的检查标记。
  • 嘈杂的 LLM 审查机器人:对话式 AI 审查机器人运行另一个 LLM,在一个膨胀的 PR 上生成 25 条闲聊评论——既没有缩小差异,也没有促成 PR 合并。

2. Conversational LLM Review Bots vs. Deterministic PR Airlock

2. 对话式 LLM 审查机器人 vs. 确定性 PR 气闸

Engineering DimensionConversational AI Review BotsDeterministic PR Airlock (ZeroSlop)
Primary ObjectiveLeave 25+ chatty LLM comments on a bloated diffGet PRs merged 100% green in minutes (not 4 days)
Diff MinimizationReviews 200 lines of hallucinated wrappers as-isStrips up to 94% of AI bloat down to the core AST invariant
CI Failure TriageIgnores red CI checks or hallucinates fixesSeparates contributor code defects from runner flakes
Test IntegrityMisses deleted or weakened test assertionsHard-blocks unauthorized regression test deletions
PR Comment HygieneSpams new threads on every git pushStrictly 1 self-updating PR Verdict Card + Mermaid Graph
Security & PrivacyCloud LLM retention & external dashboards12-Shield CWE Airlock + Zero Code Retention
工程维度对话式 AI 审查机器人确定性 PR 气闸 (ZeroSlop)
主要目标在膨胀的差异上留下 25+ 条闲聊的 LLM 评论在几分钟内让 PR 100% 绿色通过(而非 4 天)
差异最小化原样审查 200 行的幻觉包装器剥离高达 94% 的 AI 冗余代码,回归核心 AST 不变量
CI 故障分类忽略红色的 CI 检查或幻觉式修复将贡献者代码缺陷与运行器随机故障分离
测试完整性遗漏已删除或弱化的测试断言严格阻止未经授权的回归测试删除
PR 评论卫生每次 git push 都垃圾邮件式地开启新线程严格使用 1 个自我更新的 PR 判决卡片 + Mermaid 图表
安全与隐私云 LLM 数据留存及外部仪表板12 盾 CWE 气闸 + 零代码留存

3. The 12-Shield Deterministic CWE Security Airlock (ZS-SEC-001 – ZS-SEC-012)

3. 12 盾确定性 CWE 安全气闸 (ZS-SEC-001 – ZS-SEC-012)

Every Pull Request is audited in milliseconds across 8 merge-readiness signals (0–100) and 12 deterministic CWE security shields before a human reviewer is pinged:

在通知人类审查者之前,每个 Pull Request 都会在毫秒级时间内经过 8 个合并就绪信号(0–100)和 12 个确定性 CWE 安全盾的审计:

Shield IDSecurity Vector & CWE / CVE MappingWhat ZeroSlop Security Deterministically Intercepts
ZS-SEC-001SQL & Vector Injection (CWE-89 / CWE-943)Unparameterized SQL/NoSQL/Vector template literals & raw string concatenation
ZS-SEC-002Hardcoded & Seeded Secrets (CWE-798 / CWE-256)API keys, JWT secrets, seeded credentials & plaintext password comparisons
ZS-SEC-003Unbound Identity / IDOR (CWE-639 / CWE-862)Trusting req.body.userId instead of verified session/JWT caller identity
ZS-SEC-004Command & Eval Injection (CWE-78 / CWE-94)Unsanitized child_process.exec, os.system, subprocess(shell=True), eval
ZS-SEC-005Silent Exception Swallowing (CWE-390)Empty catch {} blocks and swallowed promise rejections that hide crashes
ZS-SEC-006XSS & Unsanitized DOM (CWE-79)dangerouslySetInnerHTML, .innerHTML =, and unescaped template rendering
ZS-SEC-007Unsafe Deserialization (CWE-502 / CWE-22)pickle.loads, yaml.load without SafeLoader, and ../ path traversal
ZS-SEC-008SSRF & Disabled TLS (CWE-918 / CWE-295)Unvalidated fetch(req.body.url) & NODE_TLS_REJECT_UNAUTHORIZED = '0'
ZS-SEC-009CI/CD "Pwn Requests" (CWE-426 / CWE-250)pull_request_target fork checkouts & ${{ github.event.pull_request.title }} injection
ZS-SEC-010AI Package "Slopsquatting" (CWE-829 / CWE-494)Hallucinated npm/PyPI/Cargo packages, unpinned Git deps & `curl
ZS-SEC-011Resource Exhaustion / DoS (CWE-400 / CWE-770)while(true) without exit bounds, leaked setInterval, unbounded Promise.all
ZS-SEC-012Trojan Source & Jailbreaks (CVE-2021-42574)Invisible Unicode Bidi characters & hidden IGNORE PREVIOUS INSTRUCTIONS comments
盾牌 ID安全向量与 CWE / CVE 映射ZeroSlop Security 确定性地拦截的内容
ZS-SEC-001SQL 与向量注入 (CWE-89 / CWE-943)未参数化的 SQL/NoSQL/向量模板字面量及原始字符串拼接
ZS-SEC-002硬编码与种子秘密 (CWE-798 / CWE-256)API 密钥、JWT 密钥、种子凭证及明文密码比较
ZS-SEC-003无界身份 / IDOR (CWE-639 / CWE-862)信任 req.body.userId 而非已验证的会话/JWT调用者身份
ZS-SEC-004命令与 Eval 注入 (CWE-78 / CWE-94)未经清理的 child_process.exec、os.system、subprocess(shell=True)、eval
ZS-SEC-005静默异常吞没 (CWE-390)空的 catch {} 块及被吞没的 promise 拒绝,这些会隐藏崩溃
ZS-SEC-006XSS 与未清理 DOM (CWE-79)dangerouslySetInnerHTML、.innerHTML = 以及未转义的模板渲染
ZS-SEC-007不安全的反序列化 (CWE-502 / CWE-22)pickle.loads、不使用 SafeLoader 的 yaml.load 以及 ../ 路径遍历
ZS-SEC-008SSRF 与禁用的 TLS (CWE-918 / CWE-295)未验证的 fetch(req.body.url) 及 NODE_TLS_REJECT_UNAUTHORIZED = '0'
ZS-SEC-009CI/CD "Pwn Requests" (CWE-426 / CWE-250)pull_request_target fork 检出及 ${{ github.event.pull_request.title }} 注入
ZS-SEC-010AI 包 "Slopsquatting" (CWE-829 / CWE-494)幻觉生成的 npm/PyPI/Cargo 包、未固定版本的 Git 依赖及 `curl
ZS-SEC-011资源耗尽 / DoS (CWE-400 / CWE-770)无退出边界的 while(true)、泄漏的 setInterval、无界的 Promise.all
ZS-SEC-012Trojan Source 与越狱 (CVE-2021-42574)不可见的 Unicode 双向字符及隐藏的 IGNORE PREVIOUS INSTRUCTIONS 注释

4. Upstream Systems Proof (Click Any PR to Inspect the Diff)

4. 上游系统证明(点击任意 PR 检查差异)

These deterministic CI invariants come directly from shipping merged & 100% green Pull Requests across upstream systems repositories:

这些确定性的 CI 不变量直接来自跨上游系统仓库发布的已合并且 100% 绿色的 Pull Requests:

Upstream RepositoryLive Pull RequestStatusCore Systems Invariant & Regression Coverage
LLVM Compiler Infrastructurellvm/llvm-project#215076MERGEDFixed Waitcnt brackets in GFX12+ AMDGPUAsmPrinter with MC regression tests
Meta Velox Execution Enginefacebookincubator/velox#18529MERGEDAligned DecimalUtil::toByteArray overflow bounds & restored kMaxDecimalBytes
DuckDB Analytical Engineduckdb/duckdb#26443MERGEDFixed pragma_storage_info internal compressed segment type alignment
Apache DataFusion Query Engineapache/datafusion#24394MERGEDFixed lead /lag window frame boundaries with non-NULL default values
Microsoft Pyright Type Checkermicrosoft/pyright#11605MERGEDResolved type narrowing across nested loop closures & pattern guards
Tokio Async Rust Runtimetokio-rs/tokio#8595100% GREENPreserved Coop budget accounting across JoinSet & FuturesUnordered
ClickHouse OLAP DBMSClickHouse/ClickHouse#114954100% GREENFixed StorageURL distributed cluster header forwarding & serialization
OpenAI Triton GPU Compilertriton-lang/triton#12221100% GREENEnforced strict tensor descriptor stride & block shape invariants
Cloudflare Agents SDKcloudflare/agents#1248MERGEDHardened state synchronization & WebSocket hibernation lifecycle invariants
上游仓库实时拉取请求状态核心系统不变量与回归覆盖率
LLVM 编译器基础设施llvm/llvm-project#215076MERGED在 GFX12+ AMDGPUAsmPrinter 中修复了 Waitcnt 括号,并通过 MC 回归测试
Meta Velox 执行引擎facebookincubator/velox#18529MERGED对齐了 DecimalUtil::toByteArray 的溢出边界并恢复了 kMaxDecimalBytes
DuckDB 分析引擎duckdb/duckdb#26443MERGED修复了 pragma_storage_info 内部压缩段类型对齐问题
Apache DataFusion 查询引擎apache/datafusion#24394MERGED修复了带有非 NULL 默认值的 lead/lag 窗口帧边界
Microsoft Pyright 类型检查器microsoft/pyright#11605MERGED解决了跨嵌套循环闭包和模式守卫的类型收窄问题
Tokio Async Rust 运行时tokio-rs/tokio#8595100% GREEN在 JoinSet 和 FuturesUnordered 之间保留了 Coop 预算核算
ClickHouse OLAP 数据库管理系统ClickHouse/ClickHouse#114954100% GREEN修复了 StorageURL 分布式集群头转发与序列化
OpenAI Triton GPU 编译器triton-lang/triton#12221100% GREEN强制执行严格的张量描述符步幅和块形状不变量
Cloudflare Agents SDKcloudflare/agents#1248MERGED强化了状态同步和 WebSocket 休眠生命周期不变量

5. Architecture Documentation & GitHub Action Source

5. 架构文档与 GitHub Action 源码

  • Interactive PR Simulator & Architecture: https://www.ribbsaetersystems.com/zeroslop
  • 12-Shield CWE & Zero-Retention Security Matrix: https://www.ribbsaetersystems.com/zeroslop/security
  • GitHub Action Workflow: https://github.com/marketplace/actions/zeroslop-by-ribbsaeter-systems
  • GitHub Action Repository: https://github.com/patrickswedish/zeroslop-action
  • Technical Deep-Dive Writeup: https://www.ribbsaetersystems.com/blog/zeroslop-pr-gatekeeper-official-release
  • 交互式 PR 模拟器与架构:https://www.ribbsaetersystems.com/zeroslop
  • 12-Shield CWE 与零保留安全矩阵:https://www.ribbsaetersystems.com/zeroslop/security
  • GitHub Action 工作流:https://github.com/marketplace/actions/zeroslop-by-ribbsaeter-systems
  • GitHub Action 仓库:https://github.com/patrickswedish/zeroslop-action
  • 技术深入解读文章:https://www.ribbsaetersystems.com/blog/zeroslop-pr-gatekeeper-official-release

What deterministic CI gates or pre-review checks are your teams enforcing in 2026 to get PRs merged cleanly without burning out your staff engineers?

在 2026 年,为了在不耗尽员工工程师精力的情况下顺利合并 PR,你的团队正在强制执行哪些确定性 CI 门禁或预审查检查?

更进一步:量化金融体系

看懂新闻只是起点——沿量化金融路径,把它变成能交付的工程能力

进入量化体系 →

相似阅读

关联信息,但可能不是同一事件