{"record":{"id":"e706bbae643b496b","repo":"clash-verge-rev/clash-verge-rev","slug":"failed-to-get-current-user-name","errorCode":null,"errorMessage":"failed to get current user name","messagePattern":"failed to get current user name","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"src-tauri/src/utils/schtasks.rs","lineNumber":61,"sourceCode":"    }\n\n    const fn xml_file_name(self) -> &'static str {\n        match self {\n            Self::User => TASK_XML_USER,\n            Self::Admin => TASK_XML_ADMIN,\n        }\n    }\n}\n\nfn get_exe_path() -> Result<PathBuf> {\n    let exe_path = std::env::current_exe().map_err(|e| anyhow!(\"failed to get exe path: {}\", e))?;\n    Ok(exe_path)\n}\n\nfn get_task_user_id() -> Result<String> {\n    let username = std::env::var_os(\"USERNAME\")\n        .or_else(|| std::env::var_os(\"USER\"))\n        .ok_or_else(|| anyhow!(\"failed to get current user name\"))?;\n    let username = username.to_string_lossy();\n    let username = username.trim();\n    if username.is_empty() {\n        return Err(anyhow!(\"current user name is empty\"));\n    }\n\n    let domain = std::env::var_os(\"USERDOMAIN\")\n        .or_else(|| std::env::var_os(\"COMPUTERNAME\"))\n        .map(|value| value.to_string_lossy().to_string());\n\n    if let Some(domain) = domain {\n        let domain = domain.trim();\n        if !domain.is_empty() {\n            return Ok(format!(\"{domain}\\\\{username}\"));\n        }\n    }\n\n    Ok(username.to_string())","sourceCodeStart":43,"sourceCodeEnd":79,"githubUrl":"https://github.com/clash-verge-rev/clash-verge-rev/blob/5cad0f2799e74b1105e133bcfc2a45f5c1370ef1/src-tauri/src/utils/schtasks.rs#L43-L79","documentation":"Error \"failed to get current user name\" thrown in clash-verge-rev/clash-verge-rev.","triggerScenarios":"Thrown at src-tauri/src/utils/schtasks.rs:61 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"analyzedSha":"5cad0f2799e74b1105e133bcfc2a45f5c1370ef1","analyzedAt":"2026-08-12T03:25:57.699Z","schemaVersion":2},"datasetVersion":"2026-08-12T08:17:17.861Z"}