Skip to content

PQA018 — Base device type not found

A type's extends: names a type_id this adapter does not declare.

extends: inherits properties, functions and commands from a base type declared in the same adapter. The name is resolved against device_types.

- type_id: X200
  extends: SioBase          # the type is SioModuleBase

Why the build refuses this

Everything the type expected to inherit is missing, silently. The type still generates — as a bare type with only its own members. The absence surfaces later as a missing property, a missing function, or a command the dispatcher never routes.

How to fix it

Spell the base as its declared type_id. If the base is meant to be shared shape only, declare it abstract: true so it cannot be instantiated on its own.

- type_id: SioModuleBase
  abstract: true

- type_id: X200
  extends: SioModuleBase

If you disagree with a report

Do not suppress it. A wrong report is a bug in the check — report it with the YAML that triggered it.