[AutoPR @azure-arm-billing]-generated-from-SDK Generation - JS-6054096#37802
[AutoPR @azure-arm-billing]-generated-from-SDK Generation - JS-6054096#37802azure-sdk wants to merge 1 commit into
Conversation
…ling/Billing/tspconfig.yaml', API Version: 2024-04-01, SDK Release Type: beta, and CommitSHA: '431a0488ba8f92835169ffd9d9cc352f6ae568be' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6054096 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
API Change CheckAPIView identified API level changes in this PR and created the following API reviews |
There was a problem hiding this comment.
1 tool issue found in @azure/arm-billing (v6.0.0-beta.1).
Version alignment is consistent: package.json, src/api/billingManagementContext.ts, and CHANGELOG.md all agree on 6.0.0-beta.1. The changelog compares against stable 5.0.0 (no alpha version comparison). No naming collisions (_N suffix / AutoGenerated), no unknown in public API, and no constructor-parameter removals were detected.
The one finding is an ae-forgotten-export warning for _BillingRoleAssignmentListResult, which is referenced in the return types of all four resolveBy* operations but is not exported from index.d.ts. This prevents callers from naming the result type.
📊 Structured Report
{"agent":"mgmt-reviewer","pr":37802,"summary":"issues_found","findings":[{"file":"sdk/billing/arm-billing/review/arm-billing-node.api.md","line":1135,"issueType":"tool","category":"exports","description":"ae-forgotten-export: _BillingRoleAssignmentListResult is used in return types of resolveByBillingAccount, resolveByBillingProfile, resolveByCustomer, resolveByInvoiceSection but not exported from index.d.ts"}]}⚡ Benchmarked by Management SDK PR Review
| resolveByBillingAccount: (billingAccountName: string, options?: BillingRoleAssignmentsResolveByBillingAccountOptionalParams) => PollerLike<OperationState<_BillingRoleAssignmentListResult>, _BillingRoleAssignmentListResult>; | ||
| resolveByBillingProfile: (billingAccountName: string, billingProfileName: string, options?: BillingRoleAssignmentsResolveByBillingProfileOptionalParams) => PollerLike<OperationState<_BillingRoleAssignmentListResult>, _BillingRoleAssignmentListResult>; | ||
| resolveByCustomer: (billingAccountName: string, billingProfileName: string, customerName: string, options?: BillingRoleAssignmentsResolveByCustomerOptionalParams) => PollerLike<OperationState<_BillingRoleAssignmentListResult>, _BillingRoleAssignmentListResult>; | ||
| // Warning: (ae-forgotten-export) The symbol "_BillingRoleAssignmentListResult" needs to be exported by the entry point index.d.ts |
There was a problem hiding this comment.
🔴 Tool Issue — ae-forgotten-export for _BillingRoleAssignmentListResult
The symbol _BillingRoleAssignmentListResult is used as the return type of multiple public resolveBy* operations (e.g., resolveByBillingAccount, resolveByBillingProfile, resolveByCustomer, resolveByInvoiceSection) but it is not exported from index.d.ts. API Extractor is warning about this with ae-forgotten-export.
Concretely, callers cannot reference the resolved result type, which undermines type safety.
Fix: Export BillingRoleAssignmentListResult (drop the underscore prefix) from src/index.ts so it appears in the public surface, and re-run the API report. If the model cannot be exported due to a collision, rename it via @clientName in the spec and trigger regeneration. Report this missing export to the generation tool repository.
Configurations: 'specification/billing/resource-manager/Microsoft.Billing/Billing/tspconfig.yaml', API Version: 2024-04-01, SDK Release Type: beta, and CommitSHA: '431a0488ba8f92835169ffd9d9cc352f6ae568be' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6054096 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.