new

improved

fixed

Timefold Platform

Employee Shift Scheduling

Field Service Routing

Pickup & Delivery Routing

Full constraint lists, region-aware login, and smarter FSR replanning

Today, we're announcing version v1.11 of the Timefold Platform and updates to the Timefold models.
This new version of the Timefold Platform comes with these platform improvements:
  • See a model's full constraint list
    : A model's information page now shows its complete, always-current list of constraints, grouped by category and sorted alphabetically, so you can quickly see which constraints a model supports. See information page for more details.
  • Select the right region from the login screen
    : The login screen now includes a region switcher, so if you land on the wrong Timefold environment you can jump straight to the Europe or United States login without knowing its URL. See Timefold environment for more details.
Next to that, this new version of the Timefold Platform comes with updates to these Timefold Models:
  • Optionally stop rest periods from being broken by absences (preview)
    : Minutes between shifts rules now support the
    absenceMode
    field. When set to
    ABSENCE_AWARE
    , the rule excludes minutes during which the employee is fully unavailable within the gap between two shifts before comparing the gap against
    minimumMinutesBetweenShifts
    or
    maximumMinutesBetweenShifts
    . This means an employee can't use time off to satisfy a required rest period, and the rule doesn't treat a long absence between shifts as an excessive gap.
    absenceMode
    defaults to
    ABSENCE_UNAWARE
    . This is a preview feature subject to change. See Minutes between shifts for more details.
  • Temporarily change a vehicle's coverage area for a single shift
    : A vehicle shift's
    requiredArea
    and
    preferredArea
    can now be overridden per
    VehicleShift
    , in addition to the existing vehicle-level fields. This is useful when a technician's coverage area changes only temporarily, for example when they cover a colleague's region for a single shift, without having to change the vehicle's default area for all its other shifts. When a shift defines its own
    requiredArea
    or
    preferredArea
    , that value fully replaces the vehicle-level value for that shift only; other shifts of the same vehicle keep using the vehicle-level value. The two fields are overridden independently. If both the vehicle and one of its shifts define an area for the same field, the shift-level value is used and a validation warning is raised. See Overriding the coverage area per vehicle shift for more details.
  • Faster replanning for high-priority visits when capacity is tight
    : In over-constrained replanning scenarios where all shifts are already at full capacity and many visits are still unassigned, finding free space for newly added visits of higher priority is challenging. By default, the initial phase of solving tries to assign every unassigned visit, including lower-priority visits that a previous planning run left unassigned. Attempting to place these lower-priority visits takes a substantial amount of time and leaves less time for more promising optimizations. Timefold now allows specifying what visits should be considered the focus of replanning to overcome these challenges. Timefold will consider visits specified as the replanning focus to be swapped with already assigned, but less important visits. Visits not matching the replanning focus will not be considered during this initial phase to save time. See Real-time planning: focused replanning for more details.
  • Avoid unnecessary changes to already-communicated schedules when replanning
    : Route optimization now includes the
    Minimize disruption on replanning
    constraint, disabled by default, which discourages Timefold from moving an already-assigned visit to a different vehicle or a different
    startServiceTime
    when replanning, unless there is a good enough reason to do so. Unlike pinning, which hard-blocks any change to specific visits, this is a soft preference that applies automatically to every visit that already has an assignment when a solve operation starts. Timefold is still free to move a visit when needed, but a small optimization gain is no longer enough on its own to disrupt an already-communicated schedule. Activate it by setting
    minimizeDisruptionOnReplanningWeight
    in
    config.model.overrides
    . See pinning for more details. See Minimizing disruption on replanning for more details.
  • Maintenance release
    : Maintenance release updating dependencies to deliver security updates and minor performance improvements.
Please let us know if you have feedback.