MingaEditor.Renderer.RecoveryHandler (Minga v0.1.0)

Copy Markdown View Source

Owns connection reset, timeout recovery, and targeted window recovery.

Summary

Functions

Starts one fresh-generation retry only after consuming explicit adaptation evidence.

Forces a same-connection keyframe while retaining acknowledged presentation leases.

Renders a synchronous same-connection keyframe without abandoning presentation leases.

Resets frontend state and renders a synchronous recovery keyframe.

Starts transaction recovery from the latest semantic intent.

Recovers one missed retained window without resetting unrelated frontend state.

Types

request_result()

@type request_result() :: :recovery_started | :stale

Functions

adapted(state, last_applied, reason)

Starts one fresh-generation retry only after consuming explicit adaptation evidence.

keyframe(state, intent, seq, pushed_at)

Forces a same-connection keyframe while retaining acknowledged presentation leases.

keyframe_sync(state, intent, seq, pushed_at)

Renders a synchronous same-connection keyframe without abandoning presentation leases.

request(state, failed_generation, last_applied_frame_seq)

reset(state, intent, seq, pushed_at)

reset_sync(state, intent, seq, pushed_at)

Resets frontend state and renders a synchronous recovery keyframe.

transaction(state, rejected_attempt)

Starts transaction recovery from the latest semantic intent.

window(state, rejected_attempt, window_id)

Recovers one missed retained window without resetting unrelated frontend state.