From 1bc2a1bbd0dd8d051dc53b440c607b2a722bfeb1 Mon Sep 17 00:00:00 2001 From: its-mitesh-kumar Date: Thu, 30 Jul 2026 10:33:01 +0530 Subject: [PATCH] fix(scorecard): re-enable ae-missing-release-tag api-extractor warning Add @public release tags to all scorecard backend module exports and common aggregation types that were missing them. Remove ae-missing-release-tag from the suppressed warnings list in build:api-reports:only so that api-extractor enforces proper release tags on the public API surface. Fixes: https://redhat.atlassian.net/browse/RHDHBUGS-3523 Signed-off-by: its-mitesh-kumar Co-authored-by: Cursor --- workspaces/scorecard/.changeset/gentle-papers-glow.md | 11 +++++++++++ workspaces/scorecard/package.json | 2 +- .../scorecard-backend-module-dependabot/src/index.ts | 1 + .../scorecard-backend-module-dependabot/src/module.ts | 1 + .../scorecard-backend-module-filecheck/src/index.ts | 1 + .../scorecard-backend-module-filecheck/src/module.ts | 1 + .../scorecard-backend-module-github/src/index.ts | 1 + .../scorecard-backend-module-github/src/module.ts | 1 + .../scorecard-backend-module-jira/src/index.ts | 1 + .../scorecard-backend-module-jira/src/module.ts | 1 + .../scorecard-backend-module-openssf/src/index.ts | 1 + .../scorecard-backend-module-openssf/src/module.ts | 1 + .../scorecard-backend-module-sonarqube/src/index.ts | 1 + .../scorecard-backend-module-sonarqube/src/module.ts | 1 + .../plugins/scorecard-common/src/types/aggregation.ts | 6 ++++++ .../scorecard/plugins/scorecard/report-alpha.api.md | 2 +- 16 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 workspaces/scorecard/.changeset/gentle-papers-glow.md diff --git a/workspaces/scorecard/.changeset/gentle-papers-glow.md b/workspaces/scorecard/.changeset/gentle-papers-glow.md new file mode 100644 index 00000000000..c6853e7909a --- /dev/null +++ b/workspaces/scorecard/.changeset/gentle-papers-glow.md @@ -0,0 +1,11 @@ +--- +'@red-hat-developer-hub/backstage-plugin-scorecard-backend-module-jira': patch +'@red-hat-developer-hub/backstage-plugin-scorecard-backend-module-github': patch +'@red-hat-developer-hub/backstage-plugin-scorecard-backend-module-dependabot': patch +'@red-hat-developer-hub/backstage-plugin-scorecard-backend-module-sonarqube': patch +'@red-hat-developer-hub/backstage-plugin-scorecard-backend-module-filecheck': patch +'@red-hat-developer-hub/backstage-plugin-scorecard-backend-module-openssf': patch +'@red-hat-developer-hub/backstage-plugin-scorecard-common': patch +--- + +Add missing `@public` release tags to all scorecard backend module exports and common types, and re-enable `ae-missing-release-tag` api-extractor warning. diff --git a/workspaces/scorecard/package.json b/workspaces/scorecard/package.json index 6f4eb0f0935..4c47f3b8c8e 100644 --- a/workspaces/scorecard/package.json +++ b/workspaces/scorecard/package.json @@ -14,7 +14,7 @@ "build:backend": "yarn workspace backend build", "build:all": "backstage-cli repo build --all", "build:api-reports": "yarn build:api-reports:only", - "build:api-reports:only": "backstage-repo-tools api-reports -o ae-wrong-input-file-type,ae-undocumented,ae-missing-release-tag --validate-release-tags", + "build:api-reports:only": "backstage-repo-tools api-reports -o ae-wrong-input-file-type,ae-undocumented --validate-release-tags", "build-image": "yarn workspace backend build-image", "build:knip-reports": "backstage-repo-tools knip-reports", "clean": "backstage-cli repo clean", diff --git a/workspaces/scorecard/plugins/scorecard-backend-module-dependabot/src/index.ts b/workspaces/scorecard/plugins/scorecard-backend-module-dependabot/src/index.ts index d41f47d0d1b..9fd9453753a 100644 --- a/workspaces/scorecard/plugins/scorecard-backend-module-dependabot/src/index.ts +++ b/workspaces/scorecard/plugins/scorecard-backend-module-dependabot/src/index.ts @@ -20,4 +20,5 @@ * @packageDocumentation */ +/** @public */ export { scorecardModuleDependabot as default } from './module'; diff --git a/workspaces/scorecard/plugins/scorecard-backend-module-dependabot/src/module.ts b/workspaces/scorecard/plugins/scorecard-backend-module-dependabot/src/module.ts index 1889720478a..20ef916404d 100644 --- a/workspaces/scorecard/plugins/scorecard-backend-module-dependabot/src/module.ts +++ b/workspaces/scorecard/plugins/scorecard-backend-module-dependabot/src/module.ts @@ -20,6 +20,7 @@ import { import { scorecardMetricsExtensionPoint } from '@red-hat-developer-hub/backstage-plugin-scorecard-node'; import { createDependabotMetricProviders } from './metricProviders/DependabotMetricProviderFactory'; +/** @public */ export const scorecardModuleDependabot = createBackendModule({ pluginId: 'scorecard', moduleId: 'dependabot', diff --git a/workspaces/scorecard/plugins/scorecard-backend-module-filecheck/src/index.ts b/workspaces/scorecard/plugins/scorecard-backend-module-filecheck/src/index.ts index e1894e3b484..dffe060f9f0 100644 --- a/workspaces/scorecard/plugins/scorecard-backend-module-filecheck/src/index.ts +++ b/workspaces/scorecard/plugins/scorecard-backend-module-filecheck/src/index.ts @@ -20,4 +20,5 @@ * @packageDocumentation */ +/** @public */ export { scorecardModuleFilecheck as default } from './module'; diff --git a/workspaces/scorecard/plugins/scorecard-backend-module-filecheck/src/module.ts b/workspaces/scorecard/plugins/scorecard-backend-module-filecheck/src/module.ts index b5a1a82c61f..7a2ee5433cc 100644 --- a/workspaces/scorecard/plugins/scorecard-backend-module-filecheck/src/module.ts +++ b/workspaces/scorecard/plugins/scorecard-backend-module-filecheck/src/module.ts @@ -20,6 +20,7 @@ import { import { scorecardMetricsExtensionPoint } from '@red-hat-developer-hub/backstage-plugin-scorecard-node'; import { createFilecheckMetricProvider } from './metricProviders/FilecheckMetricProviderFactory'; +/** @public */ export const scorecardModuleFilecheck = createBackendModule({ pluginId: 'scorecard', moduleId: 'filecheck', diff --git a/workspaces/scorecard/plugins/scorecard-backend-module-github/src/index.ts b/workspaces/scorecard/plugins/scorecard-backend-module-github/src/index.ts index 7772fb8890f..cdbf98d29d9 100644 --- a/workspaces/scorecard/plugins/scorecard-backend-module-github/src/index.ts +++ b/workspaces/scorecard/plugins/scorecard-backend-module-github/src/index.ts @@ -20,4 +20,5 @@ * @packageDocumentation */ +/** @public */ export { scorecardModuleGithub as default } from './module'; diff --git a/workspaces/scorecard/plugins/scorecard-backend-module-github/src/module.ts b/workspaces/scorecard/plugins/scorecard-backend-module-github/src/module.ts index 267556de1c3..648a8c7e0d3 100644 --- a/workspaces/scorecard/plugins/scorecard-backend-module-github/src/module.ts +++ b/workspaces/scorecard/plugins/scorecard-backend-module-github/src/module.ts @@ -20,6 +20,7 @@ import { import { scorecardMetricsExtensionPoint } from '@red-hat-developer-hub/backstage-plugin-scorecard-node'; import { GithubOpenPRsProvider } from './metricProviders/GithubOpenPRsProvider'; +/** @public */ export const scorecardModuleGithub = createBackendModule({ pluginId: 'scorecard', moduleId: 'github', diff --git a/workspaces/scorecard/plugins/scorecard-backend-module-jira/src/index.ts b/workspaces/scorecard/plugins/scorecard-backend-module-jira/src/index.ts index 20fcb1ae681..51270915c38 100644 --- a/workspaces/scorecard/plugins/scorecard-backend-module-jira/src/index.ts +++ b/workspaces/scorecard/plugins/scorecard-backend-module-jira/src/index.ts @@ -20,4 +20,5 @@ * @packageDocumentation */ +/** @public */ export { scorecardModuleJira as default } from './module'; diff --git a/workspaces/scorecard/plugins/scorecard-backend-module-jira/src/module.ts b/workspaces/scorecard/plugins/scorecard-backend-module-jira/src/module.ts index ba149ef2986..0e6c3d136ac 100644 --- a/workspaces/scorecard/plugins/scorecard-backend-module-jira/src/module.ts +++ b/workspaces/scorecard/plugins/scorecard-backend-module-jira/src/module.ts @@ -20,6 +20,7 @@ import { import { scorecardMetricsExtensionPoint } from '@red-hat-developer-hub/backstage-plugin-scorecard-node'; import { JiraOpenIssuesProvider } from './metricProviders/JiraOpenIssuesProvider'; +/** @public */ export const scorecardModuleJira = createBackendModule({ pluginId: 'scorecard', moduleId: 'jira', diff --git a/workspaces/scorecard/plugins/scorecard-backend-module-openssf/src/index.ts b/workspaces/scorecard/plugins/scorecard-backend-module-openssf/src/index.ts index 934f1f3d6a3..cc98a1c820e 100644 --- a/workspaces/scorecard/plugins/scorecard-backend-module-openssf/src/index.ts +++ b/workspaces/scorecard/plugins/scorecard-backend-module-openssf/src/index.ts @@ -20,4 +20,5 @@ * @packageDocumentation */ +/** @public */ export { scorecardOpenSFFModule as default } from './module'; diff --git a/workspaces/scorecard/plugins/scorecard-backend-module-openssf/src/module.ts b/workspaces/scorecard/plugins/scorecard-backend-module-openssf/src/module.ts index 0e661f04ddc..5d6776a4932 100644 --- a/workspaces/scorecard/plugins/scorecard-backend-module-openssf/src/module.ts +++ b/workspaces/scorecard/plugins/scorecard-backend-module-openssf/src/module.ts @@ -17,6 +17,7 @@ import { createBackendModule } from '@backstage/backend-plugin-api'; import { scorecardMetricsExtensionPoint } from '@red-hat-developer-hub/backstage-plugin-scorecard-node'; import { createOpenSSFMetricProvider } from './metricProviders/OpenSSFMetricProvider'; +/** @public */ export const scorecardOpenSFFModule = createBackendModule({ pluginId: 'scorecard', moduleId: 'openssf', diff --git a/workspaces/scorecard/plugins/scorecard-backend-module-sonarqube/src/index.ts b/workspaces/scorecard/plugins/scorecard-backend-module-sonarqube/src/index.ts index b16ddc2d148..e6631c7b90d 100644 --- a/workspaces/scorecard/plugins/scorecard-backend-module-sonarqube/src/index.ts +++ b/workspaces/scorecard/plugins/scorecard-backend-module-sonarqube/src/index.ts @@ -20,4 +20,5 @@ * @packageDocumentation */ +/** @public */ export { scorecardModuleSonarqube as default } from './module'; diff --git a/workspaces/scorecard/plugins/scorecard-backend-module-sonarqube/src/module.ts b/workspaces/scorecard/plugins/scorecard-backend-module-sonarqube/src/module.ts index dd94b8a7c61..d6b35b8f07e 100644 --- a/workspaces/scorecard/plugins/scorecard-backend-module-sonarqube/src/module.ts +++ b/workspaces/scorecard/plugins/scorecard-backend-module-sonarqube/src/module.ts @@ -20,6 +20,7 @@ import { import { scorecardMetricsExtensionPoint } from '@red-hat-developer-hub/backstage-plugin-scorecard-node'; import { SonarQubeMetricProviderFactory } from './metricProviders/SonarQubeMetricProviderFactory'; +/** @public */ export const scorecardModuleSonarqube = createBackendModule({ pluginId: 'scorecard', moduleId: 'sonarqube', diff --git a/workspaces/scorecard/plugins/scorecard-common/src/types/aggregation.ts b/workspaces/scorecard/plugins/scorecard-common/src/types/aggregation.ts index df1f26a3dc9..210de45ae1e 100644 --- a/workspaces/scorecard/plugins/scorecard-common/src/types/aggregation.ts +++ b/workspaces/scorecard/plugins/scorecard-common/src/types/aggregation.ts @@ -65,11 +65,17 @@ export type AggregationMetadata = { aggregationType: AggregationType; }; +/** + * @public + */ export type StatusGroupedAggregationResult = Omit< AggregatedMetric, 'values' > & { values: AggregatedMetricValue[]; thresholds: ThresholdConfig }; +/** + * @public + */ export type AggregatedMetricAverageResult = StatusGroupedAggregationResult & { averageScore: number; averageWeightedSum: number; diff --git a/workspaces/scorecard/plugins/scorecard/report-alpha.api.md b/workspaces/scorecard/plugins/scorecard/report-alpha.api.md index 297dde95a25..bcd46eada79 100644 --- a/workspaces/scorecard/plugins/scorecard/report-alpha.api.md +++ b/workspaces/scorecard/plugins/scorecard/report-alpha.api.md @@ -54,8 +54,8 @@ const _default: OverridableFrontendPlugin< title: string | undefined; }; configInput: { - title?: string | undefined; path?: string | undefined; + title?: string | undefined; }; output: | ExtensionDataRef