EligibilityFilterService
Component Detail
Description
Applies hard eligibility rules to a mentor candidate pool before ranking occurs. Removes candidates with expired certifications, unavailable status, or workload at or above the configured threshold. Integrates with assignment-threshold-tracking dependency to obtain current thresholds.
eligibility-filter-service
Sources & reasoning
Line 99 directly ties geographic visualization to matching and assignment dispatch (oppdragstildeling), providing the provenance for this feature as a distinct matching capability beyond simple map display. Line 358 places it in Fase 3, normalizing to v1.1. The blueprint lists this feature under Geographic Map View at [v1.1]. Kept as a separate feature from peer-mentor-map because matching logic and the dispatch integration are distinct from rendering the map layer.
-
docs/source/likeperson.md · line 99Geografisk kartvisning av likepersoner for matching og oppdragstildeling (særlig store fylker).
-
docs/source/likeperson.md · line 358Geografisk kartvisning (Blindeforbundet)
Responsibilities
- Filter out mentors with expired or invalid certifications
- Exclude mentors marked unavailable or on leave
- Remove mentors at or above workload threshold
- Return structured filter report indicating why each candidate was excluded
- Accept threshold overrides for coordinator manual escalation
Interfaces
applyFilters(candidates: MentorCandidate[], context: FilterContext): FilterResult
isEligible(candidate: MentorCandidate, context: FilterContext): EligibilityDecision
getActiveThresholds(region: string): Promise<WorkloadThresholds>
Related Data Entities (4)
Data entities managed by this component