Internal change

PiperOrigin-RevId: 429378785
diff --git a/quic/core/quic_connection.cc b/quic/core/quic_connection.cc
index 83453ef..77c0609 100644
--- a/quic/core/quic_connection.cc
+++ b/quic/core/quic_connection.cc
@@ -3441,6 +3441,9 @@
   switch (fate) {
     case DISCARD:
       ++stats_.packets_discarded;
+      if (debug_visitor_ != nullptr) {
+        debug_visitor_->OnPacketDiscarded(*packet);
+      }
       return true;
     case COALESCE:
       QUIC_BUG_IF(quic_bug_12714_24,
diff --git a/quic/core/quic_connection.h b/quic/core/quic_connection.h
index 954eb6a..ba71d31 100644
--- a/quic/core/quic_connection.h
+++ b/quic/core/quic_connection.h
@@ -411,6 +411,9 @@
   virtual void OnNPacketNumbersSkipped(QuicPacketCount /*count*/,
                                        QuicTime /*now*/) {}
 
+  // Called when a packet is serialized but discarded (i.e. not sent).
+  virtual void OnPacketDiscarded(const SerializedPacket& /*packet*/) {}
+
   // Called for QUIC+TLS versions when we send transport parameters.
   virtual void OnTransportParametersSent(
       const TransportParameters& /*transport_parameters*/) {}