Tags: microsoft/aspire
Tags
[release/13.5] Fix DevTunnel endpoint URL publication (#19625) * Fix DevTunnel endpoint URL publication (#19590) * Fix DevTunnel endpoint allocation Limit automatic proxyless port allocation to compute resources so integration-owned endpoints can publish their own addresses. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: e3b04d22-d265-49d0-861a-09aac8be80d6 * Address code review findings Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec7aab9b-2163-45b7-89f6-c349fef7f07f --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: e3b04d22-d265-49d0-861a-09aac8be80d6 Copilot-Session: ec7aab9b-2163-45b7-89f6-c349fef7f07f * Adapt DevTunnel regression test for release/13.5 The release branch preserves a trailing slash on the inspect URL, unlike main's normalized URL behavior. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 8d56e681-8c44-4dab-ba09-39ae0f6eacb2 --------- Co-authored-by: Karol Zadora-Przylecki <karolz@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: e3b04d22-d265-49d0-861a-09aac8be80d6 Copilot-Session: ec7aab9b-2163-45b7-89f6-c349fef7f07f Copilot-Session: 8d56e681-8c44-4dab-ba09-39ae0f6eacb2
[release/13.5] Exclude unused hex1bpty.exe from published CLI archives ( #19557) * Exclude unused hex1bpty.exe from published CLI archives Hex1b ships a hex1bpty.exe PTY host in its win-x64/win-arm64 native assets. Aspire never takes that path: DCP owns every PTY we surface and Aspire.TerminalHost only proxies the byte stream DCP already produces, so the helper is ~5 MB of dead weight in each Windows CLI archive and inside every Windows aspire.exe bundle payload. It also shows up as an unexplained second executable in the winget submission, where every binary in the archive is run through executable and malware checks. Filter it out of publish for src/ projects. Test projects are untouched because they drive real terminals through Hex1b.Automation, which does need the helper. Unix keeps libhex1binterop.{so,dylib}, the termios/ioctl shim the TUI P/Invokes. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Update PatchVersion to 2 in Versions.props --------- Co-authored-by: Mitch Denny <midenn@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Co-authored-by: Jose Perez Rodriguez <joperezr@microsoft.com>
[release/13.5] Remove pipeline-scoped Publish-Build-Assets group (#19523 ) * Remove pipeline-scoped Publish-Build-Assets group Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Pin Azure Identity for VSCE installs Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: dbe46f58-0f31-4540-a647-0d0e77bea4f1 * Clarify pipeline workaround conditions Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: dbe46f58-0f31-4540-a647-0d0e77bea4f1 * Document VSCE dependency pin Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: dbe46f58-0f31-4540-a647-0d0e77bea4f1 --------- Co-authored-by: Adam Ratzman <adam@adamratzman.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: dbe46f58-0f31-4540-a647-0d0e77bea4f1
[release/13.5] Move progress prompt title to options (#19424) * Fix progress prompt parameter order * Address progress prompt review feedback * Suppress prompt progress API compatibility warnings * Move progress title to polyglot options * Move native progress title to options * Update progress API compatibility suppression * Add regression tests for progress prompt title mapping The progress dialog title now reaches the interaction through two hand-written mappings that nothing asserted: CommandProgressOptions.Title -> ProgressInteractionOptions.Title in ResourceCommandService, and InteractionProgressOptions.Title -> ProgressInteractionOptions.Title in the ATS export. Either could be dropped without failing a test, silently losing the title for command progress dialogs and for every polyglot AppHost. Both tests were verified to fail when the corresponding mapping is removed. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: James Newton-King <james@newtonking.com> Co-authored-by: Mitch Denny <midenn@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
[release/13.4] Filter resources with resource.excludeFromMcp from CLI… … MCP tools (#18150) * Filter resources with resource.excludeFromMcp from CLI MCP tools Resources marked with the resource.excludeFromMcp property are now excluded from all MCP tool results: - ListResourcesTool filters them from resource listings - ListConsoleLogsTool and ExecuteResourceCommandTool reject requests targeting excluded resources - ListStructuredLogsTool, ListTracesTool, and ListTraceStructuredLogsTool filter out telemetry from excluded resources - McpResourceToolRefreshService skips excluded resources Added McpToolHelpers with IsExcludedFromMcp, CheckResourceExcludedAsync, GetExcludedResourceNamesAsync, and GetResourceNotAvailableMessage helpers. Includes comprehensive unit tests covering all filtering scenarios. * Add ListTraceStructuredLogsTool exclusion tests and E2E test - Add two tests for ListTraceStructuredLogsTool filtering: - FiltersExcludedResourceLogs: verifies excluded resource logs are removed from trace-scoped structured log results - ReturnsAllLogs_WhenNoResourcesExcluded: verifies no filtering when no resources are excluded - Add doesNotContainMarker parameter to CallAgentMcpToolAsync helper - Add AgentMcpExcludeFromMcpTests E2E test that verifies list_resources excludes resources marked with ExcludeFromMcp() * Use quoted markers in E2E test for precise JSON matching * Avoid redundant connection lookup in exclusion checks Add overloads of CheckResourceExcludedAsync and GetExcludedResourceNamesAsync that accept IAppHostAuxiliaryBackchannel directly. Update ListConsoleLogsTool and ExecuteResourceCommandTool to use the connection they already obtained, eliminating a redundant GetSelectedConnectionAsync + GetResourceSnapshotsAsync call per request. * Use StringComparers.ResourceName and extract CreateExcludedResult helper * Fix AgentMcpExcludeFromMcp E2E test: disable Redis cache The test was timing out because the Redis container's health check never passed in the Docker-in-Docker CI environment, causing webfrontend (which has WaitFor(cache)) to stay stuck in Waiting state. Redis is irrelevant to this test — it only verifies ExcludeFromMcp() filtering. Disabling Redis removes the container dependency. --------- Co-authored-by: James Newton-King <james@newtonking.com>
[release/13.4] Filter resources with resource.excludeFromMcp from CLI… … MCP tools (#18150) * Filter resources with resource.excludeFromMcp from CLI MCP tools Resources marked with the resource.excludeFromMcp property are now excluded from all MCP tool results: - ListResourcesTool filters them from resource listings - ListConsoleLogsTool and ExecuteResourceCommandTool reject requests targeting excluded resources - ListStructuredLogsTool, ListTracesTool, and ListTraceStructuredLogsTool filter out telemetry from excluded resources - McpResourceToolRefreshService skips excluded resources Added McpToolHelpers with IsExcludedFromMcp, CheckResourceExcludedAsync, GetExcludedResourceNamesAsync, and GetResourceNotAvailableMessage helpers. Includes comprehensive unit tests covering all filtering scenarios. * Add ListTraceStructuredLogsTool exclusion tests and E2E test - Add two tests for ListTraceStructuredLogsTool filtering: - FiltersExcludedResourceLogs: verifies excluded resource logs are removed from trace-scoped structured log results - ReturnsAllLogs_WhenNoResourcesExcluded: verifies no filtering when no resources are excluded - Add doesNotContainMarker parameter to CallAgentMcpToolAsync helper - Add AgentMcpExcludeFromMcpTests E2E test that verifies list_resources excludes resources marked with ExcludeFromMcp() * Use quoted markers in E2E test for precise JSON matching * Avoid redundant connection lookup in exclusion checks Add overloads of CheckResourceExcludedAsync and GetExcludedResourceNamesAsync that accept IAppHostAuxiliaryBackchannel directly. Update ListConsoleLogsTool and ExecuteResourceCommandTool to use the connection they already obtained, eliminating a redundant GetSelectedConnectionAsync + GetResourceSnapshotsAsync call per request. * Use StringComparers.ResourceName and extract CreateExcludedResult helper * Fix AgentMcpExcludeFromMcp E2E test: disable Redis cache The test was timing out because the Redis container's health check never passed in the Docker-in-Docker CI environment, causing webfrontend (which has WaitFor(cache)) to stay stuck in Waiting state. Redis is irrelevant to this test — it only verifies ExcludeFromMcp() filtering. Disabling Redis removes the container dependency. --------- Co-authored-by: James Newton-King <james@newtonking.com>
Fix persistent container endpoint allocation (#17960) * Fix persistent container endpoint allocation Default persistent container endpoints to proxied unless proxy support is disabled, and remove delayed proxyless container endpoint allocation in favor of target-port public port defaults. Preserve endpoint and connection string event timing from release/13.3 and add coverage for the KeyVault emulator-style health check path.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Restore health check URI binding timing Set HTTP health check URIs during BeforeResourceStartedEvent again so surrogate resource builders that forward startup events continue to initialize their health checks. Add DCP coverage for the KeyVault-emulator-style surrogate pattern.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Bump Aspire patch version to 13.4.3 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Preserve blocking endpoint allocation dispatch Keep ResourceEndpointsAllocatedEvent dispatch aligned with release/13.4 so subscriber exceptions propagate and endpoint allocation callbacks complete before startup proceeds.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Stabilize Kafka persistent reuse test port Use a fixed public Kafka port for the persistent reuse test and let the shared persistent-container helper disable DCP test port randomization when a test needs explicit ports to remain stable.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
PreviousNext