Problem
Production client uploads currently do not provide usable runtime/plugin metadata in TimescaleDB.
Observed during the 2026-06-13 PDT trace DB audit:
- PostgreSQL
trace_runtime count: 0.
- PostgreSQL
trace_runtime_plugin count: 0.
- Production stored trace payloads did not contain
runtime_start or explicit rpc_method_observed rows.
- Recent client batches reached PostgreSQL, but
trace_batch.runtime_id was blank/null because the relay does not currently forward X-Trace-Runtime-Id.
Effect
Client trace rows cannot be tied to a client runtime, game version, PraetorisClient version, or loaded plugin set. This limits trace accuracy for RPC-name attribution and mod-version investigations.
Acceptance Criteria
- Client emits one
runtime_start row per connected tracing runtime.
- Client emits
rpc_method_observed when it learns an RPC name.
- Client sends
X-Trace-Runtime-Id with every HTTP trace upload batch.
- After the relay fix, a real upload proves
trace_batch.runtime_id, trace_runtime, and trace_runtime_plugin are populated in TimescaleDB.
Related
Problem
Production client uploads currently do not provide usable runtime/plugin metadata in TimescaleDB.
Observed during the 2026-06-13 PDT trace DB audit:
trace_runtimecount:0.trace_runtime_plugincount:0.runtime_startor explicitrpc_method_observedrows.trace_batch.runtime_idwas blank/null because the relay does not currently forwardX-Trace-Runtime-Id.Effect
Client trace rows cannot be tied to a client runtime, game version, PraetorisClient version, or loaded plugin set. This limits trace accuracy for RPC-name attribution and mod-version investigations.
Acceptance Criteria
runtime_startrow per connected tracing runtime.rpc_method_observedwhen it learns an RPC name.X-Trace-Runtime-Idwith every HTTP trace upload batch.trace_batch.runtime_id,trace_runtime, andtrace_runtime_pluginare populated in TimescaleDB.Related