<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Abhinav Sharma</title>
    <description>The latest articles on DEV Community by Abhinav Sharma (@abhinavs1920).</description>
    <link>https://dev.to/abhinavs1920</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4172137%2Fdc1ff21b-5b74-4a19-8d11-32bcd407f1e0.png</url>
      <title>DEV Community: Abhinav Sharma</title>
      <link>https://dev.to/abhinavs1920</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/abhinavs1920"/>
    <language>en</language>
    <item>
      <title>I built 13 labelled OpenAPI breaking-change cases, and oasdiff missed 2 of them</title>
      <dc:creator>Abhinav Sharma</dc:creator>
      <pubDate>Fri, 09 Oct 2026 06:23:43 +0000</pubDate>
      <link>https://dev.to/abhinavs1920/i-built-13-labelled-openapi-breaking-change-cases-and-oasdiff-missed-2-of-them-1jmp</link>
      <guid>https://dev.to/abhinavs1920/i-built-13-labelled-openapi-breaking-change-cases-and-oasdiff-missed-2-of-them-1jmp</guid>
      <description>&lt;p&gt;I'm working on Impact Gate, a warn-only PR check that tells you which consumers an API change can affect. Before claiming anything about it, I wanted a public set of cases anyone can run. So I wrote one: github.com/impact-gate/impact-gate-benchmarks.&lt;/p&gt;

&lt;p&gt;What it is: 13 before/after OpenAPI specs on one small Orders API, each with a label (breaking or not) and two made-up consumers, one of which is affected or neither is. 10 breaking changes, 3 controls (a new optional field, a new endpoint, a renamed path parameter).&lt;/p&gt;

&lt;p&gt;What I ran: oasdiff v1.33.0 with --fail-on ERR. It caught 8, missed 2, raised no false alarms. The misses: removing an optional response field, and adding an API key requirement to an operation. oasdiff reports both as info, which is a defensible choice for a spec diff. But a consumer that reads that field, or calls without a key, breaks all the same. That gap between spec-level breaking and consumer-level breaking is what I want to measure.&lt;/p&gt;

&lt;p&gt;Limits, plainly: the cases are synthetic, I wrote the labels myself, and 13 cases proves nothing about real-world accuracy. Next: real-project cases and automated consumer scoring. If you disagree with a label, open an issue, I'd like to be wrong in public. To score your own tool: TOOL_CMD="your-tool" bash scripts/run.sh.&lt;/p&gt;

</description>
      <category>openapi</category>
      <category>api</category>
      <category>opensource</category>
      <category>testing</category>
    </item>
  </channel>
</rss>
