Skip to content

Sunset the GitHub Models integration - #18405

Merged
Sébastien Ros (sebastienros) merged 8 commits into
mainfrom
sebastienros-sunset-github-models-integration
Jun 22, 2026
Merged

Sunset the GitHub Models integration#18405
Sébastien Ros (sebastienros) merged 8 commits into
mainfrom
sebastienros-sunset-github-models-integration

Conversation

@sebastienros

Copy link
Copy Markdown
Contributor

Description

The GitHub Models service is no longer available to new customers, so Aspire.Hosting.GitHub.Models needs to be retired. Rather than deleting it outright (which would break existing consumers of a shipped stable package), this PR does a soft sunset: it ships one final release with the entire public surface marked [Obsolete] and the integration hidden from aspire add, following the same path previously used for Aspire.Hosting.Dapr and Aspire.Hosting.NodeJs. A later release can then remove the project entirely.

What changed:

  • All public API marked [Obsolete]. Both AddGitHubModel overloads, the internal helpers, WithApiKey, WithHealthCheck, and the GitHubModel / GitHubModelResource types now carry a shared deprecation message (new GitHubModelsDeprecation.Message const) pointing at Sunset Github Models integration #18402. Existing apps keep compiling, just with deprecation warnings.
  • Hidden from aspire add. Added the package to the CLI DeprecatedPackages allow-list so it no longer shows up in integration listings unless the ShowDeprecatedPackages feature flag is set, mirroring the Dapr/NodeJs precedent.
  • Stopped the automation. Removed the daily update-github-models.yml workflow and the in-package model generator tooling, since the model list will no longer be refreshed.
  • Docs. README now states the service is no longer supported and the integration is sunset.

Notes for reviewers:

  • The package remains IsPackable=true with no SuppressFinalPackageVersion, so the next release still publishes a final obsolete version to NuGet. Full deletion of the project, tests, and playground is intended as a follow-up after that release.
  • ATS export coverage is unchanged by [Obsolete] (the scanner still emits the capability, now flagged @deprecated in TS codegen), so the polyglot apphosts remain valid and were intentionally left untouched.
  • NoWarn;CS0618 was added only to the external consumers (test project, playground) since TreatWarningsAsErrors is on repo-wide; obsolete-within-obsolete references self-suppress.

Fixes: #18402

Checklist

  • Is this feature complete?
    • Yes. Ready to ship.
    • No. Follow-up changes expected.
  • Are you including unit tests for the changes and scenario tests if relevant?
    • Yes
    • No
  • Did you add public API?
    • Yes
      • If yes, did you have an API Review for it?
        • Yes
        • No
      • Did you add <remarks /> and <code /> elements on your triple slash comments?
        • Yes
        • No
    • No
  • Does the change make any security assumptions or guarantees?
    • Yes
      • If yes, have you done a threat model and had a security review?
        • Yes
        • No
    • No

GitHub Models is no longer available to new customers, so the
Aspire.Hosting.GitHub.Models integration is being sunset.

- Mark the public API surface [Obsolete] (AddGitHubModel overloads,
  AddGitHubModelById, WithApiKey, WithHealthCheck, GitHubModel,
  GitHubModelResource) with a message linking #18402. The ATS exporter
  keeps these capabilities and only flags them deprecated, so polyglot
  export coverage is unchanged.
- Stop the daily model auto-update workflow and remove the now-dead
  GenModel generator tooling.
- Add a deprecation banner to the integration README.
- Suppress CS0618 in the test project and the playground AppHost, which
  intentionally exercise the deprecated integration.

Fixes #18402

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Mirror the Aspire.Hosting.Dapr / Aspire.Hosting.NodeJs deprecation
precedent by adding Aspire.Hosting.GitHub.Models to the CLI
DeprecatedPackages list so it no longer appears in 'aspire add'
integration listings (unless the ShowDeprecatedPackages feature flag is
set). Update the CLI deprecation tests accordingly and strengthen the
README to state the GitHub Models service is no longer supported.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings June 22, 2026 16:36
@github-actions

github-actions Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

🚀 Dogfood this PR with:

⚠️ WARNING: Do not do this without first carefully reviewing the code of this PR to satisfy yourself it is safe.

curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 18405

Or

  • Run remotely in PowerShell:
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 18405"

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR soft-sunsets the Aspire.Hosting.GitHub.Models hosting integration because the GitHub Models service is no longer available to new customers (#18402). Rather than deleting the shipped stable package outright, it ships one final release with the entire public surface marked [Obsolete] and hides the integration from aspire add, mirroring the prior Dapr/NodeJs sunset path. It also removes the daily model-refresh workflow and the in-package generator tooling.

I verified the deprecation is applied consistently across the public surface, the CLI deprecation list is the single source of truth that gates all three integration-listing paths (and the matching CLI tests were updated), the removed tools/ folder is fully gone (so dropping the Compile Remove is safe), and there are no dangling references to the deleted workflow/GenModel.cs. External consumers (test project, playground) suppress CS0618 via NoWarn, while in-package references self-suppress (obsolete-within-obsolete). No concrete defects were found.

Changes:

  • Marks all public GitHub Models APIs [Obsolete] via a shared GitHubModelsDeprecation.Message const pointing at #18402.
  • Adds Aspire.Hosting.GitHub.Models to the CLI DeprecatedPackages allow-list (with corresponding test updates) and updates the README with a deprecation warning.
  • Removes the update-github-models.yml workflow and the tools/ model-generator tooling.

Reviewed changes

Copilot reviewed 15 out of 15 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/Aspire.Hosting.GitHub.Models/GitHubModelsDeprecation.cs New internal const holding the shared deprecation message.
src/Aspire.Hosting.GitHub.Models/GitHubModelsExtensions.cs Marks both public/internal AddGitHubModel*, WithApiKey, WithHealthCheck overloads [Obsolete].
src/Aspire.Hosting.GitHub.Models/GitHubModelResource.cs Marks the resource type [Obsolete].
src/Aspire.Hosting.GitHub.Models/GithubModel.cs Marks the GitHubModel descriptor type [Obsolete] and adds the required using.
src/Aspire.Hosting.GitHub.Models/Aspire.Hosting.GitHub.Models.csproj Removes the now-unneeded Compile Remove="tools\**\*.cs".
src/Aspire.Hosting.GitHub.Models/README.md Adds a deprecation/sunset warning admonition.
src/Aspire.Hosting.GitHub.Models/tools/* Deletes generator tooling (GenModel.cs, empty Directory.Build.*).
src/Aspire.Cli/NuGet/NuGetPackageCache.cs Adds the package to the DeprecatedPackages set.
tests/Aspire.Cli.Tests/NuGet/NuGetPackageCacheTests.cs Updates filter assertions to include GitHub.Models.
tests/Aspire.Cli.Tests/Packaging/PackageChannelTests.cs Adds GitHub.Models to the dropped-deprecated-package case.
tests/Aspire.Hosting.GitHub.Models.Tests/*.csproj Suppresses CS0618 for the deprecated-API tests.
playground/GitHubModelsEndToEnd/.../GitHubModelsEndToEnd.AppHost.csproj Suppresses CS0618 for the demo AppHost.
.github/workflows/update-github-models.yml Removes the daily model-refresh automation.

@github-actions

This comment has been minimized.

@sebastienros

Copy link
Copy Markdown
Contributor Author

PR Testing Report

PR Information

Artifact Version Verification

  • Expected Commit: de3c0a21
  • Installed CLI Version: 13.5.0-pr.18405.gde3c0a21
  • Status: ✅ Verified (dogfood CLI built from PR head)
  • Package still ships:Aspire.Hosting.GitHub.Models.13.5.0-pr.18405.gde3c0a21.nupkg present in the PR hive (the package is still packed/published as a final obsolete release).

Changes Analyzed

  • CLI changessrc/Aspire.Cli/NuGet/NuGetPackageCache.cs adds Aspire.Hosting.GitHub.Models to DeprecatedPackages.
  • Hosting integration changes — entire Aspire.Hosting.GitHub.Models public surface marked [Obsolete].
  • CI infrastructure changes — deleted the daily update-github-models.yml workflow + in-package generator tooling.
  • Docs — README deprecation banner.
  • Test changes — CLI deprecation tests extended; test/playground csproj suppress CS0618.

Test Scenarios Executed

Scenario 1: Artifact provenance

Objective: Confirm the dogfood CLI matches the PR head and the package still ships.
Coverage Type: Happy path
Status: ✅ Passed

  • Installed CLI reports 13.5.0-pr.18405.gde3c0a21 (matches head de3c0a21).
  • PR hive contains Aspire.Hosting.GitHub.Models.13.5.0-pr.18405.gde3c0a21.nupkg.

Scenario 2: aspire add filters the deprecated package by default (headline CLI behavior)

Objective: Verify GitHub Models is hidden from aspire add while a non-deprecated control still resolves.
Coverage Type: Happy path + negative
Status: ✅ Passed

Probe Command (non-interactive, exact id + --version) Result
Deprecated aspire add Aspire.Hosting.GitHub.Models ❌ "No exact match was found" — filtered out of candidate set (safe, explicit failure; no silent wrong package)
Control aspire add Aspire.Hosting.Redis ✅ "added successfully" → #:package Aspire.Hosting.Redis@... written

Both invocations were identical and ran against the same PR hive (which contains both packages), so the only difference is the deprecation gate.

Scenario 3: features.showDeprecatedPackages re-enables the package (boundary)

Objective: Prove the filtering is specifically the deprecation flag, not a missing package.
Coverage Type: Boundary
Status: ✅ Passed

  • aspire config set features.showDeprecatedPackages true (local), then
  • aspire add Aspire.Hosting.GitHub.Models → ✅ "added successfully" → #:package Aspire.Hosting.GitHub.Models@... written.

Scenario 4: [Obsolete] produces CS0618 when the API is used

Objective: Verify consumers using the hosting API get deprecation warnings but still build.
Coverage Type: Happy path
Status: ✅ Passed

  • A file-based AppHost calling builder.AddGitHubModel("chat", GitHubModel.OpenAI.OpenAIGpt4oMini) was built with dotnet build apphost.cs.
  • Emitted two warning CS0618 (on GitHubModel and AddGitHubModel) with the exact message:
    GitHub Models is no longer available to new customers, so the Aspire GitHub Models integration is deprecated and will be removed in a future release. See https://github.com/microsoft/aspire/issues/18402 for details.
  • Build succeeded (warnings, not errors) — existing apps keep compiling.

CI Infrastructure Validation

  • Deleted workflow update-github-models.yml: a deletion cannot be dispatched/run; verified there are no dangling references (the AI Foundry workflow uses its own separate src/Aspire.Hosting.Foundry/tools/GenModel.cs). Nothing else to run for this change.

Investigation of the failing PR check

  • Failing check: Tests / Cli.EndToEnd-TypeScriptCodegenValidationTests (ubuntu-latest).
  • Failing case: RestoreGeneratesSdkFiles_WithConfiguredToolchain(toolchain: "yarn").
  • Nature: The test hung for 10 minutes (hang dump, process exit code 7, No failed tests in .trx) — a timeout, not an assertion failure.
  • Relevance to PR: Unrelated. This test exercises TypeScript SDK codegen for Redis + SqlServer only; GitHub Models is never added. The yarn toolchain variant performs network-heavy restore and hung; the PR's additive [Obsolete] attributes on GitHub Models cannot affect Redis/SqlServer codegen or a yarn restore. Classic transient/flaky timeout; a rerun should clear it. All native CLI archive builds passed.

Summary

Scenario Status Notes
1. Artifact provenance ✅ Passed Version matches head; package still ships
2. aspire add filters deprecated package ✅ Passed GitHub Models filtered; Redis control adds
3. Feature flag re-enables package ✅ Passed showDeprecatedPackages=true → addable
4. [Obsolete] emits CS0618 ✅ Passed Warnings (not errors); exact #18402 message
Failing CI check ⚠️ Unrelated Transient yarn-restore hang in Redis/SqlServer codegen test

Overall Result

✅ PR VERIFIED

The sunset behaves exactly as intended end-to-end: the package still builds and ships, it is hidden from aspire add by default (recoverable via features.showDeprecatedPackages), and using the API surfaces a clear CS0618 deprecation pointing at #18402 without breaking existing builds. The one red CI check is an unrelated transient timeout in a TypeScript-codegen test that does not involve GitHub Models.

Capture the full soft-sunset process for retiring a shipped Aspire hosting
integration (mark API [Obsolete], README warning banner, hide from aspire add,
remove integration-specific automation, suppress CS0618 in first-party
consumers, keep the package publishable) as a reusable skill, derived from the
GitHub Models sunset (#18402). Also list it in AGENTS.md.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

This comment has been minimized.

Verification with a fresh agent surfaced two over-application risks the
original wording invited: decorating every nested per-item member of an
already-obsolete type, and overwriting pre-existing, more-specific
[Obsolete] messages. Clarify Step 2 to mark each public type/extension
method once (the enclosing type covers its members), to leave generated
files and existing obsolete messages alone, and generalize the CLI test
step to update every DeprecatedPackages test case.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings June 22, 2026 18:35
The integration is still a work in progress; presenting it as the
canonical Phase 1 reference won't make sense once the skill is applied
to other integrations.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The obsolete message and banner depend on a clear reason; any issue link
is optional supporting context.

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>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 17 out of 17 changed files in this pull request and generated no new comments.

@github-actions

Copy link
Copy Markdown
Contributor

Tests selector (audit mode)

The full test matrix and all jobs still run in audit mode. The tests and jobs below are what selective CI would run under enforcement.

48 / 97 test projects · 5 jobs, from 19 changed files.

Selected test projects (48 / 97)

Aspire.Cli.EndToEnd.Tests, Aspire.Cli.Tests, Aspire.EndToEnd.Tests, Aspire.Hosting.Analyzers.Tests, Aspire.Hosting.Azure.Kubernetes.Tests, Aspire.Hosting.Azure.Kusto.Tests, Aspire.Hosting.Azure.Tests, Aspire.Hosting.Blazor.Tests, Aspire.Hosting.Browsers.Tests, Aspire.Hosting.CodeGeneration.Go.Tests, Aspire.Hosting.CodeGeneration.Java.Tests, Aspire.Hosting.CodeGeneration.Python.Tests, Aspire.Hosting.CodeGeneration.Rust.Tests, Aspire.Hosting.CodeGeneration.TypeScript.Tests, Aspire.Hosting.Containers.Tests, Aspire.Hosting.DevTunnels.Tests, Aspire.Hosting.Docker.Tests, Aspire.Hosting.DotnetTool.Tests, Aspire.Hosting.EntityFrameworkCore.Tests, Aspire.Hosting.Foundry.Tests, Aspire.Hosting.Garnet.Tests, Aspire.Hosting.GitHub.Models.Tests, Aspire.Hosting.Go.Tests, Aspire.Hosting.JavaScript.Tests, Aspire.Hosting.Kafka.Tests, Aspire.Hosting.Keycloak.Tests, Aspire.Hosting.Kubernetes.Tests, Aspire.Hosting.Maui.Tests, Aspire.Hosting.Milvus.Tests, Aspire.Hosting.MongoDB.Tests, Aspire.Hosting.MySql.Tests, Aspire.Hosting.Nats.Tests, Aspire.Hosting.OpenAI.Tests, Aspire.Hosting.Oracle.Tests, Aspire.Hosting.PostgreSQL.Tests, Aspire.Hosting.Python.Tests, Aspire.Hosting.Qdrant.Tests, Aspire.Hosting.RabbitMQ.Tests, Aspire.Hosting.Redis.Tests, Aspire.Hosting.RemoteHost.Tests, Aspire.Hosting.Seq.Tests, Aspire.Hosting.SqlServer.Tests, Aspire.Hosting.Testing.Tests, Aspire.Hosting.Tests, Aspire.Hosting.Valkey.Tests, Aspire.Hosting.Yarp.Tests, Aspire.Playground.Tests, Infrastructure.Tests

Selected jobs (5)

cli-starter, deployment-e2e, extension-e2e, polyglot, typescript-api-compat


How these were chosen — grouped by what changed

⚠️ 31 of the 48 selected test projects come from a single change — tests/Aspire.Hosting.Tests/Dashboard/DashboardEventHandlersTests.cs.

🧪 tests/Aspire.Hosting.Tests/Dashboard/DashboardEventHandlersTests.cs (changed test)
1 directly: Aspire.Hosting.Tests
30 via the project graph

show 30

Aspire.Hosting.Azure.Kubernetes.Tests, Aspire.Hosting.Azure.Kusto.Tests, Aspire.Hosting.Blazor.Tests, Aspire.Hosting.Browsers.Tests, Aspire.Hosting.Containers.Tests, Aspire.Hosting.DevTunnels.Tests, Aspire.Hosting.Docker.Tests, Aspire.Hosting.DotnetTool.Tests, Aspire.Hosting.EntityFrameworkCore.Tests, Aspire.Hosting.Garnet.Tests, Aspire.Hosting.Go.Tests, Aspire.Hosting.JavaScript.Tests, Aspire.Hosting.Kafka.Tests, Aspire.Hosting.Keycloak.Tests, Aspire.Hosting.Kubernetes.Tests, Aspire.Hosting.Milvus.Tests, Aspire.Hosting.MongoDB.Tests, Aspire.Hosting.MySql.Tests, Aspire.Hosting.Nats.Tests, Aspire.Hosting.OpenAI.Tests, Aspire.Hosting.Oracle.Tests, Aspire.Hosting.PostgreSQL.Tests, Aspire.Hosting.Python.Tests, Aspire.Hosting.Qdrant.Tests, Aspire.Hosting.RabbitMQ.Tests, Aspire.Hosting.Redis.Tests, Aspire.Hosting.Seq.Tests, Aspire.Hosting.SqlServer.Tests, Aspire.Hosting.Valkey.Tests, Aspire.Hosting.Yarp.Tests

🔧 src/Aspire.Hosting/Dashboard/DashboardEventHandlers.cs (changed source)
10 via the project graph: Aspire.Hosting.Analyzers.Tests (2 hops), Aspire.Hosting.CodeGeneration.Go.Tests, Aspire.Hosting.CodeGeneration.Java.Tests, Aspire.Hosting.CodeGeneration.Python.Tests, Aspire.Hosting.CodeGeneration.Rust.Tests, Aspire.Hosting.CodeGeneration.TypeScript.Tests, Aspire.Hosting.Maui.Tests, Aspire.Hosting.RemoteHost.Tests, Aspire.Hosting.Testing.Tests (2 hops), Aspire.Playground.Tests

🔧 src/Aspire.Hosting.Foundry/FoundryModel.Obsolete.cs (changed source)
1 directly: Aspire.Hosting.Foundry.Tests
1 via the project graph: Aspire.Hosting.Azure.Tests

📦 affected project Aspire.Cli
1 test: Aspire.Cli.EndToEnd.Tests

📦 affected project Aspire.Hosting
1 test: Aspire.EndToEnd.Tests

📄 .github/workflows/update-github-models.yml (changed)
1 directly: Infrastructure.Tests

📄 playground/GitHubModelsEndToEnd/GitHubModelsEndToEnd.AppHost/GitHubModelsEndToEnd.AppHost.csproj (changed)
1 directly: Aspire.Playground.Tests

🔧 src/Aspire.Hosting.GitHub.Models/Aspire.Hosting.GitHub.Models.csproj (changed source)
1 directly: Aspire.Hosting.GitHub.Models.Tests

🔧 src/Aspire.Hosting.GitHub.Models/GitHubModelResource.cs (changed source)
1 directly: Aspire.Hosting.GitHub.Models.Tests

🔧 src/Aspire.Hosting.GitHub.Models/GitHubModelsDeprecation.cs (changed source)
1 directly: Aspire.Hosting.GitHub.Models.Tests

🔧 src/Aspire.Hosting.GitHub.Models/GitHubModelsExtensions.cs (changed source)
1 directly: Aspire.Hosting.GitHub.Models.Tests

🔧 src/Aspire.Hosting.GitHub.Models/GithubModel.cs (changed source)
1 directly: Aspire.Hosting.GitHub.Models.Tests

🔧 src/Aspire.Hosting.GitHub.Models/tools/Directory.Build.props (changed source)
1 directly: Aspire.Hosting.GitHub.Models.Tests

🔧 src/Aspire.Hosting.GitHub.Models/tools/Directory.Build.targets (changed source)
1 directly: Aspire.Hosting.GitHub.Models.Tests

🔧 src/Aspire.Hosting.GitHub.Models/tools/GenModel.cs (changed source)
1 directly: Aspire.Hosting.GitHub.Models.Tests

🧪 tests/Aspire.Cli.Tests/NuGet/NuGetPackageCacheTests.cs (changed test)
1 directly: Aspire.Cli.Tests

🧪 tests/Aspire.Cli.Tests/Packaging/PackageChannelTests.cs (changed test)
1 directly: Aspire.Cli.Tests

🧪 tests/Aspire.Hosting.GitHub.Models.Tests/Aspire.Hosting.GitHub.Models.Tests.csproj (changed test)
1 directly: Aspire.Hosting.GitHub.Models.Tests

🧪 tests/Aspire.Hosting.Tests/Dashboard/DashboardResourceTests.cs (changed test)
1 directly: Aspire.Hosting.Tests

Job reasons

Job Triggered by
cli-starter affected project Aspire.Cli, via test Aspire.Cli.Tests
deployment-e2e affected project Aspire.Cli
extension-e2e src/Aspire.Cli/NuGet/NuGetPackageCache.cs, src/Aspire.Hosting.Foundry/FoundryModel.Obsolete.cs, src/Aspire.Hosting.GitHub.Models/Aspire.Hosting.GitHub.Models.csproj, src/Aspire.Hosting.GitHub.Models/GitHubModelResource.cs, src/Aspire.Hosting.GitHub.Models/GitHubModelsDeprecation.cs, src/Aspire.Hosting.GitHub.Models/GitHubModelsExtensions.cs, src/Aspire.Hosting.GitHub.Models/GithubModel.cs, src/Aspire.Hosting.GitHub.Models/tools/Directory.Build.props, src/Aspire.Hosting.GitHub.Models/tools/Directory.Build.targets, src/Aspire.Hosting.GitHub.Models/tools/GenModel.cs, src/Aspire.Hosting/Dashboard/DashboardEventHandlers.cs, src/Aspire.Hosting/DistributedApplicationBuilder.cs, tests/Aspire.Cli.Tests/NuGet/NuGetPackageCacheTests.cs, tests/Aspire.Cli.Tests/Packaging/PackageChannelTests.cs, affected project Aspire.Cli
polyglot affected project Aspire.Cli
typescript-api-compat affected project Aspire.Cli

Selection computed for commit 6380781.

@github-actions

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

@github-actions

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

@sebastienros

Copy link
Copy Markdown
Contributor Author

David Fowler (@davidfowl) I asked the agent to revert all changes and use a sub agent to run the skill, so it should be a good validation.

@sebastienros
Sébastien Ros (sebastienros) merged commit 1ef6bcb into main Jun 22, 2026
996 of 1006 checks passed
@sebastienros
Sébastien Ros (sebastienros) deleted the sebastienros-sunset-github-models-integration branch June 22, 2026 20:46
@davidfowl

Copy link
Copy Markdown
Collaborator

sweet!

@microsoft-github-policy-service microsoft-github-policy-service Bot added this to the 13.5 milestone Jun 22, 2026
aspire-repo-bot Bot added a commit to microsoft/aspire.dev that referenced this pull request Jun 22, 2026
The GitHub Models service is no longer available to new customers.
Aspire.Hosting.GitHub.Models is sunset in 13.5 — all public APIs are
marked [Obsolete] and the package is hidden from aspire add. Add a
:::caution callout to all three GitHub Models documentation pages to
surface this to existing users.

Documents changes from microsoft/aspire#18405.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@aspire-repo-bot

Copy link
Copy Markdown
Contributor

Pull request created: #1279

Generated by PR Documentation Check · 1.1K AIC · ⌖ 21.2 AIC · ⊞ 45.7K

@aspire-repo-bot

Copy link
Copy Markdown
Contributor

📝 Documentation has been drafted in microsoft/aspire.dev#1279 targeting release/13.5.

Added a :::caution[Integration deprecated] callout to the top of all three GitHub Models documentation pages, noting that the service is no longer available to new customers, all public APIs are [Obsolete] as of 13.5, and the package is hidden from aspire add. Updated files:

  • src/frontend/src/content/docs/integrations/ai/github-models/github-models-get-started.mdx
  • src/frontend/src/content/docs/integrations/ai/github-models/github-models-host.mdx
  • src/frontend/src/content/docs/integrations/ai/github-models/github-models-connect.mdx

Note

This draft PR needs human review before merging.

David Pine (IEvangelist) added a commit to microsoft/aspire.dev that referenced this pull request Jun 25, 2026
* Add deprecation notices to GitHub Models integration docs

The GitHub Models service is no longer available to new customers.
Aspire.Hosting.GitHub.Models is sunset in 13.5 — all public APIs are
marked [Obsolete] and the package is hidden from aspire add. Add a
:::caution callout to all three GitHub Models documentation pages to
surface this to existing users.

Documents changes from microsoft/aspire#18405.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* docs: add GitHub Models sunset to 13.5 breaking changes

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* docs: recommend Azure AI Foundry integration as GitHub Models replacement

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: David Pine <david.pine@microsoft.com>

---------

Co-authored-by: aspire-repo-bot[bot] <268009190+aspire-repo-bot[bot]@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Sebastien Ros <sebastienros@gmail.com>
Co-authored-by: David Pine <david.pine@microsoft.com>
Ankit Jain (radical) added a commit to radical/aspire that referenced this pull request Jun 30, 2026
Address review findings on the failure-issue automation:

- The monitor watch list still named refresh-typescript-sdks.yml and
  update-github-models.yml, but both workflows were removed on main
  (microsoft#18288 and microsoft#18405). monitor-scheduled-workflows.js looks each entry
  up via listWorkflowRuns({ workflow_id }), so every 2-hour run would
  404 on these two and log a warning while monitoring nothing. Remove
  both from the config and from the watch-list prose in the doc.

- monitor-scheduled-workflows.md linked internal-build-failure-
  notifications.md, which does not exist in the repo. Drop the dangling
  link, keep the sentence.

- specialized-test-failure-issues.md described extractionFailed as true
  "only when every .trx was unreadable". The implementation is
  readErrors > 0 && failedTests.Count == 0 (at least one unreadable trx
  with no failures collected); the partial case is also flagged. Match
  the markdown to the code and its in-code comment.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions github-actions Bot locked and limited conversation to collaborators Jul 23, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Sunset Github Models integration

3 participants