Tickscript using Sigma i see Field value mismatch with message

I am using the following tickscript to alert using sigma (standard deviation) and i am seeing a huge number of value mismatch.

Field “Percent_Processor_Time_Sigma” in message and in itself populates different values, why is that?

var db = ‘test’

var rp = ‘autogen’

var measurement = ‘Process’

var groupBy = [‘instance’, ‘host’]

var whereFilter = lambda: (“instance” != ‘Idle’)

var message = ‘{{ if eq .Level “OK” }} “Percent_Processor_Time_Sigma is Less than 1, value : {{ index .Fields “Percent_Processor_Time_Sigma” }}” {{ else }} “Percent_Processor_Time_Sigma is Greater than 1, value : {{ index .Fields “Percent_Processor_Time_Sigma” }}” {{ end }}’

var process = stream
|from()
.database(db)
.retentionPolicy(rp)
.measurement(measurement)
.where(whereFilter)
.groupBy(groupBy)
|eval(lambda: sigma(float(“Percent_Processor_Time”)))
.as(‘Percent_Processor_Time_Sigma’)
.keep()
|window()
.period(1m)
.every(1m)
.align()
|log()
|alert()
.crit(lambda: “Percent_Processor_Time_Sigma” >= 1)
.details(‘NA’)
.message(message)
.id(‘AlertID’)
.idTag(‘idTag’)
.levelTag(‘levelTag’)
.messageField(‘messageField’)
.durationField(‘durationField’)
.log(‘C:/temp/Stream_Sigma_Test1.log’)
|log()
|influxDBOut()
.create()
.database(db)
.retentionPolicy(rp)
.measurement(‘Stream_Sigma_Test2’)

This can be solved by using a selector example “last”.