{ "run_id": "2026-07-24-092646-rakuten-two-client-fairness", "started_at": "2026-07-24T10:05:38.2637724+09:00", "experiment_plan_file": "experiment-plan.json", "planned_signature": "rwfp2c|two-client-download-fairness|iv=active-clients:pc-only,android-only,pc+android|clients=windows-pc+sh41a-android12-wifi|endpoint=cloudflare-down|bytes=10000000-per-active-client|reps=3|order=latin-square|metrics=throughput-retention+aggregate-throughput+normalized-jain-fairness", "executed_signature": "rwfp2c|two-client-download-fairness|iv=active-clients:pc-only,android-only,pc+android|clients=windows-pc+sh41a-android12-wifi|endpoint=cloudflare-down|bytes=10000000-per-active-client|reps=3|order=latin-square|metrics=throughput-retention+aggregate-throughput+normalized-jain-fairness", "measurement_profile": "two-physical-client-download-fairness", "pc": { "gateway": "192.168.0.1", "gateway_verified": true }, "router": { "device": "Rakuten WiFi Pocket 2C", "firmware": "ZR03M_a5.2_U", "firmware_verified": true }, "android": { "baseline_run_id": "2026-07-24-091915", "model": "SH-41A", "android_version": "12", "sim_state": "ABSENT", "role": "Wi-Fi client connected to Rakuten WiFi Pocket 2C; not a Rakuten SIM phone", "ssid": "Rakuten-073F", "baseline_quality_gate_pass": true, "baseline_device_verified": true, "ssid_verified": true, "role_verified": true, "sim_absent_verified": true, "adb_get_state_ready": true }, "design": { "independent_variable": "active client condition", "conditions": [ "pc_only", "android_only", "pc_android_simultaneous" ], "bytes_per_active_client": 10000000, "repetitions": 3, "rest_seconds": 15, "maximum_start_skew_ms": 500, "maximum_attempts_per_trial": 3, "planned_payload_bytes": 120000000, "maximum_payload_bytes_if_every_trial_retries": 360000000, "order": "three-sequence Latin square; cycles if repetitions exceed three", "simultaneous_start_order": "PC first, Android first, PC first; then alternating", "start_skew_definition": "Absolute difference between local curl.exe and adb.exe process StartTime values; not packet-level timing." }, "privacy": { "adb_device_enumeration_used": false, "adb_serial_retrieved": false, "prohibited_identifiers_retrieved": false, "exclusions": [ "ADB serial", "IMEI", "phone number", "BSSID", "MAC address", "location", "personal files", "installed-app inventory" ] }, "preflight_pass": true, "preflight_failures": [ ] }