Task SLA and SLA Timeline show different results when dot-walked fields used in SLA definition conditionsIssue Task SLA and SLA Timeline show different results, such as breached/not breached or different business pause duration when dot-walked fields used in SLA (start, pause, cancel, stop, reset) conditions. Also SLA Repair results in different results to original Task SLA record.CauseWhen creating a new SLA definition as a Best Practice it is advised not to use dot-walked fields in any of the SLA conditions (start, stop, pause, reset and cancel), especially if these dot-walked fields change frequently. This is because the SLA engine has features such as SLA Timeline and SLA repair which replay the audit history of the Task that the task_sla is attached to, but does not replay the audit history of any dot-walked fields from that Task, rather only considering the final state of the dot-walk fields. For example, if a pause condition is set to an incident dot-walk field such as incident.company.cost_center and in real time the Cost Center is set to Finance, and later changed to Engineering. Then, when the SLA repair runs, only the final Cost Center is considered. So, if the SLA pause condition is: incident.company.cost_center is Engineering, SLA Repair pauses immediately as it does not consider the previous Cost Center value: Finance. The same happens to SLA Timeline. However in real time, when the SLA Engine ran to create the task_sla record, the Cost Center was Finance (in future it changed to Engineering, but that has not happened yet) and therefore the task_sla would not be in pause state.ResolutionSince the Best Practice is not to use dot-walked fields, what is the alternative if requirements dictate dot-walked field values. Continuing with the example above, if the requirement is to pause when incident.company.cost_center is Engineering but not Finance, that audit history needs to be on the Task record using a custom field. Create a custom field (in this example on the incident table) like: u_company_cost_center and create Business Rules to populate that field when either the company changes or the cost_center of the company changes (note the deeper the dot walk, the more Business Rules will be required). Now rather than setting the SLA pause condition to the dot-walked field it is set against the custom field, ensuring in the task_sla, SLA repair and SLA Timeline always showing the same results.