{ "observed_failure": "Live game request returned HTTP 400; helper diagnostic invalid_body_size. Old handler required positive Content-Length and had no chunked-body reader.", "change": "Support bounded HTTP/1.1 chunked uploads and fixed-length uploads; retain authentication, cache limits and static playback.", "tests": { "welcome_voice": 10, "speech_service": "passed", "speech_menu": "passed", "real_localhost_http": "chunked upload, fixed-length cached reuse and audio download passed; no Google calls" }, "deployment": { "service": "escapists-welcome-test.service", "host": "192.168.52.4", "chunked_cached_request_status": 200, "audio_bytes": 209324, "game_restarted": false, "credentials_changed": false }, "limits": { "body_bytes": 8192, "chunk_metadata_bytes": 4096, "socket_timeout_seconds": 15 }, "limitations": [ "Audible client playback was not independently observed. A raw game request was not captured." ], "sha256": { "tools/welcome_voice.py": "86ab10ec1eba7ff4b277a2164a283d523626d695df8e088460819e7bfb3d34b5", "tests/test_welcome_voice.py": "b16e13fc56268ae29eef0b879e6389cd56b5cc01c5e92d2c1d701342b88ee20d", "docs/welcome-voice-test.md": "7bc0ab60abe8c4b3e05d66abf16ab41b4fa12df30b506a3cf42850a0180a2797" }, "live_verification": { "helper_successful_requests_after_deploy": 2, "first_request": "direct cached verification", "game_saved_after_fix": true, "game_saved_at_server_time": "2026-10-05T00:58:04.826532", "tts_enabled": true, "cached_clips": 2 } }