When Linting Shrugs: Dynamic Checks for API Specs
summary
Static syntax linters like Spectral, Redocly, Vacuum validate structure but miss semantic failures: contradictory Accept header (XML) vs response (JSON), auth pattern declared as bearer but patterned as basic, 204 with a response body, ambiguous overlapping paths, conflicting allOf currencies, duplicate discriminators, and minItems violations. A custom linter flags six errors where others report none or only warnings, and executing a loop test by running a Specmatic mock plus generated contract tests reveals runtime failures such as an endpoint that returns 429 forever because the spec omits any 2xx response.
AI-written summary · about
chapters (13)
- 0:00API spec linter challenges
- 1:11Static linters miss semantics
- 2:22Linter blind spots demo
- 6:48Testing linters with flawed specs
- 8:15Specmatic static analysis
- 9:28Specmatic catches real errors
- 10:42Contract testing basics
- 12:52Dynamic validation with loops
- 14:23Loop test demo
- 16:29Runtime issues with loops
- 19:40Loop tests as defense
- 20:04Executable specs trusted
- 20:51Q&A
related talks
24mAugmented API Design Review with OpenAPI and Spectral
22mEasier Lint Authoring with Semantic Search and (...)
35mYou Could Lint More
43mWhy You Don't Trust Your Linter
34mLint to the Rescue
25mWrite Perfect Code with Standard and ESLint
43mImprove your API and OpenAPI
24mStatic Analysis: Don't Fear the Linter!
