fix(growth): harden deterministic report evidence

This commit is contained in:
2026-08-21 00:32:21 +03:30
parent 1d8d4edf92
commit 6c80f71847
11 changed files with 369 additions and 103 deletions

View File

@@ -3,8 +3,9 @@ package growth
import "time"
const (
CatalogVersion = "1405.1"
AnalyticsVersion = "1.0.0"
CatalogVersion = "1405.2"
AnalyticsVersion = "1.1.0"
DefaultModelConfigVersion = "avalai-responses-v1-tools4-turns2-output1600"
MinBaselineObservations = 4
MinBaselineSessions = 100
@@ -26,6 +27,7 @@ const (
SuppressionInsufficientObservations SuppressionReason = "INSUFFICIENT_BASELINE_OBSERVATIONS"
SuppressionInsufficientBaselineSessions SuppressionReason = "INSUFFICIENT_BASELINE_SESSIONS"
SuppressionInsufficientHistory SuppressionReason = "INSUFFICIENT_HISTORY"
SuppressionIncompleteEventWindow SuppressionReason = "INCOMPLETE_EVENT_WINDOW"
SuppressionInsufficientCohort SuppressionReason = "INSUFFICIENT_COHORT"
SuppressionTerminalScope SuppressionReason = "TERMINAL_SCOPE_UNSUPPORTED"
)
@@ -46,15 +48,18 @@ const (
)
type Event struct {
ID string `json:"id"`
TitleFA string `json:"titleFa"`
StartDate time.Time `json:"startDate"`
EndDate time.Time `json:"endDate"`
Family string `json:"family"`
Tags []string `json:"tags"`
Source string `json:"source"`
Categories []string `json:"categories"`
Kind EventKind `json:"kind"`
ID string `json:"id"`
TitleFA string `json:"titleFa"`
StartDate time.Time `json:"startDate"`
EndDate time.Time `json:"endDate"`
Family string `json:"family"`
Tags []string `json:"tags"`
Source string `json:"source"`
SourceVersion string `json:"sourceVersion"`
Categories []string `json:"categories"`
Kind EventKind `json:"kind"`
OfficialHoliday bool `json:"officialHoliday"`
Universal bool `json:"universal"`
}
type EventEffect struct {
@@ -127,6 +132,7 @@ type Opportunity struct {
type Risk struct {
EvidenceID string `json:"evidenceId"`
Date time.Time `json:"date"`
EndDate time.Time `json:"endDate"`
SessionDeclineBPS int64 `json:"sessionDeclineBps"`
AmountDeclineBPS int64 `json:"amountDeclineBps"`
ExpectedSessions Range `json:"expectedSessions"`
@@ -142,6 +148,7 @@ type CampaignBrief struct {
HeadlineFA string `json:"headlineFa"`
GuidanceFA string `json:"guidanceFa"`
OfferFA string `json:"offerFa"`
MessageFA string `json:"messageFa"`
PreparationFA string `json:"preparationFa"`
LimitationFA string `json:"limitationFa"`
EvidenceIDs []string `json:"evidenceIds"`