{
  "version": 1,
  "run_id": "id-f6d6f4b252122c",
  "config": {
    "noise": "native",
    "echo": true,
    "regulator": "none",
    "normalization": "baseline",
    "silence": 450,
    "partial": 500,
    "mode": "redecode",
    "session": "id-d131543cbb7b00",
    "run": "id-f6d6f4b252122c"
  },
  "details": {
    "browser_results": [
      {
        "browser_ms": 4816.9000000003725,
        "event": {
          "version": 1,
          "result_type": "final",
          "session_id": "id-d131543cbb7b00",
          "stream_id": "id-52a18a2e7043b7",
          "phrase_id": "id-285f009b52a0b1",
          "revision": 2,
          "text": "Длинная и нестабильная, а потом совращается после совпадения с лодом грибы. Если последующий обрезчик не появляется, но поднимающий гриб вводит в его таз. Тест, где направлено существует, но используется грибический бетонер, на реальные места.",
          "traceparent": "00-f06ed530452ac2021b61248fabd21fc6-b51f66f5f4e95fe7-01",
          "timings": {
            "version": 1,
            "asr": {
              "backend": "streaming_worker",
              "worker_queue_ms": 0.09695254266262054,
              "worker_decode_ms": 264.85127210617065,
              "decode_count": 1,
              "otel_trace_id": "f06ed530452ac2021b61248fabd21fc6",
              "otel_span_id": "98ec473b717e734f",
              "last_speech_to_final_ms": 445.9383338689804
            }
          }
        }
      }
    ],
    "ready": {
      "type": "ready",
      "session_id": "id-d131543cbb7b00",
      "stream_id": "id-52a18a2e7043b7",
      "sample_rate": 16000,
      "asr_backend": "streaming_worker"
    },
    "connect_ms": 671.5999999996275,
    "sample_rate": 48000,
    "muted_without_capture": true,
    "control_flush_batch_samples": 12800,
    "control_pacing": "ingress_checkpoint_ack",
    "control_ack_reads": 19,
    "control_ack_samples": 238080,
    "capture_state": "muted",
    "mute_ms": 4452.5999999996275,
    "total_ms": 9390.699999999255,
    "sent_sequence": 75,
    "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-f6d6f4b252122c",
    "kind": "control",
    "stage": 3,
    "scenario": 1,
    "profile": "vad",
    "config": {
      "noise": "native",
      "echo": true,
      "regulator": "none",
      "normalization": "baseline",
      "silence": 450,
      "partial": 500,
      "mode": "redecode"
    },
    "reference": "Длинная нестабильная фраза может упереться в восьмисекундное окно.\nОкно сокращается после совпадения слов двух decode. Если устойчивый префикс не появляется, дальнейший рост приводит к overflow. Тест длинной фразы существует, но использует символический decoder, а не реальный Whisper",
    "expected_finals": 1,
    "seconds": 14.88,
    "pcm_id": "9259e79ffdba44e34aecd4ab46bb18b6743cda04bd53f598e6c2c6d0bf5c35b5",
    "cache_key": "2e1852f3ba5644821c1873bbf43f6340878fd250a8ec3da0a43226c51ae7201a",
    "parent_run": "id-203da5c56ea85b"
  },
  "stages": {
    "ingress": {
      "wav": "audio/83d33431eafc88d4b5d2ec45ccceb1afc82b910d5adea9251f3144be9ce045f9.wav",
      "waveform_sha256": "83d33431eafc88d4b5d2ec45ccceb1afc82b910d5adea9251f3144be9ce045f9",
      "file_sha256": "9041d588ca3d18b7c8fc58a937d44aae09d4eac0ef3b8e0af09f995fe56f14a9",
      "rate": 16000,
      "metrics": {
        "samples": 238080,
        "sample_rate": 16000,
        "seconds": 14.88,
        "rms_dbfs": -41.34347159583375,
        "peak_dbfs": -19.106081902213408,
        "near_clip_fraction_0_98": 0.0,
        "full_scale_fraction": 0.0
      }
    },
    "decoder": {
      "wav": "audio/2fd98c7181f597619c39882735f064dac65922e0dc075e163ea4344eafa259b8.wav",
      "waveform_sha256": "2fd98c7181f597619c39882735f064dac65922e0dc075e163ea4344eafa259b8",
      "file_sha256": "e1d7a37f9467da299d7a8c7569ec9dfcdb84deeb0432c6999b46e5dd6b8d9905",
      "rate": 16000,
      "metrics": {
        "samples": 238080,
        "sample_rate": 16000,
        "seconds": 14.88,
        "rms_dbfs": -41.34347159583375,
        "peak_dbfs": -19.106081902213408,
        "near_clip_fraction_0_98": 0.0,
        "full_scale_fraction": 0.0
      }
    }
  },
  "windows": {
    "id-285f009b52a0b1:1:worker_input": {
      "version": 1,
      "run_id": "id-f6d6f4b252122c",
      "stage": "worker_input",
      "sequence": 1,
      "chunk": 0,
      "chunks": 20,
      "dropped": 0,
      "instance_id": "id-d6feefd06c7bc0",
      "phrase_id": "id-285f009b52a0b1",
      "window": 1,
      "offset_samples": 0,
      "final": true,
      "sample_rate": 16000,
      "sample_width": 2,
      "format": "pcm16le",
      "pcm_sha256": "9259e79ffdba44e34aecd4ab46bb18b6743cda04bd53f598e6c2c6d0bf5c35b5",
      "wav": "audio/83d33431eafc88d4b5d2ec45ccceb1afc82b910d5adea9251f3144be9ce045f9.wav",
      "waveform_sha256": "83d33431eafc88d4b5d2ec45ccceb1afc82b910d5adea9251f3144be9ce045f9",
      "file_sha256": "9041d588ca3d18b7c8fc58a937d44aae09d4eac0ef3b8e0af09f995fe56f14a9",
      "rate": 16000,
      "metrics": {
        "samples": 238080,
        "sample_rate": 16000,
        "seconds": 14.88,
        "rms_dbfs": -41.34347159583375,
        "peak_dbfs": -19.106081902213408,
        "near_clip_fraction_0_98": 0.0,
        "full_scale_fraction": 0.0
      }
    },
    "id-285f009b52a0b1:1:decoder_input": {
      "version": 1,
      "run_id": "id-f6d6f4b252122c",
      "stage": "decoder_input",
      "sequence": 21,
      "chunk": 0,
      "chunks": 40,
      "dropped": 0,
      "instance_id": "id-d6feefd06c7bc0",
      "gain_db": 0,
      "phrase_id": "id-285f009b52a0b1",
      "window": 1,
      "offset_samples": 0,
      "final": true,
      "sample_rate": 16000,
      "sample_width": 4,
      "format": "float32le",
      "pcm_sha256": "50c3c4507dc068006267b2ff614fc8290d90551ca8d86b5f1595c51d683f1481",
      "wav": "audio/2fd98c7181f597619c39882735f064dac65922e0dc075e163ea4344eafa259b8.wav",
      "waveform_sha256": "2fd98c7181f597619c39882735f064dac65922e0dc075e163ea4344eafa259b8",
      "file_sha256": "e1d7a37f9467da299d7a8c7569ec9dfcdb84deeb0432c6999b46e5dd6b8d9905",
      "rate": 16000,
      "metrics": {
        "samples": 238080,
        "sample_rate": 16000,
        "seconds": 14.88,
        "rms_dbfs": -41.34347159583375,
        "peak_dbfs": -19.106081902213408,
        "near_clip_fraction_0_98": 0.0,
        "full_scale_fraction": 0.0
      }
    }
  },
  "diagnostics": [
    {
      "version": 1,
      "run_id": "id-f6d6f4b252122c",
      "stage": "bridge_input",
      "sequence": 745,
      "chunk": 0,
      "chunks": 1,
      "dropped": 0,
      "instance_id": "id-8dcfc85614c3ef",
      "packet_seq": 745,
      "sample_rate": 16000,
      "sample_width": 2,
      "format": "pcm16le"
    },
    {
      "version": 1,
      "run_id": "id-f6d6f4b252122c",
      "stage": "decode",
      "sequence": 61,
      "chunk": 0,
      "chunks": 1,
      "dropped": 0,
      "instance_id": "id-d6feefd06c7bc0",
      "phrase_id": "id-285f009b52a0b1",
      "window": 1,
      "offset_samples": 0,
      "final": true,
      "avg_logprob": -0.797249560607107,
      "no_speech_prob": 0,
      "compression_ratio": 1.8541666666666667,
      "text": "Длинная и нестабильная, а потом совращается после совпадения с лодом грибы. Если последующий обрезчик не появляется, но поднимающий гриб вводит в его таз. Тест, где направлено существует, но используется грибический бетонер, на реальные места.",
      "rejection_reasons": [],
      "decoder_observations": [
        {
          "avg_logprob": -0.797249560607107,
          "no_speech_prob": 0,
          "compression_ratio": 1.8541666666666667,
          "library_no_speech_skip": false,
          "logprob_threshold_crossed": false,
          "compression_threshold_crossed": false
        }
      ],
      "queue_ms": 0.09695254266262054,
      "decode_ms": 267.44120195508003,
      "preparation_ms": 0.0036153942346572876,
      "audio_seconds": 14.88
    },
    {
      "version": 1,
      "run_id": "id-f6d6f4b252122c",
      "stage": "export_summary",
      "sequence": 62,
      "dropped": 0,
      "bytes": 1428480,
      "instance_id": "id-d6feefd06c7bc0"
    }
  ],
  "events": [
    {
      "owner_ms": 4154.754277318716,
      "version": 1,
      "result_type": "final",
      "session_id": "id-d131543cbb7b00",
      "stream_id": "id-52a18a2e7043b7",
      "phrase_id": "id-285f009b52a0b1",
      "revision": 2,
      "text": "Длинная и нестабильная, а потом совращается после совпадения с лодом грибы. Если последующий обрезчик не появляется, но поднимающий гриб вводит в его таз. Тест, где направлено существует, но используется грибический бетонер, на реальные места.",
      "traceparent": "00-f06ed530452ac2021b61248fabd21fc6-b51f66f5f4e95fe7-01",
      "timings": {
        "version": 1,
        "asr": {
          "backend": "streaming_worker",
          "worker_queue_ms": 0.09695254266262054,
          "worker_decode_ms": 264.85127210617065,
          "decode_count": 1,
          "otel_trace_id": "f06ed530452ac2021b61248fabd21fc6",
          "otel_span_id": "98ec473b717e734f",
          "last_speech_to_final_ms": 445.9383338689804
        }
      }
    }
  ],
  "online_text": "Длинная и нестабильная, а потом совращается после совпадения с лодом грибы. Если последующий обрезчик не появляется, но поднимающий гриб вводит в его таз. Тест, где направлено существует, но используется грибический бетонер, на реальные места.",
  "reference": "Длинная нестабильная фраза может упереться в восьмисекундное окно.\nОкно сокращается после совпадения слов двух decode. Если устойчивый префикс не появляется, дальнейший рост приводит к overflow. Тест длинной фразы существует, но использует символический decoder, а не реальный Whisper",
  "counts": {
    "wer": {
      "reference_units": 37,
      "hypothesis_units": 34,
      "substitutions": 23,
      "deletions": 5,
      "insertions": 2,
      "errors": 30,
      "rate": 0.8108108108108109,
      "false_units": null
    },
    "cer": {
      "reference_units": 242,
      "hypothesis_units": 202,
      "substitutions": 72,
      "deletions": 46,
      "insertions": 6,
      "errors": 124,
      "rate": 0.512396694214876,
      "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": 445.9383338689804,
    "last_speech_to_final_max_ms": 445.9383338689804,
    "terminal_phrases_with_timing": 1,
    "last_speech_to_terminal_ms": 445.9383338689804,
    "first_partial_since_play_intent_ms": null,
    "first_vad_status_since_play_intent_ms": null,
    "trial_including_diagnostics_ms": 9390.699999999255,
    "worker_decode_ms": 264.85127210617065,
    "worker_queue_ms": 0.09695254266262054,
    "decode_count": 1,
    "processed_audio_seconds": 14.88,
    "worklet_packet_age_p50_ms": null,
    "worklet_packet_age_p95_ms": null,
    "preparation_ms": 0.0036153942346572876,
    "unique_decoded_audio_seconds": 14.88,
    "reprocessed_audio_seconds": 0
  },
  "missing_checkpoints": [],
  "signal_checks": {},
  "ending_check": {
    "expected_last_words": [
      "не",
      "реальный",
      "whisper"
    ],
    "actual_last_words": [
      "на",
      "реальные",
      "места"
    ],
    "last_words_exact": false,
    "method": "lexical last three words; inspection available in full transcript"
  },
  "control_transport_fidelity": {
    "input_samples": 238080,
    "ingress_samples": 238080,
    "differing_samples": 0,
    "max_abs_error": 0,
    "padding_samples": 0,
    "padding_zero": true,
    "identical_input_with_only_final_frame_padding": true
  },
  "measurement_metadata_version": 6
}
