42 lines
1.6 KiB
Markdown
42 lines
1.6 KiB
Markdown
TASK_ID = RF_HANDOFF_CHANNEL_TEST_001
|
|
TASK_TITLE = Verify the bidirectional Git handoff channel without SDR
|
|
SOURCE_BRANCH = video-development
|
|
EXPECTED_HEAD = bc55d0516dc1ee36cefa1ff096e7d86f60645303
|
|
REQUIRES_APPROVAL = NO
|
|
HARDWARE_ACCESS = NO
|
|
RF_RX = NO
|
|
RF_TX = NO
|
|
ALLOW_COMMIT = NO
|
|
ALLOW_PUSH = RX_RESULT_ONLY
|
|
RISK_LEVEL = GREEN
|
|
|
|
# Model-free handoff channel test
|
|
|
|
Run this gate before RF001A_OTA_CAPTURE_003 and while the MAIN watcher is active:
|
|
|
|
python -B tools/rf_handoff_smoke.py --hold-seconds 7
|
|
|
|
The script uses the real origin configured in the main RX checkout. It publishes a synthetic READY result to the existing origin/rx-node branch, waits seven seconds, then publishes a synthetic COMPLETE result. Both publications may change only:
|
|
|
|
docs/handoff/results/RX_RESULT.json
|
|
docs/handoff/results/RX_RESULT.md
|
|
|
|
The MAIN watcher must observe both states and must not request RED approval. Its state file must record both channel_test_ready_digest and channel_test_complete_digest. The final remote state must be CAPTURE_COMPLETE, with rx_ready_for_tx false. A synthetic READY state must not remain active.
|
|
|
|
The script and watcher do not access SDR hardware, do not run hackrf_transfer and do not authorize any RF transmission.
|
|
|
|
Required report:
|
|
|
|
TASK_ID = RF_HANDOFF_CHANNEL_TEST_001
|
|
READY PUBLISH = PASS / FAIL
|
|
READY REMOTE HEAD =
|
|
MAIN WATCHER RECEIVES READY = PASS / FAIL
|
|
COMPLETE PUBLISH = PASS / FAIL
|
|
COMPLETE REMOTE HEAD =
|
|
MAIN WATCHER RECEIVES COMPLETE = PASS / FAIL
|
|
FINAL REMOTE STATE = CAPTURE_COMPLETE / OTHER
|
|
REAL RX = NOT_RUN
|
|
RF TX = 0
|
|
|
|
If any field fails, do not start the hardware RX task. STOP.
|