Files
krow_backend/skills/candidate-analysis.md
2026-08-28 12:21:44 +05:30

99 lines
2.7 KiB
Markdown

---
id: candidate-analysis
name: Candidate Analysis
description: Analyse the applicant pool's quality, and how much of it has actually been screened.
category: hiring
pages:
- candidates
- candidates-analysis
status: active
version: 1
triggers:
- candidate quality
- quality of candidates
- score band
- score bands
- screening coverage
- how strong*candidates
- how good*candidates
owliver:
enabled: true
suggestions:
- label: How strong is the candidate pool?
capability: summary
- label: Show candidates by score
capability: table
- label: Score bands
capability: progress
capabilities:
- summary
- stats
- table
- list
- progress
- insight
responses:
summary:
title: Candidate quality
source: candidates.quality
stats:
title: Candidate quality
source: candidates.quality
table:
title: Candidates by score
source: candidates.quality
limit: 10
list:
title: Strongest candidates
source: candidates.quality
limit: 5
progress:
title: Candidate quality
source: candidates.quality
insight:
title: Candidate quality
source: candidates.quality
---
# Candidate Analysis
## Purpose
- Report how strong the applicant pool is.
- Report how much of it anyone has actually looked at, beside the quality figure.
- Rank candidates by score so a shortlist has a starting point.
## Capabilities
- Summarize pool size, screening coverage, average score and interview count.
- List or tabulate candidates by score.
- Break the scored pool into quality bands.
## Data
Reads `candidates.quality`, which counts `JobApplication` records and their
`ai_score`, joined to `AIInterview` records for interview coverage.
## Analysis
Coverage is reported next to quality, always. An average score computed from a
fifth of the pool is not the pool's average, and reporting the first without the
second is how a hiring dashboard talks itself into confidence.
Scored candidates are grouped into four bands — 80 and above, 70 to 79, 50 to 69,
and below 50 — because a mean hides whether a pool is uniformly mediocre or
split between strong and weak.
## Output
Pool size, share screened, average score across scored candidates only, and
interview count. Then candidates ranked by score with their role and stage.
## Limitations
- Unscored candidates are excluded from the average rather than counted as zero.
They are reported separately as the unscreened share.
- A score is an AI screening score, not an interview outcome or a hiring decision.
- Filtering by period counts applications by when they were received, not by when
they were screened.