@@ -14,12 +14,16 @@ const { getDeviceId, isContainer } = require('./deviceId');
1414function captureEnvFingerprint ( ) {
1515 const repoRoot = getRepoRoot ( ) ;
1616 let pkgVersion = null ;
17+ let pkgName = null ;
1718 try {
1819 const raw = fs . readFileSync ( path . join ( repoRoot , 'package.json' ) , 'utf8' ) ;
1920 const pkg = JSON . parse ( raw ) ;
2021 pkgVersion = pkg && pkg . version ? String ( pkg . version ) : null ;
22+ pkgName = pkg && pkg . name ? String ( pkg . name ) : null ;
2123 } catch ( e ) { }
2224
25+ const region = ( process . env . EVOLVER_REGION || '' ) . trim ( ) . toLowerCase ( ) . slice ( 0 , 5 ) || undefined ;
26+
2327 return {
2428 device_id : getDeviceId ( ) ,
2529 node_version : process . version ,
@@ -28,6 +32,9 @@ function captureEnvFingerprint() {
2832 os_release : os . release ( ) ,
2933 hostname : crypto . createHash ( 'sha256' ) . update ( os . hostname ( ) ) . digest ( 'hex' ) . slice ( 0 , 12 ) ,
3034 evolver_version : pkgVersion ,
35+ client : pkgName || 'evolver' ,
36+ client_version : pkgVersion ,
37+ region : region ,
3138 cwd : process . cwd ( ) ,
3239 container : isContainer ( ) ,
3340 } ;
@@ -43,7 +50,8 @@ function envFingerprintKey(fp) {
4350 fp . platform || '' ,
4451 fp . arch || '' ,
4552 fp . hostname || '' ,
46- fp . evolver_version || '' ,
53+ fp . client || fp . evolver_version || '' ,
54+ fp . client_version || fp . evolver_version || '' ,
4755 ] . join ( '|' ) ;
4856 return crypto . createHash ( 'sha256' ) . update ( parts , 'utf8' ) . digest ( 'hex' ) . slice ( 0 , 16 ) ;
4957}
0 commit comments