@apollo-deploy/schemas 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/definitions/apps/index.d.ts +3 -3
- package/dist/definitions/apps/index.d.ts.map +1 -1
- package/dist/definitions/apps/index.js +3 -3
- package/dist/definitions/apps/index.js.map +1 -1
- package/dist/definitions/apps/request.schema.d.ts +0 -21
- package/dist/definitions/apps/request.schema.d.ts.map +1 -1
- package/dist/definitions/apps/request.schema.js +0 -19
- package/dist/definitions/apps/request.schema.js.map +1 -1
- package/dist/definitions/apps/response.schema.d.ts +0 -44
- package/dist/definitions/apps/response.schema.d.ts.map +1 -1
- package/dist/definitions/apps/response.schema.js +0 -24
- package/dist/definitions/apps/response.schema.js.map +1 -1
- package/dist/definitions/artifacts/request.schema.d.ts +42 -0
- package/dist/definitions/artifacts/request.schema.d.ts.map +1 -1
- package/dist/definitions/artifacts/request.schema.js +14 -0
- package/dist/definitions/artifacts/request.schema.js.map +1 -1
- package/dist/definitions/audit-log/domain.schema.d.ts +3 -3
- package/dist/definitions/audit-log/request.schema.d.ts +6 -6
- package/dist/definitions/index.d.ts +9 -2
- package/dist/definitions/index.d.ts.map +1 -1
- package/dist/definitions/index.js +15 -2
- package/dist/definitions/index.js.map +1 -1
- package/dist/definitions/integrations/api.schema.d.ts +69 -69
- package/dist/definitions/integrations/api.schema.d.ts.map +1 -1
- package/dist/definitions/integrations/api.schema.js +37 -37
- package/dist/definitions/integrations/api.schema.js.map +1 -1
- package/dist/definitions/integrations/domain.schema.d.ts +6 -6
- package/dist/definitions/integrations/response.schema.d.ts +3 -3
- package/dist/definitions/marketplace/domain.schema.d.ts +13 -13
- package/dist/definitions/marketplace/request.schema.d.ts +3 -3
- package/dist/definitions/marketplace/response.schema.d.ts +21 -21
- package/dist/definitions/signals/domain.schema.d.ts +626 -0
- package/dist/definitions/signals/domain.schema.d.ts.map +1 -0
- package/dist/definitions/signals/domain.schema.js +248 -0
- package/dist/definitions/signals/domain.schema.js.map +1 -0
- package/dist/definitions/signals/index.d.ts +9 -0
- package/dist/definitions/signals/index.d.ts.map +1 -0
- package/dist/definitions/signals/index.js +12 -0
- package/dist/definitions/signals/index.js.map +1 -0
- package/dist/definitions/signals/request.schema.d.ts +118 -0
- package/dist/definitions/signals/request.schema.d.ts.map +1 -0
- package/dist/definitions/signals/request.schema.js +80 -0
- package/dist/definitions/signals/request.schema.js.map +1 -0
- package/dist/definitions/signals/response.schema.d.ts +1073 -0
- package/dist/definitions/signals/response.schema.d.ts.map +1 -0
- package/dist/definitions/signals/response.schema.js +85 -0
- package/dist/definitions/signals/response.schema.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Signals Domain Schema Definitions
|
|
3
|
+
*
|
|
4
|
+
* Core domain types for the release health signals engine:
|
|
5
|
+
* signal groups, metrics, anomalies, correlations, recommendations, incidents.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
// ---------------------------------------------------------------------------
|
|
9
|
+
// Primitive / shared enums
|
|
10
|
+
// ---------------------------------------------------------------------------
|
|
11
|
+
export const DataSourceSchema = z.enum([
|
|
12
|
+
'sentry',
|
|
13
|
+
'datadog',
|
|
14
|
+
'newrelic',
|
|
15
|
+
'logs',
|
|
16
|
+
'custom',
|
|
17
|
+
]);
|
|
18
|
+
export const SignalGroupTypeSchema = z.enum([
|
|
19
|
+
'stability',
|
|
20
|
+
'performance',
|
|
21
|
+
'errors',
|
|
22
|
+
'usage',
|
|
23
|
+
'infra',
|
|
24
|
+
'logs',
|
|
25
|
+
]);
|
|
26
|
+
export const SignalStatusSchema = z.enum(['healthy', 'warning', 'critical']);
|
|
27
|
+
export const ReleaseHealthStatusSchema = z.enum(['healthy', 'degraded', 'critical']);
|
|
28
|
+
export const GranularitySchema = z.enum(['1m', '5m', '15m', '1h', '6h', '1d']);
|
|
29
|
+
export const MetricUnitSchema = z.enum(['%', 'ms', 'count', 'rps', 'score']);
|
|
30
|
+
// ---------------------------------------------------------------------------
|
|
31
|
+
// Time window
|
|
32
|
+
// ---------------------------------------------------------------------------
|
|
33
|
+
export const TimeWindowSchema = z.object({
|
|
34
|
+
start: z.string().datetime(),
|
|
35
|
+
end: z.string().datetime(),
|
|
36
|
+
granularity: GranularitySchema,
|
|
37
|
+
});
|
|
38
|
+
// ---------------------------------------------------------------------------
|
|
39
|
+
// Segment (dimension breakdown)
|
|
40
|
+
// ---------------------------------------------------------------------------
|
|
41
|
+
export const SegmentSchema = z.object({
|
|
42
|
+
dimension: z.string(),
|
|
43
|
+
value: z.string(),
|
|
44
|
+
metricValue: z.number(),
|
|
45
|
+
});
|
|
46
|
+
// ---------------------------------------------------------------------------
|
|
47
|
+
// Timeseries point
|
|
48
|
+
// ---------------------------------------------------------------------------
|
|
49
|
+
export const TimeseriesPointSchema = z.object({
|
|
50
|
+
t: z.string().datetime(),
|
|
51
|
+
value: z.number(),
|
|
52
|
+
});
|
|
53
|
+
// ---------------------------------------------------------------------------
|
|
54
|
+
// Rollout event
|
|
55
|
+
// ---------------------------------------------------------------------------
|
|
56
|
+
export const RolloutEventTypeSchema = z.enum([
|
|
57
|
+
'percentage_change',
|
|
58
|
+
'stage_transition',
|
|
59
|
+
'pause',
|
|
60
|
+
'rollback',
|
|
61
|
+
]);
|
|
62
|
+
export const RolloutEventSchema = z.object({
|
|
63
|
+
id: z.string().uuid(),
|
|
64
|
+
type: RolloutEventTypeSchema,
|
|
65
|
+
timestamp: z.string().datetime(),
|
|
66
|
+
details: z.object({
|
|
67
|
+
from: z.number().optional(),
|
|
68
|
+
to: z.number().optional(),
|
|
69
|
+
stage: z.string().optional(),
|
|
70
|
+
reason: z.string().optional(),
|
|
71
|
+
}),
|
|
72
|
+
});
|
|
73
|
+
// ---------------------------------------------------------------------------
|
|
74
|
+
// Metric (normalised, provider-agnostic)
|
|
75
|
+
// ---------------------------------------------------------------------------
|
|
76
|
+
export const MetricSchema = z.object({
|
|
77
|
+
key: z.string(),
|
|
78
|
+
label: z.string(),
|
|
79
|
+
value: z.number(),
|
|
80
|
+
unit: MetricUnitSchema,
|
|
81
|
+
baseline: z.object({
|
|
82
|
+
value: z.number(),
|
|
83
|
+
window: z.string(), // e.g. "7d"
|
|
84
|
+
}),
|
|
85
|
+
trend: z.object({
|
|
86
|
+
direction: z.enum(['up', 'down', 'flat']),
|
|
87
|
+
changePercent: z.number(),
|
|
88
|
+
confidence: z.number().min(0).max(1),
|
|
89
|
+
}),
|
|
90
|
+
threshold: z.object({
|
|
91
|
+
warning: z.number(),
|
|
92
|
+
critical: z.number(),
|
|
93
|
+
}),
|
|
94
|
+
segments: z.array(SegmentSchema).optional(),
|
|
95
|
+
timeseries: z.array(TimeseriesPointSchema).optional(),
|
|
96
|
+
source: DataSourceSchema,
|
|
97
|
+
});
|
|
98
|
+
// ---------------------------------------------------------------------------
|
|
99
|
+
// Signal group
|
|
100
|
+
// ---------------------------------------------------------------------------
|
|
101
|
+
export const SignalGroupSchema = z.object({
|
|
102
|
+
type: SignalGroupTypeSchema,
|
|
103
|
+
status: SignalStatusSchema,
|
|
104
|
+
score: z.number().min(0).max(100),
|
|
105
|
+
metrics: z.array(MetricSchema),
|
|
106
|
+
});
|
|
107
|
+
// ---------------------------------------------------------------------------
|
|
108
|
+
// Anomaly
|
|
109
|
+
// ---------------------------------------------------------------------------
|
|
110
|
+
export const AnomalyTypeSchema = z.enum(['spike', 'drift', 'regression', 'drop']);
|
|
111
|
+
export const AnomalySeveritySchema = z.enum(['low', 'medium', 'high']);
|
|
112
|
+
export const AnomalyDetectionMethodSchema = z.enum(['z_score', 'cusum']);
|
|
113
|
+
export const AnomalySchema = z.object({
|
|
114
|
+
id: z.string().uuid(),
|
|
115
|
+
type: AnomalyTypeSchema,
|
|
116
|
+
signal: z.string(), // metric key
|
|
117
|
+
severity: AnomalySeveritySchema,
|
|
118
|
+
detection: z.object({
|
|
119
|
+
method: AnomalyDetectionMethodSchema,
|
|
120
|
+
score: z.number(),
|
|
121
|
+
threshold: z.number(),
|
|
122
|
+
baselineWindow: z.string(),
|
|
123
|
+
}),
|
|
124
|
+
description: z.string(),
|
|
125
|
+
detectedAt: z.string().datetime(),
|
|
126
|
+
relatedMetrics: z.array(z.string()),
|
|
127
|
+
correlatedRolloutEvent: z.string().uuid().optional(),
|
|
128
|
+
});
|
|
129
|
+
// ---------------------------------------------------------------------------
|
|
130
|
+
// Correlation
|
|
131
|
+
// ---------------------------------------------------------------------------
|
|
132
|
+
export const CorrelationTypeSchema = z.enum([
|
|
133
|
+
'rollout_impact',
|
|
134
|
+
'cross_signal',
|
|
135
|
+
'segment_regression',
|
|
136
|
+
]);
|
|
137
|
+
export const CorrelationMethodSchema = z.enum(['changepoint', 'statistical', 'ml']);
|
|
138
|
+
export const CorrelationSchema = z.object({
|
|
139
|
+
id: z.string().uuid(),
|
|
140
|
+
type: CorrelationTypeSchema,
|
|
141
|
+
confidence: z.number().min(0).max(1),
|
|
142
|
+
cause: z.object({
|
|
143
|
+
signal: z.string(),
|
|
144
|
+
value: z.number(),
|
|
145
|
+
}),
|
|
146
|
+
effect: z.object({
|
|
147
|
+
signal: z.string(),
|
|
148
|
+
changePercent: z.number(),
|
|
149
|
+
}),
|
|
150
|
+
detectedAt: z.string().datetime(),
|
|
151
|
+
method: CorrelationMethodSchema,
|
|
152
|
+
});
|
|
153
|
+
// ---------------------------------------------------------------------------
|
|
154
|
+
// Recommendation
|
|
155
|
+
// ---------------------------------------------------------------------------
|
|
156
|
+
export const RecommendationTypeSchema = z.enum([
|
|
157
|
+
'rollback',
|
|
158
|
+
'pause_rollout',
|
|
159
|
+
'increase_rollout',
|
|
160
|
+
'monitor',
|
|
161
|
+
]);
|
|
162
|
+
export const RecommendationSchema = z.object({
|
|
163
|
+
id: z.string().uuid(),
|
|
164
|
+
type: RecommendationTypeSchema,
|
|
165
|
+
confidence: z.number().min(0).max(1),
|
|
166
|
+
reason: z.string(),
|
|
167
|
+
basedOn: z.array(z.string()), // metric keys or anomaly IDs
|
|
168
|
+
suggestedAction: z
|
|
169
|
+
.object({
|
|
170
|
+
rolloutPercentage: z.number().min(0).max(100).optional(),
|
|
171
|
+
})
|
|
172
|
+
.optional(),
|
|
173
|
+
});
|
|
174
|
+
// ---------------------------------------------------------------------------
|
|
175
|
+
// Incident summary
|
|
176
|
+
// ---------------------------------------------------------------------------
|
|
177
|
+
export const IncidentStatusSchema = z.enum(['open', 'resolved']);
|
|
178
|
+
export const IncidentSeveritySchema = z.enum(['warning', 'critical']);
|
|
179
|
+
export const IncidentSummarySchema = z.object({
|
|
180
|
+
id: z.string().uuid(),
|
|
181
|
+
status: IncidentStatusSchema,
|
|
182
|
+
severity: IncidentSeveritySchema,
|
|
183
|
+
title: z.string(),
|
|
184
|
+
startedAt: z.string().datetime(),
|
|
185
|
+
resolvedAt: z.string().datetime().optional(),
|
|
186
|
+
affectedSignals: z.array(z.string()),
|
|
187
|
+
affectedSegments: z.array(SegmentSchema).optional(),
|
|
188
|
+
source: DataSourceSchema,
|
|
189
|
+
});
|
|
190
|
+
// ---------------------------------------------------------------------------
|
|
191
|
+
// Rollout context
|
|
192
|
+
// ---------------------------------------------------------------------------
|
|
193
|
+
export const RolloutPhaseSchema = z.enum(['canary', 'scaling', 'full']);
|
|
194
|
+
export const RolloutStrategySchema = z.enum(['canary', 'rolling', 'blue_green']);
|
|
195
|
+
export const RolloutContextSchema = z.object({
|
|
196
|
+
currentPercentage: z.number().min(0).max(100),
|
|
197
|
+
strategy: RolloutStrategySchema,
|
|
198
|
+
events: z.array(RolloutEventSchema),
|
|
199
|
+
});
|
|
200
|
+
// ---------------------------------------------------------------------------
|
|
201
|
+
// Signals snapshot (the full response model)
|
|
202
|
+
// ---------------------------------------------------------------------------
|
|
203
|
+
export const SignalsSnapshotSchema = z.object({
|
|
204
|
+
id: z.string().uuid(),
|
|
205
|
+
releaseId: z.string().uuid(),
|
|
206
|
+
appId: z.string().uuid(),
|
|
207
|
+
orgId: z.string().uuid(),
|
|
208
|
+
environment: z.string(),
|
|
209
|
+
window: TimeWindowSchema,
|
|
210
|
+
healthScore: z.number().int().min(0).max(100),
|
|
211
|
+
status: ReleaseHealthStatusSchema,
|
|
212
|
+
signals: z.array(SignalGroupSchema),
|
|
213
|
+
anomalies: z.array(AnomalySchema),
|
|
214
|
+
correlations: z.array(CorrelationSchema),
|
|
215
|
+
incidents: z.array(IncidentSummarySchema),
|
|
216
|
+
recommendations: z.array(RecommendationSchema),
|
|
217
|
+
rolloutContext: RolloutContextSchema,
|
|
218
|
+
metadata: z.object({
|
|
219
|
+
snapshotId: z.string().uuid(),
|
|
220
|
+
sampleSize: z.number().int().nonnegative(),
|
|
221
|
+
dataSources: z.array(DataSourceSchema),
|
|
222
|
+
computedAt: z.string().datetime(),
|
|
223
|
+
staleAfter: z.string().datetime(),
|
|
224
|
+
}),
|
|
225
|
+
});
|
|
226
|
+
// ---------------------------------------------------------------------------
|
|
227
|
+
// Webhook payload
|
|
228
|
+
// ---------------------------------------------------------------------------
|
|
229
|
+
export const SignalWebhookPayloadSchema = z.object({
|
|
230
|
+
releaseId: z.string().uuid(),
|
|
231
|
+
status: ReleaseHealthStatusSchema,
|
|
232
|
+
healthScore: z.number().int().min(0).max(100),
|
|
233
|
+
action: z.enum(['pause_recommended', 'rollback_recommended']).optional(),
|
|
234
|
+
confidence: z.number().min(0).max(1).optional(),
|
|
235
|
+
trigger: z.string().optional(),
|
|
236
|
+
});
|
|
237
|
+
// ---------------------------------------------------------------------------
|
|
238
|
+
// Signal event type catalog
|
|
239
|
+
// ---------------------------------------------------------------------------
|
|
240
|
+
export const SIGNAL_EVENT_TYPES = [
|
|
241
|
+
'signals.critical',
|
|
242
|
+
'signals.degraded',
|
|
243
|
+
'signals.recovered',
|
|
244
|
+
'signals.anomaly.high',
|
|
245
|
+
'signals.recommendation.rollback',
|
|
246
|
+
'signals.recommendation.pause',
|
|
247
|
+
];
|
|
248
|
+
//# sourceMappingURL=domain.schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"domain.schema.js","sourceRoot":"","sources":["../../../src/definitions/signals/domain.schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC;IACrC,QAAQ;IACR,SAAS;IACT,UAAU;IACV,MAAM;IACN,QAAQ;CACT,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC1C,WAAW;IACX,aAAa;IACb,QAAQ;IACR,OAAO;IACP,OAAO;IACP,MAAM;CACP,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;AAE7E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;AAErF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;AAE7E,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1B,WAAW,EAAE,iBAAiB;CAC/B,CAAC,CAAC;AAEH,8EAA8E;AAC9E,gCAAgC;AAChC,8EAA8E;AAE9E,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;CACxB,CAAC,CAAC;AAEH,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAEH,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC3C,mBAAmB;IACnB,kBAAkB;IAClB,OAAO;IACP,UAAU;CACX,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACrB,IAAI,EAAE,sBAAsB;IAC5B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;QAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QACzB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC9B,CAAC;CACH,CAAC,CAAC;AAEH,8EAA8E;AAC9E,yCAAyC;AACzC,8EAA8E;AAE9E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,IAAI,EAAE,gBAAgB;IAEtB,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,YAAY;KACjC,CAAC;IAEF,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACzC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;KACrC,CAAC;IAEF,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC;QAClB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;KACrB,CAAC;IAEF,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE;IAC3C,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE;IAErD,MAAM,EAAE,gBAAgB;CACzB,CAAC,CAAC;AAEH,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,qBAAqB;IAC3B,MAAM,EAAE,kBAAkB;IAC1B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IACjC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;CAC/B,CAAC,CAAC;AAEH,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;AAElF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;AAEzE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACrB,IAAI,EAAE,iBAAiB;IACvB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,aAAa;IACjC,QAAQ,EAAE,qBAAqB;IAE/B,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC;QAClB,MAAM,EAAE,4BAA4B;QACpC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;KAC3B,CAAC;IAEF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACnC,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;CACrD,CAAC,CAAC;AAEH,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC1C,gBAAgB;IAChB,cAAc;IACd,oBAAoB;CACrB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;AAEpF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACrB,IAAI,EAAE,qBAAqB;IAC3B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAEpC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;KAClB,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;KAC1B,CAAC;IAEF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,MAAM,EAAE,uBAAuB;CAChC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC7C,UAAU;IACV,eAAe;IACf,kBAAkB;IAClB,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACrB,IAAI,EAAE,wBAAwB;IAC9B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,6BAA6B;IAC3D,eAAe,EAAE,CAAC;SACf,MAAM,CAAC;QACN,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;KACzD,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC;AAEH,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;AAEjE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;AAEtE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACrB,MAAM,EAAE,oBAAoB;IAC5B,QAAQ,EAAE,sBAAsB;IAChC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC5C,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACpC,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE;IACnD,MAAM,EAAE,gBAAgB;CACzB,CAAC,CAAC;AAEH,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;AAExE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;AAEjF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAC7C,QAAQ,EAAE,qBAAqB;IAC/B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;CACpC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,6CAA6C;AAC7C,8EAA8E;AAE9E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAC5B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACxB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IAEvB,MAAM,EAAE,gBAAgB;IAExB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAC7C,MAAM,EAAE,yBAAyB;IAEjC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;IACnC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC;IACjC,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;IACxC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;IACzC,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;IAC9C,cAAc,EAAE,oBAAoB;IAEpC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;QAC7B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;QAC1C,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;QACtC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAClC,CAAC;CACH,CAAC,CAAC;AAEH,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAC5B,MAAM,EAAE,yBAAyB;IACjC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAC7C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC,CAAC,QAAQ,EAAE;IACxE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC/C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAEH,8EAA8E;AAC9E,4BAA4B;AAC5B,8EAA8E;AAE9E,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,kBAAkB;IAClB,kBAAkB;IAClB,mBAAmB;IACnB,sBAAsB;IACtB,iCAAiC;IACjC,8BAA8B;CACtB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Signals Domain Schemas
|
|
3
|
+
*
|
|
4
|
+
* Barrel exports for all signals schema definitions.
|
|
5
|
+
*/
|
|
6
|
+
export { DataSourceSchema, SignalGroupTypeSchema, SignalStatusSchema, ReleaseHealthStatusSchema, GranularitySchema, MetricUnitSchema, TimeWindowSchema, SegmentSchema, TimeseriesPointSchema, RolloutEventTypeSchema, RolloutEventSchema, MetricSchema, SignalGroupSchema, AnomalyTypeSchema, AnomalySeveritySchema, AnomalyDetectionMethodSchema, AnomalySchema, CorrelationTypeSchema, CorrelationMethodSchema, CorrelationSchema, RecommendationTypeSchema, RecommendationSchema, IncidentStatusSchema, IncidentSeveritySchema, IncidentSummarySchema, RolloutPhaseSchema, RolloutStrategySchema, RolloutContextSchema, SignalsSnapshotSchema, SignalWebhookPayloadSchema, SIGNAL_EVENT_TYPES, type DataSource, type SignalGroupType, type SignalStatus, type ReleaseHealthStatus, type Granularity, type MetricUnit, type TimeWindow, type Segment, type TimeseriesPoint, type RolloutEventType, type RolloutEvent, type Metric, type SignalGroup, type AnomalyType, type AnomalySeverity, type AnomalyDetectionMethod, type Anomaly, type CorrelationType, type CorrelationMethod, type Correlation, type RecommendationType, type Recommendation, type IncidentStatus, type IncidentSeverity, type IncidentSummary, type RolloutPhase, type RolloutStrategy, type RolloutContext, type SignalsSnapshot, type SignalWebhookPayload, type SignalEventType, } from './domain.schema.js';
|
|
7
|
+
export { SignalsReleaseIdParamSchema, GetSignalsQuerySchema, GetSignalsHistoryQuerySchema, CompareSignalsQuerySchema, GateConditionOperatorSchema, GateConditionSchema, EvaluateGateBodySchema, AnnotateEventBodySchema, type SignalsReleaseIdParam, type GetSignalsQuery, type GetSignalsHistoryQuery, type CompareSignalsQuery, type GateConditionOperator, type GateCondition, type EvaluateGateBody, type AnnotateEventBody, } from './request.schema.js';
|
|
8
|
+
export { SignalsResponseSchema, SignalsHistoryResponseSchema, MetricDeltaSchema, SignalsCompareResponseSchema, GateConditionResultSchema, GateEvaluationResponseSchema, AnnotateEventResponseSchema, SignalUpdateEventSchema, SignalCriticalEventSchema, SignalRecoveredEventSchema, type SignalsResponse, type SignalsHistoryResponse, type MetricDelta, type SignalsCompareResponse, type GateConditionResult, type GateEvaluationResponse, type AnnotateEventResponse, type SignalUpdateEvent, type SignalCriticalEvent, type SignalRecoveredEvent, } from './response.schema.js';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/definitions/signals/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,4BAA4B,EAC5B,aAAa,EACb,qBAAqB,EACrB,uBAAuB,EACvB,iBAAiB,EACjB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,kBAAkB,EAClB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,OAAO,EACZ,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,OAAO,EACZ,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,eAAe,GACrB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,4BAA4B,EAC5B,yBAAyB,EACzB,2BAA2B,EAC3B,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,iBAAiB,EACjB,4BAA4B,EAC5B,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAC3B,uBAAuB,EACvB,yBAAyB,EACzB,0BAA0B,EAC1B,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GAC1B,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Signals Domain Schemas
|
|
3
|
+
*
|
|
4
|
+
* Barrel exports for all signals schema definitions.
|
|
5
|
+
*/
|
|
6
|
+
// Domain schemas and types
|
|
7
|
+
export { DataSourceSchema, SignalGroupTypeSchema, SignalStatusSchema, ReleaseHealthStatusSchema, GranularitySchema, MetricUnitSchema, TimeWindowSchema, SegmentSchema, TimeseriesPointSchema, RolloutEventTypeSchema, RolloutEventSchema, MetricSchema, SignalGroupSchema, AnomalyTypeSchema, AnomalySeveritySchema, AnomalyDetectionMethodSchema, AnomalySchema, CorrelationTypeSchema, CorrelationMethodSchema, CorrelationSchema, RecommendationTypeSchema, RecommendationSchema, IncidentStatusSchema, IncidentSeveritySchema, IncidentSummarySchema, RolloutPhaseSchema, RolloutStrategySchema, RolloutContextSchema, SignalsSnapshotSchema, SignalWebhookPayloadSchema, SIGNAL_EVENT_TYPES, } from './domain.schema.js';
|
|
8
|
+
// Request schemas and types
|
|
9
|
+
export { SignalsReleaseIdParamSchema, GetSignalsQuerySchema, GetSignalsHistoryQuerySchema, CompareSignalsQuerySchema, GateConditionOperatorSchema, GateConditionSchema, EvaluateGateBodySchema, AnnotateEventBodySchema, } from './request.schema.js';
|
|
10
|
+
// Response schemas and types
|
|
11
|
+
export { SignalsResponseSchema, SignalsHistoryResponseSchema, MetricDeltaSchema, SignalsCompareResponseSchema, GateConditionResultSchema, GateEvaluationResponseSchema, AnnotateEventResponseSchema, SignalUpdateEventSchema, SignalCriticalEventSchema, SignalRecoveredEventSchema, } from './response.schema.js';
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/definitions/signals/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,2BAA2B;AAC3B,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,4BAA4B,EAC5B,aAAa,EACb,qBAAqB,EACrB,uBAAuB,EACvB,iBAAiB,EACjB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,kBAAkB,GAgCnB,MAAM,oBAAoB,CAAC;AAE5B,4BAA4B;AAC5B,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,4BAA4B,EAC5B,yBAAyB,EACzB,2BAA2B,EAC3B,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,GASxB,MAAM,qBAAqB,CAAC;AAE7B,6BAA6B;AAC7B,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,iBAAiB,EACjB,4BAA4B,EAC5B,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAC3B,uBAAuB,EACvB,yBAAyB,EACzB,0BAA0B,GAW3B,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Signals Request Schemas
|
|
3
|
+
*
|
|
4
|
+
* Validation schemas for all inbound Signals API requests.
|
|
5
|
+
*/
|
|
6
|
+
import { z } from 'zod';
|
|
7
|
+
export declare const SignalsReleaseIdParamSchema: z.ZodObject<{
|
|
8
|
+
releaseId: z.ZodString;
|
|
9
|
+
}, z.core.$strip>;
|
|
10
|
+
export declare const GetSignalsQuerySchema: z.ZodObject<{
|
|
11
|
+
window: z.ZodDefault<z.ZodEnum<{
|
|
12
|
+
"1h": "1h";
|
|
13
|
+
"1d": "1d";
|
|
14
|
+
"5m": "5m";
|
|
15
|
+
"15m": "15m";
|
|
16
|
+
"6h": "6h";
|
|
17
|
+
}>>;
|
|
18
|
+
granularity: z.ZodOptional<z.ZodEnum<{
|
|
19
|
+
"1m": "1m";
|
|
20
|
+
"1h": "1h";
|
|
21
|
+
"1d": "1d";
|
|
22
|
+
"5m": "5m";
|
|
23
|
+
"15m": "15m";
|
|
24
|
+
"6h": "6h";
|
|
25
|
+
}>>;
|
|
26
|
+
include: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string[], string>>, z.ZodArray<z.ZodEnum<{
|
|
27
|
+
segments: "segments";
|
|
28
|
+
timeseries: "timeseries";
|
|
29
|
+
}>>>>;
|
|
30
|
+
environment: z.ZodDefault<z.ZodString>;
|
|
31
|
+
}, z.core.$strip>;
|
|
32
|
+
export declare const GetSignalsHistoryQuerySchema: z.ZodObject<{
|
|
33
|
+
start: z.ZodString;
|
|
34
|
+
end: z.ZodString;
|
|
35
|
+
granularity: z.ZodDefault<z.ZodEnum<{
|
|
36
|
+
"1m": "1m";
|
|
37
|
+
"1h": "1h";
|
|
38
|
+
"1d": "1d";
|
|
39
|
+
"5m": "5m";
|
|
40
|
+
"15m": "15m";
|
|
41
|
+
"6h": "6h";
|
|
42
|
+
}>>;
|
|
43
|
+
}, z.core.$strip>;
|
|
44
|
+
export declare const CompareSignalsQuerySchema: z.ZodObject<{
|
|
45
|
+
base: z.ZodString;
|
|
46
|
+
target: z.ZodString;
|
|
47
|
+
window: z.ZodDefault<z.ZodEnum<{
|
|
48
|
+
"1h": "1h";
|
|
49
|
+
"1d": "1d";
|
|
50
|
+
"5m": "5m";
|
|
51
|
+
"15m": "15m";
|
|
52
|
+
"6h": "6h";
|
|
53
|
+
}>>;
|
|
54
|
+
}, z.core.$strip>;
|
|
55
|
+
export declare const GateConditionOperatorSchema: z.ZodEnum<{
|
|
56
|
+
eq: "eq";
|
|
57
|
+
gt: "gt";
|
|
58
|
+
gte: "gte";
|
|
59
|
+
lt: "lt";
|
|
60
|
+
lte: "lte";
|
|
61
|
+
deviation_lt: "deviation_lt";
|
|
62
|
+
deviation_gt: "deviation_gt";
|
|
63
|
+
}>;
|
|
64
|
+
export declare const GateConditionSchema: z.ZodObject<{
|
|
65
|
+
metric: z.ZodString;
|
|
66
|
+
operator: z.ZodEnum<{
|
|
67
|
+
eq: "eq";
|
|
68
|
+
gt: "gt";
|
|
69
|
+
gte: "gte";
|
|
70
|
+
lt: "lt";
|
|
71
|
+
lte: "lte";
|
|
72
|
+
deviation_lt: "deviation_lt";
|
|
73
|
+
deviation_gt: "deviation_gt";
|
|
74
|
+
}>;
|
|
75
|
+
value: z.ZodNumber;
|
|
76
|
+
}, z.core.$strip>;
|
|
77
|
+
export declare const EvaluateGateBodySchema: z.ZodObject<{
|
|
78
|
+
conditions: z.ZodArray<z.ZodObject<{
|
|
79
|
+
metric: z.ZodString;
|
|
80
|
+
operator: z.ZodEnum<{
|
|
81
|
+
eq: "eq";
|
|
82
|
+
gt: "gt";
|
|
83
|
+
gte: "gte";
|
|
84
|
+
lt: "lt";
|
|
85
|
+
lte: "lte";
|
|
86
|
+
deviation_lt: "deviation_lt";
|
|
87
|
+
deviation_gt: "deviation_gt";
|
|
88
|
+
}>;
|
|
89
|
+
value: z.ZodNumber;
|
|
90
|
+
}, z.core.$strip>>;
|
|
91
|
+
mode: z.ZodDefault<z.ZodEnum<{
|
|
92
|
+
any: "any";
|
|
93
|
+
all: "all";
|
|
94
|
+
}>>;
|
|
95
|
+
}, z.core.$strip>;
|
|
96
|
+
export declare const AnnotateEventBodySchema: z.ZodObject<{
|
|
97
|
+
type: z.ZodEnum<{
|
|
98
|
+
rollback: "rollback";
|
|
99
|
+
percentage_change: "percentage_change";
|
|
100
|
+
stage_transition: "stage_transition";
|
|
101
|
+
pause: "pause";
|
|
102
|
+
}>;
|
|
103
|
+
details: z.ZodObject<{
|
|
104
|
+
from: z.ZodOptional<z.ZodNumber>;
|
|
105
|
+
to: z.ZodOptional<z.ZodNumber>;
|
|
106
|
+
stage: z.ZodOptional<z.ZodString>;
|
|
107
|
+
reason: z.ZodOptional<z.ZodString>;
|
|
108
|
+
}, z.core.$strip>;
|
|
109
|
+
}, z.core.$strip>;
|
|
110
|
+
export type SignalsReleaseIdParam = z.infer<typeof SignalsReleaseIdParamSchema>;
|
|
111
|
+
export type GetSignalsQuery = z.infer<typeof GetSignalsQuerySchema>;
|
|
112
|
+
export type GetSignalsHistoryQuery = z.infer<typeof GetSignalsHistoryQuerySchema>;
|
|
113
|
+
export type CompareSignalsQuery = z.infer<typeof CompareSignalsQuerySchema>;
|
|
114
|
+
export type GateConditionOperator = z.infer<typeof GateConditionOperatorSchema>;
|
|
115
|
+
export type GateCondition = z.infer<typeof GateConditionSchema>;
|
|
116
|
+
export type EvaluateGateBody = z.infer<typeof EvaluateGateBodySchema>;
|
|
117
|
+
export type AnnotateEventBody = z.infer<typeof AnnotateEventBodySchema>;
|
|
118
|
+
//# sourceMappingURL=request.schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request.schema.d.ts","sourceRoot":"","sources":["../../../src/definitions/signals/request.schema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,2BAA2B;;iBAEtC,CAAC;AAMH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;iBAahC,CAAC;AAMH,eAAO,MAAM,4BAA4B;;;;;;;;;;;iBAIvC,CAAC;AAMH,eAAO,MAAM,yBAAyB;;;;;;;;;;iBAIpC,CAAC;AAMH,eAAO,MAAM,2BAA2B;;;;;;;;EAQtC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;iBAI9B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;iBAGjC,CAAC;AAMH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;iBAQlC,CAAC;AAMH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Signals Request Schemas
|
|
3
|
+
*
|
|
4
|
+
* Validation schemas for all inbound Signals API requests.
|
|
5
|
+
*/
|
|
6
|
+
import { z } from 'zod';
|
|
7
|
+
import { GranularitySchema, RolloutEventTypeSchema } from './domain.schema.js';
|
|
8
|
+
// ---------------------------------------------------------------------------
|
|
9
|
+
// Shared param schemas
|
|
10
|
+
// ---------------------------------------------------------------------------
|
|
11
|
+
export const SignalsReleaseIdParamSchema = z.object({
|
|
12
|
+
releaseId: z.string().uuid(),
|
|
13
|
+
});
|
|
14
|
+
// ---------------------------------------------------------------------------
|
|
15
|
+
// GET /signals/:releaseId
|
|
16
|
+
// ---------------------------------------------------------------------------
|
|
17
|
+
export const GetSignalsQuerySchema = z.object({
|
|
18
|
+
/** Time window: default 15m */
|
|
19
|
+
window: z.enum(['5m', '15m', '1h', '6h', '1d']).default('15m'),
|
|
20
|
+
/** Timeseries granularity within the window */
|
|
21
|
+
granularity: GranularitySchema.optional(),
|
|
22
|
+
/** Comma-separated optional includes */
|
|
23
|
+
include: z
|
|
24
|
+
.string()
|
|
25
|
+
.transform((v) => v.split(',').map((s) => s.trim()))
|
|
26
|
+
.pipe(z.array(z.enum(['timeseries', 'segments'])))
|
|
27
|
+
.optional(),
|
|
28
|
+
/** Target environment */
|
|
29
|
+
environment: z.string().default('production'),
|
|
30
|
+
});
|
|
31
|
+
// ---------------------------------------------------------------------------
|
|
32
|
+
// GET /signals/:releaseId/history
|
|
33
|
+
// ---------------------------------------------------------------------------
|
|
34
|
+
export const GetSignalsHistoryQuerySchema = z.object({
|
|
35
|
+
start: z.string().datetime(),
|
|
36
|
+
end: z.string().datetime(),
|
|
37
|
+
granularity: GranularitySchema.default('15m'),
|
|
38
|
+
});
|
|
39
|
+
// ---------------------------------------------------------------------------
|
|
40
|
+
// GET /signals/compare
|
|
41
|
+
// ---------------------------------------------------------------------------
|
|
42
|
+
export const CompareSignalsQuerySchema = z.object({
|
|
43
|
+
base: z.string().uuid(),
|
|
44
|
+
target: z.string().uuid(),
|
|
45
|
+
window: z.enum(['5m', '15m', '1h', '6h', '1d']).default('1h'),
|
|
46
|
+
});
|
|
47
|
+
// ---------------------------------------------------------------------------
|
|
48
|
+
// POST /signals/:releaseId/evaluate
|
|
49
|
+
// ---------------------------------------------------------------------------
|
|
50
|
+
export const GateConditionOperatorSchema = z.enum([
|
|
51
|
+
'lt',
|
|
52
|
+
'gt',
|
|
53
|
+
'lte',
|
|
54
|
+
'gte',
|
|
55
|
+
'eq',
|
|
56
|
+
'deviation_lt',
|
|
57
|
+
'deviation_gt',
|
|
58
|
+
]);
|
|
59
|
+
export const GateConditionSchema = z.object({
|
|
60
|
+
metric: z.string(),
|
|
61
|
+
operator: GateConditionOperatorSchema,
|
|
62
|
+
value: z.number(),
|
|
63
|
+
});
|
|
64
|
+
export const EvaluateGateBodySchema = z.object({
|
|
65
|
+
conditions: z.array(GateConditionSchema).min(1),
|
|
66
|
+
mode: z.enum(['all', 'any']).default('all'),
|
|
67
|
+
});
|
|
68
|
+
// ---------------------------------------------------------------------------
|
|
69
|
+
// POST /signals/:releaseId/annotate
|
|
70
|
+
// ---------------------------------------------------------------------------
|
|
71
|
+
export const AnnotateEventBodySchema = z.object({
|
|
72
|
+
type: RolloutEventTypeSchema,
|
|
73
|
+
details: z.object({
|
|
74
|
+
from: z.number().optional(),
|
|
75
|
+
to: z.number().optional(),
|
|
76
|
+
stage: z.string().optional(),
|
|
77
|
+
reason: z.string().optional(),
|
|
78
|
+
}),
|
|
79
|
+
});
|
|
80
|
+
//# sourceMappingURL=request.schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request.schema.js","sourceRoot":"","sources":["../../../src/definitions/signals/request.schema.ts"],"names":[],"mappings":"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"}
|