Scheduling Principles

This document defines the guiding principles for building call and rotation scheduling in Guava. These principles establish a conceptual framework that all scheduling features should follow.

Core Architecture: Separation of Concerns

Scheduling is organized around three distinct systems that interact but don’t conflate:

  1. The Plan — What the solver produces (proposals, scenarios)
  2. The Record — What actually happened (operational truth)
  3. The Rules — Constraints that guide the solver and flag violations

The Plan

Principle: The solver is a tool, not an authority.

The solver produces proposals, not mandates. Humans evaluate and adopt them.

Implications


The Record

Principle: The operational schedule reflects reality, not intentions.

The Record is the source of truth for what actually happened (or will happen). It answers “what actually happened?” not “what should have happened?”

Implications


The Rules

Principle: Rules are hard or soft, never mushy.

Rules guide the solver and validate the schedule. But rules serve the program, not the other way around.

Hard vs Soft Constraints

There is no “warn but allow” middle ground that erodes rule integrity over time.

Constraint Override Hierarchy

Hard constraints are configurable at granular levels through a cascading override system. More specific scopes override broader ones:

Global default (constraint definition)
  └── Program-level override
        └── Schedule-level override
              └── Time-range override (e.g., "July 2025")
                    └── Resident-level override
                          └── Specific instance override (resident + time)

Example: “Max night calls per month” defaults to 4. Dr. Smith has an override for July 2025 allowing 6 (covering for resident on leave). The base rule stays clean; the override documents the exception.

Benefits of Override Hierarchy

Implications


Cross-Cutting Principles

These principles govern how The Plan, The Record, and The Rules interact:

Solving is always available

Promotion is explicit

The Record is sovereign

Rules inform, violations are visible


Summary

System Purpose Key Property
The Plan Solver proposals Advisory, explorable, comparable
The Record Operational truth Sovereign, auditable, reality-accepting
The Rules Constraints Hard or soft, overridable at granular levels

These principles ensure that scheduling remains a tool that serves the program’s needs while maintaining clear accountability and the flexibility to handle real-world complexity.