{
  "version": 1,
  "run_id": "id-f8f3ebdcb008b1",
  "config": {
    "noise": "native",
    "echo": true,
    "regulator": "none",
    "normalization": "baseline",
    "silence": 450,
    "partial": 500,
    "mode": "redecode",
    "session": "id-d131543cbb7b00",
    "run": "id-f8f3ebdcb008b1"
  },
  "details": {
    "browser_results": [
      {
        "browser_ms": 4472.199999999255,
        "event": {
          "version": 1,
          "result_type": "final",
          "session_id": "id-d131543cbb7b00",
          "stream_id": "id-d2273de0a1fa6e",
          "phrase_id": "id-c54b3b6de45a7e",
          "revision": 2,
          "text": "Неполный PCM-Chunk дополняется тишиной вместо накопленного остатка. Каждый SM-BitFrame разбивается отдельно. Короткий остаток дополняется нулями при аппетитации. Этот способ добавляет лишнюю тишину и менять длительность.",
          "traceparent": "00-03712f0d392baa78ceecc8aaeba93872-18ffefa11f65f281-01",
          "timings": {
            "version": 1,
            "asr": {
              "backend": "streaming_worker",
              "worker_queue_ms": 0.1092422753572464,
              "worker_decode_ms": 254.19148057699203,
              "decode_count": 1,
              "otel_trace_id": "03712f0d392baa78ceecc8aaeba93872",
              "otel_span_id": "d27f696e53495d82",
              "last_speech_to_final_ms": 270.0780816376209
            }
          }
        }
      }
    ],
    "ready": {
      "type": "ready",
      "session_id": "id-d131543cbb7b00",
      "stream_id": "id-d2273de0a1fa6e",
      "sample_rate": 16000,
      "asr_backend": "streaming_worker"
    },
    "connect_ms": 747.8000000007451,
    "sample_rate": 48000,
    "muted_without_capture": true,
    "control_flush_batch_samples": 12800,
    "control_pacing": "ingress_checkpoint_ack",
    "control_ack_reads": 16,
    "control_ack_samples": 204800,
    "capture_state": "muted",
    "mute_ms": 4108.39999999851,
    "total_ms": 9865.800000000745,
    "sent_sequence": 65,
    "server_dropped": 0
  },
  "errors": [],
  "end": {
    "status": 200,
    "data": {
      "ok": true,
      "type": "stopped",
      "error": null
    }
  },
  "clock": "browser performance and ingress owner are independent",
  "item": {
    "run_id": "id-f8f3ebdcb008b1",
    "kind": "control",
    "stage": 7,
    "scenario": 1,
    "profile": "vad",
    "config": {
      "noise": "native",
      "echo": true,
      "regulator": "none",
      "normalization": "baseline",
      "silence": 450,
      "partial": 500,
      "mode": "redecode"
    },
    "reference": "еполный PCM-чанк дополняется тишиной вместо накопления остатка.\nКаждый resampled frame разбивается отдельно; короткий остаток дополняется нулями. При иной пакетизации это способно добавлять лишнюю тишину и менять длительность.",
    "expected_finals": 1,
    "seconds": 12.808,
    "pcm_id": "3fb2c1b00cccb5d4d591b021b24eb0e4c7993aa494f60a721f150cea954d3b76",
    "cache_key": "97d8c57b9fc2186d402ae9f0c12ed75df1922ecc32b7ef7461990bef48547eea",
    "parent_run": "id-8e5b62828f8c42"
  },
  "stages": {
    "ingress": {
      "wav": "audio/ba614c80df9079cbfb60fec219272efbe50144f46e296e6eb760b7344e370586.wav",
      "waveform_sha256": "ba614c80df9079cbfb60fec219272efbe50144f46e296e6eb760b7344e370586",
      "file_sha256": "964ae4155bb9e51862ea2da941eaf4752164c6540ea46489f2a932af6549ad39",
      "rate": 16000,
      "metrics": {
        "samples": 205120,
        "sample_rate": 16000,
        "seconds": 12.82,
        "rms_dbfs": -25.113325190376283,
        "peak_dbfs": -9.114701788265915,
        "near_clip_fraction_0_98": 0.0,
        "full_scale_fraction": 0.0
      }
    },
    "decoder": {
      "wav": "audio/322a5ddd38515b4a572cc094a327756cffef3bf5e1c614bda71d09d078c09028.wav",
      "waveform_sha256": "322a5ddd38515b4a572cc094a327756cffef3bf5e1c614bda71d09d078c09028",
      "file_sha256": "faf1460e5559e03e622a7bb3b49b0f18d470c7ceb1d00f2905658d42fe560410",
      "rate": 16000,
      "metrics": {
        "samples": 205120,
        "sample_rate": 16000,
        "seconds": 12.82,
        "rms_dbfs": -25.113325190376283,
        "peak_dbfs": -9.114701788265915,
        "near_clip_fraction_0_98": 0.0,
        "full_scale_fraction": 0.0
      }
    }
  },
  "windows": {
    "id-c54b3b6de45a7e:1:worker_input": {
      "version": 1,
      "run_id": "id-f8f3ebdcb008b1",
      "stage": "worker_input",
      "sequence": 1,
      "chunk": 0,
      "chunks": 18,
      "dropped": 0,
      "instance_id": "id-449cdc832936be",
      "phrase_id": "id-c54b3b6de45a7e",
      "window": 1,
      "offset_samples": 0,
      "final": true,
      "sample_rate": 16000,
      "sample_width": 2,
      "format": "pcm16le",
      "pcm_sha256": "0029a86df6eb384a3ec0703ef8c9d6027f334fd2705512c6d70577c0c09e0e79",
      "wav": "audio/ba614c80df9079cbfb60fec219272efbe50144f46e296e6eb760b7344e370586.wav",
      "waveform_sha256": "ba614c80df9079cbfb60fec219272efbe50144f46e296e6eb760b7344e370586",
      "file_sha256": "964ae4155bb9e51862ea2da941eaf4752164c6540ea46489f2a932af6549ad39",
      "rate": 16000,
      "metrics": {
        "samples": 205120,
        "sample_rate": 16000,
        "seconds": 12.82,
        "rms_dbfs": -25.113325190376283,
        "peak_dbfs": -9.114701788265915,
        "near_clip_fraction_0_98": 0.0,
        "full_scale_fraction": 0.0
      }
    },
    "id-c54b3b6de45a7e:1:decoder_input": {
      "version": 1,
      "run_id": "id-f8f3ebdcb008b1",
      "stage": "decoder_input",
      "sequence": 19,
      "chunk": 0,
      "chunks": 35,
      "dropped": 0,
      "instance_id": "id-449cdc832936be",
      "gain_db": 0,
      "phrase_id": "id-c54b3b6de45a7e",
      "window": 1,
      "offset_samples": 0,
      "final": true,
      "sample_rate": 16000,
      "sample_width": 4,
      "format": "float32le",
      "pcm_sha256": "b26e55ba69847f680dcd7f14e0ac6cd44ba7b82e2cf8256de6a1d6f6b5b70bf2",
      "wav": "audio/322a5ddd38515b4a572cc094a327756cffef3bf5e1c614bda71d09d078c09028.wav",
      "waveform_sha256": "322a5ddd38515b4a572cc094a327756cffef3bf5e1c614bda71d09d078c09028",
      "file_sha256": "faf1460e5559e03e622a7bb3b49b0f18d470c7ceb1d00f2905658d42fe560410",
      "rate": 16000,
      "metrics": {
        "samples": 205120,
        "sample_rate": 16000,
        "seconds": 12.82,
        "rms_dbfs": -25.113325190376283,
        "peak_dbfs": -9.114701788265915,
        "near_clip_fraction_0_98": 0.0,
        "full_scale_fraction": 0.0
      }
    }
  },
  "diagnostics": [
    {
      "version": 1,
      "run_id": "id-f8f3ebdcb008b1",
      "stage": "bridge_input",
      "sequence": 642,
      "chunk": 0,
      "chunks": 1,
      "dropped": 0,
      "instance_id": "id-9e1a449e4014d1",
      "packet_seq": 642,
      "sample_rate": 16000,
      "sample_width": 2,
      "format": "pcm16le"
    },
    {
      "version": 1,
      "run_id": "id-f8f3ebdcb008b1",
      "stage": "decode",
      "sequence": 54,
      "chunk": 0,
      "chunks": 1,
      "dropped": 0,
      "instance_id": "id-449cdc832936be",
      "phrase_id": "id-c54b3b6de45a7e",
      "window": 1,
      "offset_samples": 0,
      "final": true,
      "avg_logprob": -0.27923143350265245,
      "no_speech_prob": 0,
      "compression_ratio": 1.6,
      "text": "Неполный PCM-Chunk дополняется тишиной вместо накопленного остатка. Каждый SM-BitFrame разбивается отдельно. Короткий остаток дополняется нулями при аппетитации. Этот способ добавляет лишнюю тишину и менять длительность.",
      "rejection_reasons": [],
      "decoder_observations": [
        {
          "avg_logprob": -0.27923143350265245,
          "no_speech_prob": 0,
          "compression_ratio": 1.6,
          "library_no_speech_skip": false,
          "logprob_threshold_crossed": false,
          "compression_threshold_crossed": false
        }
      ],
      "queue_ms": 0.1092422753572464,
      "decode_ms": 259.49903205037117,
      "preparation_ms": 0.004127621650695801,
      "audio_seconds": 12.82
    },
    {
      "version": 1,
      "run_id": "id-f8f3ebdcb008b1",
      "stage": "export_summary",
      "sequence": 55,
      "dropped": 0,
      "bytes": 1230720,
      "instance_id": "id-449cdc832936be"
    }
  ],
  "events": [
    {
      "owner_ms": 3736.115273088217,
      "version": 1,
      "result_type": "final",
      "session_id": "id-d131543cbb7b00",
      "stream_id": "id-d2273de0a1fa6e",
      "phrase_id": "id-c54b3b6de45a7e",
      "revision": 2,
      "text": "Неполный PCM-Chunk дополняется тишиной вместо накопленного остатка. Каждый SM-BitFrame разбивается отдельно. Короткий остаток дополняется нулями при аппетитации. Этот способ добавляет лишнюю тишину и менять длительность.",
      "traceparent": "00-03712f0d392baa78ceecc8aaeba93872-18ffefa11f65f281-01",
      "timings": {
        "version": 1,
        "asr": {
          "backend": "streaming_worker",
          "worker_queue_ms": 0.1092422753572464,
          "worker_decode_ms": 254.19148057699203,
          "decode_count": 1,
          "otel_trace_id": "03712f0d392baa78ceecc8aaeba93872",
          "otel_span_id": "d27f696e53495d82",
          "last_speech_to_final_ms": 270.0780816376209
        }
      }
    }
  ],
  "online_text": "Неполный PCM-Chunk дополняется тишиной вместо накопленного остатка. Каждый SM-BitFrame разбивается отдельно. Короткий остаток дополняется нулями при аппетитации. Этот способ добавляет лишнюю тишину и менять длительность.",
  "reference": "еполный PCM-чанк дополняется тишиной вместо накопления остатка.\nКаждый resampled frame разбивается отдельно; короткий остаток дополняется нулями. При иной пакетизации это способно добавлять лишнюю тишину и менять длительность.",
  "counts": {
    "wer": {
      "reference_units": 28,
      "hypothesis_units": 27,
      "substitutions": 9,
      "deletions": 1,
      "insertions": 0,
      "errors": 10,
      "rate": 0.35714285714285715,
      "false_units": null
    },
    "cer": {
      "reference_units": 195,
      "hypothesis_units": 190,
      "substitutions": 14,
      "deletions": 10,
      "insertions": 5,
      "errors": 29,
      "rate": 0.14871794871794872,
      "false_units": null
    }
  },
  "entity_scores": {
    "expected_numbers": [],
    "actual_numbers": [],
    "correct_numbers": 0,
    "number_accuracy": null,
    "expected_codes": [],
    "actual_codes": [],
    "correct_codes": 0,
    "code_accuracy": null,
    "method": "limited Russian integer spelling equivalence; WER/CER unchanged"
  },
  "final_count": 1,
  "refusals": [],
  "raw_final_count": 1,
  "duplicate_final_count": 0,
  "quality_score_applicable": true,
  "unexpected_final_count": 0,
  "capture_incomplete": false,
  "summary": {
    "last_speech_to_final_ms": 270.0780816376209,
    "last_speech_to_final_max_ms": 270.0780816376209,
    "terminal_phrases_with_timing": 1,
    "last_speech_to_terminal_ms": 270.0780816376209,
    "first_partial_since_play_intent_ms": null,
    "first_vad_status_since_play_intent_ms": null,
    "trial_including_diagnostics_ms": 9865.800000000745,
    "worker_decode_ms": 254.19148057699203,
    "worker_queue_ms": 0.1092422753572464,
    "decode_count": 1,
    "processed_audio_seconds": 12.82,
    "worklet_packet_age_p50_ms": null,
    "worklet_packet_age_p95_ms": null,
    "preparation_ms": 0.004127621650695801,
    "unique_decoded_audio_seconds": 12.82,
    "reprocessed_audio_seconds": 0
  },
  "missing_checkpoints": [],
  "signal_checks": {},
  "ending_check": {
    "expected_last_words": [
      "и",
      "менять",
      "длительность"
    ],
    "actual_last_words": [
      "и",
      "менять",
      "длительность"
    ],
    "last_words_exact": true,
    "method": "lexical last three words; inspection available in full transcript"
  },
  "control_transport_fidelity": {
    "input_samples": 204928,
    "ingress_samples": 205120,
    "differing_samples": 0,
    "max_abs_error": 0,
    "padding_samples": 192,
    "padding_zero": true,
    "identical_input_with_only_final_frame_padding": true
  },
  "measurement_metadata_version": 6
}
