Update ATS docs for polyglot APIs#17289
Conversation
Move AspireExport descriptions into XML/ATS documentation and add polyglot-safe ATS overrides for exported APIs. Add analyzer coverage to prevent new AspireExport Description usage and update generated TypeScript snapshots. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 17289Or
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 17289" |
There was a problem hiding this comment.
Pull request overview
Updates Aspire’s ATS-exported API documentation so it can be consumed by polyglot SDKs (TypeScript, etc.) by moving “human” docs out of AspireExport.Description and into XML docs with ATS override tags, and by extending ATS reference parsing to accept compiler-safe cref="!:..." forms.
Changes:
- Replaces many
[AspireExport(Description=...)]usages with XML doc overrides like<ats-summary>,<ats-param>, and<ats-returns>. - Updates ATS reference parsing to allow
crefvalues prefixed with!:(so the C# compiler doesn’t validate the customcrefformat). - Adds analyzer rule
ASPIREEXPORT015(and tests) to prevent newAspireExport.Descriptionusages, and updates TypeScript codegen snapshots/tests accordingly.
Reviewed changes
Copilot reviewed 193 out of 195 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/Aspire.Hosting.RemoteHost.Tests/AttributeDataReaderTests.cs | Updates expectations to reflect AspireExport.Description no longer being used for docs. |
| tests/Aspire.Hosting.CodeGeneration.TypeScript.Tests/Snapshots/WithRedisSpecificCapability.verified.txt | Snapshot updated for documentation moving from Description to XML-derived summary. |
| tests/Aspire.Hosting.CodeGeneration.TypeScript.Tests/Snapshots/WithPersistenceCapability.verified.txt | Snapshot updated for documentation moving from Description to XML-derived summary. |
| tests/Aspire.Hosting.CodeGeneration.TypeScript.Tests/Snapshots/WithOptionalStringCapability.verified.txt | Snapshot updated for documentation moving from Description to XML-derived summary. |
| tests/Aspire.Hosting.CodeGeneration.TypeScript.Tests/Snapshots/HostingAddContainerCapability.verified.txt | Snapshot updated for new ATS doc formatting and ATS references. |
| tests/Aspire.Hosting.CodeGeneration.TypeScript.Tests/Snapshots/AddTestRedisCapability.verified.txt | Snapshot updated to remove capability Description and rely on XML-derived docs. |
| tests/Aspire.Hosting.CodeGeneration.TypeScript.Tests/AtsTypeScriptCodeGeneratorTests.cs | Aligns tests with Description being null and XML docs becoming the source of truth. |
| tests/Aspire.Hosting.Analyzers.Tests/AspireExportAnalyzerTests.cs | Adds coverage for new ASPIREEXPORT015 and updates prior tests away from Description. |
| src/Aspire.Hosting/UserSecrets/IUserSecretsManager.cs | Moves exported doc text into <ats-summary> and removes AspireExport.Description. |
| src/Aspire.Hosting/RequiredCommandResourceExtensions.cs | Moves exported doc text into <ats-summary> and removes AspireExport.Description. |
| src/Aspire.Hosting/Publishing/BeforePublishEvent.cs | Adds ATS parameter overrides using compiler-safe !:type: references. |
| src/Aspire.Hosting/Publishing/AfterPublishEvent.cs | Adds ATS parameter overrides using compiler-safe !:type: references. |
| src/Aspire.Hosting/ProjectResourceBuilderExtensions.cs | Replaces AspireExport.Description with ATS XML doc overrides on polyglot exports. |
| src/Aspire.Hosting/Pipelines/PipelineStepFactoryExtensions.cs | Replaces AspireExport.Description with ATS XML doc overrides. |
| src/Aspire.Hosting/Pipelines/PipelineStepFactoryContext.cs | Adds ATS summary override for polyglot docs. |
| src/Aspire.Hosting/Pipelines/PipelineStep.cs | Moves export descriptions into ATS XML docs for projections and methods. |
| src/Aspire.Hosting/Pipelines/PipelineEditor.cs | Moves export descriptions into ATS XML docs for polyglot callbacks. |
| src/Aspire.Hosting/Pipelines/PipelineConfigurationContext.cs | Moves export descriptions into ATS XML docs for callback-facing projections. |
| src/Aspire.Hosting/Pipelines/DistributedApplicationPipelineExtensions.cs | Moves export description into ATS XML docs. |
| src/Aspire.Hosting/ParameterResourceBuilderExtensions.cs | Replaces AspireExport.Description with ATS summaries/returns for polyglot exports. |
| src/Aspire.Hosting/OtlpConfigurationExtensions.cs | Replaces AspireExport.Description with ATS summary for polyglot export. |
| src/Aspire.Hosting/McpServerResourceBuilderExtensions.cs | Adds ATS summary/returns and removes AspireExport.Description. |
| src/Aspire.Hosting/IDistributedApplicationBuilder.cs | Adds ATS summary/returns for exported interface + Build() export. |
| src/Aspire.Hosting/ExternalServiceBuilderExtensions.cs | Moves polyglot-export doc text into ATS XML docs. |
| src/Aspire.Hosting/ExecutableResourceBuilderExtensions.cs | Adds ATS summary/returns/params and removes AspireExport.Description. |
| src/Aspire.Hosting/DistributedApplicationExecutionContextOptions.cs | Adds ATS summary override for polyglot docs. |
| src/Aspire.Hosting/DistributedApplication.cs | Adds ATS summary/returns and removes AspireExport.Description on polyglot exports. |
| src/Aspire.Hosting/ContainerRegistryResourceBuilderExtensions.cs | Moves polyglot-export doc text into ATS XML docs. |
| src/Aspire.Hosting/Ats/UserSecretsExports.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting/Ats/NotificationExports.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting/Ats/ModelExports.cs | Moves exported doc text into ATS XML docs (including polyglot-friendly returns text). |
| src/Aspire.Hosting/Ats/ExecutionConfigurationExports.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting/Ats/EventingExports.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting/Ats/CoreExports.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting/Ats/AspireExportAttribute.cs | Re-documents Description as compatibility metadata and updates examples to ATS XML docs. |
| src/Aspire.Hosting/ApplicationModel/ResourceUrlsEditor.cs | Moves exported doc text into ATS XML docs for editor methods/properties. |
| src/Aspire.Hosting/ApplicationModel/ResourceUrlsCallbackContext.cs | Moves exported doc text into ATS XML docs for callback context projections. |
| src/Aspire.Hosting/ApplicationModel/ResourceStoppedEvent.cs | Adds ATS param overrides for polyglot-friendly type references. |
| src/Aspire.Hosting/ApplicationModel/ResourceCommandAnnotation.cs | Adds ATS summary overrides that reference related exported members. |
| src/Aspire.Hosting/ApplicationModel/ReferenceExpression.cs | Moves exported doc text into ATS XML docs for methods/builders. |
| src/Aspire.Hosting/ApplicationModel/LogFacade.cs | Moves exported doc text into ATS XML docs for logging facade. |
| src/Aspire.Hosting/ApplicationModel/InitializeResourceEvent.cs | Adds ATS param overrides for polyglot-friendly type references. |
| src/Aspire.Hosting/ApplicationModel/ExecutionConfigurationBuilderExtensions.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting/ApplicationModel/EnvironmentEditor.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting/ApplicationModel/EnvironmentCallbackContext.cs | Moves exported doc text into ATS XML docs for callback context projections. |
| src/Aspire.Hosting/ApplicationModel/EndpointReference.cs | Moves exported doc text into ATS XML docs, adds ATS params/returns for polyglot types. |
| src/Aspire.Hosting/ApplicationModel/ConnectionStringAvailableEvent.cs | Adds ATS summary/param overrides for polyglot-friendly type references. |
| src/Aspire.Hosting/ApplicationModel/CommandLineArgsEditor.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting/ApplicationModel/CommandLineArgsCallbackAnnotation.cs | Moves exported doc text into ATS XML docs for callback context projections. |
| src/Aspire.Hosting/ApplicationModel/BeforeStartEvent.cs | Adds ATS param overrides for polyglot-friendly type references. |
| src/Aspire.Hosting/ApplicationModel/BeforeResourceStartedEvent.cs | Adds ATS param overrides for polyglot-friendly type references. |
| src/Aspire.Hosting/ApplicationModel/AspireStoreExtensions.cs | Moves exported doc text into ATS XML docs and adds ATS param/returns overrides. |
| src/Aspire.Hosting/ApplicationModel/AfterResourcesCreatedEvent.cs | Adds ATS param overrides for polyglot-friendly type references. |
| src/Aspire.Hosting.Yarp/ConfigurationBuilder/YarpCluster.cs | Moves exported doc text into ATS XML docs for cluster configuration methods. |
| src/Aspire.Hosting.Yarp/ConfigurationBuilder/Transforms/RequestHeadersTransformExtensions.cs | Moves exported doc text into ATS XML docs for transform helpers. |
| src/Aspire.Hosting.Yarp/ConfigurationBuilder/Transforms/QueryTransformExtensions.cs | Moves exported doc text into ATS XML docs for transform helpers. |
| src/Aspire.Hosting.Yarp/ConfigurationBuilder/Transforms/PathTransformExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns references. |
| src/Aspire.Hosting.Yarp/ConfigurationBuilder/Transforms/HttpMethodTransformExtensions.cs | Moves exported doc text into ATS XML docs for transform helpers. |
| src/Aspire.Hosting.Yarp/ConfigurationBuilder/Transforms/ForwardedTransformExtensions.cs | Moves exported doc text into ATS XML docs for transform helpers. |
| src/Aspire.Hosting.Valkey/ValkeyBuilderExtensions.cs | Moves exported doc text into ATS XML docs with ATS param/returns overrides. |
| src/Aspire.Hosting.Testing/DistributedApplicationHostingTestingExtensions.cs | Moves exported doc text into ATS XML docs for testing exports. |
| src/Aspire.Hosting.Seq/SeqBuilderExtensions.cs | Moves exported doc text into ATS XML docs with ATS param/returns overrides. |
| src/Aspire.Hosting.RemoteHost/README.md | Updates docs to describe ATS XML doc override tags and compiler-safe !:... cref prefix. |
| src/Aspire.Hosting.RemoteHost/AtsCapabilityScanner.cs | Strips the !: prefix when parsing ATS cref references. |
| src/Aspire.Hosting.RabbitMQ/RabbitMQBuilderExtensions.cs | Moves exported doc text into ATS XML docs with ATS param/returns overrides. |
| src/Aspire.Hosting.Qdrant/QdrantBuilderExtensions.cs | Moves exported doc text into ATS XML docs with ATS param/returns overrides. |
| src/Aspire.Hosting.PostgreSQL/PostgresDatabaseResource.cs | Adds ATS summary override for a child resource type. |
| src/Aspire.Hosting.Orleans/OrleansServiceClientExtensions.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting.Oracle/OracleDatabaseResource.cs | Adds ATS summary override for a child resource type. |
| src/Aspire.Hosting.OpenAI/OpenAIExtensions.cs | Moves exported doc text into ATS XML docs and adds ATS param overrides. |
| src/Aspire.Hosting.Nats/NatsBuilderExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.MySql/MySqlDatabaseResource.cs | Adds ATS summary override for a child resource type. |
| src/Aspire.Hosting.MongoDB/MongoDBDatabaseResource.cs | Adds ATS summary override for a child resource type. |
| src/Aspire.Hosting.Milvus/MilvusDatabaseResource.cs | Adds ATS summary override for a child resource type. |
| src/Aspire.Hosting.Maui/MauiWindowsExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Maui/MauiProjectResourceExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Maui/MauiOtlpExtensions.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting.Maui/MauiMacCatalystExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Maui/MauiiOSExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Maui/MauiAndroidExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Kubernetes/KubernetesServiceExtensions.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting.Kubernetes/KubernetesResource.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting.Kubernetes/KubernetesNodePoolResource.cs | Adds ATS summary override for child resource type and references related API. |
| src/Aspire.Hosting.Kubernetes/KubernetesManifestResource.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting.Kubernetes/KubernetesHelmChartExtensions.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting.Kubernetes/KubernetesAspireDashboardResourceBuilderExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Kubernetes/HelmChartOptions.cs | Adds ATS summary override and moves method descriptions into ATS XML docs. |
| src/Aspire.Hosting.Keycloak/KeycloakResource.cs | Adds ATS param override for polyglot-friendly null wording. |
| src/Aspire.Hosting.Kafka/KafkaBuilderExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Integration.Analyzers/AspireExportAnalyzer.Diagnostics.cs | Adds ASPIREEXPORT015 descriptor and registers it as supported. |
| src/Aspire.Hosting.Integration.Analyzers/AnalyzerReleases.Unshipped.md | Documents ASPIREEXPORT015 in analyzer release notes. |
| src/Aspire.Hosting.GitHub.Models/GitHubModelsExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Garnet/GarnetBuilderExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Foundry/HostedAgent/HostedAgentBuilderExtension.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting.Foundry/FoundryExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.EntityFrameworkCore/EFResourceBuilderExtensions.cs | Moves exported doc text into ATS XML docs for polyglot export. |
| src/Aspire.Hosting.EntityFrameworkCore/EFMigrationResourceBuilderExtensions.cs | Adds ATS param overrides and moves polyglot-export descriptions into ATS XML docs. |
| src/Aspire.Hosting.Docker/DockerComposeServiceExtensions.cs | Moves exported doc text into ATS XML docs for polyglot export. |
| src/Aspire.Hosting.Docker/DockerComposeResourceExtensions.cs | Moves exported doc text into ATS XML docs for polyglot exports. |
| src/Aspire.Hosting.Docker/DockerComposeAspireDashboardResourceBuilderExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.DevTunnels/DevTunnelResourceBuilderExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Browsers/BrowserLogsBuilderExtensions.cs | Moves export description into ATS XML docs with detailed ATS param/returns overrides. |
| src/Aspire.Hosting.Azure/Provisioning/AzureProvisionerExtensions.cs | Moves export description into ATS XML docs. |
| src/Aspire.Hosting.Azure/IAzureResource.cs | Adds ATS summary override for polyglot docs. |
| src/Aspire.Hosting.Azure/ExistingAzureResourceExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure/AzureUserAssignedIdentityExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure/AzureResourceInfrastructure.cs | Adds ATS summary override for polyglot docs. |
| src/Aspire.Hosting.Azure/AzureResourceExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure/AzureProvisioningResourceExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure/AzureEnvironmentResourceExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure/AzureBicepResourceExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure/AzureBicepResource.cs | Adds ATS param override for polyglot-friendly type reference. |
| src/Aspire.Hosting.Azure.WebPubSub/AzureWebPubSubExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure.Sql/AzureSqlDatabaseResource.cs | Adds ATS summary override for child resource type. |
| src/Aspire.Hosting.Azure.SignalR/AzureSignalRExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure.ServiceBus/AzureServiceBusTopicResource.cs | Adds ATS summary override for exported resource type. |
| src/Aspire.Hosting.Azure.ServiceBus/AzureServiceBusSubscriptionResource.cs | Adds ATS summary override for exported resource type. |
| src/Aspire.Hosting.Azure.ServiceBus/AzureServiceBusQueueResource.cs | Adds ATS summary override for exported resource type. |
| src/Aspire.Hosting.Azure.Search/AzureSearchExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure.Redis/AzureManagedRedisExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure.PostgreSQL/AzurePostgresExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure.OperationalInsights/AzureLogAnalyticsWorkspaceExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure.Network/AzurePublicIPAddressExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure.Network/AzurePrivateEndpointExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure.Network/AzureNetworkSecurityPerimeterExtensions.cs | Moves exported doc text into ATS XML docs and adds ATS param references. |
| src/Aspire.Hosting.Azure.Network/AzureNetworkSecurityGroupExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure.Network/AzureNatGatewayExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure.Kusto/AzureKustoReadWriteDatabaseResourceExtensions.cs | Moves exported doc text into ATS XML docs with ATS param override. |
| src/Aspire.Hosting.Azure.Kusto/AzureKustoReadWriteDatabaseResource.cs | Adds ATS summary override for exported resource type. |
| src/Aspire.Hosting.Azure.Kusto/AzureKustoBuilderExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure.Kubernetes/AzureKubernetesIngressExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure.Kubernetes/AzureCertManagerExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure.KeyVault/AzureKeyVaultResourceExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure.Functions/DurableTask/DurableTaskResourceExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure.Functions/AzureFunctionsProjectResourceExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure.FrontDoor/AzureFrontDoorExtensions.cs | Moves exported doc text into ATS XML docs with ATS returns overrides. |
| src/Aspire.Hosting.Azure.EventHubs/AzureEventHubResource.cs | Adds ATS summary override for exported resource type. |
| src/Aspire.Hosting.Azure.CognitiveServices/AzureOpenAIExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure.AppService/AzureAppServicePolyglotCustomization.cs | Moves exported doc text into ATS XML docs for polyglot customization entrypoints. |
| src/Aspire.Hosting.Azure.AppService/AzureAppServiceEnvironmentExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure.AppService/AzureAppServiceComputeResourceExtensions.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting.Azure.ApplicationInsights/AzureApplicationInsightsExtensions.cs | Moves exported doc text into ATS XML docs with ATS params/returns overrides. |
| src/Aspire.Hosting.Azure.AppContainers/ContainerAppExtensions.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting.Azure.AppContainers/AzureContainerAppProjectExtensions.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting.Azure.AppContainers/AzureContainerAppPolyglotCustomization.cs | Moves exported doc text into ATS XML docs for polyglot customization entrypoints. |
| src/Aspire.Hosting.Azure.AppContainers/AzureContainerAppExecutableExtensions.cs | Moves exported doc text into ATS XML docs. |
| src/Aspire.Hosting.Azure.AppContainers/AzureContainerAppContainerExtensions.cs | Moves exported doc text into ATS XML docs. |
Use field and method ATS references for enum members and methods called out in review comments. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Remove ATS summary, parameter, and return overrides when the standard XML documentation already provides the same content for polyglot docs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Promote plain ATS summaries into the standard XML summary for internal polyglot-only exports and keep ATS summaries only when the standard summary uses references. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Remove ATS summary overrides that duplicate standard XML summaries closely enough for ATS to use the standard documentation directly. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Restore original C# summaries for exported members that do not need ATS-specific summary text, and keep ATS summaries only when the original summary contains C# reference tags. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add targeted ATS documentation overrides where C# references and examples leaked into generated polyglot docs, and update generated codegen snapshots. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
Re-running the failed jobs in the CI workflow for this pull request because 1 job was identified as retry-safe transient failures in the CI run attempt.
|
PR Testing ReportPR Information
CLI Version Verification
Changes AnalyzedThe PR updates Aspire export/XML documentation metadata across many hosting integration APIs, including ATS-specific XML documentation tags and removal/migration of Test Scenarios ExecutedScenario 1: Dogfood CLI install and version checkObjective: Verify the PR dogfood artifact is available and corresponds to the current PR head. Result: Passed Evidence:
Scenario 2: Fresh starter app restore/build with PR packagesObjective: Verify the PR CLI can create a new Aspire app using the PR package channel and that the generated AppHost builds successfully. Steps:
Result: Passed Evidence:
Summary
Overall ResultPassed for the executable smoke coverage available from the PR dogfood artifacts. I did not find a public CLI command in this build that directly emits the updated ATS/polyglot API documentation metadata, so the PR-specific documentation metadata was verified by diff review rather than a CLI scenario. |
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
radical
left a comment
There was a problem hiding this comment.
Found 2 issues: one compatibility-doc fallback regression and one stale README example.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
❓ CLI E2E Tests unknown — 96 passed, 0 failed, 2 unknown (commit View all recordings
📹 Recordings uploaded automatically from CI run #26196935730 |
…ostic Documents changes from microsoft/aspire#17289: - Update multi-language integration authoring guide to use XML doc comments instead of Description = "..." in all code examples - Add new 'Document your exports' section covering ats-summary, ats-param, ats-returns, ats-remarks, ats-see, and ats-seealso tags - Add ASPIREEXPORT015 to analyzer diagnostics table - Add new aspireexport015.mdx diagnostic reference page - Update diagnostics overview table with ASPIREEXPORT015 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
Pull request created: #1027
|
|
📝 Documentation has been drafted in microsoft/aspire.dev#1027 targeting Updated the multi-language integration authoring guide to replace Files changed:
Note This draft PR needs human review before merging. |
* Update polyglot ATS API docs Move AspireExport descriptions into XML/ATS documentation and add polyglot-safe ATS overrides for exported APIs. Add analyzer coverage to prevent new AspireExport Description usage and update generated TypeScript snapshots. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix ATS reference kinds Use field and method ATS references for enum members and methods called out in review comments. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Prune duplicate ATS documentation overrides Remove ATS summary, parameter, and return overrides when the standard XML documentation already provides the same content for polyglot docs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Deduplicate internal ATS export docs Promote plain ATS summaries into the standard XML summary for internal polyglot-only exports and keep ATS summaries only when the standard summary uses references. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Prune close duplicate ATS summaries Remove ATS summary overrides that duplicate standard XML summaries closely enough for ATS to use the standard documentation directly. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Restore C# summaries for ATS exports Restore original C# summaries for exported members that do not need ATS-specific summary text, and keep ATS summaries only when the original summary contains C# reference tags. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Add ATS overrides for polyglot docs Add targeted ATS documentation overrides where C# references and examples leaked into generated polyglot docs, and update generated codegen snapshots. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Discover parameterless ATS exports in workflows Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Address ATS docs review feedback Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The new ASPIREEXPORT015 analyzer (introduced in microsoft#17289) flags `[AspireExport(Description = ...)]` as an error: polyglot SDK descriptions should come from XML documentation, with <ats-summary> overrides where the C# summary won't render well in polyglot docs. - AddRadiusEnvironment, WithNamespace, WithContainerImage, PublishAsRadiusResource: existing <summary> covers it; drop Description. - WithLegacyContainers: C# summary leans on <c> tags; add <ats-summary> with the polyglot-friendly text from the original Description. - PublishAsRadiusResource: summary references RadiusResourceCustomization (C#-only type); add <ats-summary> for clean polyglot docs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Signed-off-by: Nell Shamrell <nellshamrell@gmail.com>
…ostic Documents changes from microsoft/aspire#17289: - Update multi-language integration authoring guide to use XML doc comments instead of Description = "..." in all code examples - Add new 'Document your exports' section covering ats-summary, ats-param, ats-returns, ats-remarks, ats-see, and ats-seealso tags - Add ASPIREEXPORT015 to analyzer diagnostics table - Add new aspireexport015.mdx diagnostic reference page - Update diagnostics overview table with ASPIREEXPORT015 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Description
ATS now generates public API documentation for polyglot SDKs, so exported C# docs need language-neutral metadata instead of C#-specific XML shapes or
AspireExport.Descriptionstrings. This updates the exported API docs to use XML/ATS documentation tags that can be consumed by TypeScript and other generated SDKs.This change moves export descriptions into XML docs, adds targeted
ats-summary,ats-param, andats-returnsoverrides for polyglot-incompatible content, and teaches ATS references to accept compiler-safecref="!:type:...",method, andfieldforms. It also adds analyzer ruleASPIREEXPORT015so new[AspireExport(Description = ...)]usages fail during development, while preserving generated API baseline files.Fixes: #17068
Checklist
<remarks />and<code />elements on your triple slash comments?