[webftr-js8-lab] command=ldpc-matrix-probe [webftr-js8-lab] root=/decoders/js8_decoder [webftr-js8-lab] log=/decoders/js8_decoder/logs/20260526T115758Z_ldpc-matrix-probe.log [webftr-js8-lab] manifest=/decoders/js8_decoder/logs/20260526T115758Z_ldpc-matrix-probe_manifest.json [webftr-js8-lab] utc=20260526T115758Z [webftr-js8-lab] rx-only guard: no TX / no PTT / no Tune / no Send [webftr-js8-lab] JSON output: /decoders/js8_decoder/logs/20260526T115758Z_ldpc_matrix_probe_output.json [webftr-js8-lab] JSON timeout guard: 180s { "ok": true, "mode": "JS8", "tool": "webftr-js8-real-ldpc-matrix-syndrome-probe", "tool_version": "step32-anchored-candidate-fast-export-guard", "input_wav": null, "candidate_json": "/decoders/js8_decoder/runtime/fec_candidates/js8_quick_selected_window_fec_candidate_step17.json", "rx_only": true, "safety": { "tx": false, "ptt": false, "tune": false, "send": false, "js8call_runtime_control": false }, "implementation_stage": "step19_real_ldpc_generator_matrix_syndrome_probe_no_message_unpack", "matrix": { "code": "(174,91) LDPC generator matrix", "generator_rows": 83, "generator_cols": 91, "message_bits": 91, "parity_bits": 83, "source_file": "ldpc_174_91_c_generator.f90" }, "candidate_context": { "nsps_used": 6192, "nsps_is_js8_realistic": true, "selected_profile": {}, "selected_variant": { "name": "raw_msb_symbol_order", "rank_score": 127.389188, "complete_174bit_candidate": true, "hard_bits_sha256_16": "aa237514554a5da8", "hard_weight_174": 42, "llr_stats": { "count": 174, "avg_abs": 2.347297, "min_abs": 0.029594, "max_abs": 4.31172, "positive": 133, "negative": 41, "zero": 0 } } }, "variant_probe_count": 20, "best_matrix_probe": { "variant": "raw_msb_symbol_order", "transform": "reverse_codeword", "hard_weight_174": 42, "llr_avg_abs": 2.3472972758620685, "syndrome": { "bits_len": 174, "message91": "1010100010100001001010100001000100000101000000000000000000101000000000101000100000101011000", "parity83_observed": "00100100010010110110000010010010000000000000000000000000100101000000000000101101101", "parity83_expected": "11001001001010110100001110001011111110011011010011011100111011000101101111100101001", "syndrome83": "11101101011000000010001100011001111110011011010011011100011110000101101111001000100", "syndrome_weight": 42, "valid_codeword_hard_decision": false, "message91_sha256_16": "5886f6ba6ff97dcc", "codeword174_sha256_16": "586874e4d556ff00" }, "repair": { "attempted": true, "flip_count": 7, "repair_success": false, "final_syndrome_weight": 21, "trace": [ { "flip_index": 34, "llr_abs": 0.830568, "gain": 15, "syndrome_weight_after": 27 }, { "flip_index": 151, "llr_abs": 0.04658, "gain": 1, "syndrome_weight_after": 26 }, { "flip_index": 96, "llr_abs": 0.100571, "gain": 1, "syndrome_weight_after": 25 }, { "flip_index": 106, "llr_abs": 0.643602, "gain": 1, "syndrome_weight_after": 24 }, { "flip_index": 125, "llr_abs": 0.96535, "gain": 1, "syndrome_weight_after": 23 }, { "flip_index": 108, "llr_abs": 1.11363, "gain": 1, "syndrome_weight_after": 22 }, { "flip_index": 162, "llr_abs": 1.164758, "gain": 1, "syndrome_weight_after": 21 } ], "repaired_message91_sha256_16": "ec0dca697e9b6b75" } }, "all_matrix_probes": [ { "variant": "raw_msb_symbol_order", "transform": "reverse_codeword", "hard_weight_174": 42, "llr_avg_abs": 2.3472972758620685, "syndrome": { "bits_len": 174, "message91": "1010100010100001001010100001000100000101000000000000000000101000000000101000100000101011000", "parity83_observed": "00100100010010110110000010010010000000000000000000000000100101000000000000101101101", "parity83_expected": "11001001001010110100001110001011111110011011010011011100111011000101101111100101001", "syndrome83": "11101101011000000010001100011001111110011011010011011100011110000101101111001000100", "syndrome_weight": 42, "valid_codeword_hard_decision": false, "message91_sha256_16": "5886f6ba6ff97dcc", "codeword174_sha256_16": "586874e4d556ff00" }, "repair": { "attempted": true, "flip_count": 7, "repair_success": false, "final_syndrome_weight": 21, "trace": [ { "flip_index": 34, "llr_abs": 0.830568, "gain": 15, "syndrome_weight_after": 27 }, { "flip_index": 151, "llr_abs": 0.04658, "gain": 1, "syndrome_weight_after": 26 }, { "flip_index": 96, "llr_abs": 0.100571, "gain": 1, "syndrome_weight_after": 25 }, { "flip_index": 106, "llr_abs": 0.643602, "gain": 1, "syndrome_weight_after": 24 }, { "flip_index": 125, "llr_abs": 0.96535, "gain": 1, "syndrome_weight_after": 23 }, { "flip_index": 108, "llr_abs": 1.11363, "gain": 1, "syndrome_weight_after": 22 }, { "flip_index": 162, "llr_abs": 1.164758, "gain": 1, "syndrome_weight_after": 21 } ], "repaired_message91_sha256_16": "ec0dca697e9b6b75" } }, { "variant": "reverse_full_bitstream", "transform": "as_exported", "hard_weight_174": 42, "llr_avg_abs": 2.3472972758620685, "syndrome": { "bits_len": 174, "message91": "1010100010100001001010100001000100000101000000000000000000101000000000101000100000101011000", "parity83_observed": "00100100010010110110000010010010000000000000000000000000100101000000000000101101101", "parity83_expected": "11001001001010110100001110001011111110011011010011011100111011000101101111100101001", "syndrome83": "11101101011000000010001100011001111110011011010011011100011110000101101111001000100", "syndrome_weight": 42, "valid_codeword_hard_decision": false, "message91_sha256_16": "5886f6ba6ff97dcc", "codeword174_sha256_16": "586874e4d556ff00" }, "repair": { "attempted": true, "flip_count": 7, "repair_success": false, "final_syndrome_weight": 21, "trace": [ { "flip_index": 34, "llr_abs": 0.830568, "gain": 15, "syndrome_weight_after": 27 }, { "flip_index": 151, "llr_abs": 0.04658, "gain": 1, "syndrome_weight_after": 26 }, { "flip_index": 96, "llr_abs": 0.100571, "gain": 1, "syndrome_weight_after": 25 }, { "flip_index": 106, "llr_abs": 0.643602, "gain": 1, "syndrome_weight_after": 24 }, { "flip_index": 125, "llr_abs": 0.96535, "gain": 1, "syndrome_weight_after": 23 }, { "flip_index": 108, "llr_abs": 1.11363, "gain": 1, "syndrome_weight_after": 22 }, { "flip_index": 162, "llr_abs": 1.164758, "gain": 1, "syndrome_weight_after": 21 } ], "repaired_message91_sha256_16": "ec0dca697e9b6b75" } }, { "variant": "raw_msb_symbol_order", "transform": "as_exported", "hard_weight_174": 42, "llr_avg_abs": 2.3472972758620694, "syndrome": { "bits_len": 174, "message91": "1011011010000000000001010010000000000000000000000000100100100000110110100100010010000011010", "parity83_observed": "10000010001010000000001010000000000000000001010000010001000010101001000010100010101", "parity83_expected": "00011111010111011100010011000111011010110110011110110100101101001010100011101101011", "syndrome83": "10011101011101011100011001000111011010110111001110100101101111100011100001001111110", "syndrome_weight": 48, "valid_codeword_hard_decision": false, "message91_sha256_16": "7be631281b81e799", "codeword174_sha256_16": "aa237514554a5da8" }, "repair": { "attempted": true, "flip_count": 7, "repair_success": false, "final_syndrome_weight": 21, "trace": [ { "flip_index": 77, "llr_abs": 0.100571, "gain": 21, "syndrome_weight_after": 27 }, { "flip_index": 136, "llr_abs": 0.198239, "gain": 1, "syndrome_weight_after": 26 }, { "flip_index": 166, "llr_abs": 0.513912, "gain": 1, "syndrome_weight_after": 25 }, { "flip_index": 155, "llr_abs": 0.525517, "gain": 1, "syndrome_weight_after": 24 }, { "flip_index": 148, "llr_abs": 0.629658, "gain": 1, "syndrome_weight_after": 23 }, { "flip_index": 134, "llr_abs": 1.080448, "gain": 1, "syndrome_weight_after": 22 }, { "flip_index": 132, "llr_abs": 1.184399, "gain": 1, "syndrome_weight_after": 21 } ], "repaired_message91_sha256_16": "bfdfff2107db5207" } }, { "variant": "reverse_full_bitstream", "transform": "reverse_codeword", "hard_weight_174": 42, "llr_avg_abs": 2.3472972758620694, "syndrome": { "bits_len": 174, "message91": "1011011010000000000001010010000000000000000000000000100100100000110110100100010010000011010", "parity83_observed": "10000010001010000000001010000000000000000001010000010001000010101001000010100010101", "parity83_expected": "00011111010111011100010011000111011010110110011110110100101101001010100011101101011", "syndrome83": "10011101011101011100011001000111011010110111001110100101101111100011100001001111110", "syndrome_weight": 48, "valid_codeword_hard_decision": false, "message91_sha256_16": "7be631281b81e799", "codeword174_sha256_16": "aa237514554a5da8" }, "repair": { "attempted": true, "flip_count": 7, "repair_success": false, "final_syndrome_weight": 21, "trace": [ { "flip_index": 77, "llr_abs": 0.100571, "gain": 21, "syndrome_weight_after": 27 }, { "flip_index": 136, "llr_abs": 0.198239, "gain": 1, "syndrome_weight_after": 26 }, { "flip_index": 166, "llr_abs": 0.513912, "gain": 1, "syndrome_weight_after": 25 }, { "flip_index": 155, "llr_abs": 0.525517, "gain": 1, "syndrome_weight_after": 24 }, { "flip_index": 148, "llr_abs": 0.629658, "gain": 1, "syndrome_weight_after": 23 }, { "flip_index": 134, "llr_abs": 1.080448, "gain": 1, "syndrome_weight_after": 22 }, { "flip_index": 132, "llr_abs": 1.184399, "gain": 1, "syndrome_weight_after": 21 } ], "repaired_message91_sha256_16": "bfdfff2107db5207" } }, { "variant": "lsb_within_each_tone", "transform": "inverted_bits", "hard_weight_174": 132, "llr_avg_abs": 2.3472972758620694, "syndrome": { "bits_len": 174, "message91": "0100100101111111111110100111111111111111111111111111011011011110010011011010110111110110101", "parity83_observed": "01111101011101111111011101111111111111111011101111101011111101010011111101110101010", "parity83_expected": "01010101111101100101111101010110101000110000001010110111011010101101111100000101110", "syndrome83": "00101000100000011010100000101001010111001011100101011100100111111110000001110000100", "syndrome_weight": 36, "valid_codeword_hard_decision": false, "message91_sha256_16": "0b3495d4dcb58729", "codeword174_sha256_16": "512dbb8b5d661851" }, "repair": { "attempted": true, "flip_count": 10, "repair_success": false, "final_syndrome_weight": 22, "trace": [ { "flip_index": 80, "llr_abs": 0.186626, "gain": 1, "syndrome_weight_after": 35 }, { "flip_index": 23, "llr_abs": 0.368908, "gain": 5, "syndrome_weight_after": 30 }, { "flip_index": 149, "llr_abs": 0.203427, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 167, "llr_abs": 0.447295, "gain": 1, "syndrome_weight_after": 28 }, { "flip_index": 153, "llr_abs": 0.45403, "gain": 1, "syndrome_weight_after": 27 }, { "flip_index": 155, "llr_abs": 0.525517, "gain": 1, "syndrome_weight_after": 26 }, { "flip_index": 141, "llr_abs": 0.580772, "gain": 1, "syndrome_weight_after": 25 }, { "flip_index": 148, "llr_abs": 0.629658, "gain": 1, "syndrome_weight_after": 24 }, { "flip_index": 146, "llr_abs": 0.690814, "gain": 1, "syndrome_weight_after": 23 }, { "flip_index": 134, "llr_abs": 1.080448, "gain": 1, "syndrome_weight_after": 22 } ], "repaired_message91_sha256_16": "1e0f0b3594694a28" } }, { "variant": "reverse_symbol_order", "transform": "reverse_inverted_codeword", "hard_weight_174": 132, "llr_avg_abs": 2.3472972758620694, "syndrome": { "bits_len": 174, "message91": "0100100101111111111110100111111111111111111111111111011011011110010011011010110111110110101", "parity83_observed": "01111101011101111111011101111111111111111011101111101011111101010011111101110101010", "parity83_expected": "01010101111101100101111101010110101000110000001010110111011010101101111100000101110", "syndrome83": "00101000100000011010100000101001010111001011100101011100100111111110000001110000100", "syndrome_weight": 36, "valid_codeword_hard_decision": false, "message91_sha256_16": "0b3495d4dcb58729", "codeword174_sha256_16": "512dbb8b5d661851" }, "repair": { "attempted": true, "flip_count": 10, "repair_success": false, "final_syndrome_weight": 22, "trace": [ { "flip_index": 80, "llr_abs": 0.186626, "gain": 1, "syndrome_weight_after": 35 }, { "flip_index": 23, "llr_abs": 0.368908, "gain": 5, "syndrome_weight_after": 30 }, { "flip_index": 149, "llr_abs": 0.203427, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 167, "llr_abs": 0.447295, "gain": 1, "syndrome_weight_after": 28 }, { "flip_index": 153, "llr_abs": 0.45403, "gain": 1, "syndrome_weight_after": 27 }, { "flip_index": 155, "llr_abs": 0.525517, "gain": 1, "syndrome_weight_after": 26 }, { "flip_index": 141, "llr_abs": 0.580772, "gain": 1, "syndrome_weight_after": 25 }, { "flip_index": 148, "llr_abs": 0.629658, "gain": 1, "syndrome_weight_after": 24 }, { "flip_index": 146, "llr_abs": 0.690814, "gain": 1, "syndrome_weight_after": 23 }, { "flip_index": 134, "llr_abs": 1.080448, "gain": 1, "syndrome_weight_after": 22 } ], "repaired_message91_sha256_16": "1e0f0b3594694a28" } }, { "variant": "lab_mask_xor_preview", "transform": "inverted_bits", "hard_weight_174": 93, "llr_avg_abs": 2.3472972758620694, "syndrome": { "bits_len": 174, "message91": "1100101001001010110000110011001011110101010000010110001010110001000110100011110000000101110", "parity83_observed": "01011001110111110110010111000101001001111101100010111101011010111011111111110110101", "parity83_expected": "10010001011000110111001100011000101000001101010110010011001111011000010001010100100", "syndrome83": "11001000101111000001011011011101100001110000110100101110010101100011101110100010001", "syndrome_weight": 41, "valid_codeword_hard_decision": false, "message91_sha256_16": "1aad5d6d63b42d8b", "codeword174_sha256_16": "054a46b20bbe2b17" }, "repair": { "attempted": true, "flip_count": 9, "repair_success": false, "final_syndrome_weight": 24, "trace": [ { "flip_index": 46, "llr_abs": 0.652631, "gain": 7, "syndrome_weight_after": 34 }, { "flip_index": 47, "llr_abs": 0.838993, "gain": 3, "syndrome_weight_after": 31 }, { "flip_index": 165, "llr_abs": 0.394664, "gain": 1, "syndrome_weight_after": 30 }, { "flip_index": 167, "llr_abs": 0.447295, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 141, "llr_abs": 0.580772, "gain": 1, "syndrome_weight_after": 28 }, { "flip_index": 148, "llr_abs": 0.629658, "gain": 1, "syndrome_weight_after": 27 }, { "flip_index": 146, "llr_abs": 0.690814, "gain": 1, "syndrome_weight_after": 26 }, { "flip_index": 139, "llr_abs": 0.830568, "gain": 1, "syndrome_weight_after": 25 }, { "flip_index": 107, "llr_abs": 1.052726, "gain": 1, "syndrome_weight_after": 24 } ], "repaired_message91_sha256_16": "8e3b236f4e98152d" } }, { "variant": "raw_msb_symbol_order", "transform": "inverted_bits", "hard_weight_174": 132, "llr_avg_abs": 2.3472972758620694, "syndrome": { "bits_len": 174, "message91": "0100100101111111111110101101111111111111111111111111011011011111001001011011101101111100101", "parity83_observed": "01111101110101111111110101111111111111111110101111101110111101010110111101011101010", "parity83_expected": "00011011011001001100100110101001001111000100001011000000101111100001110000101110101", "syndrome83": "01100110101100110011010011010110110000111010100100101110010010110111001101110011111", "syndrome_weight": 46, "valid_codeword_hard_decision": false, "message91_sha256_16": "086185897eaaa973", "codeword174_sha256_16": "803233917e711d93" }, "repair": { "attempted": true, "flip_count": 8, "repair_success": false, "final_syndrome_weight": 24, "trace": [ { "flip_index": 46, "llr_abs": 0.652631, "gain": 13, "syndrome_weight_after": 33 }, { "flip_index": 65, "llr_abs": 1.11363, "gain": 3, "syndrome_weight_after": 30 }, { "flip_index": 167, "llr_abs": 0.447295, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 155, "llr_abs": 0.525517, "gain": 1, "syndrome_weight_after": 28 }, { "flip_index": 139, "llr_abs": 0.830568, "gain": 1, "syndrome_weight_after": 27 }, { "flip_index": 107, "llr_abs": 1.052726, "gain": 1, "syndrome_weight_after": 26 }, { "flip_index": 134, "llr_abs": 1.080448, "gain": 1, "syndrome_weight_after": 25 }, { "flip_index": 132, "llr_abs": 1.184399, "gain": 1, "syndrome_weight_after": 24 } ], "repaired_message91_sha256_16": "3ea5a73cab31524f" } }, { "variant": "reverse_full_bitstream", "transform": "reverse_inverted_codeword", "hard_weight_174": 132, "llr_avg_abs": 2.3472972758620694, "syndrome": { "bits_len": 174, "message91": "0100100101111111111110101101111111111111111111111111011011011111001001011011101101111100101", "parity83_observed": "01111101110101111111110101111111111111111110101111101110111101010110111101011101010", "parity83_expected": "00011011011001001100100110101001001111000100001011000000101111100001110000101110101", "syndrome83": "01100110101100110011010011010110110000111010100100101110010010110111001101110011111", "syndrome_weight": 46, "valid_codeword_hard_decision": false, "message91_sha256_16": "086185897eaaa973", "codeword174_sha256_16": "803233917e711d93" }, "repair": { "attempted": true, "flip_count": 8, "repair_success": false, "final_syndrome_weight": 24, "trace": [ { "flip_index": 46, "llr_abs": 0.652631, "gain": 13, "syndrome_weight_after": 33 }, { "flip_index": 65, "llr_abs": 1.11363, "gain": 3, "syndrome_weight_after": 30 }, { "flip_index": 167, "llr_abs": 0.447295, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 155, "llr_abs": 0.525517, "gain": 1, "syndrome_weight_after": 28 }, { "flip_index": 139, "llr_abs": 0.830568, "gain": 1, "syndrome_weight_after": 27 }, { "flip_index": 107, "llr_abs": 1.052726, "gain": 1, "syndrome_weight_after": 26 }, { "flip_index": 134, "llr_abs": 1.080448, "gain": 1, "syndrome_weight_after": 25 }, { "flip_index": 132, "llr_abs": 1.184399, "gain": 1, "syndrome_weight_after": 24 } ], "repaired_message91_sha256_16": "3ea5a73cab31524f" } }, { "variant": "raw_msb_symbol_order", "transform": "reverse_inverted_codeword", "hard_weight_174": 132, "llr_avg_abs": 2.3472972758620685, "syndrome": { "bits_len": 174, "message91": "0101011101011110110101011110111011111010111111111111111111010111111111010111011111010100111", "parity83_observed": "11011011101101001001111101101101111111111111111111111111011010111111111111010010010", "parity83_expected": "11001101000100100100111011100101101011101001000110101000111001101110111100100110111", "syndrome83": "00010110101001101101000110001000010100010110111001010111100011010001000011110100101", "syndrome_weight": 38, "valid_codeword_hard_decision": false, "message91_sha256_16": "962a747fc020f616", "codeword174_sha256_16": "acf36ad6bb9a74a2" }, "repair": { "attempted": true, "flip_count": 8, "repair_success": false, "final_syndrome_weight": 26, "trace": [ { "flip_index": 8, "llr_abs": 0.394664, "gain": 3, "syndrome_weight_after": 35 }, { "flip_index": 24, "llr_abs": 0.203427, "gain": 3, "syndrome_weight_after": 32 }, { "flip_index": 167, "llr_abs": 0.029594, "gain": 1, "syndrome_weight_after": 31 }, { "flip_index": 163, "llr_abs": 0.061966, "gain": 1, "syndrome_weight_after": 30 }, { "flip_index": 152, "llr_abs": 0.383479, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 106, "llr_abs": 0.643602, "gain": 1, "syndrome_weight_after": 28 }, { "flip_index": 166, "llr_abs": 0.699307, "gain": 1, "syndrome_weight_after": 27 }, { "flip_index": 126, "llr_abs": 0.838993, "gain": 1, "syndrome_weight_after": 26 } ], "repaired_message91_sha256_16": "847658d5e222e04b" } }, { "variant": "reverse_full_bitstream", "transform": "inverted_bits", "hard_weight_174": 132, "llr_avg_abs": 2.3472972758620685, "syndrome": { "bits_len": 174, "message91": "0101011101011110110101011110111011111010111111111111111111010111111111010111011111010100111", "parity83_observed": "11011011101101001001111101101101111111111111111111111111011010111111111111010010010", "parity83_expected": "11001101000100100100111011100101101011101001000110101000111001101110111100100110111", "syndrome83": "00010110101001101101000110001000010100010110111001010111100011010001000011110100101", "syndrome_weight": 38, "valid_codeword_hard_decision": false, "message91_sha256_16": "962a747fc020f616", "codeword174_sha256_16": "acf36ad6bb9a74a2" }, "repair": { "attempted": true, "flip_count": 8, "repair_success": false, "final_syndrome_weight": 26, "trace": [ { "flip_index": 8, "llr_abs": 0.394664, "gain": 3, "syndrome_weight_after": 35 }, { "flip_index": 24, "llr_abs": 0.203427, "gain": 3, "syndrome_weight_after": 32 }, { "flip_index": 167, "llr_abs": 0.029594, "gain": 1, "syndrome_weight_after": 31 }, { "flip_index": 163, "llr_abs": 0.061966, "gain": 1, "syndrome_weight_after": 30 }, { "flip_index": 152, "llr_abs": 0.383479, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 106, "llr_abs": 0.643602, "gain": 1, "syndrome_weight_after": 28 }, { "flip_index": 166, "llr_abs": 0.699307, "gain": 1, "syndrome_weight_after": 27 }, { "flip_index": 126, "llr_abs": 0.838993, "gain": 1, "syndrome_weight_after": 26 } ], "repaired_message91_sha256_16": "847658d5e222e04b" } }, { "variant": "lsb_within_each_tone", "transform": "reverse_codeword", "hard_weight_174": 42, "llr_avg_abs": 2.3472972758620685, "syndrome": { "bits_len": 174, "message91": "1010101000100000011010100000010100000100010000000000000000100010000000100010100000101010010", "parity83_observed": "00001001010010011011000010010010000000000000000000000000001101000000000000101101101", "parity83_expected": "00010100010100010111101000101110101100110001011010101101000111011010011101000101010", "syndrome83": "00011101000110001100101010111100101100110001011010101101001010011010011101101000111", "syndrome_weight": 42, "valid_codeword_hard_decision": false, "message91_sha256_16": "108d67968226618d", "codeword174_sha256_16": "e0aaca7eeb47fb42" }, "repair": { "attempted": true, "flip_count": 10, "repair_success": false, "final_syndrome_weight": 26, "trace": [ { "flip_index": 41, "llr_abs": 1.184399, "gain": 7, "syndrome_weight_after": 35 }, { "flip_index": 167, "llr_abs": 0.029594, "gain": 1, "syndrome_weight_after": 34 }, { "flip_index": 96, "llr_abs": 0.100571, "gain": 1, "syndrome_weight_after": 33 }, { "flip_index": 170, "llr_abs": 0.360653, "gain": 1, "syndrome_weight_after": 32 }, { "flip_index": 150, "llr_abs": 0.368908, "gain": 1, "syndrome_weight_after": 31 }, { "flip_index": 152, "llr_abs": 0.383479, "gain": 1, "syndrome_weight_after": 30 }, { "flip_index": 127, "llr_abs": 0.652631, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 166, "llr_abs": 0.699307, "gain": 1, "syndrome_weight_after": 28 }, { "flip_index": 125, "llr_abs": 0.96535, "gain": 1, "syndrome_weight_after": 27 }, { "flip_index": 162, "llr_abs": 1.164758, "gain": 1, "syndrome_weight_after": 26 } ], "repaired_message91_sha256_16": "c56bffb67c82f3ae" } }, { "variant": "reverse_symbol_order", "transform": "as_exported", "hard_weight_174": 42, "llr_avg_abs": 2.3472972758620685, "syndrome": { "bits_len": 174, "message91": "1010101000100000011010100000010100000100010000000000000000100010000000100010100000101010010", "parity83_observed": "00001001010010011011000010010010000000000000000000000000001101000000000000101101101", "parity83_expected": "00010100010100010111101000101110101100110001011010101101000111011010011101000101010", "syndrome83": "00011101000110001100101010111100101100110001011010101101001010011010011101101000111", "syndrome_weight": 42, "valid_codeword_hard_decision": false, "message91_sha256_16": "108d67968226618d", "codeword174_sha256_16": "e0aaca7eeb47fb42" }, "repair": { "attempted": true, "flip_count": 10, "repair_success": false, "final_syndrome_weight": 26, "trace": [ { "flip_index": 41, "llr_abs": 1.184399, "gain": 7, "syndrome_weight_after": 35 }, { "flip_index": 167, "llr_abs": 0.029594, "gain": 1, "syndrome_weight_after": 34 }, { "flip_index": 96, "llr_abs": 0.100571, "gain": 1, "syndrome_weight_after": 33 }, { "flip_index": 170, "llr_abs": 0.360653, "gain": 1, "syndrome_weight_after": 32 }, { "flip_index": 150, "llr_abs": 0.368908, "gain": 1, "syndrome_weight_after": 31 }, { "flip_index": 152, "llr_abs": 0.383479, "gain": 1, "syndrome_weight_after": 30 }, { "flip_index": 127, "llr_abs": 0.652631, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 166, "llr_abs": 0.699307, "gain": 1, "syndrome_weight_after": 28 }, { "flip_index": 125, "llr_abs": 0.96535, "gain": 1, "syndrome_weight_after": 27 }, { "flip_index": 162, "llr_abs": 1.164758, "gain": 1, "syndrome_weight_after": 26 } ], "repaired_message91_sha256_16": "c56bffb67c82f3ae" } }, { "variant": "lab_mask_xor_preview", "transform": "as_exported", "hard_weight_174": 81, "llr_avg_abs": 2.3472972758620694, "syndrome": { "bits_len": 174, "message91": "0011010110110101001111001100110100001010101111101001110101001110111001011100001111111010001", "parity83_observed": "10100110001000001001101000111010110110000010011101000010100101000100000000001001010", "parity83_expected": "10010101010110100111111001110110111101111111000011100111001101110011000010010111010", "syndrome83": "00110011011110101110010001001100001011111101011110100101101000110111000010011110000", "syndrome_weight": 43, "valid_codeword_hard_decision": false, "message91_sha256_16": "a7a485e3eb4e4d1f", "codeword174_sha256_16": "8760e03bd72092c3" }, "repair": { "attempted": true, "flip_count": 5, "repair_success": false, "final_syndrome_weight": 26, "trace": [ { "flip_index": 77, "llr_abs": 0.100571, "gain": 13, "syndrome_weight_after": 30 }, { "flip_index": 155, "llr_abs": 0.525517, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 148, "llr_abs": 0.629658, "gain": 1, "syndrome_weight_after": 28 }, { "flip_index": 134, "llr_abs": 1.080448, "gain": 1, "syndrome_weight_after": 27 }, { "flip_index": 132, "llr_abs": 1.184399, "gain": 1, "syndrome_weight_after": 26 } ], "repaired_message91_sha256_16": "65bdfe8aac0da563" } }, { "variant": "lsb_within_each_tone", "transform": "reverse_inverted_codeword", "hard_weight_174": 132, "llr_avg_abs": 2.3472972758620685, "syndrome": { "bits_len": 174, "message91": "0101010111011111100101011111101011111011101111111111111111011101111111011101011111010101101", "parity83_observed": "11110110101101100100111101101101111111111111111111111111110010111111111111010010010", "parity83_expected": "00010000011010000111011101000000111001000011001111011001000101110001001110000110100", "syndrome83": "11100110110111100011100000101101000110111100110000100110110111001110110001010100110", "syndrome_weight": 44, "valid_codeword_hard_decision": false, "message91_sha256_16": "3ebff23a7a34d22c", "codeword174_sha256_16": "7b4ef0e51dd6fda1" }, "repair": { "attempted": true, "flip_count": 6, "repair_success": false, "final_syndrome_weight": 26, "trace": [ { "flip_index": 36, "llr_abs": 0.246935, "gain": 13, "syndrome_weight_after": 31 }, { "flip_index": 167, "llr_abs": 0.029594, "gain": 1, "syndrome_weight_after": 30 }, { "flip_index": 151, "llr_abs": 0.04658, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 106, "llr_abs": 0.643602, "gain": 1, "syndrome_weight_after": 28 }, { "flip_index": 126, "llr_abs": 0.838993, "gain": 1, "syndrome_weight_after": 27 }, { "flip_index": 125, "llr_abs": 0.96535, "gain": 1, "syndrome_weight_after": 26 } ], "repaired_message91_sha256_16": "66772c5492e1b0c6" } }, { "variant": "reverse_symbol_order", "transform": "inverted_bits", "hard_weight_174": 132, "llr_avg_abs": 2.3472972758620685, "syndrome": { "bits_len": 174, "message91": "0101010111011111100101011111101011111011101111111111111111011101111111011101011111010101101", "parity83_observed": "11110110101101100100111101101101111111111111111111111111110010111111111111010010010", "parity83_expected": "00010000011010000111011101000000111001000011001111011001000101110001001110000110100", "syndrome83": "11100110110111100011100000101101000110111100110000100110110111001110110001010100110", "syndrome_weight": 44, "valid_codeword_hard_decision": false, "message91_sha256_16": "3ebff23a7a34d22c", "codeword174_sha256_16": "7b4ef0e51dd6fda1" }, "repair": { "attempted": true, "flip_count": 6, "repair_success": false, "final_syndrome_weight": 26, "trace": [ { "flip_index": 36, "llr_abs": 0.246935, "gain": 13, "syndrome_weight_after": 31 }, { "flip_index": 167, "llr_abs": 0.029594, "gain": 1, "syndrome_weight_after": 30 }, { "flip_index": 151, "llr_abs": 0.04658, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 106, "llr_abs": 0.643602, "gain": 1, "syndrome_weight_after": 28 }, { "flip_index": 126, "llr_abs": 0.838993, "gain": 1, "syndrome_weight_after": 27 }, { "flip_index": 125, "llr_abs": 0.96535, "gain": 1, "syndrome_weight_after": 26 } ], "repaired_message91_sha256_16": "66772c5492e1b0c6" } }, { "variant": "lab_mask_xor_preview", "transform": "reverse_inverted_codeword", "hard_weight_174": 93, "llr_avg_abs": 2.3472972758620685, "syndrome": { "bits_len": 174, "message91": "1010110111111111101110101101011110100011011111001001010001110100110111110111001101001110100", "parity83_observed": "00000111100010110001000110101000110100000101010111101001100110000110101001001010011", "parity83_expected": "01001111101000111001101111100110001110101011010101110111001011011110011010001001100", "syndrome83": "01001000001010001000101001001110111010101110000010011110101101011000110011000011111", "syndrome_weight": 39, "valid_codeword_hard_decision": false, "message91_sha256_16": "166a79d9abfb4e53", "codeword174_sha256_16": "c0f0181e32499067" }, "repair": { "attempted": true, "flip_count": 7, "repair_success": false, "final_syndrome_weight": 28, "trace": [ { "flip_index": 8, "llr_abs": 0.394664, "gain": 5, "syndrome_weight_after": 34 }, { "flip_index": 167, "llr_abs": 0.029594, "gain": 1, "syndrome_weight_after": 33 }, { "flip_index": 151, "llr_abs": 0.04658, "gain": 1, "syndrome_weight_after": 32 }, { "flip_index": 165, "llr_abs": 0.217716, "gain": 1, "syndrome_weight_after": 31 }, { "flip_index": 126, "llr_abs": 0.838993, "gain": 1, "syndrome_weight_after": 30 }, { "flip_index": 125, "llr_abs": 0.96535, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 108, "llr_abs": 1.11363, "gain": 1, "syndrome_weight_after": 28 } ], "repaired_message91_sha256_16": "3ac3a1896f063d5c" } }, { "variant": "lsb_within_each_tone", "transform": "as_exported", "hard_weight_174": 42, "llr_avg_abs": 2.3472972758620694, "syndrome": { "bits_len": 174, "message91": "1011011010000000000001011000000000000000000000000000100100100001101100100101001000001001010", "parity83_observed": "10000010100010000000100010000000000000000100010000010100000010101100000010001010101", "parity83_expected": "01010001110011110101001000111000111101000010011111000011011000000110101111000110000", "syndrome83": "11010011010001110101101010111000111101000110001111010111011010101010101101001100101", "syndrome_weight": 46, "valid_codeword_hard_decision": false, "message91_sha256_16": "955c77d80df1fcb9", "codeword174_sha256_16": "c9eebc015cbfc7d5" }, "repair": { "attempted": true, "flip_count": 8, "repair_success": false, "final_syndrome_weight": 28, "trace": [ { "flip_index": 6, "llr_abs": 0.029594, "gain": 11, "syndrome_weight_after": 35 }, { "flip_index": 137, "llr_abs": 0.246935, "gain": 1, "syndrome_weight_after": 34 }, { "flip_index": 143, "llr_abs": 0.288153, "gain": 1, "syndrome_weight_after": 33 }, { "flip_index": 153, "llr_abs": 0.45403, "gain": 1, "syndrome_weight_after": 32 }, { "flip_index": 142, "llr_abs": 0.496341, "gain": 1, "syndrome_weight_after": 31 }, { "flip_index": 148, "llr_abs": 0.629658, "gain": 1, "syndrome_weight_after": 30 }, { "flip_index": 134, "llr_abs": 1.080448, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 132, "llr_abs": 1.184399, "gain": 1, "syndrome_weight_after": 28 } ], "repaired_message91_sha256_16": "74cab80ed66254c9" } }, { "variant": "reverse_symbol_order", "transform": "reverse_codeword", "hard_weight_174": 42, "llr_avg_abs": 2.3472972758620694, "syndrome": { "bits_len": 174, "message91": "1011011010000000000001011000000000000000000000000000100100100001101100100101001000001001010", "parity83_observed": "10000010100010000000100010000000000000000100010000010100000010101100000010001010101", "parity83_expected": "01010001110011110101001000111000111101000010011111000011011000000110101111000110000", "syndrome83": "11010011010001110101101010111000111101000110001111010111011010101010101101001100101", "syndrome_weight": 46, "valid_codeword_hard_decision": false, "message91_sha256_16": "955c77d80df1fcb9", "codeword174_sha256_16": "c9eebc015cbfc7d5" }, "repair": { "attempted": true, "flip_count": 8, "repair_success": false, "final_syndrome_weight": 28, "trace": [ { "flip_index": 6, "llr_abs": 0.029594, "gain": 11, "syndrome_weight_after": 35 }, { "flip_index": 137, "llr_abs": 0.246935, "gain": 1, "syndrome_weight_after": 34 }, { "flip_index": 143, "llr_abs": 0.288153, "gain": 1, "syndrome_weight_after": 33 }, { "flip_index": 153, "llr_abs": 0.45403, "gain": 1, "syndrome_weight_after": 32 }, { "flip_index": 142, "llr_abs": 0.496341, "gain": 1, "syndrome_weight_after": 31 }, { "flip_index": 148, "llr_abs": 0.629658, "gain": 1, "syndrome_weight_after": 30 }, { "flip_index": 134, "llr_abs": 1.080448, "gain": 1, "syndrome_weight_after": 29 }, { "flip_index": 132, "llr_abs": 1.184399, "gain": 1, "syndrome_weight_after": 28 } ], "repaired_message91_sha256_16": "74cab80ed66254c9" } }, { "variant": "lab_mask_xor_preview", "transform": "reverse_codeword", "hard_weight_174": 81, "llr_avg_abs": 2.3472972758620685, "syndrome": { "bits_len": 174, "message91": "0101001000000000010001010010100001011100100000110110101110001011001000001000110010110001011", "parity83_observed": "11111000011101001110111001010111001011111010101000010110011001111001010110110101100", "parity83_expected": "01001011100110101001011010001000011011011001000000000011001001110101001001001010010", "syndrome83": "10110011111011100111100011011111010000100011101000010101010000001100011111111111110", "syndrome_weight": 47, "valid_codeword_hard_decision": false, "message91_sha256_16": "3767412c437ee071", "codeword174_sha256_16": "2dbdc32b125cc762" }, "repair": { "attempted": true, "flip_count": 8, "repair_success": false, "final_syndrome_weight": 29, "trace": [ { "flip_index": 20, "llr_abs": 0.45403, "gain": 11, "syndrome_weight_after": 36 }, { "flip_index": 167, "llr_abs": 0.029594, "gain": 1, "syndrome_weight_after": 35 }, { "flip_index": 96, "llr_abs": 0.100571, "gain": 1, "syndrome_weight_after": 34 }, { "flip_index": 150, "llr_abs": 0.368908, "gain": 1, "syndrome_weight_after": 33 }, { "flip_index": 152, "llr_abs": 0.383479, "gain": 1, "syndrome_weight_after": 32 }, { "flip_index": 127, "llr_abs": 0.652631, "gain": 1, "syndrome_weight_after": 31 }, { "flip_index": 166, "llr_abs": 0.699307, "gain": 1, "syndrome_weight_after": 30 }, { "flip_index": 125, "llr_abs": 0.96535, "gain": 1, "syndrome_weight_after": 29 } ], "repaired_message91_sha256_16": "d1606d6c8a9256ef" } } ], "decodes": [], "outputs": { "ldpc_matrix_probe_json": "/decoders/js8_decoder/runtime/ldpc_matrix_probe/step19_ldpc_matrix_probe.json" }, "warnings": [ "Step 32 uses the real public FT8/JS8-style (174,91) generator matrix for a hard-decision syndrome probe.", "This is not yet a complete soft LDPC belief-propagation decoder and does not unpack JS8 messages.", "If best_matrix_probe reaches syndrome_weight 0, the next step can feed message91 into CRC/message unpack. Otherwise Step 32 should add real soft LDPC iterations." ], "next_action": "Upload logs. Next step: soft LDPC belief-propagation/min-sum decoder using this matrix contract, then JS8 message unpacking." } [webftr-js8-lab] OK [webftr-js8-lab] log file: /decoders/js8_decoder/logs/20260526T115758Z_ldpc-matrix-probe.log [webftr-js8-lab] manifest: /decoders/js8_decoder/logs/20260526T115758Z_ldpc-matrix-probe_manifest.json