33const { readPackageJson } = require ( '../../util/read-package-json' )
44const { formatParamUrl } = require ( '../../util/format-param-url' )
55const { resolveLocalRef } = require ( '../../util/resolve-local-ref' )
6+ const { resolveSchemaReference } = require ( '../../util/resolve-schema-reference' )
67const { xResponseDescription, xConsume, xExamples } = require ( '../../constants' )
78const { rawRequired } = require ( '../../symbols' )
89const { generateParamsSchema } = require ( '../../util/generate-params-schema' )
@@ -303,6 +304,11 @@ function resolveCommonParams (container, parameters, schema, ref, sharedSchemas,
303304 arr . forEach ( swaggerSchema => parameters . push ( swaggerSchema ) )
304305}
305306
307+ function findReferenceDescription ( rawSchema , ref ) {
308+ const resolved = resolveSchemaReference ( rawSchema , ref )
309+ return resolved ?. description
310+ }
311+
306312// https://swagger.io/docs/specification/describing-responses/
307313function resolveResponse ( fastifyResponseJson , produces , ref ) {
308314 // if the user does not provided an out schema
@@ -327,7 +333,10 @@ function resolveResponse (fastifyResponseJson, produces, ref) {
327333 }
328334
329335 const response = {
330- description : resolved [ xResponseDescription ] || rawJsonSchema . description || 'Default Response'
336+ description : resolved [ xResponseDescription ] ||
337+ rawJsonSchema . description ||
338+ findReferenceDescription ( rawJsonSchema , ref ) ||
339+ 'Default Response'
331340 }
332341
333342 // add headers when there are any.
0 commit comments