Interface: TemporalPlanRequest
@kortexya/reasoninglayer / Reasoning / TemporalPlanRequest
Interface: TemporalPlanRequest
Defined in: src/types/reasoning.ts:305
Request for temporal planning with diversity constraints.
Remarks
Selects a diverse set of terms from a sort, optionally using fuzzy scoring, proximity optimization, and field-based uniqueness constraints.
Properties
distanceMetric?
optionaldistanceMetric:string|null
Defined in: src/types/reasoning.ts:319
Distance metric for proximity optimization.
Determines how distance between field values is computed:
"categorical"(default): exact string match (0.0 = same, 1.0 = different). Suitable for cuisine types, categories, or any discrete field."geographical": haversine GPS distance. ExpectsgroupByFieldvalues to be"latitude,longitude"strings (e.g.,"37.7749,-122.4194"). Normalised bymaxDistanceKm(default 100 km)."temporal": time difference in minutes.
When absent or null, defaults to "categorical" for backward compatibility.
fuzzyQuery?
optionalfuzzyQuery:QueryTerm|null
Defined in: src/types/reasoning.ts:324
Optional fuzzy query for automatic top-k scoring. If provided, performs fuzzy matching against all candidates and uses similarity scores.
groupByField?
optionalgroupByField:string|null
Defined in: src/types/reasoning.ts:326
Optional field to group by for proximity optimization (e.g., “gps_location”).
maxDistanceKm?
optionalmaxDistanceKm:number|null
Defined in: src/types/reasoning.ts:333
Maximum distance in kilometres for geographical distance normalisation.
Only used when distanceMetric is "geographical".
Default: 100.0 (typical metropolitan area).
minDegree?
optionalminDegree:number|null
Defined in: src/types/reasoning.ts:335
Minimum similarity degree for fuzzy query (default: 0.0).
noRepeatFields?
optionalnoRepeatFields:string[] |null
Defined in: src/types/reasoning.ts:340
Optional fields that must have unique values across selections (e.g., [“cuisine”]). When empty or not provided, allows same term to be selected multiple times.
numSelections
numSelections:
number
Defined in: src/types/reasoning.ts:342
Number of terms to select (e.g., 7 for weekly plan).
proximityWeight?
optionalproximityWeight:number|null
Defined in: src/types/reasoning.ts:344
Weight for proximity optimization (0.0-1.0, default: 0.0 = no proximity).
sequenceByField?
optionalsequenceByField:string|null
Defined in: src/types/reasoning.ts:349
Optional field to sort results by (e.g., “prep_time” for ascending order). When provided, the selected terms will be ordered by this field’s value.
sortId
sortId:
string
Defined in: src/types/reasoning.ts:351
Sort ID to select terms from (UUID).
topK?
optionaltopK:Record<string,number> |null
Defined in: src/types/reasoning.ts:356
Optional quality scores for top-k selection (term_id to score mapping). When provided, selects highest-quality diverse candidates.