4.4 KiB
This file is the authoritative current task for the RX laptop. The RX assistant must read RX_NODE_STATE.md first, then execute this file. If chat history conflicts with these files and current Git HEAD, stop and report the conflict.
Current RX task
TASK = FINALIZE RX NODE SOFTWARE PREFLIGHT
-
GIT. In the laptop project at
C:\Users\Professional\Documents\Codex\SDR_Rover_Video, confirmvideo-developmentand record the starting HEAD andgit status --short --untracked-files=no. If tracked files are modified, stop and report the conflict. Rungit pull origin video-development. Verify thatgit branch --show-currentisvideo-development,git rev-parse HEADequalsgit rev-parse origin/video-development, and the tracked checkout is clean (git status --short --untracked-files=nohas no output). Local RF-001 results outside Git are not a conflict. If the pull or any of these checks fails, stop and report it. -
VIDEO FIXTURE. Inspect
data/raw/video001/udacity_project_video.mp4. Required size:25268015bytes. Required SHA256 fromGet-FileHash -Algorithm SHA256:651949922042c223375d40bf8929def97dbb62c6ade651d1f5b08eea47127d5f. The earlier laptop file had SHA256bff9b28d0e1f5442cfdf9f2bd51251d66506ca518ad7dfe6074670859731a8fband is not the fixture. If the file is absent, the size differs, or SHA256 differs, mark VIDEO FIXTURE = FAIL and do not runvideo_gate.py. Do not download or substitute a file, change the expected SHA256, or weaken the check. The user will transfer the correct file manually from the main PC. -
After both the fixture size and SHA256 match, run the complete
python -B -X utf8 tools/video_gate.py. Then run targeted VIDEO/RF tests, targeted Ruff, Pyright, andgit diff --checkseparately. On PowerShell, the targeted tests are:
$videoTests = @(Get-ChildItem -LiteralPath tests -Filter 'test_video*.py' -File | Select-Object -ExpandProperty FullName)
python -B -m pytest $videoTests tests/test_packet.py tests/test_bpsk_radio.py tests/test_rf001_preparation.py tests/test_clock001.py -q
python -B -c "import subprocess, sys; from tools.video_gate import STATIC_PATHS; sys.exit(subprocess.call([sys.executable, '-B', '-m', 'ruff', 'check', *STATIC_PATHS]))"
python -B -m pyright --project pyrightconfig.json
git diff --check
The Ruff paths are the same targeted paths used by video_gate.py. Record the result of each check separately.
-
Repeat the software-only offline RF-001 round trip: 100 packets → IQ file → receiver. Use the
qpsk_rf_tx.pydry run andqpsk_rf_rx.pyfile receiver commands indocs/rf/RF_001.md, with new local output paths so older results are preserved. Require 100/100 CRC-valid and 100/100 exact packets. Preserve stdout and the JSON report. Runhackrf_infoand record its full output; it is identification only. No RF TX or hardware capture is authorized. -
FULL PYTEST is optional:
python -B -m pytest tests/ -q. If its only failure is caused by the missing historicaldata/raw/lab064/tx_metadata.json, report FULL PYTEST = FAIL and LAB064 HISTORICAL FAILURE = HISTORICAL LAB064 FIXTURE MISSING; NON-BLOCKING FOR RF-001 RX NODE. Verify that there are no other failures before applying this exception. Do not create or simulate that fixture. Any other new test failure blocks readiness. If the full suite is not run, report FULL PYTEST = NOT_RUN and LAB064 HISTORICAL FAILURE = NOT_RUN. -
RX NODE READY FOR RX-ONLY HARDWARE TEST = YES only when the fixture size and SHA256 match, video gate passes, targeted VIDEO/RF tests pass, targeted Ruff passes, Pyright passes,
git diff --checkpasses, offline RF-001 yields 100/100 CRC-valid and 100/100 exact packets,hackrf_infopasses, and the Git checks in step 1 pass. The sole verified historical Lab064 fixture failure in the optional full suite does not change readiness to NO. Any other failure does. -
Do not perform RF TX, continuous RX,
hackrf_transfer, firmware or CPLD updates,hackrf_spiflash, Zadig, USB driver changes, commit, or push on the RX laptop. -
Finish with this report. For checks not run, write NOT_RUN; for failures, state the concrete cause.
TASK = FINALIZE RX NODE SOFTWARE PREFLIGHT
BRANCH = HEAD =
VIDEO FIXTURE = VIDEO FIXTURE SIZE = VIDEO FIXTURE SHA256 =
VIDEO GATE =
TARGETED PYTEST = FULL PYTEST = LAB064 HISTORICAL FAILURE =
RUFF = PYRIGHT = GIT DIFF CHECK =
OFFLINE RF-001 = HACKRF INFO =
RX NODE READY FOR RX-ONLY HARDWARE TEST = YES / NO
RF TX = 0
STOP.