urt-rs / docs /research /QVM_FLAGGED_MODE.md
nmarshall's picture
qvm: full launch entry
1b614e0
|
Raw History Blame Contribute Delete
7.65 kB

QVM55465 flagged movement, entry impulse and measured resource

This batch completes bounded RE-541–543 / F-265–267. It evaluates55465, the main movement choice when flags&12 is nonzero after the higher-priority128 check. It extends main action, shared query/main routing, resource updating and active-state movement. Numeric flags and helper labels do not establish a complete gameplay name for this mode.

Reproduce with python3 scripts/analyze_qvm_flagged_mode.py; validate with python3 scripts/test_qvm_flagged_mode.py. The machine report contains50 standalone fixtures,8 actual main chains, the complete55465–56213 instruction partition, relevant40966 entry instructions and initialized configuration words. Evaluation stops before the mode's void PUSH/LEAVE epilogue, after reached child effects. No original executable, full QVM, native collision, physics or rendering executes. Native roots and slide responses remain supplied. The report is1445198 bytes in normal Git; assets are unchanged.

FLAGGEDMODE-001 — Entry guards, command-byte store and bit16 bypass (RE-541)

Mode55465 calls40966 before reading bit16. The recovered bounded entry branches have this order:

  1. Existing flags256 returns0 without touching input or movement state.
  2. Signed up input below10 returns0.
  3. Existing flags8192 stores zero into command up byte FRAME+27, then returns0.
  4. Otherwise the helper clears plane/walk, sets flags8192 and ground1023. For flags&12 it projects forward basis onto XY, normalizes it with a supplied root, adds direction×−50 to current velocity and sets flags16 before returning1.

Every fixture entering the fourth branch has flags&12, matching the actual main55465 route. The helper's successful non-flags12 body is outside this batch and raises an explicit error in the bounded model. The existing guard paths can still be evaluated without taking that body. Zero planar basis follows the recovered zero-root policy; the present fixtures use supplied forward(3,4,0).

Source STORE1 results are carried back into the parent command-byte map. The flags8192 control therefore feeds up0, rather than the prepared up10, into subsequent command scaling. The flags256 control wins earlier and leaves up10 unchanged. This byte state is separate from the word-addressed PS/global memory returned by the helper.

After40966 returns,55465 rereads bit16. Existing or newly set16 requests57714(0) directly and skips friction, command scale, acceleration, inline clipping and resource updating. Among50 standalone fixtures,28 take this bypass;8 entry helpers return1 and produce a new impulse/cleared ground state. This is bounded source behavior, not a complete jump implementation or proof of legal native inputs.

FLAGGEDMODE-002 — Wish threshold, speed cap and inline plane projection (RE-542)

The normal path evaluates actual39988 friction and40397 command scaling using current memory and command bytes. Plane0 builds scaled right input only; a nonzero plane combines scaled forward and right. Up input affects scale but is not added directly to this wish vector. Nonzero forward replaces wish Z with +150 or−150. Absolute signed forward below100 multiplies Z by0.25; forward99 therefore produces37.5, forward100 produces150, and−128 produces−150 in the tested controls.

The mode normalizes the full wish vector and caps the wish speed to float(PS+52)×initialized word21180. The fixtures supply PS+52=320 and file-backed21180=0.5, giving cap160. Actual40275 receives that direction, capped speed and initialized coefficient21204=3000. This differs from57312's coefficient10 and horizontal-velocity zeroing;55465 preserves current horizontal state through friction/acceleration. Initialized words remain supplied configuration, not proven immutable/current runtime values.

If the plane indicator is nonzero and accelerated velocity dots negatively with its normal, the mode saves the original speed, applies the recovered overbounce projection inline, normalizes the projected vector and rescales it by the saved speed. Four standalone cases reach this branch, using supplied normal(0.6,0,0.8). Exact float words and rounding are checked independently; a speed-preservation tolerance check supplements those exact checks. Other paths omit this projection.

Actual57714(0) then runs with the resulting full velocity, live plane/normal/touches/impact state and supplied ordered clear/contact trace records. No60091/59710 step wrapper or41768 gravity tail is attached. Collision consistency of supplied normals/endpoints and native side effects remain unverified.

FLAGGEDMODE-003 — Post-slide resource and actual main selection (RE-543)

The normal path measures all three current velocity components after57714 and requests39595 with that root. The actual resource helper consumes current flags, command bytes, integer timestep, meter, counter, health, configuration and inventory. Its outputs return into the same memory; inventory/canary preservation and resulting meter/counter are independently checked. The22 standalone normal paths exercise recovery; the broader drain/reset/lock policy remains covered by the earlier resource fixtures. This batch does not claim those other resource paths were reached through these movement cases.

Eight actual main chains combine feet-hit54981(0), up0/10, input flags32/160 and clear/contact slide patterns. All skip query56639 because action produces a flags&12 bit. Four flags32 cases select55465, applying its effect after source CALL54395/POP54396 and before caller continuation54397. Of those four, two up10 cases take the entry-produced16 bypass, while two up0 cases run the measured resource suffix. Four flags160 controls select higher-priority41768 and receive none of55465's effects.

Actual main timer aging precedes action/mode, and final source routing/suffix snapshots retain the mode's velocity/origin/resource outputs under the explicitly omitted suffix effects. No acquisition event is emitted in these query-gated chains. Entry plane/walk/ground changes feed the reached slide rather than a separately seeded movement state.

Validation and next tasks

Eight tests independently check50 helper/command/wish/cap/acceleration/clip/slide/resource outcomes, entry ordering and8 impulses,28 bypasses, command-byte propagation,99/100/−128 thresholds,4 inline clips with speed restoration, measured post-slide resource and8 reached/skipped main handoffs, explicit unsupported-domain rejection, source identity and initialized-word provenance. All695 tests pass. Previous resource, main-contact, main-query and active-mode reports regenerate byte-identically; the new report reproduces twice byte-identically. Storage/filter, link and whitespace results are recorded in the ledger.

RE-540 remains open for its broader other-mode/combined-producer/native/runtime scope. RE-544 tracks the successful non-flags12 body of40966, remaining41848/43626/42838 bodies, combined posture/ground/nested-action/query/mode ordering, native collision/legal domains and original reference traces, main prefix/suffix/event/resource consumers, scheduler and macOS/Linux Rust/Bevy/Solari gameplay. The progress assessment remains a dated whole-project estimate; this static batch adds no Rust runtime or platform prototype.

Follow-up: full40966 entry recovers the previously excluded non-flags12 successful branch independently. This earlier restricted fixture model and its rejection test remain unchanged.