agent: Add telemetry for eval runs (#28816)

Release Notes:

- N/A

---------

Co-authored-by: Joseph <joseph@zed.dev>
This commit is contained in:
Thomas Mickley-Doyle 2025-04-15 21:54:26 -05:00 committed by GitHub
parent 1eb948654a
commit 222d4a2546
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 89 additions and 6 deletions

28
crates/eval/src/ids.rs Normal file
View file

@ -0,0 +1,28 @@
use anyhow::Result;
use std::fs;
use std::path::{Path, PathBuf};
use uuid::Uuid;
pub fn get_or_create_id(path: &Path) -> Result<String> {
if let Ok(id) = fs::read_to_string(path) {
let trimmed = id.trim();
if !trimmed.is_empty() {
return Ok(trimmed.to_string());
}
}
let new_id = Uuid::new_v4().to_string();
fs::write(path, &new_id)?;
Ok(new_id)
}
pub fn eval_system_id_path() -> PathBuf {
dirs::data_local_dir()
.unwrap_or_else(|| PathBuf::from("."))
.join("zed-eval-system-id")
}
pub fn eval_installation_id_path() -> PathBuf {
dirs::data_local_dir()
.unwrap_or_else(|| PathBuf::from("."))
.join("zed-eval-installation-id")
}