The relkind='f' branch is partially supported but undertested:
src/tools/admin.ts:410 -- pg_advisor.tables_without_primary_key filters relkind IN ('r', 'p') only. A foreign table without a PK could be just as much a design-drift signal worth flagging.
src/tools/schemas.ts:111-118 -- pg_describe_table.kind has the foreign_table branch in the CASE, but no fixture exercises it. The branch is one line and obvious, but live test coverage would catch a regression.
Setting up postgres_fdw for the integration fixture is moderate work -- would need to create a server, user mapping, and foreign table pointing back at the same cluster (self-referential FDW).
The
relkind='f'branch is partially supported but undertested:src/tools/admin.ts:410--pg_advisor.tables_without_primary_keyfiltersrelkind IN ('r', 'p')only. A foreign table without a PK could be just as much a design-drift signal worth flagging.src/tools/schemas.ts:111-118--pg_describe_table.kindhas the foreign_table branch in the CASE, but no fixture exercises it. The branch is one line and obvious, but live test coverage would catch a regression.Setting up
postgres_fdwfor the integration fixture is moderate work -- would need to create a server, user mapping, and foreign table pointing back at the same cluster (self-referential FDW).