Application
Table of Contents
Interfaces
- AllocationPolicyInterface
- Chooses explicit edge allocations for one flow step.
- DemandReleasePolicyInterface
- Builds shipment releases from per-line demand schedules.
- EdgeFilterPolicyInterface
- Removes edges from a step before ordering and allocation.
- EdgeOrderingPolicyInterface
- Reorders candidate edges for one cascade step.
- ExecutionSolverInterface
- Executes one flow against one quantity state.
- PlannerRuleInterface
- Marker interface for planner-level rules declared on movement edges.
- PlanSolverInterface
- Computes one timeless movement plan from a planning request.
- PolicyInterface
- Marker interface for policies that can be declared through a unified bag API.
- QttyConstraintPolicyInterface
- Caps how much quantity may move through one candidate edge.
- ScheduleSolverInterface
- Computes one planned movement schedule from a planning request.
- ShipmentCalendarInterface
- Adjusts planned shipment release times according to order-level operational calendars.
- ShipmentCalendarRuleInterface
- Planner rule that delays shipment release or handover times for a line.
- ShipmentPlannerInterface
- Builds shipment plans from per-line demand schedules.
- ShipmentSplitRuleInterface
- Marker interface for planner rules that constrain shipment grouping/splitting.
- SlotCodec
- Defines how slots are serialized, deserialized, and pattern-matched.
- SlotFlowExceptionInterface
- Marker interface for all exceptions thrown by the SlotFlow library.
- DispatchCalendarInterface
- Adjusts the earliest dispatch time for a timed movement edge.
- TimedDurationResolverInterface
- Resolves movement duration during timed space expansion.
Classes
- BatchInventoryMutation
- Backward-compatible alias for BatchQuantityStateDelta.
- BatchLedgerEntry
- Ledger entry paired with the batch subject it belongs to.
- BatchMovementEngine
- Executes one flow across all items in a quantity-state batch.
- BatchQuantityStateDelta
- Quantity-state delta paired with the batch subject it belongs to.
- InventoryBatch
- Backward-compatible alias for QuantityStateBatch.
- QuantityStateBatch
- Group of per-subject quantity states to be processed by the batch engine.
- WeeklyShipmentCalendar
- Order-level shipment calendar backed by a reusable weekly schedule.
- Cascade
- Backward-compatible inventory-oriented alias for Flow.
- DefaultSlotKeyCodec
- Built-in dot-separated codec with wildcard and alternative support.
- Demand
- Multi-line demand to be promised or scheduled together.
- DemandLine
- One requested subject quantity inside a multi-line demand.
- DemandReleaseContext
- Rich order-level context passed to demand release policies and shipment calendars.
- DemandSchedule
- Immutable summary of one multi-line demand scheduling run.
- DemandScheduler
- Schedules a multi-line demand by composing per-line schedules and an order release policy.
- DemandScheduleRequest
- Immutable request for multi-line demand scheduling.
- SlotFlowInvalidArgumentException
- Raised when a SlotFlow API is called with invalid or inconsistent arguments.
- SlotFlowLogicException
- Raised when SlotFlow detects an invalid internal or object state transition.
- Flow
- Named ordered set of movement steps that can be executed by a solver.
- Inventory
- Backward-compatible commerce-oriented alias for QuantityState.
- MovementEdge
- One directed movement edge between two slots.
- MovementEngine
- Executes flows against quantity state via a pluggable solver.
- MovementPlan
- Immutable summary of one timeless movement plan.
- MovementPlanner
- Builds timeless movement plans via a pluggable solver.
- MovementResult
- Immutable summary of one cascade execution.
- MovementSchedule
- Immutable summary of one planned movement schedule over time.
- NamedPolicy
- Wrapper that assigns a stable override key to a policy inside a policy bag.
- ShipmentWaveCalendarRule
- Delay shipment release until the next recurring shipment wave.
- WeeklyShipmentCalendarRule
- Delay shipment release until the next matching weekly pickup or handover moment.
- PlanRequest
- Immutable request for timeless path/allocation planning.
- AvailableInventorySortPolicy
- Backward-compatible alias for AvailableQuantitySortPolicy.
- AvailableQuantitySortPolicy
- Sorts edges in descending order of available quantity at the source slot.
- DimensionPriority
- Orders edges by configured priority tiers on source-slot dimensions.
- DistancePolicy
- Filters or orders edges by a caller-provided distance metric.
- FullShipmentPolicy
- Waits until all lines are complete, then releases them as one shipment.
- PartialShipmentPolicy
- Releases every ready quantity at the earliest distinct ready time.
- PriorityReleasePolicy
- Ships high-priority lines as they become ready and lower-priority lines on line completion.
- ThresholdReleasePolicy
- Releases accumulated ready quantities once a configured fill threshold is reached.
- PolicyBuckets
- Routes mixed policy bags into the typed buckets used by execution and planning.
- QuantityState
- Quantity distribution state for one subject across the slot space.
- DemandLineArrival
- One quantity becoming available for a demand line at a given time.
- DemandLineSchedule
- One demand line plus its computed movement schedule and arrival timeline.
- DemandShipment
- One planned shipment release containing one or more demand lines.
- DemandShipmentLine
- One shipped quantity for one demand line within a demand shipment.
- InventoryMutation
- Backward-compatible alias for QuantityStateDelta.
- LedgerEntry
- A representation of one movement event, from one slot to another, with all
the relevant details for ledgering and reporting.
- MovementEvent
- One applied movement with before-state snapshots for source and destination.
- PlannedStep
- One planned timeless movement.
- QuantityStateDelta
- Net quantity change for one slot.
- ScheduledStep
- One scheduled timed movement.
- ScheduleMilestone
- One named milestone reached by a movement schedule.
- TimedQuantityStateDelta
- Net quantity change for one timed slot.
- EdgeRule
- Declarative allow/deny rule for edges between slot patterns.
- RuleSet
- Composable container for slot and edge rules.
- SlotRule
- Declarative include/exclude rule for shaping the valid slot space.
- AllocationDecision
- One explicit quantity allocation to a specific edge.
- CascadeContext
- Backward-compatible alias for FlowContext.
- FlowContext
- Runtime context object passed to policies during one flow step.
- ScheduleRequest
- Immutable request for one planning-oriented schedule computation.
- Slot
- One concrete slot in a slot space, or the special `nil` boundary slot.
- SlotSpace
- Defines the slot space, its dimensions, the slots that exist within it, and the edges and flows that operate on it.
- EarliestArrivalSolver
- Plans the earliest-arriving schedule that satisfies a requested quantity.
- GreedyFlowSolver
- Executes movement flows directly with greedy semantics.
- GreedyPlanSolver
- Plans one timeless movement path/allocation with greedy semantics.
- TimeAxis
- Canonical discrete time axis used by timed slot-space expansion.
- TimedDurationContext
- Context passed to timed duration resolvers.
- TimedMovementEdge
- One directed movement edge between two timed slots.
- TimedQuantityState
- Quantity distribution over timed slots.
- TimedSlot
- One slot at one point on a discrete time axis.
- TimedSlotSpace
- Time-expanded view of a base SlotSpace.
- WeeklyCalendar
- Repeating weekly schedule used by shipment and dispatch calendars.
- WeeklyCalendarMoment
- One weekly release or dispatch moment expressed as ISO weekday and time of day.
- WeeklyCalendarWindow
- One weekly open window expressed as local wall-clock start and end times on one weekday.
- WeeklyDispatchCalendar
- Dispatch calendar that delays departures until the next matching weekly dispatch moment.
- TimelineShipmentPlanner
- Builds shipments by walking the arrival timeline, applying consolidation windows and release policies.
Traits
- ResolvesFlowParameters
- Shared helpers for resolving `{param}` placeholders inside flow inputs.