Skip to content

[Bug]: Missing returns and other relation fields in order gql typedef #13430

@mvarchdev

Description

@mvarchdev

Package.json file

{
  "name": "api",
  "version": "0.0.1",
  "description": "A starter for Medusa projects.",
  "author": "Medusa (https://medusajs.com)",
  "license": "MIT",
  "keywords": [
    "sqlite",
    "postgres",
    "typescript",
    "ecommerce",
    "headless",
    "medusa"
  ],
  "scripts": {
    "build": "medusa build",
    "seed": "medusa exec ./src/scripts/seed/seed.ts",
    "start": "medusa start --types=false",
    "dev": "medusa develop --types=false",
    "db:migrate": "medusa db:migrate",
    "test:integration:http": "TEST_TYPE=integration:http NODE_OPTIONS=--experimental-vm-modules jest --silent=false --runInBand --forceExit",
    "test:integration:modules": "TEST_TYPE=integration:modules NODE_OPTIONS=--experimental-vm-modules jest --silent --runInBand --forceExit",
    "test:unit": "TEST_TYPE=unit NODE_OPTIONS=--experimental-vm-modules jest --silent --runInBand --forceExit",
    "format": "prettier --write .",
    "format:check": "prettier --check .",
    "lint": "eslint --concurrency=auto --cache --cache-strategy content",
    "lint:check": "eslint --concurrency=auto --cache --cache-strategy content --max-warnings=0",
    "lint:fix": "eslint --concurrency=auto --cache --cache-strategy content --fix ",
    "sort:file": "tsx src/scripts/generate-types/sort-ts-file-definitions.ts",
    "generate:types": "tsx src/scripts/generate-types/run.ts && tsx src/scripts/generate-types/extract-values-from-dts.ts .medusa/types/*.d.ts && (yarn sort:file ./.medusa/types/) && (eslint --no-ignore --fix .medusa/types/*.ts || true) && (prettier --write .medusa/types/*.ts || true)",
    "generate:oas:combined": "medusa-oas oas --type combined --paths ./src/api -o openapi/generated/combined && yarn oas:build openapi/generated/combined/combined.oas.json openapi/generated/combined/combined.oas.yaml && rm -rf openapi/generated/combined/combined.oas.json",
    "generate:oas:admin": "medusa-oas oas --type admin --paths ./src/api/admin ./src/api/openapi/admin ./src/api/openapi/vendor -o openapi/generated/admin && yarn oas:build openapi/generated/admin/admin.oas.json openapi/generated/admin/admin.oas.yaml && rm -rf openapi/generated/admin/admin.oas.json",
    "generate:oas:vendor": "medusa-oas oas --type store --paths ./src/api/vendor ./src/api/openapi/vendor ./src/api/openapi/admin -o openapi/generated/vendor && yarn oas:build openapi/generated/vendor/store.oas.json openapi/generated/vendor/vendor.oas.yaml && rm -rf openapi/generated/vendor/store.oas.json",
    "generate:oas:store": "medusa-oas oas --type store --paths ./src/api/store ./src/api/openapi/store ./src/api/openapi/vendor -o openapi/generated/store && yarn oas:build openapi/generated/store/store.oas.json openapi/generated/store/store.oas.yaml && rm -rf openapi/generated/store/store.oas.json",
    "generate:oas": "yarn generate:oas:combined && yarn generate:oas:admin && yarn generate:oas:vendor && yarn generate:oas:store",
    "oas:serve": "tsx src/oas-server.ts",
    "oas:bundle": "sh -c 'IN=${IN:-${1:-openapi.yaml}}; OUT=${OUT:-${2:-$IN}}; redocly bundle \"$IN\" -o \"$OUT\" --remove-unused-components' _",
    "oas:clean": "sh -c 'IN=${IN:-${1:-openapi.yaml}}; OUT=${OUT:-${2:-$IN}}; openapi-format \"$IN\" -o \"$OUT\"' _",
    "oas:build": "sh -c 'IN=${IN:-${1:-openapi.yaml}}; OUT=${OUT:-${2:-$IN}}; yarn oas:bundle \"$IN\" \"$OUT\" && yarn oas:clean \"$OUT\" \"$OUT\"' _",
    "depgraph:src": "depcruise src --include-only \"^src\" --output-type dot | dot -T svg > dependency-graph.svg"
  },
  "dependencies": {
    "@medusajs/admin-sdk": "2.10.1",
    "@medusajs/cli": "2.10.1",
    "@medusajs/framework": "2.10.1",
    "@medusajs/medusa": "2.10.1",
    "@mikro-orm/core": "6.4.3",
    "@mikro-orm/knex": "6.4.3",
    "@mikro-orm/migrations": "6.4.3",
    "@mikro-orm/postgresql": "6.4.3",
    "@talkjs/react": "^0.1.11",
    "algoliasearch": "^5.20.2",
    "awilix": "^8.0.1",
    "pg": "^8.13.0",
    "resend": "^4.1.2",
    "stripe": "^17.4.0",
    "talkjs": "^0.38.0"
  },
  "devDependencies": {
    "@eslint/compat": "^1.3.2",
    "@eslint/js": "^9.15.0",
    "@medusajs/medusa-oas-cli": "2.10.1",
    "@medusajs/test-utils": "2.10.1",
    "@mikro-orm/cli": "6.4.3",
    "@redocly/cli": "^2.0.8",
    "@swc/core": "1.5.7",
    "@swc/jest": "^0.2.36",
    "@trivago/prettier-plugin-sort-imports": "^4.3.0",
    "@types/jest": "^29.5.13",
    "@types/node": "^20.0.0",
    "@types/react": "^18.3.2",
    "@types/react-dom": "^18.2.25",
    "@types/swagger-ui-express": "^4.1.8",
    "dependency-cruiser": "^17.0.1",
    "embedded-postgres": "^17.6.0-beta.15",
    "eslint": "^9.34.0",
    "eslint-config-prettier": "^10.1.8",
    "eslint-import-resolver-typescript": "^4.4.4",
    "eslint-plugin-depend": "^1.2.0",
    "eslint-plugin-import-x": "^4.16.1",
    "eslint-plugin-n": "^17.21.3",
    "eslint-plugin-perfectionist": "^4.15.0",
    "eslint-plugin-promise": "^7.2.1",
    "eslint-plugin-security": "^3.0.1",
    "eslint-plugin-simple-import-sort": "^12.1.1",
    "eslint-plugin-sonarjs": "^3.0.5",
    "eslint-plugin-unicorn": "^60.0.0",
    "globals": "^15.12.0",
    "jest": "^29.7.0",
    "openapi-format": "^1.27.3",
    "prettier": "^3.3.3",
    "prettier-plugin-jsdoc": "^1.3.3",
    "prettier-plugin-organize-attributes": "^1.0.0",
    "prettier-plugin-organize-imports": "^4.2.0",
    "prettier-plugin-sort-members": "^0.2.3",
    "prop-types": "^15.8.1",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "swagger-ui-express": "^5.0.1",
    "ts-jest": "^29.4.1",
    "ts-morph": "^26.0.0",
    "ts-node": "^10.9.2",
    "tsx": "^4.20.5",
    "typescript": "^5.6.2",
    "typescript-eslint": "^8.15.0",
    "vite": "^5.4.19"
  },
  "engines": {
    "node": ">=20"
  },
  "packageManager": "yarn@4.9.4"
}

Node.js version

v24.6.0

Database and its version

Postgresql 16.2

Operating system name and version

Macos

Browser name

No response

What happended?

In this file there is missing returns, credit_lines and other relation fields. Please check as it currently breaks our type checks. I think that in correct way it should be automatically in sync with model defined here

Please check also other models!

Expected behavior

GQL/Generated types in sync with actual model

Actual behavior

Gql/Generated types defined manually?

Link to reproduction repo

Does not need

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions