server: fill ev.sample_rate from compliance config for /device/events
sample_rate is a device-level setting stored in the compliance config, not per-event in the waveform record. After downloading events, backfill ev.sample_rate from info.compliance_config.sample_rate for any event that didn't get it from the waveform record decode path. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -315,6 +315,13 @@ def device_events(
|
|||||||
except Exception as exc:
|
except Exception as exc:
|
||||||
raise HTTPException(status_code=500, detail=f"Device error: {exc}") from exc
|
raise HTTPException(status_code=500, detail=f"Device error: {exc}") from exc
|
||||||
|
|
||||||
|
# Fill sample_rate from compliance config where the event record doesn't supply it.
|
||||||
|
# sample_rate is a device-level setting, not stored per-event in the waveform record.
|
||||||
|
if info.compliance_config and info.compliance_config.sample_rate:
|
||||||
|
for ev in events:
|
||||||
|
if ev.sample_rate is None:
|
||||||
|
ev.sample_rate = info.compliance_config.sample_rate
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"device": _serialise_device_info(info),
|
"device": _serialise_device_info(info),
|
||||||
"event_count": len(events),
|
"event_count": len(events),
|
||||||
|
|||||||
Reference in New Issue
Block a user