Why This Matters

If you build or buy GraphQL APIs, LLM‑powered mocks can shrink test‑data creation from hours to seconds. This speeds up feature work for developers and reduces the cost of maintaining stub data for enterprise teams.

On May 15, 2026, Expedia Group released mockql-rs as open source, a Rust CLI that injects LLM‑generated values into GraphQL fields tagged with @mock. The tool follows Airbnb’s @generateMock directive, which debuted in April 2026, and a GraphQL Foundation RFC opened in February 2026. All three tackle the same problem — providing realistic mock data without hand‑written fixtures — but use different architectures and, in two cases, the same directive name with incompatible semantics.

Developer Velocity Gains as LLM Mocks Replace Hand‑Written Fixtures

Teams at Airbnb and Expedia report that writing mock resolvers for complex types previously consumed up to 30 % of a sprint’s capacity. By delegating value generation to a large language model, mockql-rs and @generateMock produce plausible strings, numbers, and objects on demand, eliminating the need to maintain large fixture files. This shift lets developers focus on business logic rather than data fabrication.

In practice, a single @mock annotation can replace dozens of lines of TypeScript or JavaScript that previously defined example users, orders, or product catalogs. Because the LLM is prompted at request time, the mock data can vary with each call, uncovering edge‑cases that static fixtures miss. The result is faster iteration cycles and higher confidence in frontend‑backend contracts.

The productivity boost is especially valuable for teams practicing contract‑first development, where frontend mocks must evolve alongside schema changes. When the schema updates, the LLM‑driven mock adapts automatically, reducing the manual sync overhead that often leads to mismatched expectations between UI and API teams.

Enterprise Buyers Face Vendor Lock‑In Risk Due to Competing Mock Directives

Although Airbnb’s @generateMock and Expedia’s mockql-rs both target the @mock‑annotated field, they assign different meanings to the same directive name. Airbnb’s version expects a static JSON‑compatible value supplied at build time, while Expedia’s Rust CLI invokes an LLM at runtime to produce dynamic data. This semantic divergence means that a schema annotated for one tool cannot be used interchangeably with the other without rewriting the directives.

For enterprises that standardize on a single GraphQL gateway or API management platform, the incompatibility creates a hidden switching cost. Adopting one vendor’s mocking approach may lock teams into its toolchain, making it difficult to migrate to a competitor’s solution later. Procurement teams must now evaluate not just core API features but also the mocking ecosystem’s portability.

The situation mirrors earlier fragmentation in the API specification world, where competing extensions led to vendor‑specific dialects. Until the GraphQL Foundation converges on a single semantics for @mock, buyers will need to maintain adapter layers or accept the risk of being tied to a particular mocking provider.

Airbnb’s @generateMock and Expedia’s mockql-rs Show Divergent Architectures, Raising Integration Complexity

Airbnb’s approach integrates the mock generation step into the build pipeline, producing static mock responses that are bundled with the application. This makes the mocks deterministic and easy to cache, but requires a rebuild whenever the schema or mock logic changes. Expedia’s mockql-rs, by contrast, operates as a runtime middleware that calls an LLM for each request, offering flexibility at the cost of added latency and a dependency on an external model service.

The architectural split forces teams to choose between predictable, cacheable mocks and dynamically varied data that can simulate production‑like volatility. For performance‑critical environments, such as high‑frequency trading platforms or real‑time gaming backends, the latency introduced by LLM calls may be prohibitive. Conversely, teams seeking to test error‑handling paths or edge‑case data distributions may favor the runtime model despite its overhead.

Integration complexity rises further when organizations attempt to run both systems in parallel — perhaps to migrate gradually from Airbnb’s static mocks to Expedia’s LLM‑driven version. They must maintain dual directive schemas, manage separate mock caches, and ensure that monitoring tools correctly attribute latency spikes to the appropriate source.

GraphQL Foundation RFC Stalls, Leaving Teams to Choose Between Proprietary Solutions

The GraphQL Foundation’s RFC, opened in February 2026, aimed to standardize a @mock directive that would work across runtimes and languages. As of May 2026, the RFC has not progressed beyond the initial discussion phase, with no consensus reached on whether the directive should resolve at build time, runtime, or via a pluggable provider model. This stagnation leaves the market without an official reference implementation.

In the absence of a foundation‑backed standard, companies like Airbnb and Expedia are free to pursue their own interpretations, which accelerates innovation but also risks creating a fragmented ecosystem. Developers must now verify that the mocking library they adopt matches the semantic expectations of their schema, testing frameworks, and API gateways.

Industry analysts note that similar delays have historically preceded the emergence of de facto standards driven by dominant vendors. If either Airbnb’s or Expedia’s approach gains widespread adoption, it could pressure the Foundation to codify that variant, potentially marginalizing alternative designs.

Competitive Pressure on API Tooling Vendors to Support LLM‑Driven Mocking

API gateways, schema management platforms, and client‑side GraphQL libraries — such as Apollo Client, Hasura, and GraphQL Yoga — now face pressure to incorporate LLM‑based mocking capabilities. Teams that have experienced the productivity gains at Airbnb and Expedia are likely to demand similar features from their tooling vendors, creating a new competitive dimension in the API tools market.

Vendors that can offer a pluggable mocking interface — allowing users to swap between static fixtures, LLM generators, or custom scripts — may differentiate themselves in enterprise sales cycles. Conversely, those that remain tied to hand‑written mock libraries could see slower adoption as development teams prioritize speed and realism in test data.

The trend also opens opportunities for specialized LLM service providers to offer hosted mock‑generation APIs priced per request or per token, mirroring the model used by Expedia’s mockql-rs. As the practice matures, we may see a marketplace of domain‑specific prompts tailored to industries like e‑commerce, travel, or fintech, further enriching the mocking ecosystem.

Key Terms
  • GraphQL — a query language for APIs that lets clients request exactly the data they need.
  • @mock directive — a schema annotation that signals a field should return mock data instead of real backend values.
  • LLM-generated data — realistic values produced by a large language model based on a prompt, used here to fill GraphQL fields.
  • mockql-rs — Expedia’s open‑source Rust CLI that invokes an LLM at runtime to populate @mock‑annotated fields.
  • @generateMock — Airbnb’s schema directive that supplies static mock values during the build process.