syntax = "proto3";

package aerodrome.v1;

import "google/protobuf/timestamp.proto";

// Timeseries interval measurement published to ace.ts.interval.{tenant_id}.{timeseries_id}
message TsIntervalMessage {
  string tenant_id = 1;       // UUID
  string timeseries_id = 2;   // UUID
  google.protobuf.Timestamp ts = 3;
  optional double value_float = 4;
  optional string value_string = 5;
  // Correlation ID for distributed tracing. Edge devices should set this to a
  // UUID (or hex trace ID) so the full publish→ingest→store pipeline is traceable.
  // API-originated writes inject the current OTel trace ID automatically.
  optional string trace_id = 6;
}
