Skip to content

PROJECT

Brian Lehnen edited this page Apr 8, 2026 · 1 revision

Wiki Full Sync — DotNetWorkQueue 0.9.30

Description

Full synchronization of the DotNetWorkQueue GitHub wiki to match the current state of the library at version 0.9.30. The library has undergone significant breaking changes (dropped .NET Framework 4.8 / .NET Standard 2.0, replaced Schyntax with cron expressions, removed dynamic LINQ) and added major features (message history, dashboard Docker support, job scheduler, Grafana monitoring). Every wiki page needs to be reviewed and updated, several pages need renaming, and new pages need to be created.

Goals

  1. Every wiki page accurately reflects the 0.9.30 API — no stale framework references, no removed features documented as current
  2. Rename ProducerLinq/ConsumerLinq/ConsumerLinqAsync pages to ProducerMethod/ConsumerMethod/ConsumerMethodAsync to match API terminology
  3. Add new pages: MigrationGuide, DashboardDocker, Monitoring, JobScheduler
  4. All code samples use minimal inline snippets with links to DotNetWorkQueue.Samples repo for full working examples
  5. Sidebar navigation restructured to reflect renamed and new pages
  6. Migration guide helps users upgrading from pre-0.9.19 versions

Non-Goals

  • Dashboard UI screenshots (tracked separately in GitHub issue — not available yet)
  • Rewriting the wiki from scratch — we are updating existing structure, not redesigning it
  • Documenting internal implementation details or test infrastructure
  • Covering versions older than the current breaking change boundary

Requirements

Home & Framework

  • Update Home.md to state .NET 10.0 / .NET 8.0 as supported targets
  • Remove all net48 / netstandard2.0 references throughout the wiki
  • Update feature list to include message history, job scheduling, dashboard

Method Pages (renamed from Linq)

  • Rename ProducerLinq.md → ProducerMethod.md
  • Rename ConsumerLinq.md → ConsumerMethod.md
  • Rename ConsumerLinqAsync.md → ConsumerMethodAsync.md
  • Remove all dynamic LINQ content (LinqExpressionToRun, string expressions, DLL references)
  • Keep compiled lambda examples with current API patterns
  • Update to CreateMethodProducer / IProducerMethodQueue terminology

Transport Pages

  • Update all transport pages (SqlServer, PostgreSQL, SQLite, LiteDb, Redis, Memory) with current API
  • Update heartbeat config to use cron format
  • Add one-liner links to MessageHistory and JobScheduler pages where relevant
  • Remove conditional compilation references

Dashboard

  • Update Dashboard.md, DashboardApi.md, DashboardClient.md, DashboardConfiguration.md, DashboardUi.md
  • DashboardConfiguration.md: cover DashboardOptions.AssemblyPaths, IConfiguration overload
  • DashboardUi.md: updated UI description (compact tables, no nav drawer), note screenshots pending
  • New DashboardDocker.md: Docker image, self-contained mode, /app/plugins, DashboardConnectionConfig POCO

Message History

  • Expand MessageHistory.md with opt-in lifecycle tracking, configuration, retention, dashboard integration
  • Add Transport Notes section covering Redis, RelationalDatabase, LiteDB, Memory quirks
  • Cross-reference from Dashboard and transport pages

New Pages

  • MigrationGuide.md: organized by version range, breaking changes, before/after code examples
  • JobScheduler.md: cron expressions (5-field and 6-field via Cronos), IJobSchedule API, Description property
  • Monitoring.md: Prometheus metrics, Grafana dashboard setup, observability wiring
  • DashboardDocker.md: Docker deployment, self-contained mode, IConfiguration setup, plugin assemblies

Sidebar

  • Rename Linq entries to Method
  • Add Job Scheduler under Usage section
  • Add Dashboard Docker under Dashboard section
  • Add Migration Guide as top-level entry
  • Add Monitoring alongside Metrics/Trace

Code Samples

  • Minimal inline snippets on each wiki page
  • Links to DotNetWorkQueue.Samples repo for full working examples
  • All samples targeting .NET 10.0 / .NET 8.0

Non-Functional Requirements

  • Wiki pages should be concise and scannable — no walls of text
  • Consistent formatting across all pages
  • All internal wiki links must be valid after renames
  • Code samples must compile against the current 0.9.30 API

Success Criteria

  1. No wiki page references .NET Framework 4.8, netstandard2.0, Schyntax, or dynamic LINQ as current features
  2. All renamed pages (Method) have correct sidebar links and cross-references
  3. New pages (MigrationGuide, DashboardDocker, Monitoring, JobScheduler) exist and are linked from sidebar
  4. Code samples match current API patterns from the samples repo
  5. A user upgrading from 0.9.12 can follow the migration guide to reach 0.9.30

Constraints

  • Wiki is a GitHub wiki repo (Markdown files, _Sidebar.md for navigation)
  • Dashboard screenshots not available — GitHub issue created as placeholder
  • Source of truth for API patterns is the DotNetWorkQueue.Samples repo
  • Must preserve existing page URLs where possible (renames are the exception)

Clone this wiki locally