{
  "title": "Main, v3 and v3.5: 100 matched three-site comparisons",
  "plannedPairedTrials": 100,
  "plannedThreeSiteTrials": 100,
  "plannedRuns": 300,
  "distinctInputs": 50,
  "repeatsPerInput": 2,
  "typedDistinctInputs": 40,
  "recordedDistinctInputs": 10,
  "distinctFamilies": 21,
  "sites": {
    "main": {
      "baseUrl": "https://kokekun.com",
      "transport": "HTTP sequence"
    },
    "v3": {
      "baseUrl": "https://kokekun.com/v3",
      "transport": "persistent WebSocket protocol 2"
    },
    "v35": {
      "baseUrl": "https://kokekun.com/v3.5",
      "transport": "persistent WebSocket protocol 2"
    }
  },
  "orderSeed": 20261015035,
  "roundSeeds": [
    20261015036,
    20261015037
  ],
  "permutations": [
    [
      "main",
      "v3",
      "v35"
    ],
    [
      "main",
      "v35",
      "v3"
    ],
    [
      "v3",
      "main",
      "v35"
    ],
    [
      "v3",
      "v35",
      "main"
    ],
    [
      "v35",
      "main",
      "v3"
    ],
    [
      "v35",
      "v3",
      "main"
    ]
  ],
  "strata": [
    {
      "modality": "text",
      "direction": "en-ja",
      "baseCount": 20,
      "permutationSequence": [
        [
          "v35",
          "main",
          "v3"
        ],
        [
          "main",
          "v3",
          "v35"
        ],
        [
          "v3",
          "v35",
          "main"
        ],
        [
          "v35",
          "v3",
          "main"
        ],
        [
          "main",
          "v35",
          "v3"
        ],
        [
          "v3",
          "main",
          "v35"
        ]
      ]
    },
    {
      "modality": "text",
      "direction": "ja-en",
      "baseCount": 20,
      "permutationSequence": [
        [
          "v35",
          "v3",
          "main"
        ],
        [
          "main",
          "v35",
          "v3"
        ],
        [
          "v3",
          "main",
          "v35"
        ],
        [
          "v35",
          "main",
          "v3"
        ],
        [
          "v3",
          "v35",
          "main"
        ],
        [
          "main",
          "v3",
          "v35"
        ]
      ]
    },
    {
      "modality": "audio",
      "direction": "en-ja",
      "baseCount": 5,
      "permutationSequence": [
        [
          "main",
          "v35",
          "v3"
        ],
        [
          "v3",
          "main",
          "v35"
        ],
        [
          "v35",
          "v3",
          "main"
        ],
        [
          "main",
          "v3",
          "v35"
        ],
        [
          "v3",
          "v35",
          "main"
        ],
        [
          "v35",
          "main",
          "v3"
        ]
      ]
    },
    {
      "modality": "audio",
      "direction": "ja-en",
      "baseCount": 5,
      "permutationSequence": [
        [
          "v3",
          "v35",
          "main"
        ],
        [
          "main",
          "v3",
          "v35"
        ],
        [
          "v35",
          "main",
          "v3"
        ],
        [
          "v3",
          "main",
          "v35"
        ],
        [
          "v35",
          "v3",
          "main"
        ],
        [
          "main",
          "v35",
          "v3"
        ]
      ]
    }
  ],
  "siteOrder": "Six permutations assigned as evenly as possible within each modality/direction stratum; each base input reverses its assigned order in repeat 2. Two independently shuffled rounds. Do not assume each site has exactly equal position counts in small strata.",
  "concurrency": 1,
  "automaticRetries": 0,
  "maximumProviderOperations": 660,
  "nominalProviderOperationsPerSite": 220,
  "sharedDailyLimit": 3000,
  "requiredReserveOperations": 200,
  "minimumSiteStartSpacingMs": 3100,
  "jobDeadlineMs": 120000,
  "connectionDeadlineMs": 15000,
  "providerOperationNote": "Original cases1–20 used daily limit2000; user approved3000 before cases21–100. All660 nominal operations in the original plan retained; no jobs replayed and no counter reset.",
  "purpose": "Exploratory three-site performance comparison; all failed attempts retained. Preserve base/family dependence and compare common-success and pairwise-success subsets separately.",
  "latencyScope": "Input ready to first and last received audio bytes. Input file reading, intentional pacing and connection setup are recorded separately and excluded. Not microphone capture, decoded playback, speaker/earbud onset or a load test.",
  "qualityScope": "Speech availability, guidance metadata, exact transcription/translation and saved audio. No native-listener pronunciation certification.",
  "condition": {
    "direction": "explicit fixture direction",
    "natural": false,
    "style": "maker",
    "context": [],
    "conversationMode": "turn-taking",
    "speak": true
  },
  "measuredWarmupJobs": 0,
  "setupNote": "Read-only status requests and WebSocket handshakes precede measured jobs and may trigger normal application warming. No speech/translation warmup jobs are sent. Sessions reconnect only between jobs, never retry a job.",
  "wsMetadataNote": "All protocol events are retained. Compiler version/preparation attempts are null when protocol2 does not expose them; pinned compiler deployment versions are saved independently. Do not infer missing values as zero.",
  "deploymentChangesAllowed": false,
  "newVoiceGenerationForInputFixtures": false,
  "priorBatchPooled": false,
  "fixturesSha256": "82013099ac907da00b94a9354f0f091c9e64f1b9805f0f985e9dcab5776a93af",
  "sourceFixturesSha256": "646298df6c278c77851a50dd393f535253379af883e713037f8c3ec262151772",
  "measurementSegments": [
    {
      "id": "initial-20",
      "firstCase": 1,
      "lastCase": 20
    },
    {
      "id": "continuation-80",
      "firstCase": 21,
      "lastCase": 100
    }
  ]
}
