Static Recomp Input Replay
Overview
Record and replay deterministic input traces so emulator and recompiled builds can be compared using the same stimuli.
Workflow
- •Define the input trace format.
- •Use time-ordered events with timestamps or frame indices.
- •Record device type, buttons, axes, and analog ranges.
- •Select a stable time base.
- •Prefer frame-indexed ticks if frame rate is locked.
- •Otherwise record high-resolution timestamps with explicit units.
- •Capture input traces.
- •Record from a controlled session with known settings.
- •Save seed values for RNG and time sources when possible.
- •Normalize and validate traces.
- •Ensure monotonic time and no dropped events.
- •Quantize to fixed tick rate if needed.
- •Build a replay harness.
- •Inject inputs into emulator and recompiled runtime.
- •Log applied inputs and any rejected events.
- •Validate determinism.
- •Replay the same trace twice and compare hashes or state summaries.
- •Flag nondeterministic outcomes as blocking issues.
Outputs
- •Input trace files with stable time bases.
- •A replay harness config describing injection method and target build.
- •Determinism logs and hashes per run.
Quality bar
- •Input traces must be replayable without manual intervention.
- •Determinism must be tested and documented for each target build.
- •Time bases and units must be explicit and consistent.