class_name SituationEvaluationResult extends RefCounted var definition_id: StringName var dedupe_key: String var matched := false var opened_situation_id := -1 var reason_traces: Array[String] = [] func _init(definition: StringName = &"", key: String = "", reasons: Array[String] = []) -> void: definition_id = definition dedupe_key = key reason_traces = reasons.duplicate() func add_reason(reason: String) -> void: reason_traces.append(reason)