How Teamcast Measures

Coverage & assessment

The measurement model behind every Teamcast interview: deterministic, evidence-backed, coverage-only.

Every interview produces a coverage_summary — a sufficient / partial / insufficient rating, computed at three levels: per sub-dimension, per competency, and overall.

Structure

Competencies break down into sub-dimensions, which break down into signals — each weighted by the role profile (see Analytics & role profiles). Every claim in the assessment is backed by an evidence unit that cites the specific utterance the candidate said — full traceability from score back to transcript.

Highlights & lowlights

Highlights are the strongest behavioral episodes in the interview, each with its citation. Lowlights are the thinnest sub-dimensions — where coverage is weakest.

Deterministic scoring

Scoring is pure math: reproducible, with no randomness and no LLM in the scoring path. The LLM is only used earlier, to extract and type evidence from the transcript — it never sets a score. Signal weights come from the database ontology, not from hardcoded values.

Example

coverage_summary
{
  "overall_coverage": "partial",
  "gap_competencies": ["system design at scale"],
  "covered_count": 5,
  "total_count": 6
}

Detailed pipeline trace (stage_trace)

Payloads scored since the 13-stage projection shipped also carry an additive stage_trace — a display-only re-organisation of the same evidence, powering the recruiter Detailed assessment view. It walks a reviewer through how one transcript became a score. It adds no new scoring and duplicates nothing from the fields above — per-signal strengths, roll-ups and coverage are still read from traces / sub_dimension_details / competencies / coverage_summary. Older payloads omit it, and the Detailed view falls back to the coverage review.

The 13-stage skeleton describes the canonical Signal-Acquisition pipeline. Each stage carries a status: active (this pipeline computes it today) or planned (defined but not yet wired in the production path), and a kind: deterministic or llm.

#StageKindStatus
1PII Scrubdeterministicplanned
2Segmentationdeterministicactive
3ERA-CoT Pre-analysisllmplanned
4Evidence Extractionllmactive
5Evidence Typingllmactive
6Epistemic Classificationllmactive
7Quality Scoringdeterministicactive
8CRISP Confidencedeterministicactive
9Dedup & Mergedeterministicactive
10Signal Mapping & Contributiondeterministicactive
11Aggregation — max()deterministicactive
12Sub-dimension & Competency Roll-updeterministicactive
13Coverage & Outputdeterministicactive

segmentation is the Stage-2 transcript (per utterance, with a recording offset_s for click-to-play). evidence_units is the flat Stage 4–9 view — every cited unit with its captured measures (the per-evidence quality / confidence / contribution sub-scores).

stage_trace
"stage_trace": {
  "stages": [
    { "index": 2, "key": "segmentation", "name": "Segmentation", "kind": "deterministic", "status": "active" }
    // ... all 13 stages
  ],
  "segmentation": [
    { "utterance_id": "u6", "speaker": "candidate", "text": "So we first take all the loggers...", "offset_s": 141.2 }
  ],
  "evidence_units": [
    {
      "utterance_id":     "u6",
      "competency_id":    "analytical",
      "sub_dimension_id": "problem_diagnosis",
      "signal_id":        "diagnostic_reasoning",
      "evidence_type_id": "direct_quote",
      "strength":         0.8,
      "quote":            "So we first take all the loggers...",
      "measures": {
        "quality": 0.8, "confidence": 0.888, "contribution": 0.639,
        "specificity": 0.9, "causal_clarity": 0.9, "epistemic_weight": 0.9
        // ... full per-evidence measure block; null on the holistic-fallback path
      }
    }
  ],
  "evidence_unit_count":   15,
  "merged_duplicate_count": 0,
  "era_cot":                null   // Stage-3 pre-analysis when it ran, else null
}

Stages marked planned render as skeleton in the Detailed view but carry no per-candidate data until they are wired.

There is no hire/no-hire label, and no emotion inference, anywhere in this model. Coverage informs a human decision — it does not make one.
Was this page helpful?