feat(operations): add automated reconciliation center
This commit is contained in:
@@ -736,6 +736,92 @@ type AlertNotificationReadRequest struct {
|
||||
Actor string `json:"actor"`
|
||||
}
|
||||
|
||||
type ReconciliationQuery struct {
|
||||
Keyword string `json:"keyword"`
|
||||
RuleCode string `json:"ruleCode"`
|
||||
Category string `json:"category"`
|
||||
Severity string `json:"severity"`
|
||||
Status string `json:"status"`
|
||||
Limit int `json:"limit"`
|
||||
Offset int `json:"offset"`
|
||||
}
|
||||
|
||||
type ReconciliationIssue struct {
|
||||
ID string `json:"id"`
|
||||
RuleCode string `json:"ruleCode"`
|
||||
Category string `json:"category"`
|
||||
Severity string `json:"severity"`
|
||||
Status string `json:"status"`
|
||||
VIN string `json:"vin"`
|
||||
Plate string `json:"plate"`
|
||||
ProtocolA string `json:"protocolA"`
|
||||
ProtocolB string `json:"protocolB"`
|
||||
Title string `json:"title"`
|
||||
Summary string `json:"summary"`
|
||||
Evidence map[string]any `json:"evidence"`
|
||||
FirstSeenAt string `json:"firstSeenAt"`
|
||||
LastSeenAt string `json:"lastSeenAt"`
|
||||
OccurrenceCount int64 `json:"occurrenceCount"`
|
||||
RecoveredAt string `json:"recoveredAt"`
|
||||
ResolutionNote string `json:"resolutionNote"`
|
||||
ResolvedBy string `json:"resolvedBy"`
|
||||
Version int `json:"version"`
|
||||
Actions []ReconciliationAction `json:"actions,omitempty"`
|
||||
}
|
||||
|
||||
type ReconciliationAction struct {
|
||||
ID int64 `json:"id"`
|
||||
Action string `json:"action"`
|
||||
FromStatus string `json:"fromStatus"`
|
||||
ToStatus string `json:"toStatus"`
|
||||
Actor string `json:"actor"`
|
||||
Note string `json:"note"`
|
||||
CreatedAt string `json:"createdAt"`
|
||||
}
|
||||
|
||||
type ReconciliationActionRequest struct {
|
||||
Version int `json:"version"`
|
||||
Status string `json:"status"`
|
||||
Note string `json:"note"`
|
||||
Actor string `json:"actor"`
|
||||
}
|
||||
|
||||
type ReconciliationBucket struct {
|
||||
Name string `json:"name"`
|
||||
Count int `json:"count"`
|
||||
}
|
||||
|
||||
type ReconciliationTrendPoint struct {
|
||||
Date string `json:"date"`
|
||||
Detected int `json:"detected"`
|
||||
New int `json:"new"`
|
||||
Active int `json:"active"`
|
||||
Recovered int `json:"recovered"`
|
||||
}
|
||||
|
||||
type ReconciliationSummary struct {
|
||||
Active int `json:"active"`
|
||||
Pending int `json:"pending"`
|
||||
Confirmed int `json:"confirmed"`
|
||||
Recovered int `json:"recovered"`
|
||||
OverSLA int `json:"overSla"`
|
||||
ByRule []ReconciliationBucket `json:"byRule"`
|
||||
BySeverity []ReconciliationBucket `json:"bySeverity"`
|
||||
Trend []ReconciliationTrendPoint `json:"trend"`
|
||||
LastRunAt string `json:"lastRunAt"`
|
||||
AsOf string `json:"asOf"`
|
||||
}
|
||||
|
||||
type ReconciliationEvaluationResult struct {
|
||||
RunID string `json:"runId"`
|
||||
Detected int `json:"detected"`
|
||||
New int `json:"new"`
|
||||
Active int `json:"active"`
|
||||
Recovered int `json:"recovered"`
|
||||
RuleCounts map[string]int `json:"ruleCounts"`
|
||||
AsOf string `json:"asOf"`
|
||||
}
|
||||
|
||||
type AlertEvaluationResult struct {
|
||||
RulesEvaluated int `json:"rulesEvaluated"`
|
||||
VehiclesScanned int `json:"vehiclesScanned"`
|
||||
|
||||
Reference in New Issue
Block a user