Add typed field-flight prototype and preserve native qualification failures

This commit is contained in:
2026-09-19 21:01:20 +02:00
parent 83ea247e62
commit 61e165ef5b
91 changed files with 40570 additions and 85 deletions
+42
View File
@@ -120,3 +120,45 @@ source-bound native trial remains necessary; prior approach successes do not
qualify the changed timing.
The first [native timing candidate202949](evidence/approach-timing-review-2026-09-19-202949/review.json) passed camera calibration but failed its original approach deadline. It sent12 paired W pulses and14 yaw requests;11 full stops were completed before expiry. Actual holds were 195.1–236.3ms (median200.9ms), and largest completed stop was0.438m. Observed path was3.965m. All releases and owned cleanup were confirmed. The improved release latency therefore did not produce a completed route within the existing budget. No wheel/F was sent; the failure remains archived.
## Separate coarse-heading experiment (native pending)
The failed 202949 timing run spent its original budget on 14 small yaw requests
and 12 forward pulses despite shorter measured holds. A new **explicit**
`--exercise-prison-coarse-approach` runner flag requires the existing approach,
relative-look, gate-observation and private-display/input flags. Its matching
helper flag is `--enable-private-coarse-approach-proof`. Neither flag enables F,
pitch, a gate operation or any new native observer lifetime.
| Bound | Default `standard` | Explicit `coarse` |
| --- | ---: | ---: |
| Relative horizontal mouse request | 128 px | 384 px |
| Desired yaw proposal before pixel rounding | 10° | 25° |
| Actual native turn, including every intermediate sample | 15° | 35° |
| Maximum paired W pulses | 12 | 16 |
Both retain 16 total turns, 2,048 total pixels, the exact private pointer's current
and proposed clipped bounds, fresh full ownership/focus checks, stationary body
requirements, directional native acknowledgement and full settling. A coarse
request can still be refused because it does not fit the owned pointer area.
Both retain the 35-second absolute READY deadline and 45-second QUEUED observer
window, 1.5-second supervised key lease, 400ms actual W hold limit, positive
sampled native forward input, full native stops, 0.75m endpoint tolerance, 0.25m
reserve added to the largest measured stopping distance, six-metre total path,
and the existing interior/velocity bounds. No limit renews when heading finishes
or an input is refused. The known stopping-reserve deadzone remains a refusal.
The route report records `profile`; omitted profiles in historical reports mean
`standard`, never coarse. Only those two names are accepted. Runner launch context
and helper report independently bind `coarse_approach_requested`, while the existing
exact helper and approach-module SHA-256 records bind the implementation. Final
qualification rejects an unrequested coarse flag/profile, changed module hashes,
or helper-only completion, and rechecks actual native intermediate turns under
the selected profile. Default commands retain the previous capability limits.
Offline tests cover default compatibility, an attainable simulated coarse route,
exact 16-pulse exhaustion, intermediate overshoot, unknown/unrequested profiles,
private pointer/focus/expiry refusal and retained stopping/hold rules. These are
policy and adapter tests, not evidence of improved ordinary gameplay. Previous
failed runs keep their original profile and result; the new experiment requires
its own source-bound native run before any success claim.