Skip to content

docs: reconcile package docs and articles with current behavior#334

Merged
Vulthil merged 2 commits into
mainfrom
docs/truth-sweep
Jul 20, 2026
Merged

docs: reconcile package docs and articles with current behavior#334
Vulthil merged 2 commits into
mainfrom
docs/truth-sweep

Conversation

@Vulthil

@Vulthil Vulthil commented Jul 20, 2026

Copy link
Copy Markdown
Owner

Summary

Documentation truth sweep across the nuget package READMEs, the docfx articles, shipped XML doc comments, and nuget package metadata — every claim reconciled against current behavior on main. No code-behavior changes.

  • Remove documented-but-nonexistent APIs: the outbox "strategy" contracts in the outbox README and relational article (real surface: IOutboxStore / RelationalOutboxStore<TContext>), a two-type-parameter AddHttpMock overload, and a per-consumer Bind routing override (real knob: UseRetry; bindings are per-queue Subscribe).
  • Correct stale behavior claims: consume-filter toggles are registration-time (a disabled filter is never registered); outbox MaxRetries dead-letters via FailedOnUtc; request logging covers only Result-returning requests; the test harness retries a throwing consumer and publishes a captured Fault<T> instead of propagating; inbox retry bounding is per-consumer policy, not a queue MaxRetryCount; entity-id examples use records for value equality.
  • Document missing behavior contracts: outbox relay ordering is best-effort with no head-of-line blocking; captured publishes skip later publish filters and the relay bypasses the publish pipeline; poison deliveries (unknown type acked and dropped; undeserializable body nacked to the DLQ when configured, no Fault<T>); IIdempotencyStore context/token semantics; BaseDbContext's unconditional OutboxMessage mapping and the Ignore<OutboxMessage>() opt-out; HTTP mapping response bodies end-to-end (RFC 7807 details, 404/409 problem bodies, typed-union nuance).
  • Fill placeholder/empty XML docs (UseMySql on both target frameworks, GetResponseAsync) and fix wrong property docs.
  • Give Vulthil.Extensions.Hosting a docs article and Vulthil.Extensions.Testing an accurate identity; complete the package index and getting-started tables (nine packages were unlisted); standardize README links on the documentation site root (the site publishes only versioned slugs, so unversioned deep links 404 and pinned ones rot on pruning) and satellite cross-links on relative in-site links.
  • Replace the repo-global nuget tag list (shared-kernel;ddd;cqrs;result-pattern;dotnet on all 24 packages) with per-package tags describing each package's actual contents, and align Vulthil.Extensions.Testing's package description with its real surface.

Verification

  • Full solution build clean (TreatWarningsAsErrors), so all XML doc edits compile.
  • docfx docs/docfx.json (same invocation as the docs workflow) builds with 0 warnings / 0 errors — all links, anchors, and the new article/toc wiring resolve.
  • Diff grepped to confirm no internal tracking identifiers appear in shipped docs.
  • dotnet pack spot-check confirms the per-package tags land in the generated nuspec.

Backport to v1.0: no — docs republish with the next release; the main docs slug updates immediately on merge.

@claude

claude Bot commented Jul 20, 2026

Copy link
Copy Markdown

Code review

No issues found. Checked for bugs and CLAUDE.md compliance.

@Vulthil
Vulthil merged commit fb9b9b5 into main Jul 20, 2026
6 checks passed
@Vulthil
Vulthil deleted the docs/truth-sweep branch July 20, 2026 12:01
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