Module leveling

Module leveling 

Source
Expand description

Resource Leveling Algorithm

Detects and resolves resource over-allocation by shifting tasks within their slack.

§RFC-0003 Compliance

This module implements deterministic, explainable resource leveling:

  • Explicit opt-in only (--level flag)
  • Every delay has a structured reason (LevelingReason)
  • Original schedule preserved alongside leveled schedule
  • L001-L004 diagnostics emitted for transparency

Structs§

DayUsage
Resource usage on a specific day
LevelingMetrics
Metrics summarizing the leveling transformation
LevelingOptions
Leveling configuration (explicit user choice)
LevelingResult
Result of resource leveling (RFC-0003 compliant)
OverallocationPeriod
A period of resource over-allocation
ResourceTimeline
Timeline of resource usage
ResourceUtilization
Utilization statistics for a single resource
ShiftedTask
A task that was shifted during leveling
UnresolvedConflict
A conflict that could not be resolved
UtilizationSummary
Summary of resource utilization across all resources

Enums§

LevelingReason
Structured reason for a leveling delay
LevelingStrategy
Strategy for selecting which tasks to delay during leveling

Functions§

calculate_utilization
Calculate resource utilization for a schedule
detect_overallocations
Detect resource over-allocations without resolving them
level_resources
Perform resource leveling on a schedule (RFC-0003 compliant)
level_resources_with_options
Perform resource leveling with explicit options