diff --git a/quic/core/quic_connection.cc b/quic/core/quic_connection.cc
index 96428a3..22bbda0 100644
--- a/quic/core/quic_connection.cc
+++ b/quic/core/quic_connection.cc
@@ -2092,9 +2092,7 @@
     OnClientConnectionIdAvailable();
   }
   QUIC_RELOADABLE_FLAG_COUNT_N(quic_connection_support_multiple_cids_v4, 1, 2);
-  if (add_missing_update_ack_timeout_) {
-    MaybeUpdateAckTimeout();
-  }
+  // TODO(haoyuewang): update ACK timeout for RETIRE_CONNECTION_ID_FRAME.
   return true;
 }
 
@@ -2155,9 +2153,7 @@
   QUIC_RELOADABLE_FLAG_COUNT_N(quic_connection_support_multiple_cids_v4, 2, 2);
   // Count successfully received RETIRE_CONNECTION_ID frames.
   QUIC_RELOADABLE_FLAG_COUNT_N(quic_connection_migration_use_new_cid_v2, 5, 6);
-  if (add_missing_update_ack_timeout_) {
-    MaybeUpdateAckTimeout();
-  }
+  // TODO(haoyuewang): update ACK timeout for RETIRE_CONNECTION_ID_FRAME.
   return true;
 }
 
diff --git a/quic/core/quic_connection_test.cc b/quic/core/quic_connection_test.cc
index f16604b..d47108a 100644
--- a/quic/core/quic_connection_test.cc
+++ b/quic/core/quic_connection_test.cc
@@ -12101,11 +12101,7 @@
   new_writer.SetWritable();
   // Write event on the default socket shouldn't make any difference.
   connection_.OnCanWrite();
-  if (GetQuicReloadableFlag(quic_add_missing_update_ack_timeout)) {
-    EXPECT_EQ(1u, writer_->packets_write_attempts());
-  } else {
-    EXPECT_EQ(0u, writer_->packets_write_attempts());
-  }
+  EXPECT_EQ(0u, writer_->packets_write_attempts());
   EXPECT_EQ(1u, new_writer.packets_write_attempts());
 }
 
@@ -15238,7 +15234,6 @@
   QuicWindowUpdateFrame window_update_frame;
   QuicPathChallengeFrame path_challenge_frame;
   QuicStopSendingFrame stop_sending_frame;
-  QuicNewConnectionIdFrame new_connection_id_frame;
   QuicPathResponseFrame path_response_frame;
   QuicMessageFrame message_frame;
   QuicNewTokenFrame new_token_frame;
@@ -15309,7 +15304,8 @@
         frame = QuicFrame(&stop_sending_frame);
         break;
       case NEW_CONNECTION_ID_FRAME:
-        frame = QuicFrame(&new_connection_id_frame);
+        // TODO(haoyuewang): add test coverage for RETIRE_CONNECTION_ID_FRAME.
+        skipped = true;
         break;
       case RETIRE_CONNECTION_ID_FRAME:
         // TODO(haoyuewang): add test coverage for RETIRE_CONNECTION_ID_FRAME.
