Skip to content

v10.2.4 - Enhance MarkdownKnowledgeBase and avoid with CT #7

Merged
techbuzzz merged 2 commits into
mainfrom
develop
Jun 30, 2026
Merged

v10.2.4 - Enhance MarkdownKnowledgeBase and avoid with CT #7
techbuzzz merged 2 commits into
mainfrom
develop

Conversation

@techbuzzz

Copy link
Copy Markdown
Owner

Pull Request

Description

This PR applies the v10.2.4 release metadata and documentation:

  • CHANGELOG.md — rewrote the [10.2.4] section from scratch so it accurately covers both the in-memory MarkdownKnowledgeBase loaders and the full cooperative CancellationToken work. Added sub-sections for additive CT parameters, the IAppStoppingToken host-lifetime helper, the --cancellation demo, test counts (9 + 7 + 2 + 5), documentation changes, and an explicit compatibility note.
  • Delibera.Core.csproj — rebuilt <PackageReleaseNotes> (v10.2.4 summary first, v10.2.3 history preserved verbatim) so the NuGet listing reflects the 10.2.4 release.
  • ResilienceExample.cs — updated banner and <summary> from v10.2.2v10.2.4.

No source code under Delibera.Core/ is touched; the implementation from de5210b Add full cooperative CancellationToken support everywhere is what 10.2.4 documents.

Related Issues

Type of Change

  • 🐛 Bug fix (non-breaking change that fixes an issue)
  • ✨ New feature (non-breaking change that adds functionality)
  • 💥 Breaking change (fix or feature that changes existing behaviour)
  • 📚 Documentation update
  • 🧹 Refactor / chore

Checklist

  • My code follows the project's coding standards (see CONTRIBUTING.md)
  • The solution builds with 0 errors and 0 warnings (dotnet build --configuration Release — verified locally against Delibera.slnx)
  • I have added/updated XML documentation for public APIs (no public API surface changed in this PR; the existing XML docs from de5210b remain the source of truth)
  • I have updated relevant documentation (README.md, QuickStart.md) — refreshed CHANGELOG.md v10.2.4 section, PackageReleaseNotes in Delibera.Core.csproj, and the ResilienceExample banner / summary
  • I have tested my changes (examples run as expected) — dotnet build -c Release passes; XML well-formedness of Delibera.Core.csproj confirmed via [xml] round-trip

Additional Notes

  • Files changed: 3 (CHANGELOG.md, src/Delibera.Core/Delibera.Core.csproj, src/Delibera.ConsoleApp/Examples/ResilienceExample.cs); +106 / -47 lines.
  • The [10.2.3] section is intentionally untouched — it remains the historical record for that release.
  • No version bump: <Version>10.2.4</Version> was already in Delibera.Core.csproj; this PR aligns the supporting docs/notes with that version.
  • Reviewers: please confirm the <PackageReleaseNotes> length (3593 chars) is acceptable for the NuGet listing — it carries both the v10.2.4 summary and the v10.2.3 history so a one-version-bump consumer sees the full upgrade story.

- All public async methods now accept and honor CancellationToken
- IKnowledgeBase: LoadAsync/LoadManyAsync require CT (source-breaking for implementers)
- MarkdownKnowledgeBase: file and in-memory loaders (LoadTextAsync, LoadTextsAsync) support CT; DocumentMetadata exposed
- DebateResult: all save methods accept/forward CT
- CouncilExecutor.ExecuteAsync forwards CT to SaveToFileAsync
- New IAppStoppingToken and CouncilExecutorLifetimeExtensions for host shutdown integration
- ConsoleApp: default Ctrl+C handler and --cancellation demo
- Docs: new Cancellation Support section, usage examples, NuGet metadata updated
- 20+ new tests for cancellation across KB, DebateResult, executor, and extensions
- All changes are additive and backward compatible except for IKnowledgeBase implementers
Introduce end-to-end CancellationToken support across all public async methods, enabling a single cancel signal to abort the entire pipeline. Add in-memory MarkdownKnowledgeBase loaders with per-source metadata via a new KnowledgeDocument record and DocumentMetadata property. Update IKnowledgeBase and file/save APIs to accept CancellationToken (defaulted for binary compatibility). Add IAppStoppingToken abstraction and CouncilExecutorLifetimeExtensions.ExecuteAsync for host-based cancellation. Enhance ConsoleApp with --cancellation demo and Ctrl+C support. Add 20+ cancellation-focused tests and update documentation and release notes. No breaking binary changes for callers.
@techbuzzz techbuzzz self-assigned this Jun 30, 2026
@techbuzzz techbuzzz merged commit d2f18ea into main Jun 30, 2026
2 checks passed
@techbuzzz techbuzzz deleted the develop branch June 30, 2026 15:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant