datadog-frontend-toolkit 1.0.38 → 1.0.40

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.
@@ -58,6 +58,10 @@ class ResourceProvisioner {
58
58
  const sloResults = await this.provisionSlos(service, env, result.monitors, config.team, force);
59
59
  result.slos.push(...sloResults.created);
60
60
  result.errors.push(...sloResults.errors);
61
+ // Burn-rate alerts for each SLO (Google SRE multi-window approach)
62
+ const burnRateResults = await this.provisionBurnRateAlerts(sloResults.created, service, env, config.notificationChannels, config.team, force);
63
+ result.monitors.push(...burnRateResults.created);
64
+ result.errors.push(...burnRateResults.errors);
61
65
  }
62
66
  return result;
63
67
  }
@@ -157,6 +161,117 @@ class ResourceProvisioner {
157
161
  }
158
162
  return { created, errors };
159
163
  }
164
+ /**
165
+ * Provisions burn-rate alert monitors for each SLO.
166
+ * Uses the Google SRE multi-window, multi-burn-rate approach:
167
+ * - High burn (14.4×): 1h long / 5m short window → page
168
+ * - Slow burn (6×): 6h long / 30m short window → ticket
169
+ */
170
+ async provisionBurnRateAlerts(slos, service, env, channels = [], team, force) {
171
+ const created = [];
172
+ const errors = [];
173
+ const tags = [
174
+ `service:${service}`,
175
+ `env:${env}`,
176
+ 'managed:datadog-frontend-toolkit',
177
+ ...(team ? [`team:${team}`] : []),
178
+ ];
179
+ const notify = channels && channels.length > 0
180
+ ? `\n\nNotify: ${channels.map((ch) => `@${ch.type === 'slack' ? 'slack-' : ''}${ch.target}`).join(' ')}`
181
+ : '';
182
+ for (const slo of slos) {
183
+ for (const alert of slos_1.BURN_RATE_ALERTS) {
184
+ const monitorName = `${slo.name} - ${alert.nameSuffix}`;
185
+ try {
186
+ const existing = await this.findExistingMonitor(monitorName);
187
+ const monitorPayload = {
188
+ name: monitorName,
189
+ type: 'slo alert',
190
+ query: `burn_rate("${slo.id}").over("7d").long_window("${alert.long_window}").short_window("${alert.short_window}") > ${alert.critical}`,
191
+ message: `${alert.message}\n\n**SLO:** ${slo.name}\n**Service:** ${service}\n**Environment:** ${env}${notify}`,
192
+ tags,
193
+ options: {
194
+ thresholds: { critical: alert.critical, warning: alert.warning },
195
+ notify_no_data: false,
196
+ include_tags: true,
197
+ },
198
+ };
199
+ if (existing && force) {
200
+ await this.apiRequest('PUT', `/v1/monitor/${existing.id}`, monitorPayload);
201
+ created.push(existing);
202
+ continue;
203
+ }
204
+ if (existing) {
205
+ created.push(existing);
206
+ continue;
207
+ }
208
+ const response = await this.apiRequest('POST', '/v1/monitor', monitorPayload);
209
+ created.push({ id: response.id, name: monitorName });
210
+ }
211
+ catch (err) {
212
+ errors.push(`Burn rate "${monitorName}": ${err instanceof Error ? err.message : String(err)}`);
213
+ }
214
+ }
215
+ }
216
+ return { created, errors };
217
+ }
218
+ /**
219
+ * Tears down (deletes) all toolkit-managed resources for the given service/env.
220
+ * Deletion order: monitors first (including burn-rate alerts), then SLOs, then dashboards.
221
+ */
222
+ async teardown(service, env) {
223
+ const deleted = [];
224
+ const errors = [];
225
+ // 1. Find and delete all managed monitors (includes burn-rate alerts)
226
+ try {
227
+ const response = await this.apiRequest('GET', `/v1/monitor?tag=${encodeURIComponent(MANAGED_TAG)}`);
228
+ const monitors = Array.isArray(response) ? response : [];
229
+ const serviceMonitors = monitors.filter((m) => typeof m.name === 'string' &&
230
+ m.name.includes(`${service} (${env})`));
231
+ for (const m of serviceMonitors) {
232
+ try {
233
+ await this.apiRequest('DELETE', `/v1/monitor/${m.id}?force=true`);
234
+ deleted.push(`Monitor: ${m.name}`);
235
+ }
236
+ catch (err) {
237
+ errors.push(`Delete monitor "${m.name}": ${err instanceof Error ? err.message : String(err)}`);
238
+ }
239
+ }
240
+ }
241
+ catch (err) {
242
+ errors.push(`List monitors: ${err instanceof Error ? err.message : String(err)}`);
243
+ }
244
+ // 2. Find and delete all managed SLOs
245
+ try {
246
+ const response = await this.apiRequest('GET', `/v1/slo?tags_query=${encodeURIComponent(MANAGED_TAG)}`);
247
+ const slos = (response.data || []).filter((s) => typeof s.name === 'string' &&
248
+ s.name.includes(`${service} (${env})`));
249
+ for (const s of slos) {
250
+ try {
251
+ await this.apiRequest('DELETE', `/v1/slo/${s.id}?force=true`);
252
+ deleted.push(`SLO: ${s.name}`);
253
+ }
254
+ catch (err) {
255
+ errors.push(`Delete SLO "${s.name}": ${err instanceof Error ? err.message : String(err)}`);
256
+ }
257
+ }
258
+ }
259
+ catch (err) {
260
+ errors.push(`List SLOs: ${err instanceof Error ? err.message : String(err)}`);
261
+ }
262
+ // 3. Find and delete dashboard
263
+ try {
264
+ const dashboard = await this.findExistingDashboard(service, env);
265
+ if (dashboard) {
266
+ await this.apiRequest('DELETE', `/v1/dashboard/${dashboard.id}`);
267
+ deleted.push(`Dashboard: ${dashboard.title}`);
268
+ }
269
+ }
270
+ catch (err) {
271
+ errors.push(`Delete dashboard: ${err instanceof Error ? err.message : String(err)}`);
272
+ }
273
+ return { deleted, errors };
274
+ }
160
275
  async findExistingDashboard(service, env) {
161
276
  try {
162
277
  const response = await this.apiRequest('GET', '/v1/dashboard');
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceProvisioner.js","sourceRoot":"","sources":["../../../src/resources/ResourceProvisioner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResourceProvisioner.js","sourceRoot":"","sources":["../../../src/resources/ResourceProvisioner.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,45 @@
1
1
  "use strict";
2
2
  /**
3
3
  * SLO templates for Datadog API provisioning.
4
+ * Follows Google SRE and industry best-practices for frontend observability.
5
+ *
4
6
  * Uses only built-in RUM metrics so historical data is available immediately.
5
7
  *
6
8
  * SLO 1 — Frontend Availability (metric-based, event SLO)
7
9
  * good = error-free views, total = all views
8
10
  * Pattern mirrors the classic (total − errors) / total used for backend APIs.
11
+ * Targets are environment-aware (production vs non-production).
9
12
  *
10
13
  * SLO 2 — Core Web Vitals / LCP (time-slice SLO)
11
14
  * Measures % of 5-min windows where p75 LCP < 2.5 s (Google "good" threshold).
12
15
  * Uses the existing rum.measure.view.largest_contentful_paint distribution metric.
13
16
  */
14
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.BURN_RATE_ALERTS = void 0;
15
19
  exports.buildSloTemplates = buildSloTemplates;
20
+ /** Standard multi-window burn-rate alerts (Google SRE playbook). */
21
+ exports.BURN_RATE_ALERTS = [
22
+ {
23
+ nameSuffix: 'High Burn Rate',
24
+ long_window: '1h',
25
+ short_window: '5m',
26
+ critical: 14.4,
27
+ warning: 7.2,
28
+ message: '## 🔥 SLO High Burn Rate\n\nThe error budget is being consumed **14× faster** than sustainable. At this rate the entire 30-day budget will be exhausted in ~2 days.\n\n**Action required:** Investigate immediately — this usually signals a deployment regression or upstream outage.',
29
+ },
30
+ {
31
+ nameSuffix: 'Slow Burn Rate',
32
+ long_window: '6h',
33
+ short_window: '30m',
34
+ critical: 6,
35
+ warning: 3,
36
+ message: '## ⚠️ SLO Slow Burn Rate\n\nThe error budget is being consumed **6× faster** than sustainable. At this rate the entire 30-day budget will be exhausted in ~5 days.\n\n**Action required:** Create a ticket and investigate within 24 hours — this usually signals a gradual degradation.',
37
+ },
38
+ ];
39
+ const PRODUCTION_ENVS = ['production', 'prod', 'prd'];
40
+ function isProduction(env) {
41
+ return PRODUCTION_ENVS.includes(env.toLowerCase());
42
+ }
16
43
  function buildSloTemplates(service, env, _monitorIds, team) {
17
44
  const tags = [
18
45
  `service:${service}`,
@@ -20,26 +47,34 @@ function buildSloTemplates(service, env, _monitorIds, team) {
20
47
  'managed:datadog-frontend-toolkit',
21
48
  ...(team ? [`team:${team}`] : []),
22
49
  ];
50
+ // Environment-aware targets (Google SRE best practice: start realistic, tighten over time)
51
+ const isProd = isProduction(env);
52
+ const availabilityTarget = isProd ? 99.5 : 95;
53
+ const availabilityWarning = isProd ? 99.9 : 98;
23
54
  return [
24
55
  // SLO 1: Frontend Availability — error-free page views / total page views
25
56
  {
26
57
  name: `${service} (${env}) - Frontend Availability`,
27
- description: 'Measures frontend availability as the ratio of error-free page views to total page views. A negative error budget indicates the service has more JS errors than the target allows — this is a real signal, not a bug. Managed by datadog-frontend-toolkit.',
58
+ description: `Measures frontend availability as the ratio of error-free page views to total page views. ` +
59
+ `Target: ${availabilityTarget}% (${isProd ? 'production' : 'non-production'}). ` +
60
+ `A negative error budget indicates the service has more JS errors than the target allows — ` +
61
+ `this is a real signal, not a bug. Managed by datadog-frontend-toolkit.`,
28
62
  type: 'metric',
29
63
  query: {
30
64
  numerator: `sum:rum.measure.view.error_free{service:${service},env:${env}}.as_count()`,
31
65
  denominator: `sum:rum.measure.view{service:${service},env:${env}}.as_count()`,
32
66
  },
33
67
  thresholds: [
34
- { timeframe: '7d', target: 99.5, warning: 99.9 },
35
- { timeframe: '30d', target: 99.5, warning: 99.9 },
68
+ { timeframe: '7d', target: availabilityTarget, warning: availabilityWarning },
69
+ { timeframe: '30d', target: availabilityTarget, warning: availabilityWarning },
36
70
  ],
37
71
  tags,
38
72
  },
39
73
  // SLO 2: Core Web Vitals (LCP) — % of 5-min windows with p75 LCP < 2.5 s
40
74
  {
41
75
  name: `${service} (${env}) - Core Web Vitals (LCP)`,
42
- description: 'Measures the percentage of time where p75 Largest Contentful Paint stays below 2.5 s (Google Core Web Vitals "good" threshold). Managed by datadog-frontend-toolkit.',
76
+ description: 'Measures the percentage of time where p75 Largest Contentful Paint stays below 2.5 s ' +
77
+ '(Google Core Web Vitals "good" threshold). Managed by datadog-frontend-toolkit.',
43
78
  type: 'time_slice',
44
79
  sli_specification: {
45
80
  time_slice: {
@@ -1 +1 @@
1
- {"version":3,"file":"slos.js","sourceRoot":"","sources":["../../../../src/resources/templates/slos.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAeH,8CA4DC;AA5DD,SAAgB,iBAAiB,CAC/B,OAAe,EACf,GAAW,EACX,WAA2C,EAC3C,IAAa;IAEb,MAAM,IAAI,GAAG;QACX,WAAW,OAAO,EAAE;QACpB,OAAO,GAAG,EAAE;QACZ,kCAAkC;QAClC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAClC,CAAC;IAEF,OAAO;QACL,0EAA0E;QAC1E;YACE,IAAI,EAAE,GAAG,OAAO,KAAK,GAAG,2BAA2B;YACnD,WAAW,EACT,4PAA4P;YAC9P,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE;gBACL,SAAS,EAAE,2CAA2C,OAAO,QAAQ,GAAG,cAAc;gBACtF,WAAW,EAAE,gCAAgC,OAAO,QAAQ,GAAG,cAAc;aAC9E;YACD,UAAU,EAAE;gBACV,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;gBAChD,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;aAClD;YACD,IAAI;SACL;QACD,yEAAyE;QACzE;YACE,IAAI,EAAE,GAAG,OAAO,KAAK,GAAG,2BAA2B;YACnD,WAAW,EACT,sKAAsK;YACxK,IAAI,EAAE,YAAY;YAClB,iBAAiB,EAAE;gBACjB,UAAU,EAAE;oBACV,KAAK,EAAE;wBACL,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;wBACjC,OAAO,EAAE;4BACP;gCACE,WAAW,EAAE,SAAS;gCACtB,IAAI,EAAE,QAAQ;gCACd,KAAK,EAAE,yDAAyD,OAAO,QAAQ,GAAG,GAAG;6BACtF;yBACF;qBACF;oBACD,UAAU,EAAE,GAAG;oBACf,SAAS,EAAE,UAAU;oBACrB,sBAAsB,EAAE,GAAG;iBAC5B;aACF;YACD,UAAU,EAAE;gBACV,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;gBAC5C,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;aAC9C;YACD,IAAI;SACL;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"slos.js","sourceRoot":"","sources":["../../../../src/resources/templates/slos.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,7 @@ async function setup(options) {
63
63
  (options['yes'] ? undefined : (await (0, prompt_1.prompt)('Team name (optional)')) || undefined);
64
64
  const dryRun = !!options['dryRun'];
65
65
  const force = !!options['force'];
66
+ const remove = !!options['remove'];
66
67
  // Validate after prompts
67
68
  if (!service) {
68
69
  throw new Error('Service name is required');
@@ -76,6 +77,62 @@ async function setup(options) {
76
77
  if (!appKey) {
77
78
  throw new Error('Datadog App Key is required');
78
79
  }
80
+ // --remove: tear down all managed resources for this service/env
81
+ if (remove) {
82
+ // eslint-disable-next-line no-console
83
+ console.log('');
84
+ // eslint-disable-next-line no-console
85
+ console.log('\x1b[33m%s\x1b[0m', `⚠️ This will DELETE all toolkit-managed resources for ${service} (${env})`);
86
+ // eslint-disable-next-line no-console
87
+ console.log('');
88
+ const skipConfirm = !!options['yes'];
89
+ if (!skipConfirm) {
90
+ const confirmed = await (0, prompt_1.confirm)('Are you sure you want to proceed?');
91
+ if (!confirmed) {
92
+ // eslint-disable-next-line no-console
93
+ console.log('Aborted.');
94
+ return;
95
+ }
96
+ }
97
+ const provisioner = new ResourceProvisioner_1.ResourceProvisioner({
98
+ apiKey,
99
+ appKey,
100
+ site,
101
+ tags: [`service:${service}`, `env:${env}`],
102
+ });
103
+ // eslint-disable-next-line no-console
104
+ console.log('Removing resources...');
105
+ // eslint-disable-next-line no-console
106
+ console.log('');
107
+ const result = await provisioner.teardown(service, env);
108
+ if (result.deleted.length > 0) {
109
+ // eslint-disable-next-line no-console
110
+ console.log('\x1b[32m%s\x1b[0m', '🗑️ Deleted:');
111
+ for (const d of result.deleted) {
112
+ // eslint-disable-next-line no-console
113
+ console.log(` ${d}`);
114
+ }
115
+ }
116
+ else {
117
+ // eslint-disable-next-line no-console
118
+ console.log('No managed resources found.');
119
+ }
120
+ if (result.errors.length > 0) {
121
+ // eslint-disable-next-line no-console
122
+ console.log('');
123
+ // eslint-disable-next-line no-console
124
+ console.log('\x1b[31m%s\x1b[0m', '❌ Errors:');
125
+ for (const e of result.errors) {
126
+ // eslint-disable-next-line no-console
127
+ console.log(` ${e}`);
128
+ }
129
+ }
130
+ // eslint-disable-next-line no-console
131
+ console.log('');
132
+ // eslint-disable-next-line no-console
133
+ console.log('\x1b[36m%s\x1b[0m', '✨ Teardown complete!');
134
+ return;
135
+ }
79
136
  // Ask which resources to provision (unless --yes or --no-* flags were passed)
80
137
  let dashboards = !options['noDashboards'];
81
138
  let monitors = !options['noMonitors'];
@@ -161,6 +218,14 @@ async function setup(options) {
161
218
  console.log(` ✓ SLO: ${service} (${env}) - Frontend Availability`);
162
219
  // eslint-disable-next-line no-console
163
220
  console.log(` ✓ SLO: ${service} (${env}) - Core Web Vitals (LCP)`);
221
+ // eslint-disable-next-line no-console
222
+ console.log(` ✓ Burn Rate Alert: Frontend Availability - High Burn Rate`);
223
+ // eslint-disable-next-line no-console
224
+ console.log(` ✓ Burn Rate Alert: Frontend Availability - Slow Burn Rate`);
225
+ // eslint-disable-next-line no-console
226
+ console.log(` ✓ Burn Rate Alert: Core Web Vitals (LCP) - High Burn Rate`);
227
+ // eslint-disable-next-line no-console
228
+ console.log(` ✓ Burn Rate Alert: Core Web Vitals (LCP) - Slow Burn Rate`);
164
229
  }
165
230
  // eslint-disable-next-line no-console
166
231
  console.log('');
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/cli/commands/setup.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,sBA+RC;AArSD,uCAAyB;AACzB,2CAA6B;AAC7B,6EAA0E;AAE1E,sCAA0E;AAEnE,KAAK,UAAU,KAAK,CAAC,OAAyC;IACnE,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,qCAAqC,CAAC,CAAC;IACxE,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,2DAA2D;IAC3D,MAAM,OAAO,GACV,OAAO,CAAC,SAAS,CAAY;QAC9B,CAAC,MAAM,IAAA,eAAM,EAAC,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IAEzD,MAAM,GAAG,GACN,OAAO,CAAC,KAAK,CAAY;QAC1B,CAAC,MAAM,IAAA,uBAAc,EAAC,aAAa,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAE1F,MAAM,MAAM,GACT,OAAO,CAAC,QAAQ,CAAY;QAC7B,OAAO,CAAC,GAAG,CAAC,UAAU;QACtB,CAAC,MAAM,IAAA,qBAAY,EAAC,8BAA8B,CAAC,CAAC,CAAC;IAEvD,MAAM,MAAM,GACT,OAAO,CAAC,QAAQ,CAAY;QAC7B,OAAO,CAAC,GAAG,CAAC,UAAU;QACtB,CAAC,MAAM,IAAA,qBAAY,EAAC,8BAA8B,CAAC,CAAC,CAAC;IAEvD,MAAM,IAAI,GACP,OAAO,CAAC,MAAM,CAAY;QAC3B,OAAO,CAAC,GAAG,CAAC,OAAO;QACnB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,IAAA,eAAM,EAAC,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC;IAErF,MAAM,IAAI,GACP,OAAO,CAAC,MAAM,CAAY;QAC3B,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,IAAA,eAAM,EAAC,sBAAsB,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;IAErF,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEjC,yBAAyB;IACzB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,8EAA8E;IAC9E,IAAI,UAAU,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAC1C,IAAI,QAAQ,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACtC,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE9B,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAErC,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7F,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QACzC,UAAU,GAAG,MAAM,IAAA,gBAAO,EAAC,uBAAuB,CAAC,CAAC;QACpD,QAAQ,GAAG,MAAM,IAAA,gBAAO,EAAC,0BAA0B,CAAC,CAAC;QACrD,IAAI,GAAG,MAAM,IAAA,gBAAO,EAAC,sBAAsB,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,kBAAkB,GAAuB;QAC7C,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,QAAQ;QACR,IAAI;QACJ,KAAK;QACL,IAAI,EAAE,CAAC,WAAW,OAAO,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;KAC9E,CAAC;IAEF,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,uBAAuB,CAAC,CAAC;IAC1D,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,EAAE,CAAC,CAAC;IACzC,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,EAAE,CAAC,CAAC;IACrC,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;IACtC,IAAI,IAAI,EAAE,CAAC;QACT,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;IACD,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IACxD,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IACtD,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAClD,IAAI,KAAK,EAAE,CAAC;QACV,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,MAAM,EAAE,CAAC;QACX,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;IACvD,CAAC;IACD,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,IAAI,MAAM,EAAE,CAAC;QACX,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,4CAA4C,CAAC,CAAC;QAC/E,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAEhC,IAAI,kBAAkB,CAAC,UAAU,EAAE,CAAC;YAClC,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,2BAA2B,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,kBAAkB,CAAC,QAAQ,EAAE,CAAC;YAChC,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,KAAK,GAAG,8BAA8B,CAAC,CAAC;YAC3E,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,KAAK,GAAG,0BAA0B,CAAC,CAAC;YACvE,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,KAAK,GAAG,oBAAoB,CAAC,CAAC;YACjE,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,KAAK,GAAG,oBAAoB,CAAC,CAAC;YACjE,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,KAAK,GAAG,uBAAuB,CAAC,CAAC;YACpE,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,KAAK,GAAG,0BAA0B,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,kBAAkB,CAAC,IAAI,EAAE,CAAC;YAC5B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,KAAK,GAAG,2BAA2B,CAAC,CAAC;YACpE,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,KAAK,GAAG,2BAA2B,CAAC,CAAC;QACtE,CAAC;QACD,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,yCAAmB,CAAC,kBAAkB,CAAC,CAAC;IAEhE,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACzC,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAE7E,iBAAiB;IACjB,MAAM,OAAO,GAAG,eAAe,IAAI,EAAE,CAAC;IAEtC,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;QAClD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YAClC,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC7B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;QAChD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAChC,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAC;QAC5C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,eAAe,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;QAC9C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC9B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,KAAK,GAAa;QACtB,gCAAgC,OAAO,EAAE;QACzC,EAAE;QACF,yDAAyD,IAAI,IAAI,EAAE,CAAC,cAAc,EAAE,EAAE;QACtF,EAAE;QACF,mBAAmB;QACnB,mBAAmB;QACnB,qBAAqB,OAAO,MAAM;QAClC,yBAAyB,GAAG,MAAM;QAClC,kBAAkB,IAAI,MAAM;QAC5B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,EAAE;KACH,CAAC;IAEF,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,0JAA0J,EAAE,EAAE,CAAC,CAAC;QAC3K,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACrC,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,8DAA8D;IAC9D,MAAM,mBAAmB,GAA2B;QAClD,0BAA0B,EAAE,kJAAkJ;QAC9K,sBAAsB,EAAE,sLAAsL;QAC9M,gBAAgB,EAAE,+KAA+K;QACjM,gBAAgB,EAAE,wJAAwJ;QAC1K,mBAAmB,EAAE,oJAAoJ;QACzK,sBAAsB,EAAE,sKAAsK;KAC/L,CAAC;IAEF,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,mJAAmJ,EAAE,EAAE,CAAC,CAAC;QACpK,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAC/F,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,wBAAwB,OAAO,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YACpE,IAAI,IAAI,EAAE,CAAC;gBACT,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,+KAA+K,EAAE,EAAE,CAAC,CAAC;QAChM,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,wBAAwB,OAAO,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YACtE,KAAK,CAAC,IAAI,CAAC,sIAAsI,EAAE,EAAE,CAAC,CAAC;QACzJ,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QAC/B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvB,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,iBAAiB,SAAS,GAAG,CAAC,CAAC;IAEjD,MAAM,UAAU,GAAG,yBAAyB,OAAO,KAAK,CAAC;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC;IACvD,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IAEpD,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,sCAAsC,UAAU,SAAS,CAAC,CAAC;IACvE,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC;AAC/D,CAAC"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/cli/commands/setup.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,sBAuWC;AA7WD,uCAAyB;AACzB,2CAA6B;AAC7B,6EAA0E;AAE1E,sCAA0E;AAEnE,KAAK,UAAU,KAAK,CAAC,OAAyC;IACnE,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,qCAAqC,CAAC,CAAC;IACxE,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,2DAA2D;IAC3D,MAAM,OAAO,GACV,OAAO,CAAC,SAAS,CAAY;QAC9B,CAAC,MAAM,IAAA,eAAM,EAAC,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IAEzD,MAAM,GAAG,GACN,OAAO,CAAC,KAAK,CAAY;QAC1B,CAAC,MAAM,IAAA,uBAAc,EAAC,aAAa,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAE1F,MAAM,MAAM,GACT,OAAO,CAAC,QAAQ,CAAY;QAC7B,OAAO,CAAC,GAAG,CAAC,UAAU;QACtB,CAAC,MAAM,IAAA,qBAAY,EAAC,8BAA8B,CAAC,CAAC,CAAC;IAEvD,MAAM,MAAM,GACT,OAAO,CAAC,QAAQ,CAAY;QAC7B,OAAO,CAAC,GAAG,CAAC,UAAU;QACtB,CAAC,MAAM,IAAA,qBAAY,EAAC,8BAA8B,CAAC,CAAC,CAAC;IAEvD,MAAM,IAAI,GACP,OAAO,CAAC,MAAM,CAAY;QAC3B,OAAO,CAAC,GAAG,CAAC,OAAO;QACnB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,IAAA,eAAM,EAAC,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC;IAErF,MAAM,IAAI,GACP,OAAO,CAAC,MAAM,CAAY;QAC3B,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,IAAA,eAAM,EAAC,sBAAsB,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;IAErF,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACjC,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEnC,yBAAyB;IACzB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,iEAAiE;IACjE,IAAI,MAAM,EAAE,CAAC;QACX,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,0DAA0D,OAAO,KAAK,GAAG,GAAG,CAAC,CAAC;QAC/G,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,IAAA,gBAAO,EAAC,mCAAmC,CAAC,CAAC;YACrE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBACxB,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,yCAAmB,CAAC;YAC1C,MAAM;YACN,MAAM;YACN,IAAI;YACJ,IAAI,EAAE,CAAC,WAAW,OAAO,EAAE,EAAE,OAAO,GAAG,EAAE,CAAC;SAC3C,CAAC,CAAC;QAEH,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAExD,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;YAClD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC/B,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;YAC9C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAC9B,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAED,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;QACzD,OAAO;IACT,CAAC;IAED,8EAA8E;IAC9E,IAAI,UAAU,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAC1C,IAAI,QAAQ,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACtC,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE9B,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAErC,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7F,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QACzC,UAAU,GAAG,MAAM,IAAA,gBAAO,EAAC,uBAAuB,CAAC,CAAC;QACpD,QAAQ,GAAG,MAAM,IAAA,gBAAO,EAAC,0BAA0B,CAAC,CAAC;QACrD,IAAI,GAAG,MAAM,IAAA,gBAAO,EAAC,sBAAsB,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,kBAAkB,GAAuB;QAC7C,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,QAAQ;QACR,IAAI;QACJ,KAAK;QACL,IAAI,EAAE,CAAC,WAAW,OAAO,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;KAC9E,CAAC;IAEF,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,uBAAuB,CAAC,CAAC;IAC1D,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,EAAE,CAAC,CAAC;IACzC,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,EAAE,CAAC,CAAC;IACrC,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;IACtC,IAAI,IAAI,EAAE,CAAC;QACT,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;IACD,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IACxD,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IACtD,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAClD,IAAI,KAAK,EAAE,CAAC;QACV,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,MAAM,EAAE,CAAC;QACX,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;IACvD,CAAC;IACD,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,IAAI,MAAM,EAAE,CAAC;QACX,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,4CAA4C,CAAC,CAAC;QAC/E,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAEhC,IAAI,kBAAkB,CAAC,UAAU,EAAE,CAAC;YAClC,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,2BAA2B,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,kBAAkB,CAAC,QAAQ,EAAE,CAAC;YAChC,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,KAAK,GAAG,8BAA8B,CAAC,CAAC;YAC3E,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,KAAK,GAAG,0BAA0B,CAAC,CAAC;YACvE,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,KAAK,GAAG,oBAAoB,CAAC,CAAC;YACjE,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,KAAK,GAAG,oBAAoB,CAAC,CAAC;YACjE,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,KAAK,GAAG,uBAAuB,CAAC,CAAC;YACpE,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,KAAK,GAAG,0BAA0B,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,kBAAkB,CAAC,IAAI,EAAE,CAAC;YAC5B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,KAAK,GAAG,2BAA2B,CAAC,CAAC;YACpE,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,KAAK,GAAG,2BAA2B,CAAC,CAAC;YACpE,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;YAC3E,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;YAC3E,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;YAC3E,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;QAC7E,CAAC;QACD,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,yCAAmB,CAAC,kBAAkB,CAAC,CAAC;IAEhE,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACzC,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAE7E,iBAAiB;IACjB,MAAM,OAAO,GAAG,eAAe,IAAI,EAAE,CAAC;IAEtC,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;QAClD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YAClC,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC7B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;QAChD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAChC,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAC;QAC5C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,eAAe,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;QAC9C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC9B,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,KAAK,GAAa;QACtB,gCAAgC,OAAO,EAAE;QACzC,EAAE;QACF,yDAAyD,IAAI,IAAI,EAAE,CAAC,cAAc,EAAE,EAAE;QACtF,EAAE;QACF,mBAAmB;QACnB,mBAAmB;QACnB,qBAAqB,OAAO,MAAM;QAClC,yBAAyB,GAAG,MAAM;QAClC,kBAAkB,IAAI,MAAM;QAC5B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,EAAE;KACH,CAAC;IAEF,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,0JAA0J,EAAE,EAAE,CAAC,CAAC;QAC3K,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACrC,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,8DAA8D;IAC9D,MAAM,mBAAmB,GAA2B;QAClD,0BAA0B,EAAE,kJAAkJ;QAC9K,sBAAsB,EAAE,sLAAsL;QAC9M,gBAAgB,EAAE,+KAA+K;QACjM,gBAAgB,EAAE,wJAAwJ;QAC1K,mBAAmB,EAAE,oJAAoJ;QACzK,sBAAsB,EAAE,sKAAsK;KAC/L,CAAC;IAEF,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,mJAAmJ,EAAE,EAAE,CAAC,CAAC;QACpK,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAC/F,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,wBAAwB,OAAO,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YACpE,IAAI,IAAI,EAAE,CAAC;gBACT,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,+KAA+K,EAAE,EAAE,CAAC,CAAC;QAChM,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,wBAAwB,OAAO,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YACtE,KAAK,CAAC,IAAI,CAAC,sIAAsI,EAAE,EAAE,CAAC,CAAC;QACzJ,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QAC/B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvB,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,iBAAiB,SAAS,GAAG,CAAC,CAAC;IAEjD,MAAM,UAAU,GAAG,yBAAyB,OAAO,KAAK,CAAC;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC;IACvD,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IAEpD,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,sCAAsC,UAAU,SAAS,CAAC,CAAC;IACvE,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC;AAC/D,CAAC"}
package/dist/cli/index.js CHANGED
@@ -26,6 +26,7 @@ const HELP_TEXT = `
26
26
  --no-monitors Skip monitor provisioning
27
27
  --no-slos Skip SLO provisioning
28
28
  --force Update existing resources instead of skipping them
29
+ --remove Delete all toolkit-managed resources for the given service/env
29
30
  --yes, -y Skip interactive prompts (create all resources)
30
31
  --dry-run Preview what would be created without making changes
31
32
  --help, -h Show this help message
@@ -34,6 +35,7 @@ const HELP_TEXT = `
34
35
  datadog-frontend-toolkit setup -s my-app -e production --api-key <key> --app-key <key>
35
36
  datadog-frontend-toolkit setup -s my-app -e staging --team frontend --dry-run
36
37
  datadog-frontend-toolkit setup -s my-app -e production --team frontend -y
38
+ datadog-frontend-toolkit setup -s my-app -e production --remove
37
39
  datadog-frontend-toolkit status -s my-app -e production
38
40
  `;
39
41
  function parseArgs(args) {
@@ -58,6 +60,9 @@ function parseArgs(args) {
58
60
  else if (arg === '--force') {
59
61
  parsed['force'] = true;
60
62
  }
63
+ else if (arg === '--remove') {
64
+ parsed['remove'] = true;
65
+ }
61
66
  else if (arg === '--yes' || arg === '-y') {
62
67
  parsed['yes'] = true;
63
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { buildDashboardPayload } from './templates/dashboard';
2
2
  import { buildMonitorTemplates } from './templates/monitors';
3
- import { buildSloTemplates } from './templates/slos';
3
+ import { buildSloTemplates, BURN_RATE_ALERTS } from './templates/slos';
4
4
  import { withRetry } from '../utils/retry';
5
5
  const MANAGED_TAG = 'managed:datadog-frontend-toolkit';
6
6
  /**
@@ -55,6 +55,10 @@ export class ResourceProvisioner {
55
55
  const sloResults = await this.provisionSlos(service, env, result.monitors, config.team, force);
56
56
  result.slos.push(...sloResults.created);
57
57
  result.errors.push(...sloResults.errors);
58
+ // Burn-rate alerts for each SLO (Google SRE multi-window approach)
59
+ const burnRateResults = await this.provisionBurnRateAlerts(sloResults.created, service, env, config.notificationChannels, config.team, force);
60
+ result.monitors.push(...burnRateResults.created);
61
+ result.errors.push(...burnRateResults.errors);
58
62
  }
59
63
  return result;
60
64
  }
@@ -154,6 +158,117 @@ export class ResourceProvisioner {
154
158
  }
155
159
  return { created, errors };
156
160
  }
161
+ /**
162
+ * Provisions burn-rate alert monitors for each SLO.
163
+ * Uses the Google SRE multi-window, multi-burn-rate approach:
164
+ * - High burn (14.4×): 1h long / 5m short window → page
165
+ * - Slow burn (6×): 6h long / 30m short window → ticket
166
+ */
167
+ async provisionBurnRateAlerts(slos, service, env, channels = [], team, force) {
168
+ const created = [];
169
+ const errors = [];
170
+ const tags = [
171
+ `service:${service}`,
172
+ `env:${env}`,
173
+ 'managed:datadog-frontend-toolkit',
174
+ ...(team ? [`team:${team}`] : []),
175
+ ];
176
+ const notify = channels && channels.length > 0
177
+ ? `\n\nNotify: ${channels.map((ch) => `@${ch.type === 'slack' ? 'slack-' : ''}${ch.target}`).join(' ')}`
178
+ : '';
179
+ for (const slo of slos) {
180
+ for (const alert of BURN_RATE_ALERTS) {
181
+ const monitorName = `${slo.name} - ${alert.nameSuffix}`;
182
+ try {
183
+ const existing = await this.findExistingMonitor(monitorName);
184
+ const monitorPayload = {
185
+ name: monitorName,
186
+ type: 'slo alert',
187
+ query: `burn_rate("${slo.id}").over("7d").long_window("${alert.long_window}").short_window("${alert.short_window}") > ${alert.critical}`,
188
+ message: `${alert.message}\n\n**SLO:** ${slo.name}\n**Service:** ${service}\n**Environment:** ${env}${notify}`,
189
+ tags,
190
+ options: {
191
+ thresholds: { critical: alert.critical, warning: alert.warning },
192
+ notify_no_data: false,
193
+ include_tags: true,
194
+ },
195
+ };
196
+ if (existing && force) {
197
+ await this.apiRequest('PUT', `/v1/monitor/${existing.id}`, monitorPayload);
198
+ created.push(existing);
199
+ continue;
200
+ }
201
+ if (existing) {
202
+ created.push(existing);
203
+ continue;
204
+ }
205
+ const response = await this.apiRequest('POST', '/v1/monitor', monitorPayload);
206
+ created.push({ id: response.id, name: monitorName });
207
+ }
208
+ catch (err) {
209
+ errors.push(`Burn rate "${monitorName}": ${err instanceof Error ? err.message : String(err)}`);
210
+ }
211
+ }
212
+ }
213
+ return { created, errors };
214
+ }
215
+ /**
216
+ * Tears down (deletes) all toolkit-managed resources for the given service/env.
217
+ * Deletion order: monitors first (including burn-rate alerts), then SLOs, then dashboards.
218
+ */
219
+ async teardown(service, env) {
220
+ const deleted = [];
221
+ const errors = [];
222
+ // 1. Find and delete all managed monitors (includes burn-rate alerts)
223
+ try {
224
+ const response = await this.apiRequest('GET', `/v1/monitor?tag=${encodeURIComponent(MANAGED_TAG)}`);
225
+ const monitors = Array.isArray(response) ? response : [];
226
+ const serviceMonitors = monitors.filter((m) => typeof m.name === 'string' &&
227
+ m.name.includes(`${service} (${env})`));
228
+ for (const m of serviceMonitors) {
229
+ try {
230
+ await this.apiRequest('DELETE', `/v1/monitor/${m.id}?force=true`);
231
+ deleted.push(`Monitor: ${m.name}`);
232
+ }
233
+ catch (err) {
234
+ errors.push(`Delete monitor "${m.name}": ${err instanceof Error ? err.message : String(err)}`);
235
+ }
236
+ }
237
+ }
238
+ catch (err) {
239
+ errors.push(`List monitors: ${err instanceof Error ? err.message : String(err)}`);
240
+ }
241
+ // 2. Find and delete all managed SLOs
242
+ try {
243
+ const response = await this.apiRequest('GET', `/v1/slo?tags_query=${encodeURIComponent(MANAGED_TAG)}`);
244
+ const slos = (response.data || []).filter((s) => typeof s.name === 'string' &&
245
+ s.name.includes(`${service} (${env})`));
246
+ for (const s of slos) {
247
+ try {
248
+ await this.apiRequest('DELETE', `/v1/slo/${s.id}?force=true`);
249
+ deleted.push(`SLO: ${s.name}`);
250
+ }
251
+ catch (err) {
252
+ errors.push(`Delete SLO "${s.name}": ${err instanceof Error ? err.message : String(err)}`);
253
+ }
254
+ }
255
+ }
256
+ catch (err) {
257
+ errors.push(`List SLOs: ${err instanceof Error ? err.message : String(err)}`);
258
+ }
259
+ // 3. Find and delete dashboard
260
+ try {
261
+ const dashboard = await this.findExistingDashboard(service, env);
262
+ if (dashboard) {
263
+ await this.apiRequest('DELETE', `/v1/dashboard/${dashboard.id}`);
264
+ deleted.push(`Dashboard: ${dashboard.title}`);
265
+ }
266
+ }
267
+ catch (err) {
268
+ errors.push(`Delete dashboard: ${err instanceof Error ? err.message : String(err)}`);
269
+ }
270
+ return { deleted, errors };
271
+ }
157
272
  async findExistingDashboard(service, env) {
158
273
  try {
159
274
  const response = await this.apiRequest('GET', '/v1/dashboard');
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceProvisioner.js","sourceRoot":"","sources":["../../../src/resources/ResourceProvisioner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAS3C,MAAM,WAAW,GAAG,kCAAkC,CAAC;AAEvD;;;;;;;;GAQG;AACH,MAAM,OAAO,mBAAmB;IACb,MAAM,CAAS;IACf,MAAM,CAAS;IACf,OAAO,CAAS;IAEjC,YAAY,MAA0B;QACpC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,eAAe,MAAM,CAAC,IAAI,IAAI,eAAe,MAAM,CAAC;IACrE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CACb,OAAe,EACf,GAAW,EACX,MAA0B;QAE1B,MAAM,MAAM,GAAuB;YACjC,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,EAAE;SACX,CAAC;QAEF,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QAE7B,aAAa;QACb,IAAI,MAAM,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAClF,IAAI,SAAS;oBAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACnD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YAC9B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YACjF,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;QAED,qCAAqC;QACrC,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC1B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC/F,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YACxC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,OAAe,EACf,GAAW,EACX,IAAa,EACb,KAAe;QAEf,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,qBAAqB,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAE1D,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,iBAAiB,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;YACvF,OAAO;gBACL,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,KAAK,EAAE,QAAQ,CAAC,KAAe;gBAC/B,GAAG,EAAE,QAAQ,CAAC,GAAG;aAClB,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;QACzE,OAAO;YACL,EAAE,EAAE,QAAQ,CAAC,EAAY;YACzB,KAAK,EAAE,QAAQ,CAAC,KAAe;YAC/B,GAAG,EAAE,QAAQ,CAAC,GAAa;SAC5B,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,OAAe,EACf,GAAW,EACX,MAA0B,EAC1B,KAAe;QAEf,MAAM,SAAS,GAAG,qBAAqB,CACrC,OAAO,EACP,GAAG,EACH,MAAM,CAAC,oBAAoB,EAC3B,MAAM,CAAC,IAAI,CACZ,CAAC;QAEF,MAAM,OAAO,GAAmC,EAAE,CAAC;QACnD,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAE/D,MAAM,cAAc,GAAG;oBACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;iBAC1B,CAAC;gBAEF,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,eAAe,QAAQ,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;oBAC3E,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACvB,SAAS;gBACX,CAAC;gBAED,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACvB,SAAS;gBACX,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;gBAC9E,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAY,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAc,EAAE,CAAC,CAAC;YAC7E,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,YAAY,QAAQ,CAAC,IAAI,MAAM,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACjG,CAAC;QACH,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC7B,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,OAAe,EACf,GAAW,EACX,UAA0C,EAC1C,IAAa,EACb,KAAe;QAEf,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACpE,MAAM,OAAO,GAAmC,EAAE,CAAC;QACnD,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAE3D,MAAM,UAAU,GAA4B;oBAC1C,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,UAAU,EAAE,QAAQ,CAAC,UAAU;oBAC/B,IAAI,EAAE,QAAQ,CAAC,IAAI;iBACpB,CAAC;gBAEF,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACnB,UAAU,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;gBACpC,CAAC;gBACD,IAAI,QAAQ,CAAC,iBAAiB,EAAE,CAAC;oBAC/B,UAAU,CAAC,iBAAiB,GAAG,QAAQ,CAAC,iBAAiB,CAAC;gBAC5D,CAAC;gBAED,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,WAAW,QAAQ,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;oBACnE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACvB,SAAS;gBACX,CAAC;gBAED,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACvB,SAAS;gBACX,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;gBAEtE,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAkD,CAAC;gBACjF,OAAO,CAAC,IAAI,CAAC;oBACX,EAAE,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,QAAQ,CAAC,EAAE,CAAW;oBACpD,IAAI,EAAE,QAAQ,CAAC,IAAI;iBACpB,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,QAAQ,QAAQ,CAAC,IAAI,MAAM,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC7B,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,OAAe,EACf,GAAW;QAEX,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;YAC/D,MAAM,UAAU,GAAG,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAmC,CAAC;YAEjF,iEAAiE;YACjE,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAC9B,CAAC,CAA0B,EAAE,EAAE,CAC7B,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ;gBAC3B,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG,OAAO,2BAA2B;oBACjD,CAAC,CAAC,KAAK,KAAK,GAAG,OAAO,KAAK,GAAG,4BAA4B,CAAC,CAC/D,CAAC;YAEF,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO;oBACL,EAAE,EAAE,QAAQ,CAAC,EAAY;oBACzB,KAAK,EAAE,QAAQ,CAAC,KAAe;oBAC/B,GAAG,EAAE,cAAc,QAAQ,CAAC,EAAE,EAAE;iBACjC,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,IAAY;QAEZ,IAAI,CAAC;YACH,qCAAqC;YACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CACpC,KAAK,EACL,mBAAmB,kBAAkB,CAAC,WAAW,CAAC,EAAE,CACrD,CAAC;YAEF,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAC5B,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAChD,CAAC;YAEF,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAY,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAc,EAAE,CAAC;YACtE,CAAC;YAED,oGAAoG;YACpG,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CACxC,KAAK,EACL,oBAAoB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAC/C,CAAC;YACF,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAC7B,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAChD,CAAC;YACF,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,EAAY,EAAE,IAAI,EAAE,MAAM,CAAC,IAAc,EAAE,CAAC;YAClE,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,IAAY;QAEZ,IAAI,CAAC;YACH,qCAAqC;YACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CACpC,KAAK,EACL,sBAAsB,kBAAkB,CAAC,WAAW,CAAC,EAAE,CACxD,CAAC;YAEF,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAmC,CAAC;YACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CACxB,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAChD,CAAC;YAEF,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAY,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAc,EAAE,CAAC;YACtE,CAAC;YAED,yFAAyF;YACzF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,CAAC,WAAW,CAAC,IAAI,IAAI,EAAE,CAAmC,CAAC;YAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CACzB,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAChD,CAAC;YACF,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,EAAY,EAAE,IAAI,EAAE,MAAM,CAAC,IAAc,EAAE,CAAC;YAClE,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,UAAU,CACtB,MAAc,EACd,IAAY,EACZ,IAAc;QAEd,OAAO,SAAS,CACd,KAAK,IAAI,EAAE;YACT,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,CAAC;YACrC,MAAM,OAAO,GAA2B;gBACtC,cAAc,EAAE,kBAAkB;gBAClC,YAAY,EAAE,IAAI,CAAC,MAAM;gBACzB,oBAAoB,EAAE,IAAI,CAAC,MAAM;aAClC,CAAC;YAEF,MAAM,OAAO,GAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;YACjD,IAAI,IAAI,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;gBAC7B,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAE3C,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,MAAM,IAAI,KAAK,CACb,qBAAqB,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CACrD,CAAC;YACJ,CAAC;YAED,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;QAC5D,CAAC,EACD;YACE,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;gBAC/B,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAAE,OAAO,IAAI,CAAC;gBACzE,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAAE,OAAO,IAAI,CAAC;gBACvE,OAAO,KAAK,CAAC;YACf,CAAC;SACF,CACF,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"ResourceProvisioner.js","sourceRoot":"","sources":["../../../src/resources/ResourceProvisioner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAS3C,MAAM,WAAW,GAAG,kCAAkC,CAAC;AAEvD;;;;;;;;GAQG;AACH,MAAM,OAAO,mBAAmB;IACb,MAAM,CAAS;IACf,MAAM,CAAS;IACf,OAAO,CAAS;IAEjC,YAAY,MAA0B;QACpC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,eAAe,MAAM,CAAC,IAAI,IAAI,eAAe,MAAM,CAAC;IACrE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CACb,OAAe,EACf,GAAW,EACX,MAA0B;QAE1B,MAAM,MAAM,GAAuB;YACjC,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,EAAE;SACX,CAAC;QAEF,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QAE7B,aAAa;QACb,IAAI,MAAM,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAClF,IAAI,SAAS;oBAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACnD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YAC9B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YACjF,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;QAED,qCAAqC;QACrC,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC1B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC/F,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YACxC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YAEzC,mEAAmE;YACnE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,uBAAuB,CACxD,UAAU,CAAC,OAAO,EAClB,OAAO,EACP,GAAG,EACH,MAAM,CAAC,oBAAoB,EAC3B,MAAM,CAAC,IAAI,EACX,KAAK,CACN,CAAC;YACF,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,OAAe,EACf,GAAW,EACX,IAAa,EACb,KAAe;QAEf,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,qBAAqB,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAE1D,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,iBAAiB,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;YACvF,OAAO;gBACL,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,KAAK,EAAE,QAAQ,CAAC,KAAe;gBAC/B,GAAG,EAAE,QAAQ,CAAC,GAAG;aAClB,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;QACzE,OAAO;YACL,EAAE,EAAE,QAAQ,CAAC,EAAY;YACzB,KAAK,EAAE,QAAQ,CAAC,KAAe;YAC/B,GAAG,EAAE,QAAQ,CAAC,GAAa;SAC5B,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,OAAe,EACf,GAAW,EACX,MAA0B,EAC1B,KAAe;QAEf,MAAM,SAAS,GAAG,qBAAqB,CACrC,OAAO,EACP,GAAG,EACH,MAAM,CAAC,oBAAoB,EAC3B,MAAM,CAAC,IAAI,CACZ,CAAC;QAEF,MAAM,OAAO,GAAmC,EAAE,CAAC;QACnD,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAE/D,MAAM,cAAc,GAAG;oBACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;iBAC1B,CAAC;gBAEF,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,eAAe,QAAQ,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;oBAC3E,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACvB,SAAS;gBACX,CAAC;gBAED,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACvB,SAAS;gBACX,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;gBAC9E,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAY,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAc,EAAE,CAAC,CAAC;YAC7E,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,YAAY,QAAQ,CAAC,IAAI,MAAM,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACjG,CAAC;QACH,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC7B,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,OAAe,EACf,GAAW,EACX,UAA0C,EAC1C,IAAa,EACb,KAAe;QAEf,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACpE,MAAM,OAAO,GAAmC,EAAE,CAAC;QACnD,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAE3D,MAAM,UAAU,GAA4B;oBAC1C,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,UAAU,EAAE,QAAQ,CAAC,UAAU;oBAC/B,IAAI,EAAE,QAAQ,CAAC,IAAI;iBACpB,CAAC;gBAEF,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACnB,UAAU,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;gBACpC,CAAC;gBACD,IAAI,QAAQ,CAAC,iBAAiB,EAAE,CAAC;oBAC/B,UAAU,CAAC,iBAAiB,GAAG,QAAQ,CAAC,iBAAiB,CAAC;gBAC5D,CAAC;gBAED,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,WAAW,QAAQ,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;oBACnE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACvB,SAAS;gBACX,CAAC;gBAED,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACvB,SAAS;gBACX,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;gBAEtE,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAkD,CAAC;gBACjF,OAAO,CAAC,IAAI,CAAC;oBACX,EAAE,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,QAAQ,CAAC,EAAE,CAAW;oBACpD,IAAI,EAAE,QAAQ,CAAC,IAAI;iBACpB,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,QAAQ,QAAQ,CAAC,IAAI,MAAM,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,uBAAuB,CACnC,IAAoC,EACpC,OAAe,EACf,GAAW,EACX,WAA4D,EAAE,EAC9D,IAAa,EACb,KAAe;QAEf,MAAM,OAAO,GAAmC,EAAE,CAAC;QACnD,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,MAAM,IAAI,GAAG;YACX,WAAW,OAAO,EAAE;YACpB,OAAO,GAAG,EAAE;YACZ,kCAAkC;YAClC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAClC,CAAC;QAEF,MAAM,MAAM,GAAG,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAC5C,CAAC,CAAC,eAAe,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACxG,CAAC,CAAC,EAAE,CAAC;QAEP,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,KAAK,MAAM,KAAK,IAAI,gBAAgB,EAAE,CAAC;gBACrC,MAAM,WAAW,GAAG,GAAG,GAAG,CAAC,IAAI,MAAM,KAAK,CAAC,UAAU,EAAE,CAAC;gBAExD,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;oBAE7D,MAAM,cAAc,GAAG;wBACrB,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,WAAW;wBACjB,KAAK,EAAE,cAAc,GAAG,CAAC,EAAE,8BAA8B,KAAK,CAAC,WAAW,oBAAoB,KAAK,CAAC,YAAY,QAAQ,KAAK,CAAC,QAAQ,EAAE;wBACxI,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,gBAAgB,GAAG,CAAC,IAAI,kBAAkB,OAAO,sBAAsB,GAAG,GAAG,MAAM,EAAE;wBAC9G,IAAI;wBACJ,OAAO,EAAE;4BACP,UAAU,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;4BAChE,cAAc,EAAE,KAAK;4BACrB,YAAY,EAAE,IAAI;yBACnB;qBACF,CAAC;oBAEF,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;wBACtB,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,eAAe,QAAQ,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;wBAC3E,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBACvB,SAAS;oBACX,CAAC;oBAED,IAAI,QAAQ,EAAE,CAAC;wBACb,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBACvB,SAAS;oBACX,CAAC;oBAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;oBAC9E,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAY,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;gBACjE,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,IAAI,CAAC,cAAc,WAAW,MAAM,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACjG,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,QAAQ,CACZ,OAAe,EACf,GAAW;QAEX,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,sEAAsE;QACtE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CACpC,KAAK,EACL,mBAAmB,kBAAkB,CAAC,WAAW,CAAC,EAAE,CACrD,CAAC;YACF,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CACrC,CAAC,CAA0B,EAAE,EAAE,CAC7B,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;gBACzB,CAAC,CAAC,IAAe,CAAC,QAAQ,CAAC,GAAG,OAAO,KAAK,GAAG,GAAG,CAAC,CACrD,CAAC;YAEF,KAAK,MAAM,CAAC,IAAI,eAAe,EAAE,CAAC;gBAChC,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;oBAClE,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBACrC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,MAAM,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACjG,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,kBAAkB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpF,CAAC;QAED,sCAAsC;QACtC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CACpC,KAAK,EACL,sBAAsB,kBAAkB,CAAC,WAAW,CAAC,EAAE,CACxD,CAAC;YACF,MAAM,IAAI,GAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAoC,CAAC,MAAM,CAC3E,CAAC,CAA0B,EAAE,EAAE,CAC7B,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;gBACzB,CAAC,CAAC,IAAe,CAAC,QAAQ,CAAC,GAAG,OAAO,KAAK,GAAG,GAAG,CAAC,CACrD,CAAC;YAEF,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;oBAC9D,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,MAAM,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC7F,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,cAAc,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChF,CAAC;QAED,+BAA+B;QAC/B,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACjE,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,iBAAiB,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;gBACjE,OAAO,CAAC,IAAI,CAAC,cAAc,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvF,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC7B,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,OAAe,EACf,GAAW;QAEX,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;YAC/D,MAAM,UAAU,GAAG,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAmC,CAAC;YAEjF,iEAAiE;YACjE,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAC9B,CAAC,CAA0B,EAAE,EAAE,CAC7B,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ;gBAC3B,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG,OAAO,2BAA2B;oBACjD,CAAC,CAAC,KAAK,KAAK,GAAG,OAAO,KAAK,GAAG,4BAA4B,CAAC,CAC/D,CAAC;YAEF,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO;oBACL,EAAE,EAAE,QAAQ,CAAC,EAAY;oBACzB,KAAK,EAAE,QAAQ,CAAC,KAAe;oBAC/B,GAAG,EAAE,cAAc,QAAQ,CAAC,EAAE,EAAE;iBACjC,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,IAAY;QAEZ,IAAI,CAAC;YACH,qCAAqC;YACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CACpC,KAAK,EACL,mBAAmB,kBAAkB,CAAC,WAAW,CAAC,EAAE,CACrD,CAAC;YAEF,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAC5B,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAChD,CAAC;YAEF,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAY,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAc,EAAE,CAAC;YACtE,CAAC;YAED,oGAAoG;YACpG,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CACxC,KAAK,EACL,oBAAoB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAC/C,CAAC;YACF,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAC7B,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAChD,CAAC;YACF,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,EAAY,EAAE,IAAI,EAAE,MAAM,CAAC,IAAc,EAAE,CAAC;YAClE,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,IAAY;QAEZ,IAAI,CAAC;YACH,qCAAqC;YACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CACpC,KAAK,EACL,sBAAsB,kBAAkB,CAAC,WAAW,CAAC,EAAE,CACxD,CAAC;YAEF,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAmC,CAAC;YACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CACxB,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAChD,CAAC;YAEF,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAY,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAc,EAAE,CAAC;YACtE,CAAC;YAED,yFAAyF;YACzF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,CAAC,WAAW,CAAC,IAAI,IAAI,EAAE,CAAmC,CAAC;YAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CACzB,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAChD,CAAC;YACF,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,EAAY,EAAE,IAAI,EAAE,MAAM,CAAC,IAAc,EAAE,CAAC;YAClE,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,UAAU,CACtB,MAAc,EACd,IAAY,EACZ,IAAc;QAEd,OAAO,SAAS,CACd,KAAK,IAAI,EAAE;YACT,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,CAAC;YACrC,MAAM,OAAO,GAA2B;gBACtC,cAAc,EAAE,kBAAkB;gBAClC,YAAY,EAAE,IAAI,CAAC,MAAM;gBACzB,oBAAoB,EAAE,IAAI,CAAC,MAAM;aAClC,CAAC;YAEF,MAAM,OAAO,GAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;YACjD,IAAI,IAAI,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;gBAC7B,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAE3C,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,MAAM,IAAI,KAAK,CACb,qBAAqB,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CACrD,CAAC;YACJ,CAAC;YAED,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;QAC5D,CAAC,EACD;YACE,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;gBAC/B,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAAE,OAAO,IAAI,CAAC;gBACzE,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAAE,OAAO,IAAI,CAAC;gBACvE,OAAO,KAAK,CAAC;YACf,CAAC;SACF,CACF,CAAC;IACJ,CAAC;CACF"}
@@ -1,15 +1,41 @@
1
1
  /**
2
2
  * SLO templates for Datadog API provisioning.
3
+ * Follows Google SRE and industry best-practices for frontend observability.
4
+ *
3
5
  * Uses only built-in RUM metrics so historical data is available immediately.
4
6
  *
5
7
  * SLO 1 — Frontend Availability (metric-based, event SLO)
6
8
  * good = error-free views, total = all views
7
9
  * Pattern mirrors the classic (total − errors) / total used for backend APIs.
10
+ * Targets are environment-aware (production vs non-production).
8
11
  *
9
12
  * SLO 2 — Core Web Vitals / LCP (time-slice SLO)
10
13
  * Measures % of 5-min windows where p75 LCP < 2.5 s (Google "good" threshold).
11
14
  * Uses the existing rum.measure.view.largest_contentful_paint distribution metric.
12
15
  */
16
+ /** Standard multi-window burn-rate alerts (Google SRE playbook). */
17
+ export const BURN_RATE_ALERTS = [
18
+ {
19
+ nameSuffix: 'High Burn Rate',
20
+ long_window: '1h',
21
+ short_window: '5m',
22
+ critical: 14.4,
23
+ warning: 7.2,
24
+ message: '## 🔥 SLO High Burn Rate\n\nThe error budget is being consumed **14× faster** than sustainable. At this rate the entire 30-day budget will be exhausted in ~2 days.\n\n**Action required:** Investigate immediately — this usually signals a deployment regression or upstream outage.',
25
+ },
26
+ {
27
+ nameSuffix: 'Slow Burn Rate',
28
+ long_window: '6h',
29
+ short_window: '30m',
30
+ critical: 6,
31
+ warning: 3,
32
+ message: '## ⚠️ SLO Slow Burn Rate\n\nThe error budget is being consumed **6× faster** than sustainable. At this rate the entire 30-day budget will be exhausted in ~5 days.\n\n**Action required:** Create a ticket and investigate within 24 hours — this usually signals a gradual degradation.',
33
+ },
34
+ ];
35
+ const PRODUCTION_ENVS = ['production', 'prod', 'prd'];
36
+ function isProduction(env) {
37
+ return PRODUCTION_ENVS.includes(env.toLowerCase());
38
+ }
13
39
  export function buildSloTemplates(service, env, _monitorIds, team) {
14
40
  const tags = [
15
41
  `service:${service}`,
@@ -17,26 +43,34 @@ export function buildSloTemplates(service, env, _monitorIds, team) {
17
43
  'managed:datadog-frontend-toolkit',
18
44
  ...(team ? [`team:${team}`] : []),
19
45
  ];
46
+ // Environment-aware targets (Google SRE best practice: start realistic, tighten over time)
47
+ const isProd = isProduction(env);
48
+ const availabilityTarget = isProd ? 99.5 : 95;
49
+ const availabilityWarning = isProd ? 99.9 : 98;
20
50
  return [
21
51
  // SLO 1: Frontend Availability — error-free page views / total page views
22
52
  {
23
53
  name: `${service} (${env}) - Frontend Availability`,
24
- description: 'Measures frontend availability as the ratio of error-free page views to total page views. A negative error budget indicates the service has more JS errors than the target allows — this is a real signal, not a bug. Managed by datadog-frontend-toolkit.',
54
+ description: `Measures frontend availability as the ratio of error-free page views to total page views. ` +
55
+ `Target: ${availabilityTarget}% (${isProd ? 'production' : 'non-production'}). ` +
56
+ `A negative error budget indicates the service has more JS errors than the target allows — ` +
57
+ `this is a real signal, not a bug. Managed by datadog-frontend-toolkit.`,
25
58
  type: 'metric',
26
59
  query: {
27
60
  numerator: `sum:rum.measure.view.error_free{service:${service},env:${env}}.as_count()`,
28
61
  denominator: `sum:rum.measure.view{service:${service},env:${env}}.as_count()`,
29
62
  },
30
63
  thresholds: [
31
- { timeframe: '7d', target: 99.5, warning: 99.9 },
32
- { timeframe: '30d', target: 99.5, warning: 99.9 },
64
+ { timeframe: '7d', target: availabilityTarget, warning: availabilityWarning },
65
+ { timeframe: '30d', target: availabilityTarget, warning: availabilityWarning },
33
66
  ],
34
67
  tags,
35
68
  },
36
69
  // SLO 2: Core Web Vitals (LCP) — % of 5-min windows with p75 LCP < 2.5 s
37
70
  {
38
71
  name: `${service} (${env}) - Core Web Vitals (LCP)`,
39
- description: 'Measures the percentage of time where p75 Largest Contentful Paint stays below 2.5 s (Google Core Web Vitals "good" threshold). Managed by datadog-frontend-toolkit.',
72
+ description: 'Measures the percentage of time where p75 Largest Contentful Paint stays below 2.5 s ' +
73
+ '(Google Core Web Vitals "good" threshold). Managed by datadog-frontend-toolkit.',
40
74
  type: 'time_slice',
41
75
  sli_specification: {
42
76
  time_slice: {
@@ -1 +1 @@
1
- {"version":3,"file":"slos.js","sourceRoot":"","sources":["../../../../src/resources/templates/slos.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAeH,MAAM,UAAU,iBAAiB,CAC/B,OAAe,EACf,GAAW,EACX,WAA2C,EAC3C,IAAa;IAEb,MAAM,IAAI,GAAG;QACX,WAAW,OAAO,EAAE;QACpB,OAAO,GAAG,EAAE;QACZ,kCAAkC;QAClC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAClC,CAAC;IAEF,OAAO;QACL,0EAA0E;QAC1E;YACE,IAAI,EAAE,GAAG,OAAO,KAAK,GAAG,2BAA2B;YACnD,WAAW,EACT,4PAA4P;YAC9P,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE;gBACL,SAAS,EAAE,2CAA2C,OAAO,QAAQ,GAAG,cAAc;gBACtF,WAAW,EAAE,gCAAgC,OAAO,QAAQ,GAAG,cAAc;aAC9E;YACD,UAAU,EAAE;gBACV,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;gBAChD,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;aAClD;YACD,IAAI;SACL;QACD,yEAAyE;QACzE;YACE,IAAI,EAAE,GAAG,OAAO,KAAK,GAAG,2BAA2B;YACnD,WAAW,EACT,sKAAsK;YACxK,IAAI,EAAE,YAAY;YAClB,iBAAiB,EAAE;gBACjB,UAAU,EAAE;oBACV,KAAK,EAAE;wBACL,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;wBACjC,OAAO,EAAE;4BACP;gCACE,WAAW,EAAE,SAAS;gCACtB,IAAI,EAAE,QAAQ;gCACd,KAAK,EAAE,yDAAyD,OAAO,QAAQ,GAAG,GAAG;6BACtF;yBACF;qBACF;oBACD,UAAU,EAAE,GAAG;oBACf,SAAS,EAAE,UAAU;oBACrB,sBAAsB,EAAE,GAAG;iBAC5B;aACF;YACD,UAAU,EAAE;gBACV,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;gBAC5C,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;aAC9C;YACD,IAAI;SACL;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"slos.js","sourceRoot":"","sources":["../../../../src/resources/templates/slos.ts"],"names":[],"mappings":"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"}
@@ -55,6 +55,10 @@ class ResourceProvisioner {
55
55
  const sloResults = await this.provisionSlos(service, env, result.monitors, config.team, force);
56
56
  result.slos.push(...sloResults.created);
57
57
  result.errors.push(...sloResults.errors);
58
+ // Burn-rate alerts for each SLO (Google SRE multi-window approach)
59
+ const burnRateResults = await this.provisionBurnRateAlerts(sloResults.created, service, env, config.notificationChannels, config.team, force);
60
+ result.monitors.push(...burnRateResults.created);
61
+ result.errors.push(...burnRateResults.errors);
58
62
  }
59
63
  return result;
60
64
  }
@@ -154,6 +158,117 @@ class ResourceProvisioner {
154
158
  }
155
159
  return { created, errors };
156
160
  }
161
+ /**
162
+ * Provisions burn-rate alert monitors for each SLO.
163
+ * Uses the Google SRE multi-window, multi-burn-rate approach:
164
+ * - High burn (14.4×): 1h long / 5m short window → page
165
+ * - Slow burn (6×): 6h long / 30m short window → ticket
166
+ */
167
+ async provisionBurnRateAlerts(slos, service, env, channels = [], team, force) {
168
+ const created = [];
169
+ const errors = [];
170
+ const tags = [
171
+ `service:${service}`,
172
+ `env:${env}`,
173
+ 'managed:datadog-frontend-toolkit',
174
+ ...(team ? [`team:${team}`] : []),
175
+ ];
176
+ const notify = channels && channels.length > 0
177
+ ? `\n\nNotify: ${channels.map((ch) => `@${ch.type === 'slack' ? 'slack-' : ''}${ch.target}`).join(' ')}`
178
+ : '';
179
+ for (const slo of slos) {
180
+ for (const alert of slos_1.BURN_RATE_ALERTS) {
181
+ const monitorName = `${slo.name} - ${alert.nameSuffix}`;
182
+ try {
183
+ const existing = await this.findExistingMonitor(monitorName);
184
+ const monitorPayload = {
185
+ name: monitorName,
186
+ type: 'slo alert',
187
+ query: `burn_rate("${slo.id}").over("7d").long_window("${alert.long_window}").short_window("${alert.short_window}") > ${alert.critical}`,
188
+ message: `${alert.message}\n\n**SLO:** ${slo.name}\n**Service:** ${service}\n**Environment:** ${env}${notify}`,
189
+ tags,
190
+ options: {
191
+ thresholds: { critical: alert.critical, warning: alert.warning },
192
+ notify_no_data: false,
193
+ include_tags: true,
194
+ },
195
+ };
196
+ if (existing && force) {
197
+ await this.apiRequest('PUT', `/v1/monitor/${existing.id}`, monitorPayload);
198
+ created.push(existing);
199
+ continue;
200
+ }
201
+ if (existing) {
202
+ created.push(existing);
203
+ continue;
204
+ }
205
+ const response = await this.apiRequest('POST', '/v1/monitor', monitorPayload);
206
+ created.push({ id: response.id, name: monitorName });
207
+ }
208
+ catch (err) {
209
+ errors.push(`Burn rate "${monitorName}": ${err instanceof Error ? err.message : String(err)}`);
210
+ }
211
+ }
212
+ }
213
+ return { created, errors };
214
+ }
215
+ /**
216
+ * Tears down (deletes) all toolkit-managed resources for the given service/env.
217
+ * Deletion order: monitors first (including burn-rate alerts), then SLOs, then dashboards.
218
+ */
219
+ async teardown(service, env) {
220
+ const deleted = [];
221
+ const errors = [];
222
+ // 1. Find and delete all managed monitors (includes burn-rate alerts)
223
+ try {
224
+ const response = await this.apiRequest('GET', `/v1/monitor?tag=${encodeURIComponent(MANAGED_TAG)}`);
225
+ const monitors = Array.isArray(response) ? response : [];
226
+ const serviceMonitors = monitors.filter((m) => typeof m.name === 'string' &&
227
+ m.name.includes(`${service} (${env})`));
228
+ for (const m of serviceMonitors) {
229
+ try {
230
+ await this.apiRequest('DELETE', `/v1/monitor/${m.id}?force=true`);
231
+ deleted.push(`Monitor: ${m.name}`);
232
+ }
233
+ catch (err) {
234
+ errors.push(`Delete monitor "${m.name}": ${err instanceof Error ? err.message : String(err)}`);
235
+ }
236
+ }
237
+ }
238
+ catch (err) {
239
+ errors.push(`List monitors: ${err instanceof Error ? err.message : String(err)}`);
240
+ }
241
+ // 2. Find and delete all managed SLOs
242
+ try {
243
+ const response = await this.apiRequest('GET', `/v1/slo?tags_query=${encodeURIComponent(MANAGED_TAG)}`);
244
+ const slos = (response.data || []).filter((s) => typeof s.name === 'string' &&
245
+ s.name.includes(`${service} (${env})`));
246
+ for (const s of slos) {
247
+ try {
248
+ await this.apiRequest('DELETE', `/v1/slo/${s.id}?force=true`);
249
+ deleted.push(`SLO: ${s.name}`);
250
+ }
251
+ catch (err) {
252
+ errors.push(`Delete SLO "${s.name}": ${err instanceof Error ? err.message : String(err)}`);
253
+ }
254
+ }
255
+ }
256
+ catch (err) {
257
+ errors.push(`List SLOs: ${err instanceof Error ? err.message : String(err)}`);
258
+ }
259
+ // 3. Find and delete dashboard
260
+ try {
261
+ const dashboard = await this.findExistingDashboard(service, env);
262
+ if (dashboard) {
263
+ await this.apiRequest('DELETE', `/v1/dashboard/${dashboard.id}`);
264
+ deleted.push(`Dashboard: ${dashboard.title}`);
265
+ }
266
+ }
267
+ catch (err) {
268
+ errors.push(`Delete dashboard: ${err instanceof Error ? err.message : String(err)}`);
269
+ }
270
+ return { deleted, errors };
271
+ }
157
272
  async findExistingDashboard(service, env) {
158
273
  try {
159
274
  const response = await this.apiRequest('GET', '/v1/dashboard');
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceProvisioner.js","sourceRoot":"","sources":["../../src/resources/ResourceProvisioner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResourceProvisioner.js","sourceRoot":"","sources":["../../src/resources/ResourceProvisioner.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,45 @@
1
1
  "use strict";
2
2
  /**
3
3
  * SLO templates for Datadog API provisioning.
4
+ * Follows Google SRE and industry best-practices for frontend observability.
5
+ *
4
6
  * Uses only built-in RUM metrics so historical data is available immediately.
5
7
  *
6
8
  * SLO 1 — Frontend Availability (metric-based, event SLO)
7
9
  * good = error-free views, total = all views
8
10
  * Pattern mirrors the classic (total − errors) / total used for backend APIs.
11
+ * Targets are environment-aware (production vs non-production).
9
12
  *
10
13
  * SLO 2 — Core Web Vitals / LCP (time-slice SLO)
11
14
  * Measures % of 5-min windows where p75 LCP < 2.5 s (Google "good" threshold).
12
15
  * Uses the existing rum.measure.view.largest_contentful_paint distribution metric.
13
16
  */
14
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.BURN_RATE_ALERTS = void 0;
15
19
  exports.buildSloTemplates = buildSloTemplates;
20
+ /** Standard multi-window burn-rate alerts (Google SRE playbook). */
21
+ exports.BURN_RATE_ALERTS = [
22
+ {
23
+ nameSuffix: 'High Burn Rate',
24
+ long_window: '1h',
25
+ short_window: '5m',
26
+ critical: 14.4,
27
+ warning: 7.2,
28
+ message: '## 🔥 SLO High Burn Rate\n\nThe error budget is being consumed **14× faster** than sustainable. At this rate the entire 30-day budget will be exhausted in ~2 days.\n\n**Action required:** Investigate immediately — this usually signals a deployment regression or upstream outage.',
29
+ },
30
+ {
31
+ nameSuffix: 'Slow Burn Rate',
32
+ long_window: '6h',
33
+ short_window: '30m',
34
+ critical: 6,
35
+ warning: 3,
36
+ message: '## ⚠️ SLO Slow Burn Rate\n\nThe error budget is being consumed **6× faster** than sustainable. At this rate the entire 30-day budget will be exhausted in ~5 days.\n\n**Action required:** Create a ticket and investigate within 24 hours — this usually signals a gradual degradation.',
37
+ },
38
+ ];
39
+ const PRODUCTION_ENVS = ['production', 'prod', 'prd'];
40
+ function isProduction(env) {
41
+ return PRODUCTION_ENVS.includes(env.toLowerCase());
42
+ }
16
43
  function buildSloTemplates(service, env, _monitorIds, team) {
17
44
  const tags = [
18
45
  `service:${service}`,
@@ -20,26 +47,34 @@ function buildSloTemplates(service, env, _monitorIds, team) {
20
47
  'managed:datadog-frontend-toolkit',
21
48
  ...(team ? [`team:${team}`] : []),
22
49
  ];
50
+ // Environment-aware targets (Google SRE best practice: start realistic, tighten over time)
51
+ const isProd = isProduction(env);
52
+ const availabilityTarget = isProd ? 99.5 : 95;
53
+ const availabilityWarning = isProd ? 99.9 : 98;
23
54
  return [
24
55
  // SLO 1: Frontend Availability — error-free page views / total page views
25
56
  {
26
57
  name: `${service} (${env}) - Frontend Availability`,
27
- description: 'Measures frontend availability as the ratio of error-free page views to total page views. A negative error budget indicates the service has more JS errors than the target allows — this is a real signal, not a bug. Managed by datadog-frontend-toolkit.',
58
+ description: `Measures frontend availability as the ratio of error-free page views to total page views. ` +
59
+ `Target: ${availabilityTarget}% (${isProd ? 'production' : 'non-production'}). ` +
60
+ `A negative error budget indicates the service has more JS errors than the target allows — ` +
61
+ `this is a real signal, not a bug. Managed by datadog-frontend-toolkit.`,
28
62
  type: 'metric',
29
63
  query: {
30
64
  numerator: `sum:rum.measure.view.error_free{service:${service},env:${env}}.as_count()`,
31
65
  denominator: `sum:rum.measure.view{service:${service},env:${env}}.as_count()`,
32
66
  },
33
67
  thresholds: [
34
- { timeframe: '7d', target: 99.5, warning: 99.9 },
35
- { timeframe: '30d', target: 99.5, warning: 99.9 },
68
+ { timeframe: '7d', target: availabilityTarget, warning: availabilityWarning },
69
+ { timeframe: '30d', target: availabilityTarget, warning: availabilityWarning },
36
70
  ],
37
71
  tags,
38
72
  },
39
73
  // SLO 2: Core Web Vitals (LCP) — % of 5-min windows with p75 LCP < 2.5 s
40
74
  {
41
75
  name: `${service} (${env}) - Core Web Vitals (LCP)`,
42
- description: 'Measures the percentage of time where p75 Largest Contentful Paint stays below 2.5 s (Google Core Web Vitals "good" threshold). Managed by datadog-frontend-toolkit.',
76
+ description: 'Measures the percentage of time where p75 Largest Contentful Paint stays below 2.5 s ' +
77
+ '(Google Core Web Vitals "good" threshold). Managed by datadog-frontend-toolkit.',
43
78
  type: 'time_slice',
44
79
  sli_specification: {
45
80
  time_slice: {
@@ -1 +1 @@
1
- {"version":3,"file":"slos.js","sourceRoot":"","sources":["../../../src/resources/templates/slos.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAeH,8CA4DC;AA5DD,SAAgB,iBAAiB,CAC/B,OAAe,EACf,GAAW,EACX,WAA2C,EAC3C,IAAa;IAEb,MAAM,IAAI,GAAG;QACX,WAAW,OAAO,EAAE;QACpB,OAAO,GAAG,EAAE;QACZ,kCAAkC;QAClC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAClC,CAAC;IAEF,OAAO;QACL,0EAA0E;QAC1E;YACE,IAAI,EAAE,GAAG,OAAO,KAAK,GAAG,2BAA2B;YACnD,WAAW,EACT,4PAA4P;YAC9P,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE;gBACL,SAAS,EAAE,2CAA2C,OAAO,QAAQ,GAAG,cAAc;gBACtF,WAAW,EAAE,gCAAgC,OAAO,QAAQ,GAAG,cAAc;aAC9E;YACD,UAAU,EAAE;gBACV,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;gBAChD,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;aAClD;YACD,IAAI;SACL;QACD,yEAAyE;QACzE;YACE,IAAI,EAAE,GAAG,OAAO,KAAK,GAAG,2BAA2B;YACnD,WAAW,EACT,sKAAsK;YACxK,IAAI,EAAE,YAAY;YAClB,iBAAiB,EAAE;gBACjB,UAAU,EAAE;oBACV,KAAK,EAAE;wBACL,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;wBACjC,OAAO,EAAE;4BACP;gCACE,WAAW,EAAE,SAAS;gCACtB,IAAI,EAAE,QAAQ;gCACd,KAAK,EAAE,yDAAyD,OAAO,QAAQ,GAAG,GAAG;6BACtF;yBACF;qBACF;oBACD,UAAU,EAAE,GAAG;oBACf,SAAS,EAAE,UAAU;oBACrB,sBAAsB,EAAE,GAAG;iBAC5B;aACF;YACD,UAAU,EAAE;gBACV,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;gBAC5C,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;aAC9C;YACD,IAAI;SACL;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"slos.js","sourceRoot":"","sources":["../../../src/resources/templates/slos.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,21 @@ export declare class ResourceProvisioner {
37
37
  private provisionDashboard;
38
38
  private provisionMonitors;
39
39
  private provisionSlos;
40
+ /**
41
+ * Provisions burn-rate alert monitors for each SLO.
42
+ * Uses the Google SRE multi-window, multi-burn-rate approach:
43
+ * - High burn (14.4×): 1h long / 5m short window → page
44
+ * - Slow burn (6×): 6h long / 30m short window → ticket
45
+ */
46
+ private provisionBurnRateAlerts;
47
+ /**
48
+ * Tears down (deletes) all toolkit-managed resources for the given service/env.
49
+ * Deletion order: monitors first (including burn-rate alerts), then SLOs, then dashboards.
50
+ */
51
+ teardown(service: string, env: string): Promise<{
52
+ deleted: string[];
53
+ errors: string[];
54
+ }>;
40
55
  private findExistingDashboard;
41
56
  private findExistingMonitor;
42
57
  private findExistingSlo;
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceProvisioner.d.ts","sourceRoot":"","sources":["../../../src/resources/ResourceProvisioner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAM1D,UAAU,kBAAkB;IAC1B,UAAU,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzD,QAAQ,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAID;;;;;;;;GAQG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,MAAM,EAAE,kBAAkB;IAMtC;;;OAGG;IACG,SAAS,CACb,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,kBAAkB,CAAC;YAqChB,kBAAkB;YA8BlB,iBAAiB;YAkDjB,aAAa;YAwDb,qBAAqB;YA6BrB,mBAAmB;YAqCnB,eAAe;YAkCf,UAAU;CAwCzB"}
1
+ {"version":3,"file":"ResourceProvisioner.d.ts","sourceRoot":"","sources":["../../../src/resources/ResourceProvisioner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAM1D,UAAU,kBAAkB;IAC1B,UAAU,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzD,QAAQ,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAID;;;;;;;;GAQG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,MAAM,EAAE,kBAAkB;IAMtC;;;OAGG;IACG,SAAS,CACb,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,kBAAkB,CAAC;YAiDhB,kBAAkB;YA8BlB,iBAAiB;YAkDjB,aAAa;IAwD3B;;;;;OAKG;YACW,uBAAuB;IAgErC;;;OAGG;IACG,QAAQ,CACZ,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;YAmErC,qBAAqB;YA6BrB,mBAAmB;YAqCnB,eAAe;YAkCf,UAAU;CAwCzB"}
@@ -1,10 +1,13 @@
1
1
  /**
2
2
  * SLO templates for Datadog API provisioning.
3
+ * Follows Google SRE and industry best-practices for frontend observability.
4
+ *
3
5
  * Uses only built-in RUM metrics so historical data is available immediately.
4
6
  *
5
7
  * SLO 1 — Frontend Availability (metric-based, event SLO)
6
8
  * good = error-free views, total = all views
7
9
  * Pattern mirrors the classic (total − errors) / total used for backend APIs.
10
+ * Targets are environment-aware (production vs non-production).
8
11
  *
9
12
  * SLO 2 — Core Web Vitals / LCP (time-slice SLO)
10
13
  * Measures % of 5-min windows where p75 LCP < 2.5 s (Google "good" threshold).
@@ -26,6 +29,20 @@ export interface SloTemplate {
26
29
  }>;
27
30
  tags: string[];
28
31
  }
32
+ /**
33
+ * Burn-rate alert definitions created after SLOs are provisioned.
34
+ * Based on the Google SRE multi-window, multi-burn-rate approach.
35
+ */
36
+ export interface BurnRateAlertTemplate {
37
+ nameSuffix: string;
38
+ long_window: string;
39
+ short_window: string;
40
+ critical: number;
41
+ warning: number;
42
+ message: string;
43
+ }
44
+ /** Standard multi-window burn-rate alerts (Google SRE playbook). */
45
+ export declare const BURN_RATE_ALERTS: BurnRateAlertTemplate[];
29
46
  export declare function buildSloTemplates(service: string, env: string, _monitorIds: {
30
47
  id: number;
31
48
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"slos.d.ts","sourceRoot":"","sources":["../../../../src/resources/templates/slos.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,QAAQ,GAAG,YAAY,CAAC;IAC9B,KAAK,CAAC,EAAE;QACN,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,UAAU,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3E,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,WAAW,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,EAC3C,IAAI,CAAC,EAAE,MAAM,GACZ,WAAW,EAAE,CAuDf"}
1
+ {"version":3,"file":"slos.d.ts","sourceRoot":"","sources":["../../../../src/resources/templates/slos.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,QAAQ,GAAG,YAAY,CAAC;IAC9B,KAAK,CAAC,EAAE;QACN,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,UAAU,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3E,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,oEAAoE;AACpE,eAAO,MAAM,gBAAgB,EAAE,qBAAqB,EAmBnD,CAAC;AAQF,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,WAAW,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,EAC3C,IAAI,CAAC,EAAE,MAAM,GACZ,WAAW,EAAE,CAgEf"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "datadog-frontend-toolkit",
3
- "version": "1.0.38",
3
+ "version": "1.0.40",
4
4
  "description": "Enterprise-grade, framework-agnostic frontend observability toolkit for Datadog. Auto-instruments RUM, Logs, Error Tracking, Performance Monitoring, and provisions Dashboards, Monitors & SLOs.",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",