Skip to content

feat(deploy): NetScript.Aspire.Packaging — .NET Aspire hosting integration (ATS-exported) for installer authoring #825

Description

@rickylabs

Part of #327.

Owner-ratified resolution of RFC fork OF-D (2026-07-17): no Deno-native combined-MSI path existsdeno desktop's pure-Rust MSI packages only the window bundle (per-machine, no adjacent sidecars) and its docs punt to WiX/NSIS/Inno for anything more. Ship the packaging layer as a first-class C# Aspire hosting integration instead:

  • A NuGet (NetScript.Aspire.Packaging) annotated with ATS [AspireExport] attributes so the Aspire CLI generates a typed TypeScript SDK (JSON-RPC into the C# code at runtime) — consumable as decorators/publish-pipeline steps from the TS AppHost (aspire.dev "Multi-language integrations").
  • v1 scope: MSI authoring over a staged combined artifact (window + sidecars + tools), signtool hook, uninstaller/shortcut registration. deb/rpm stays native-side.
  • Consumed by feat(deploy): single-artifact packaging + release server + snapshot updater (substrate) #456 (single-artifact substrate) now and SD-3 (graph installers) later.

Acceptance:

  • gate: TS AppHost pipeline step invokes the generated SDK and emits an installable MSI from a staged directory
  • gate: EnableAspireIntegrationAnalyzers clean; ATS export surface documented
  • gate: .NET dependency is build-machine-only (end users need nothing) — documented

Design source: PR #822 (rfc.md + plan.md rev 10, 9-cycle adversarial trail) in .llm/runs/rfc-single-deployment--orchestrator/.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions