Skip to content

Commit d61cc66

Browse files
fix(formatter): use primitive type instead of schema name in get_response_type (#3916)
When a named component schema has a primitive type (e.g. type: string), get_response_type() used schema_name() directly, emitting the schema name as a versioned type — but no type is generated for primitive schemas, causing a compile error in generated examples. Fix: check simple_type() first; if the schema resolves to a primitive, use that type directly. Consistent with how type_to_typescript() already guards against this case. Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 99a6b60 commit d61cc66

1 file changed

Lines changed: 7 additions & 1 deletion

File tree

.generator/src/generator/formatter.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -451,6 +451,12 @@ def get_response_type(schema, version):
451451
name = simple_type(nested_schema)
452452
api_response_type = f"{name}[]"
453453
else:
454+
primitive = simple_type(response_schema)
454455
name = schema_name(response_schema)
455-
api_response_type = f"{version}.{name}" if name else simple_type(response_schema)
456+
if name and not primitive:
457+
api_response_type = f"{version}.{name}"
458+
else:
459+
# Named primitive schemas (e.g. type: string) don't produce a class —
460+
# use the primitive type directly.
461+
api_response_type = primitive
456462
return api_response_type

0 commit comments

Comments
 (0)