topics:
  # Realtime and historical OHLC data (protobuf encoded)
  # Individual OHLC messages for realtime data
  # OHLCBatch messages for historical data (with metadata)
  - name: market-ohlc
    partitions: 6
    replication: 2
    config:
      retention.ms: 86400000  # 24 hours
      compression.type: snappy
      cleanup.policy: delete

  # Realtime tick data (protobuf encoded)
  - name: market-tick
    partitions: 6
    replication: 2
    config:
      retention.ms: 3600000  # 1 hour
      compression.type: snappy
      cleanup.policy: delete

  # Order execution events
  - name: order-event
    partitions: 3
    replication: 2
    config:
      retention.ms: 2592000000  # 30 days
      compression.type: snappy
      cleanup.policy: delete

  # Symbol metadata from ingestors
  - name: symbol-metadata
    partitions: 3
    replication: 2
    config:
      retention.ms: 604800000  # 7 days
      compression.type: snappy
      cleanup.policy: compact  # Keep latest per symbol key
