@@ -87,6 +87,7 @@ impl TelemetryQueue {
8787 suggestion_state,
8888 edit_buffer_len,
8989 suggested_chars_len,
90+ number_of_recommendations,
9091 latency,
9192 ..
9293 } = item;
@@ -101,6 +102,7 @@ impl TelemetryQueue {
101102 suggestion_state,
102103 edit_buffer_len,
103104 suggested_chars_len,
105+ number_of_recommendations,
104106 latency,
105107 terminal : current_terminal ( ) . map ( |s| s. internal_id ( ) . into_owned ( ) ) ,
106108 terminal_version : current_terminal_version ( ) . map ( Into :: into) ,
@@ -126,7 +128,8 @@ struct TelemetryQueueItem {
126128 request_id : String ,
127129 suggestion_state : SuggestionState ,
128130 edit_buffer_len : Option < i64 > ,
129- suggested_chars_len : Option < i64 > ,
131+ suggested_chars_len : i32 ,
132+ number_of_recommendations : i32 ,
130133 latency : Duration ,
131134}
132135
@@ -254,6 +257,7 @@ pub async fn handle_request(
254257 let request_id = output. request_id . unwrap_or_default ( ) ;
255258 let session_id = output. session_id . unwrap_or_default ( ) ;
256259 let completions = output. recommendations ;
260+ let number_of_recommendations = completions. len ( ) ;
257261 let mut completion_cache = COMPLETION_CACHE . lock ( ) . await ;
258262
259263 let mut completions = completions
@@ -290,7 +294,8 @@ pub async fn handle_request(
290294 let buffer = buffer. to_owned ( ) ;
291295 async move {
292296 TELEMETRY_QUEUE . lock ( ) . await . items . push ( TelemetryQueueItem {
293- suggested_chars_len : completion. chars ( ) . count ( ) . try_into ( ) . ok ( ) ,
297+ suggested_chars_len : completion. chars ( ) . count ( ) as i32 ,
298+ number_of_recommendations : number_of_recommendations as i32 ,
294299 suggestion : completion,
295300 timestamp : SystemTime :: now ( ) ,
296301 session_id,
0 commit comments