[webftr-js8-lab] command=frame-recover [webftr-js8-lab] root=/decoders/js8_decoder [webftr-js8-lab] log=/decoders/js8_decoder/logs/20260526T115158Z_frame-recover.log [webftr-js8-lab] manifest=/decoders/js8_decoder/logs/20260526T115158Z_frame-recover_manifest.json [webftr-js8-lab] utc=20260526T115158Z [webftr-js8-lab] rx-only guard: no TX / no PTT / no Tune / no Send [webftr-js8-lab] JSON output: /decoders/js8_decoder/logs/20260526T115158Z_frame_recover_output.json [webftr-js8-lab] JSON timeout guard: 180s { "ok": false, "error": "json_command_timeout_guard", "timeout_seconds": 180, "exit_code": 143, "command": [ "python3", "-m", "webftr_js8_lab.js8_frame_recover", "--input", "/decoders/js8_decoder/runtime/quick_prefilter_windows/js8_quick_selected_window.wav", "--pretty", "--max-seconds", "60", "--max-starts", "14", "--max-base-candidates", "8" ], "stderr_log": "/decoders/js8_decoder/logs/20260526T115158Z_frame_recover_output.stderr.log", "stderr_tail": "", "rx_only": true, "safety": { "tx": false, "ptt": false, "tune": false, "send": false, "js8call_runtime_control": false }, "next_action": "Step 32 timeout guard stopped this expensive probe. The real-run now continues with quick-window fallback when available; otherwise inspect stderr/log bundle." } [webftr-js8-lab] FAILED exit_code=143 [webftr-js8-lab] log file: /decoders/js8_decoder/logs/20260526T115158Z_frame-recover.log [webftr-js8-lab] manifest: /decoders/js8_decoder/logs/20260526T115158Z_frame-recover_manifest.json