paperbot · PL 论文追踪

全部论文 待读 收藏

P2 RAPID: checking API usage for the cloud in the cloud

RAPID:在云中检查云 API 的使用
FSE Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering2021匹配度 4/10 · 该论文是传统静态分析(值相关类型状态自动机与全局值流分析)在云服务 API 使用检查中的工业落地,未涉及 LLM/Agent、浮点程序分析或贝叶斯程序分析,与用户核心研究方向(AI 与 PL 交叉)不直接匹配;但其工业级部署与问题驱动风格与用户的一般偏好有部分契合。引用 14 inbox
Michael Emmi, Liana Hadarean, Ranjit Jhala, Lee Pike, Nicolás Rosner, Martin Schäf, Aritra Sengupta, Willem Visser
crossref: 2026-09-12

AI 速览

一句话:提出并落地 AWS 的 RAPID 分析,用值相关类型状态自动机与全局值流检查云服务 API 使用。

RAPID 是 AWS 开发的工业级静态分析,目标是自动、快速且可操作地反馈云服务 API 的正确使用方式。其核心洞察是云 API 围绕短生命周期的请求与响应对象组织,使用模式可表示为值相关的类型状态自动机,并通过局部类型状态与全局值流分析相结合进行验证。论文讨论了大规模部署中遇到的挑战,并通过评估验证设计选择与部署启发式。结果表明,RAPID 能在大型工业代码库中快速、精确地报告多种有用的 API 误用违规。

问题
云服务 API 使用规则复杂且易被误用,开发者需要自动、快速、可操作的检查反馈。
方法
将 API 使用模式建模为值相关的类型状态自动机,结合局部类型状态与全局值流分析进行验证,并设计大规模部署启发式。
评估
在大型工业级代码库上评估,验证设计选择与部署启发式,展示其快速、精确地发现多种 API 误用。
原文摘要(Abstract)

We present RAPID, an industrial-strength analysis developed at AWS that aims to help developers by providing automatic, fast and actionable feedback about correct usage of cloud-service APIs. RAPID’s design is based on the insight that cloud service APIs are structured around short-lived request- and response-objects whose usage patterns can be specified as value-dependent type-state automata and be verified by combining local type-state with global value-flow analyses. We describe various challenges that arose to deploy RAPID at scale. Finally, we present an evaluation that validates our design choices, deployment heuristics, and shows that RAPID is able to quickly and precisely report a wide variety of useful API misuse violations in large, industrial-strength code bases.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot6423,
  title = {RAPID: checking API usage for the cloud in the cloud},
  author = {Michael Emmi and Liana Hadarean and Ranjit Jhala and Lee Pike and Nicolás Rosner and Martin Schäf and Aritra Sengupta and Willem Visser},
  booktitle = {FSE},
  year = {2021},
  doi = {10.1145/3468264.3473934}
}