## ADDED Requirements ### Requirement: Heartbeat carries observed gateway telemetry Every authenticated `GatewayHeartbeat` SHALL carry the bounded process-level counters, delay totals and samples, control RTT/loss/jitter, pending reliable work, reconnect count, and provider state defined by `GatewayTelemetry`. #### Scenario: Valid telemetry heartbeat - **WHEN** a gateway reports its current observed snapshot - **THEN** Go, Rust, and Swift bindings accept the same bounded low-cardinality values and units ### Requirement: Heartbeat telemetry excludes sensitive dimensions Heartbeat telemetry MUST reject unknown fields and MUST NOT include session, route, endpoint, credential, label, or payload values. #### Scenario: Secret or high-cardinality field is attempted - **WHEN** a heartbeat contains an unregistered session, route, endpoint, credential, or payload field - **THEN** strict contract validation rejects it before authenticated transport