Skip to content

[P-04] NuGet GA — publish stable packages: Delibera.Core, Delibera.Server, Delibera.Grpc, Delibera.Templates #13

Description

@techbuzzz

Overview

Version: v10.3.0 Platform Release
Effort: S · 1 day
Dependencies: P-01 (cleanup), P-02 (Server), P-03 (gRPC)
Branch: feature/p04-nuget-ga

Publish the full Delibera package family to NuGet.org as stable (non-pre-release) packages.


Package Matrix

Package Description Dependencies
Delibera.Core Core library: CouncilBuilder, executor, strategies, providers, RAG, telemetry None
Delibera.Server ASP.NET Core REST + SSE + WebSocket server Delibera.Core
Delibera.Grpc gRPC bi-directional streaming API Delibera.Core
Delibera.Templates Vertical templates: Architecture, Risk, CodeReview, Legal, Requirements Delibera.Core

Tasks

1. Finalize .csproj metadata for all packages

  • <Version>10.3.0</Version> — no -preview suffix
  • <PackageDescription> — clear, concise, with keywords
  • <PackageTags>AI;LLM;multi-agent;debate;council;delibera;dotnet
  • <PackageProjectUrl>https://github.com/techbuzzz/Delibera</PackageProjectUrl>
  • <PackageLicenseExpression>MIT</PackageLicenseExpression>
  • <RepositoryUrl> + <RepositoryType>git</RepositoryType>
  • <PackageReadmeFile> pointing to README.md
  • <PackageIcon> — add 128x128 PNG icon to repo and include in nupkg

2. GitHub Actions: NuGet publish workflow

# .github/workflows/nuget-publish.yml
on:
  push:
    tags: ['v*.*.*']
jobs:
  publish:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-dotnet@v4
        with:
          dotnet-version: '10.0.x'
      - run: dotnet pack --configuration Release --no-build
      - run: dotnet nuget push **/*.nupkg --api-key ${{ secrets.NUGET_API_KEY }} --source https://api.nuget.org/v3/index.json
  • Add NUGET_API_KEY secret to repository settings
  • Set branch protection: only tags from main trigger publish

3. Symbol packages & SourceLink

  • Enable <IncludeSymbols>true</IncludeSymbols> + <SymbolPackageFormat>snupkg</SymbolPackageFormat>
  • Add Microsoft.SourceLink.GitHub to all projects
  • Verify debugger can step into Delibera source from a consuming project

4. Dependency audit

  • Confirm all transitive dependencies are pinned to stable versions
  • Run dotnet list package --vulnerable — fix any reported CVEs
  • dotnet list package --outdated — update where safe

5. README shields & badges

  • Add NuGet version + download count badges to README.md
  • Add CI status badge

Acceptance Criteria

  • All 4 packages published to NuGet.org at version 10.3.0
  • Symbol packages (.snupkg) published
  • SourceLink working — verified by stepping into Delibera from a sample project
  • GitHub Actions workflow runs on tag push, publishes successfully
  • NuGet.org package pages show correct metadata, README, icon
  • No vulnerable dependencies (dotnet list package --vulnerable clean)

Labels

devops, release, v10.3.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions