Skip to content

Releases: I-RzR-I/ItemDistribution

v2.0.0.6122

17 Apr 14:06
973b2e8

Choose a tag to compare

What's Changed

  • Feature/refactor and improvements by @I-RzR-I in #2

-> Breaking: Replaced the old DistributionSuggestionHelper singleton with a generic, pipeline-based engine.

  • New public entry point: DistributionSuggestionHelper<TUserId> (constructed with EngineConfig).
  • New input model: UserLoad<TUserId> (immutable) replaces UserInfoOptions<TUserId>.
  • New result model: DistributionResult<TUserId> with PrimaryUserId, AlternativeUserId, Allocation, TotalAllocated, and Trace.
  • Pluggable pipeline architecture: LoadScoringStep, WorkingHoursCapacityStep, PriorityActivityScoringStep, FairAllocationStep.
  • Constraint support via IConstraint<TUserId> (e.g. MaxPerUserConstraint).
  • Audit trail (DistributionTrace<TUserId>) written by each pipeline step.
  • IDistributionSuggestionHelper<TUserId> interface for DI and testing.
  • Full async support with CancellationToken.

Migration steps (v1.x -> v2.0):

  1. Replace using ItemDistribution.Helpers / ItemDistribution.Models.Dto with ItemDistribution.Public, ItemDistribution.Models.Config, ItemDistribution.Models.Domain.
  2. Replace DistributionSuggestionHelper.Instance with new DistributionSuggestionHelper<TUserId>(new EngineConfig { ... }).
  3. Replace UserInfoOptions<TUserId> with UserLoad<TUserId> (immutable constructor; InProcessDocuments -> currentLoad, UserPriority -> priority, add explicit capacity).
  4. Replace GenerateNewDistributionSuggestion(DistributionParams) with Generate(users, documents). Move FullWorkDayHours / MaxAllowedInProcessDocuments to EngineConfig. Remove AvoidDuplicateResult.
  5. Replace result.Response.SuggestionUser / .AlternativeUser with result.Response.PrimaryUserId / .AlternativeUserId.
  6. Remove .Dispose() — the new helper is not IDisposable.

Full Changelog: v1.1.0.0...v2.0.0.6122

v1.1.0.0

10 Oct 12:46
597f959

Choose a tag to compare

Merge pull request #1 from I-RzR-I/feature/UpgradeReferencePackages

Update reference package version, fixing CVE

v1.0.0.0

10 Oct 12:21

Choose a tag to compare

Init commit