From c724eaa902c88a02e3d04617fe1dba1e8c9bc26f Mon Sep 17 00:00:00 2001 From: Jamal Sebbari Date: Thu, 18 Dec 2025 13:20:22 +0100 Subject: [PATCH 1/3] fix(puppetdb): handle undefined latest_report_status in transformer Fixes #25224 The defaultResourceTransformer crashes when latest_report_status is undefined because it's not present in /factsets endpoint response (only in /nodes). This adds optional chaining (?.) to safely handle undefined values. Signed-off-by: Jamal Sebbari --- .../src/puppet/transformers.ts | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/plugins/catalog-backend-module-puppetdb/src/puppet/transformers.ts b/plugins/catalog-backend-module-puppetdb/src/puppet/transformers.ts index 5394041724..fac3771279 100644 --- a/plugins/catalog-backend-module-puppetdb/src/puppet/transformers.ts +++ b/plugins/catalog-backend-module-puppetdb/src/puppet/transformers.ts @@ -51,12 +51,10 @@ export const defaultResourceTransformer: ResourceTransformer = async ( description: node.facts?.data ?.find(e => e.name === 'ipaddress') ?.value?.toString(), - tags: kernel - ? [ - kernel.toString().toLocaleLowerCase('en-US'), - latest_report_status.toString().toLocaleLowerCase('en-US'), - ] - : [], + tags: [ + kernel?.toString().toLocaleLowerCase('en-US'), + latest_report_status?.toString().toLocaleLowerCase('en-US'), + ].filter((tag): tag is string => Boolean(tag)), }, spec: { type: type, From a307700a8075bbc95157cce2e9952df19cf1a7ee Mon Sep 17 00:00:00 2001 From: Jamal Sebbari Date: Thu, 18 Dec 2025 15:24:52 +0100 Subject: [PATCH 2/3] chore: add changeset Signed-off-by: Jamal Sebbari --- .changeset/fluffy-bushes-remain.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/fluffy-bushes-remain.md diff --git a/.changeset/fluffy-bushes-remain.md b/.changeset/fluffy-bushes-remain.md new file mode 100644 index 0000000000..970bd0f2da --- /dev/null +++ b/.changeset/fluffy-bushes-remain.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-backend-module-puppetdb': patch +--- + +Fixed crash when latest_report_status is undefined From d8a7ec986b211d3214fc297795369398f65dc78b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Wed, 7 Jan 2026 16:06:57 +0100 Subject: [PATCH 3/3] Update .changeset/fluffy-bushes-remain.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- .changeset/fluffy-bushes-remain.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/fluffy-bushes-remain.md b/.changeset/fluffy-bushes-remain.md index 970bd0f2da..5199218f0a 100644 --- a/.changeset/fluffy-bushes-remain.md +++ b/.changeset/fluffy-bushes-remain.md @@ -2,4 +2,4 @@ '@backstage/plugin-catalog-backend-module-puppetdb': patch --- -Fixed crash when latest_report_status is undefined +Fixed crash when `latest_report_status` is undefined