Multi-objective score

Shipped

One composable score blending value, capacity, fairness, deadline, distance, and margin.

Example

How Multi-objective score decides — the pool is evaluated and the winner is assigned. Each strategy selects differently.

type == "lead"selectedTriggerNew LeadWebhookScoreMulti-objective scoreStrategyae-westscore 96ae-eastscore 81centralscore 73Assigned
Show the code
// Multi-objective score selects from the pool and assigns.
engine.Route(ductor.Route{
Match: `routable.type == "lead"`,
Strategy: "multi_objective_score",
Pool: "sales-team",
})
 
// Durable, observable, exactly-once.
decision, err := engine.Dispatch(ctx, routable)

Parameters11

score_weightsliderdefault 1010
capacity_weightsliderdefault 1010
deadline_weightsliderdefault 1010
distance_penalty_weightsliderdefault 0.5010
load_penalty_weightsliderdefault 1010
fairness_weightsliderdefault 0.5010
margin_weightsliderdefault 0.5010
confidence_weightsliderdefault 0.5010
min_confidencesliderdefault 001
tie_tolerancesliderdefault 0.000101
fallback_strategystringdefault smooth_weighted_round_robin

Cached parameter metadata — connect the engine for live defaults.

How it works

The flagship business-objective strategy. Blends capacity, deadline pressure, geography, load, fairness, margin, and confidence into a single tunable score, and returns a per-dimension breakdown for full explainability.

WeightedExplainable