package validator import ( "strings" "testing" "time" "browser.local/platform/domain" ) func TestObservabilityValidatorsBoundMetricsBackupsAndRemoteTargets(t *testing.T) { if err := ValidateMetricSample(domain.MetricSample{ID: "metric-1", ServerInstanceID: "server-1", Source: "run", CollectedAt: time.Now(), CPUPercent: floatPtr(-1)}); err == nil { t.Fatal("expected negative metric rejection") } if err := ValidateBackupRecord(domain.BackupRecord{ID: "backup-1", ServerInstanceID: "server-1", ArtifactID: "artifact-1", SizeBytes: 1, Checksum: "sha256:" + strings.Repeat("0", 64), State: domain.BackupStateAvailable, RecoveryStatus: strings.Repeat("x", 257)}); err == nil { t.Fatal("expected oversized recovery status rejection") } if err := ValidateRemoteAdapterRequest(domain.RemoteAdapterRequest{ServerInstanceID: "server-1", DeclarationKey: "ftp", TargetKey: "tcp://host", Capability: "remote.ftp.read", IdempotencyKey: "request-1"}); err == nil { t.Fatal("expected unsafe remote target rejection") } } func floatPtr(value float64) *float64 { return &value }