[Aspire extension] Phase 6: Make the extension the default for new Aspire projects
- Dominant language
- Go
- Stars
- 569
- Forks
- 364
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 136
Description
Parent epic: #9479
Depends on extension workflow and language readiness.
## Objective
Make `microsoft.azd.aspire` the standard implementation selected by `azd init` for newly detected Aspire projects.
## Scope
- Generate the new project contract:
```yaml
services:
app:
host: aspire
project: ./apphost
infra:
provider: aspire
```
- Keep `language` optional.
- Add `aspire` to stable and alpha `azure.yaml` schemas and documentation.
- Implement transparent first-party provider discovery and installation.
- Define behavior for interactive, `--no-prompt`, offline, and restricted-network environments.
- Decide whether the extension and/or Aspire CLI must be bundled to preserve zero-setup and offline scenarios.
- Add compatible extension version requirements to generated projects where appropriate.
- Ensure provider auto-install does not conflict with private built-in fallback behavior.
- Update telemetry to distinguish public host, resolved provider, implementation, language, Aspire CLI version, and manifest-derived compute target.
## Exit criteria
- New Aspire projects initialized by azd use the extension by default.
- Installation and failure behavior is deterministic in interactive and CI environments.
- Official schemas, telemetry documentation, and user documentation describe the new contract.
Contributor guide
Assessment
This issue has not been assessed yet.