docs: record the dead-pad root cause and what it does not fix

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PMRJjbxLqZtsb5Vb7KunPE
This commit is contained in:
Sylpheed RE agent
2026-08-23 22:09:51 +00:00
parent 0a6a767337
commit af42a3366d

View File

@@ -274,12 +274,19 @@ is what the autopilot needs in order to CHOOSE a target. One run in:
* 🔴 **The counter is not "hostiles left" either.** It held at `012` for fifteen
minutes of **live** flight while the ADAN population fell 132 → 93. That is
also why there is still no verification: no transition to filter on.
* 🔴 **`pilot.py` never fires**`fire=1` in 0 of 13 521 samples. **Proximal
cause found** (2026-08-23): the committed target is *astern* in 100 % of
samples (`|aim yaw|` exactly 90.0°, the `ez < 0` branch) and the range to it
grows 22 km → 49 km — the craft flies away and the turn never completes. Which
of stale attitude matrix / wrong axis / inverted stick sign is behind that is
**still open**; one probe attempted it and was invalidated by a freeze.
* **`pilot.py` never fires — ROOT CAUSE FIXED** (2026-08-23):
`flight_probe.Pad` was writing to the **vgamepad FIFO**, dead since the uinput
pad was replaced by `--hid=file`, so every axis, trigger and button from every
flight tool went into a file nothing reads while `/tmp/xenia_pad.txt` stayed
empty. The craft was never being flown. Verified: full stick went from `0.00°`
of heading change to `12.72°`, and the attitude matrix from `d 0.0000` to
`d 0.4438` — which also **refutes** the "stale attitude matrix" suspicion.
🟡 **Still open:** the pilot *still* fires 0 times in 150 s with the input
working, `|aim yaw|` still exactly 90.0° and the target 3643 km off. Left to
test — now that it is testable — the yaw stick's **sign** against the pilot's
error convention, and target selection committing to something too far to
close. ⚠️ `findrot_global.py`, `findself.py`, `findspeed.py`, `selfstate.py`
still write to the dead FIFO; flagged in place, not repaired.
See [`pilot-never-fires.md`](pilot-never-fires.md).
* 🔴 **An in-mission freeze — the item in front of everything else.** Reproduced
with the Kernel channel on. 🔴 The resume-spin lead is **refuted by its own