Download docs/research/QVM_GROUND_CALLEES.md from nmarshall/urt-rs: direct link, hf CLI and curl.
- Browser
- Download file 7.26 kB
-
https://huggingface.co/nmarshall/urt-rs/resolve/main/docs/research/QVM_GROUND_CALLEES.md
- Command line
-
hf download hf://nmarshall/urt-rs/docs/research/QVM_GROUND_CALLEES.md
-
curl -L -o QVM_GROUND_CALLEES.md https://huggingface.co/nmarshall/urt-rs/resolve/main/docs/research/QVM_GROUND_CALLEES.md
QVM ground loss and landing kinematics prefix
This batch completes bounded RE-509–511 / F-241–243. It recovers46527 ground-loss policy and connects it at the actual46773 caller boundary, plus evaluates45912's landing kinematics/animation prefix. It extends main environment recovery; the landing study deliberately stops before severity/event/damage/suffix work.
Reproduce with python3 scripts/analyze_qvm_ground_callees.py; validate with python3 scripts/test_qvm_ground_callees.py. The machine report retains verified source identity, helper/prefix instruction partitions, exact words, native requests, animation children and bounded main chains. No original executable, full QVM, native collision, physics or rendering executes.
GROUNDLOST-001 — Deep query, ground sentinel and animation (RE-509)
Thirty-two standalone46527 probes vary flags0/4/4096/4100, old ground7/1023, supplied deep-trace fraction0.5/1 and signed forward direction−1/+1. An initial flags&12 branch clears ground to1023 and plane/walk to0 without action or native query. Otherwise the source sets32, requests54981(1) with its effects omitted, and skips the deep query when the old ground is already1023.
For an existing ground value the helper requests a trace64 units downward from current origin with current bounds/entity/mask. Only the consumed fraction output word is supplied; the analysis does not invent or claim other trace fields. A fraction other than1 retains old ground/walk within this helper and clears the plane indicator. Fraction1 toggles4096, chooses animation26/28 for nonnegative forward or30/32 for negative forward according to the old4096 state, evaluates39525/39383, then clears ground/walk and plane.
Standalone fixtures issue eight deep native requests and four animation requests. Exact raw animation equality/toggle and forced leg-timer reset follow the recovered animation helpers. Action/logging effects, trace collision/consistency, invalid fractions/counts/pointers and real semantic/legal flag domains remain unverified.
LANDPREFIX-001 — Discriminant, impact estimate and animation timer ordering (RE-510)
Forty-two landing-prefix probes vary previous Z velocity0/−100/−300, current-minus-snapshot deltaZ−10/0/+10, posture flag1 clear/set and raw leg animation25/27, with six additional strict-threshold cases around−200. Gravity800 and finite vectors are supplied. Source45912 first zeros PS+440 and clears4096 in PS+220, even on the negative-discriminant path.
Let v be the saved previous Z velocity, a the binary32 conversion of negative integer gravity, h=round32(a*0.5) and dz the rounded current/snapshot Z difference. In source order the discriminant is round32(round32(v*v) - round32(round32(h*4)*round32(-dz))). A negative value jumps to46294; no root, time or impact output is claimed on that path. Eight fixtures take it.
For nonnegative discriminants, a native root is requested and supplied from finite math. The source evaluates rounded time=(-v-root)/(h*2) and impact=v+time*a. Thirty-four fixtures reach stop46052 before impact squaring/severity scaling. If impact is strictly below−200 and flag1 is clear, the source stores leg timer130 and requests39525(27). Eight fixtures request that helper; exact−200 and−199.999 skip, while−200.001 requests it.
The evaluated forced-animation child exposes ordering: with raw legs25 it resets the newly written130 timer to0 and toggles to animation27; with raw legs already27 the helper skips its reset and130 survives. The caller has no intervening restoration before this prefix boundary. Tests verify both outcomes, including every exact time/root/discriminant/impact word. Zero or exceptional gravity, negative-root/native exceptional behavior, full landing return, severity/event/damage and later crouched-speed suffix behavior remain open.
GROUNDCHAIN-001 — Actual ground-loss caller and selected main state (RE-511)
Sixteen bounded main chains vary initial4096, old ground7/1023, deep fraction0.5/1 and forward direction. At the reached first46773 fraction1 branch, the source requests46527; the new helper executes before caller continuation. Its resulting memory then returns to46773, which clears plane and walk after the request regardless of the helper's short-query retention. Thus a fraction0.5 helper result can retain old ground7/walk1 internally while the actual classifier ends with ground7/walk0/plane0. Tests distinguish these two boundaries.
Actual flags/leg timer and plane state flow into main timer aging and the selected41768 chain. All16 fixtures reach that mode and evaluate its first-clear slide, wrapper bypass and gravity tail, followed by the existing post-ground/content analysis. Initial impact, viewheight/bounds, native content/trace/root responses and action/query/suffix/other ground effects remain supplied or omitted. The post-ground45912 landing request is not replaced with the separate prefix study: no full landing completion or shared landing effect is claimed there.
These chains use the earlier environment path with supplied posture state, not the optional evaluated posture branch from the newer posture report. Full main/action/environment/native runtime composition remains open. Source helper frames for ground loss, landing prefix, animation children and live main/movement callers are disjoint.
Validation and next tasks
Eight tests verify32 standalone plus16 composed ground-loss outcomes, deep geometry/requests/sentinel/strict fraction policy,42 landing-prefix formulas and initialization paths, timer130/forced-animation equality, actual animation children, caller override order, selected main/slide state, source partitions and supplied/partial-native scope. Reproducibility/full-suite/storage/link/whitespace results are recorded in the ledger.
RE-508 remains open for its broader ground/native/producer/runtime scope. RE-512 tracks remaining45912 severity/event/damage/speed suffix and real ground landing composition,46296 recovery/native callbacks, actual54981/action and other omitted callee effects, posture/ground integration, collision/content/root ABI/legal domains/impact consumers and complete main/scheduler/macOS/Linux Rust/Bevy/Solari gameplay. Other game/assets/rendering/protocol milestones remain open.
Follow-up: complete bounded landing body completes RE-513–515, extending this prefix through severity/queue/suffix and actual ground/main caller stores.29913 is now verified as a two-slot numeric event writer; external damage semantics are not established. Recovery/action/native/full runtime scope remains open under RE-512/516.
Follow-up: helper54981 body completes bounded RE-525–527 for standalone argument1 and actual main argument0. This report retains its omitted54981 effects inside46527; attaching the recovered child there remains explicit follow-up work.
Follow-up: actual54981 inside ground loss completes bounded RE-529–531 and checks sentinel/flag/deep-query decisions against updated child state. Original no-callback reports remain unchanged; native/query/mode/runtime limits stay explicit.