# Lab061 — план интеграции T2 в строгий приёмник Lab061 выполняется только офлайн. `RF TX = 0`; HackRF не опрашивается. ## Фактический путь приёмника `lab053_streaming_receiver.StreamingReceiver` выполняет независимый поиск кандидатов и передаёт заранее выбранному `PacketProcessor` IQ-окно. Внутри `PacketProcessor` последовательно работают RRC-фильтр, временная синхронизация, оценка несущей, извлечение мягких символов, строгий разбор PHY header, Viterbi FEC, parser и CRC. T2 добавляется в этот существующий путь после RRC и timing. Начальное состояние P3 вычисляется по квадрату всей 1280-символьной преамбулы. После преамбулы T2 видит только текущий символ, собственное BPSK-решение и предыдущее состояние. Header, payload, CRC и будущие символы ему недоступны. Среднее DC в T2 считается только до последнего raw-отсчёта, который через причинную импульсную характеристику RRC способен повлиять на последнюю точку P3. Отсчёты header и payload не входят и в эту подготовительную оценку. Режим задаётся до запуска как `carrier_tracking_mode="legacy"` или `"t2"`. Значение по умолчанию — `legacy`. Повторной попытки после CRC FAIL нет. ## Зафиксированная математика При нормированной полосе `Bn=0.0005` и затухании `zeta=1/sqrt(2)`: `theta = Bn / (zeta + 1/(4*zeta))` `alpha = 4*zeta*theta / (1 + 2*zeta*theta + theta^2)` `beta = 4*theta^2 / (1 + 2*zeta*theta + theta^2)` Получаются `alpha=0.0013324447407406753` и `beta=8.882964938271169e-7` на один символ. Частотное состояние внутри петли хранится в радианах на символ; для отчёта оно переводится в герцы как `omega*Rs/(2*pi)`. Коэффициенты Lab060 не перенастраиваются. ## Критерии - чистый полный штатный PHY-пакет 500 ksymbol/s проходит поиск, header, FEC и CRC; - сравнение legacy/T2 выполняется при заранее выбранном режиме; - Lab047 остаётся 36/36 в обоих режимах; - Lab054 остаётся историческим `NOT_A, 0/16`, если строгий путь его не восстановит; - background даёт ноль header и packet; - изменение диагностической reference payload не меняет решения или траекторию T2; - алгоритм остаётся конечным при ошибках символов, провале амплитуды и шуме. После завершения и независимой проверки Lab061 фиксируется отдельным коммитом по разрешению пользователя. Push выполняется пользователем отдельно. Lab062 не создаётся автоматически.