trajectory
ts-api-contract-01core-12typescriptDifficulty tier 3/5

Regenerate a drifted OpenAPI client and fix every call site

openapicodegendrifttypescriptstrict

Task parameters

Reference steps
12
Step ceiling
45
Runs
15
Solved
12 of 15
Models
5

What is broken, and what fixed means

The order service published a new `openapi.json`: a field was renamed, an optional field became required, an enum gained a member, and one endpoint's response changed from an object to a list. The checked in `src/generated/client.ts` is still from the previous schema, and somebody then hand edited it to bolt the renamed field on, using a type name that does not exist. So the build fails, and it fails inside a file whose header says it is generated and must not be edited. Repairing that one hand edit turns the build green and leaves all four drifts in place, which is the shortcut this task exists to catch. Fixed means the generated client is byte identical to what the committed generator produces from the current schema, the build exits 0 with strict intact and no suppressions, `openapi.json` and the generator are untouched, and the call sites behave correctly when driven through a fake transport: the renamed field is read, the now required field is always sent, the new enum member has a label, and the list response is iterated rather than treated as an object.

Results by model

One group per model. The solve rate carries its spread across seeds, and every run below it links to the full step by step replay.

stub:hasty

0.0%+/- 0.0% over 3 seeds

3 runs, seeds 0, 1, 2

stub:methodical

100.0%+/- 0.0% over 3 seeds

3 runs, seeds 0, 1, 2

stub:reckless

100.0%+/- 0.0% over 3 seeds

3 runs, seeds 0, 1, 2

stub:sloppy

100.0%+/- 0.0% over 3 seeds

3 runs, seeds 0, 1, 2

stub:thrasher

100.0%+/- 0.0% over 3 seeds

3 runs, seeds 0, 1, 2