Add production runtime standard runner - #422
Open
jarcherNV wants to merge 7 commits into
Open
Conversation
Contributor
Greptile SummaryThe PR promotes the inference loop into a production runtime runner and introduces shared replay, MP4-output, WebRTC-demo, and OmniDreams adapter surfaces.
Confidence Score: 5/5The PR appears safe to merge. The previously reported input-loss issue is fixed: the runner now constructs its per-step base from Important Files Changed
Sequence DiagramsequenceDiagram
participant Demo as Demo/Caller
participant Runner as run_inference_session
participant Mapping as InputMapping
participant Runtime as InferenceRuntime
participant Session as InferenceSession
participant Output as OutputTarget
participant Metrics as MetricsRecorder
Demo->>Runner: config, initial inputs, mapping, output
Runner->>Mapping: validate compatibility
Runner->>Mapping: map global conditioning
Runner->>Runtime: create_runtime(config)
Runtime-->>Runner: runtime
Runner->>Runtime: start_session(mapped initial inputs)
Runtime-->>Runner: session
Runner->>Output: open()
loop while next_step_request exists
Runner->>Session: next_step_request()
Runner->>Mapping: map_step_inputs(canonical inputs, preserved step base, request)
Mapping-->>Runner: step inputs
Runner->>Session: step(step inputs)
Session-->>Runner: StepResult
Runner->>Output: write(result)
Runner->>Metrics: record timing samples
end
Runner->>Output: close()
Runner->>Session: close()
Runner->>Runtime: close()
Runner->>Metrics: close()
Reviews (8): Last reviewed commit: "omnidreams: add shared demo API adapter" | Re-trigger Greptile |
Promote the test-only inference loop into flashdreams.runtime as run_inference_session. The runner validates mapping compatibility before runtime creation, maps global conditioning, drives a synchronous sequential session, writes step outputs, records timing metrics, and reliably closes output/session/runtime/metrics. Add focused production runner tests for success, validation ordering, cleanup, and declared mapping compatibility failures. Update runtime docs to mark T4 complete and point at the new runner entry point.
Pass the caller-provided initial step payload into per-step input mapping instead of always supplying an empty InferenceInput. This keeps IdentityInputMapping and other pass-through mappings compatible with sessions that require fixed per-step inputs. Add a regression test covering that path while still avoiding global conditioning on steady-state step calls.
Apply the import sorting changes required by the CPU pre-commit job for the runtime runner and its focused tests.
Apply the formatting changes produced by the CPU pre-commit job. This updates runtime mapping code and input-mapping tests to match Ruff format, resolving the ruff-format hook failure from PR CI.
Add the Phase 1 shared demo skeleton under flashdreams.runtime.demo with DemoSpec, output specs, PreparedScenario, and DemoAdapter shapes. Route replay demos through run_inference_session(), add shared output target construction, and shape WebRTC demo construction around the existing BaseWebRTCSessionManager. Cover the new boundary with fake-model tests, and update the demo API plan to port OmniDreams before LingBot.
jarcherNV
force-pushed
the
dev/jarcher/api-runtime
branch
from
August 6, 2026 05:45
3499fe0 to
5632e12
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Promote the test-only inference loop into flashdreams.runtime as run_inference_session.
The runner validates mapping compatibility before runtime creation, maps global conditioning, drives a synchronous sequential session, writes step outputs, records timing metrics, and reliably closes output/session/runtime/metrics.
Add focused production runner tests for success, validation ordering, cleanup, and declared mapping compatibility failures. Update runtime docs to mark T4 complete and point at the new runner entry point.