Skip to content

Result Schema

Mohammed Ammar edited this page Oct 6, 2026 · 1 revision

Result Schema arachne.result/1.0

Field Meaning
status, messages[] ok / insufficient_evidence / error; messages have level, code, text
config_hash, rubric_version, engine_version, config Exactly what produced this result
reference, participant Ids, durations, alignment_method; participant quality (SNR estimate, voiced coverage, speech seconds, clipping)
words[] Per word: reference and participant each with start, end, pause_after (seconds). Use for transcript highlighting and audio seeking
regions[] Candidate flaw regions (below)
scores overall; dimensions (pacing, pauses, pitch_contour, energy, null if withheld); weights; formula. null if evidence is insufficient
global e.g. global_pace_ratio (above 1 = participant faster overall)
features Per-word raw and speaker-normalised values for both recordings, plus units
timeseries rate_hz (50) and per recording: energy_db, f0_semitones (null = unvoiced), speech_mask. Time = index / rate_hz
rules, limitations Rule metadata and the caveats to display

Region object

Field Meaning
region_id, rule_id, dimension, direction Identity and what kind of finding
start_s, end_s Span on the participant's clock
word_range, words Word indices and text
measured Rule-specific measured values vs reference (e.g. part_wpm, ref_wpm)
delta, delta_unit Size of deviation (s, dB, or log_ratio)
z Robust z-score
severity, severity_label 0 to 1, and mild / moderate / strong
explanation Template text naming feature, comparison, span and rule

Notes for UI authors

  • Reference and participant have different clocks. Map between them through words[].
  • Pause regions of type "missing" are drawn as the junction plus or minus 0.2 s, by convention.
  • Show limitations somewhere visible. Regions are measurements, not verdicts.

Clone this wiki locally