deepline 0.3.105 → 0.3.107

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.
@@ -9,7 +9,13 @@
9
9
  "locator": "schedule:",
10
10
  "owner": "billing",
11
11
  "criticality": "critical",
12
- "failureAlert": "github_workflow_run"
12
+ "purpose": "Compare Convex, Metronome, Snowflake, and Stripe billing truth and retain a private evidence report.",
13
+ "successDefinition": "All required sources are queried and a complete parity report is written; zero mismatches is healthy.",
14
+ "failureDefinition": "A source/report/notification fails or the audit contains an unresolved billing mismatch.",
15
+ "startGraceMs": 600000,
16
+ "runTimeoutMs": 3600000,
17
+ "failureAlert": "github_workflow_run",
18
+ "domainReportRequired": true
13
19
  },
14
20
  {
15
21
  "id": "github.billing-parity-watchdog",
@@ -21,7 +27,13 @@
21
27
  "locator": "schedule:",
22
28
  "owner": "billing",
23
29
  "criticality": "critical",
24
- "failureAlert": "github_workflow_run"
30
+ "purpose": "Verify that the nightly billing parity audit produced today's complete report.",
31
+ "successDefinition": "The expected-date report exists, is complete, and passes integrity checks.",
32
+ "failureDefinition": "The report is missing, incomplete, stale, or invalid.",
33
+ "startGraceMs": 600000,
34
+ "runTimeoutMs": 3600000,
35
+ "failureAlert": "github_workflow_run",
36
+ "domainReportRequired": true
25
37
  },
26
38
  {
27
39
  "id": "github.ci-health-analytics",
@@ -33,7 +45,13 @@
33
45
  "locator": "schedule:",
34
46
  "owner": "data-platform",
35
47
  "criticality": "reporting",
36
- "failureAlert": "github_workflow_run"
48
+ "purpose": "Build validated CI health snapshots, DuckDB marts, and Ojos serving artifacts.",
49
+ "successDefinition": "Snapshots are complete, marts validate, and the versioned serving pointer advances atomically.",
50
+ "failureDefinition": "A snapshot, dbt/mart validation, artifact, or pointer publish fails.",
51
+ "startGraceMs": 600000,
52
+ "runTimeoutMs": 3600000,
53
+ "failureAlert": "github_workflow_run",
54
+ "domainReportRequired": true
37
55
  },
38
56
  {
39
57
  "id": "github.cleanup-stale-preview-infrastructure",
@@ -45,7 +63,13 @@
45
63
  "locator": "schedule:",
46
64
  "owner": "platform",
47
65
  "criticality": "maintenance",
48
- "failureAlert": "github_workflow_run"
66
+ "purpose": "Reclaim closed or abandoned Preview Convex, Inngest, Fly, and Neon infrastructure without touching active leases.",
67
+ "successDefinition": "Inventory and guarded cleanup finish; zero eligible stale resources is a valid no-op.",
68
+ "failureDefinition": "Credentials/inventory are unavailable, a lease is ambiguous, or cleanup/delete fails.",
69
+ "startGraceMs": 600000,
70
+ "runTimeoutMs": 3600000,
71
+ "failureAlert": "github_workflow_run",
72
+ "domainReportRequired": true
49
73
  },
50
74
  {
51
75
  "id": "github.convex-data-sync-to-snowflake",
@@ -57,7 +81,13 @@
57
81
  "locator": "schedule:",
58
82
  "owner": "data-platform",
59
83
  "criticality": "operational",
60
- "failureAlert": "github_workflow_run"
84
+ "purpose": "Copy the Convex mirror incrementally into Snowflake and advance the mirror continuation.",
85
+ "successDefinition": "Every selected COPY/continuation completes and the Snowflake watermark advances to the source head.",
86
+ "failureDefinition": "A source page, COPY, continuation, or watermark update fails or leaves the mirror behind.",
87
+ "startGraceMs": 600000,
88
+ "runTimeoutMs": 3600000,
89
+ "failureAlert": "github_workflow_run",
90
+ "domainReportRequired": true
61
91
  },
62
92
  {
63
93
  "id": "github.daily-slack-report",
@@ -69,7 +99,13 @@
69
99
  "locator": "schedule:",
70
100
  "owner": "product",
71
101
  "criticality": "reporting",
72
- "failureAlert": "github_workflow_run"
102
+ "purpose": "Read the canonical Snowflake mirror and post the daily usage report to the reporting Slack channel.",
103
+ "successDefinition": "The query returns a coherent summary and Slack accepts it; an empty report is explicitly rendered as no activity.",
104
+ "failureDefinition": "Snowflake cannot provide the summary or Slack rejects/loses the report.",
105
+ "startGraceMs": 600000,
106
+ "runTimeoutMs": 3600000,
107
+ "failureAlert": "github_workflow_run",
108
+ "domainReportRequired": true
73
109
  },
74
110
  {
75
111
  "id": "github.operational-alerts",
@@ -81,7 +117,13 @@
81
117
  "locator": "schedule:",
82
118
  "owner": "reliability",
83
119
  "criticality": "critical",
84
- "failureAlert": "github_workflow_run"
120
+ "purpose": "Reconcile Axiom and Better Stack alert definitions and synchronize production thresholds.",
121
+ "successDefinition": "Both providers match the checked-in rules and threshold changes are verified.",
122
+ "failureDefinition": "Credentials/provider writes fail or read-back disagrees with the desired alert set.",
123
+ "startGraceMs": 600000,
124
+ "runTimeoutMs": 3600000,
125
+ "failureAlert": "github_workflow_run",
126
+ "domainReportRequired": true
85
127
  },
86
128
  {
87
129
  "id": "github.eval-agent-cli-matrix",
@@ -93,7 +135,13 @@
93
135
  "locator": "schedule:",
94
136
  "owner": "evals",
95
137
  "criticality": "operational",
96
- "failureAlert": "github_workflow_run"
138
+ "purpose": "Run the scheduled agent/CLI evaluation matrix and publish its consolidated evidence viewer.",
139
+ "successDefinition": "All required lanes finish, raw results are complete, and the consolidated report is published.",
140
+ "failureDefinition": "A lane, credential, result merge, viewer publish, or Slack consolidation fails.",
141
+ "startGraceMs": 600000,
142
+ "runTimeoutMs": 3600000,
143
+ "failureAlert": "github_workflow_run",
144
+ "domainReportRequired": true
97
145
  },
98
146
  {
99
147
  "id": "github.fly-pr-preview-cleanup",
@@ -105,7 +153,13 @@
105
153
  "locator": "schedule:",
106
154
  "owner": "platform",
107
155
  "criticality": "maintenance",
108
- "failureAlert": "github_workflow_run"
156
+ "purpose": "Reconcile completed PR Preview Machines and release capacity only after the per-app lease fence allows it.",
157
+ "successDefinition": "Fly inventory is reconciled and eligible terminal/closed PR capacity is released; no eligible app is a valid no-op.",
158
+ "failureDefinition": "Inventory, lease resolution, scale-down, or empty-app cleanup fails or is ambiguous.",
159
+ "startGraceMs": 600000,
160
+ "runTimeoutMs": 3600000,
161
+ "failureAlert": "github_workflow_run",
162
+ "domainReportRequired": true
109
163
  },
110
164
  {
111
165
  "id": "github.log-triage",
@@ -117,7 +171,13 @@
117
171
  "locator": "schedule:",
118
172
  "owner": "reliability",
119
173
  "criticality": "operational",
120
- "failureAlert": "github_workflow_run"
174
+ "purpose": "Run a fresh-context log triage pass and publish its report and context bundle for on-call follow-up.",
175
+ "successDefinition": "The triage agent completes, durable artifacts are uploaded, and the internal report is posted.",
176
+ "failureDefinition": "Agent execution, log access, artifact upload, or report publication fails.",
177
+ "startGraceMs": 600000,
178
+ "runTimeoutMs": 3600000,
179
+ "failureAlert": "github_workflow_run",
180
+ "domainReportRequired": true
121
181
  },
122
182
  {
123
183
  "id": "github.metronome-catalog-ci-cleanup",
@@ -129,7 +189,13 @@
129
189
  "locator": "schedule:",
130
190
  "owner": "billing",
131
191
  "criticality": "maintenance",
132
- "failureAlert": "github_workflow_run"
192
+ "purpose": "Refund disposable Metronome sandbox payments and archive CI customers while retaining reusable catalog fixtures.",
193
+ "successDefinition": "Every targeted resource is handled, or an empty inventory is recorded as no-op.",
194
+ "failureDefinition": "A refund/archive is incomplete, a target is ambiguous, or cleanup evidence is not retained.",
195
+ "startGraceMs": 600000,
196
+ "runTimeoutMs": 3600000,
197
+ "failureAlert": "github_workflow_run",
198
+ "domainReportRequired": true
133
199
  },
134
200
  {
135
201
  "id": "github.metronome-catalog-integrity",
@@ -141,7 +207,13 @@
141
207
  "locator": "schedule:",
142
208
  "owner": "billing",
143
209
  "criticality": "critical",
144
- "failureAlert": "github_workflow_run"
210
+ "purpose": "Plan, provision, read back, and exercise the exact Metronome catalog revision used by CI and releases.",
211
+ "successDefinition": "The approved fingerprint converges in the provider, read-back evidence is retained, and the disposable flow passes.",
212
+ "failureDefinition": "The revision is unapproved, read-back diverges, or acquisition/usage/renewal proof fails.",
213
+ "startGraceMs": 600000,
214
+ "runTimeoutMs": 3600000,
215
+ "failureAlert": "github_workflow_run",
216
+ "domainReportRequired": true
145
217
  },
146
218
  {
147
219
  "id": "github.neon-ingestion-cleanup",
@@ -153,7 +225,13 @@
153
225
  "locator": "schedule:",
154
226
  "owner": "data-platform",
155
227
  "criticality": "operational",
156
- "failureAlert": "github_workflow_run"
228
+ "purpose": "Inventory and reclaim stale non-production Neon ingestion projects while honoring age, lease, and exact-target fences.",
229
+ "successDefinition": "The requested inventory/reclaim completes and the free-capacity target is met; no eligible project is valid no-op.",
230
+ "failureDefinition": "Credentials/inventory are incomplete, a lease blocks safe action, or deletion/receipt fails.",
231
+ "startGraceMs": 600000,
232
+ "runTimeoutMs": 3600000,
233
+ "failureAlert": "github_workflow_run",
234
+ "domainReportRequired": true
157
235
  },
158
236
  {
159
237
  "id": "github.provider-dashboard",
@@ -165,7 +243,13 @@
165
243
  "locator": "schedule:",
166
244
  "owner": "integrations",
167
245
  "criticality": "reporting",
168
- "failureAlert": "github_workflow_run"
246
+ "purpose": "Build nightly provider/integration health dashboard artifacts from the current catalog and analytics sources.",
247
+ "successDefinition": "Catalog build and provider pipeline finish and publish a complete report artifact.",
248
+ "failureDefinition": "Catalog generation, source queries, dashboard computation, or publication fails.",
249
+ "startGraceMs": 600000,
250
+ "runTimeoutMs": 3600000,
251
+ "failureAlert": "github_workflow_run",
252
+ "domainReportRequired": true
169
253
  },
170
254
  {
171
255
  "id": "github.refresh-openapi-snapshots",
@@ -177,7 +261,13 @@
177
261
  "locator": "schedule:",
178
262
  "owner": "integrations",
179
263
  "criticality": "maintenance",
180
- "failureAlert": "github_workflow_run"
264
+ "purpose": "Refresh live OpenAPI snapshots and open or update the generated refresh pull request.",
265
+ "successDefinition": "Snapshots/artifacts are current and the refresh PR is updated; no diff is a valid no-op.",
266
+ "failureDefinition": "Refresh, generation, validation, or PR create/update fails.",
267
+ "startGraceMs": 600000,
268
+ "runTimeoutMs": 3600000,
269
+ "failureAlert": "github_workflow_run",
270
+ "domainReportRequired": true
181
271
  },
182
272
  {
183
273
  "id": "github.runtime-lifecycle",
@@ -189,7 +279,13 @@
189
279
  "locator": "schedule:",
190
280
  "owner": "runtime",
191
281
  "criticality": "operational",
192
- "failureAlert": "github_workflow_run"
282
+ "purpose": "Exercise the canonical Daytona/Play runtime lifecycle against the exact healthy Preview target and retain load evidence.",
283
+ "successDefinition": "Target preparation, lifecycle bursts, correctness/latency checks, cleanup, and reporting complete.",
284
+ "failureDefinition": "Target resolution, lifecycle execution, evaluation, cleanup, or reporting fails.",
285
+ "startGraceMs": 600000,
286
+ "runTimeoutMs": 3600000,
287
+ "failureAlert": "github_workflow_run",
288
+ "domainReportRequired": true
193
289
  },
194
290
  {
195
291
  "id": "github.runtime-shape",
@@ -205,7 +301,13 @@
205
301
  "locator": "schedule:",
206
302
  "owner": "runtime",
207
303
  "criticality": "operational",
208
- "failureAlert": "github_workflow_run"
304
+ "purpose": "Run the exact-SHA Play runtime dataset-shape matrix across isolated Preview lanes.",
305
+ "successDefinition": "All required lanes pass and every lane is cleaned up with detailed results retained.",
306
+ "failureDefinition": "A lane cannot prepare, violates a shape invariant, or cleanup/evidence is incomplete.",
307
+ "startGraceMs": 600000,
308
+ "runTimeoutMs": 3600000,
309
+ "failureAlert": "github_workflow_run",
310
+ "domainReportRequired": true
209
311
  },
210
312
  {
211
313
  "id": "github.refresh-vitest-shard-weights",
@@ -217,7 +319,13 @@
217
319
  "locator": "schedule:",
218
320
  "owner": "platform",
219
321
  "criticality": "maintenance",
220
- "failureAlert": "github_workflow_run"
322
+ "purpose": "Measure every Vitest shard, rebuild timing weights, and open or update the refresh PR.",
323
+ "successDefinition": "All shard timings are present, predicted balance is valid, and the PR is updated; no material change is a valid no-op.",
324
+ "failureDefinition": "A shard fails/is missing, the manifest is incomplete, or the PR cannot be updated.",
325
+ "startGraceMs": 600000,
326
+ "runTimeoutMs": 3600000,
327
+ "failureAlert": "github_workflow_run",
328
+ "domainReportRequired": true
221
329
  },
222
330
  {
223
331
  "id": "vercel.charge-reconcile",
@@ -229,7 +337,13 @@
229
337
  "locator": "/api/v2/cron/charge-reconcile",
230
338
  "owner": "billing",
231
339
  "criticality": "critical",
232
- "failureAlert": "vercel_route_wrapper"
340
+ "purpose": "Reconcile pending charge reservations, usage truth, provider billing events, and bounded continuation backlog.",
341
+ "successDefinition": "Due financial work settles or is durably parked with recovery, witnesses are recorded, and backlog advances.",
342
+ "failureDefinition": "A ledger/provider mismatch is unresolved, parked work lacks recovery, or continuation cannot advance.",
343
+ "startGraceMs": 300000,
344
+ "runTimeoutMs": 1800000,
345
+ "failureAlert": "vercel_route_wrapper",
346
+ "domainReportRequired": true
233
347
  },
234
348
  {
235
349
  "id": "vercel.metronome-usage-export",
@@ -241,7 +355,13 @@
241
355
  "locator": "/api/v2/cron/metronome-usage-export",
242
356
  "owner": "billing",
243
357
  "criticality": "critical",
244
- "failureAlert": "vercel_route_wrapper"
358
+ "purpose": "Drain the commercial usage export outbox to Metronome and evaluate export freshness.",
359
+ "successDefinition": "Due usage is delivered or the outbox is empty, and age/error health is within budget.",
360
+ "failureDefinition": "Delivery fails, export stays stale beyond budget, or health cannot persist.",
361
+ "startGraceMs": 300000,
362
+ "runTimeoutMs": 1800000,
363
+ "failureAlert": "vercel_route_wrapper",
364
+ "domainReportRequired": true
245
365
  },
246
366
  {
247
367
  "id": "vercel.provider-health",
@@ -253,7 +373,13 @@
253
373
  "locator": "/api/v2/cron/provider-health",
254
374
  "owner": "integrations",
255
375
  "criticality": "critical",
256
- "failureAlert": "vercel_route_wrapper"
376
+ "purpose": "Probe every configured provider, persist the stabilized health snapshot, and emit transition/burn-rate signals.",
377
+ "successDefinition": "All probes complete, snapshot/history persist, and degraded providers are explicitly classified.",
378
+ "failureDefinition": "Probes are incomplete, persistence fails, or a transition notification cannot reconcile.",
379
+ "startGraceMs": 300000,
380
+ "runTimeoutMs": 1800000,
381
+ "failureAlert": "vercel_route_wrapper",
382
+ "domainReportRequired": true
257
383
  },
258
384
  {
259
385
  "id": "vercel.provider-health-spend-digest",
@@ -265,7 +391,13 @@
265
391
  "locator": "/api/v2/cron/provider-health-spend-digest",
266
392
  "owner": "integrations",
267
393
  "criticality": "reporting",
268
- "failureAlert": "vercel_route_wrapper"
394
+ "purpose": "Turn latest provider health and monthly usage into the scheduled spend digest.",
395
+ "successDefinition": "A current snapshot is summarized and delivered; no providers is explicitly reported as no data.",
396
+ "failureDefinition": "Sources are missing/stale, digest construction fails, or delivery is rejected.",
397
+ "startGraceMs": 300000,
398
+ "runTimeoutMs": 1800000,
399
+ "failureAlert": "vercel_route_wrapper",
400
+ "domainReportRequired": true
269
401
  },
270
402
  {
271
403
  "id": "vercel.daily-activity-summary",
@@ -277,7 +409,13 @@
277
409
  "locator": "/api/v2/cron/daily-activity-summary",
278
410
  "owner": "product",
279
411
  "criticality": "reporting",
280
- "failureAlert": "vercel_route_wrapper"
412
+ "purpose": "Summarize the previous reporting window from Convex usage and post the daily activity event to Slack.",
413
+ "successDefinition": "The correct timezone window is queried and one coherent summary is accepted by Slack.",
414
+ "failureDefinition": "The usage query or summary post fails, producing no trustworthy report.",
415
+ "startGraceMs": 300000,
416
+ "runTimeoutMs": 1800000,
417
+ "failureAlert": "vercel_route_wrapper",
418
+ "domainReportRequired": true
281
419
  },
282
420
  {
283
421
  "id": "vercel.sdk-cli-activity-digest",
@@ -289,7 +427,13 @@
289
427
  "locator": "/api/v2/cron/sdk-cli-activity-digest",
290
428
  "owner": "reliability",
291
429
  "criticality": "reporting",
292
- "failureAlert": "vercel_route_wrapper"
430
+ "purpose": "Aggregate SDK and CLI telemetry for the requested bucket and publish the activity digest.",
431
+ "successDefinition": "The bucket is finalized and delivered; an empty bucket is explicitly recorded as no activity.",
432
+ "failureDefinition": "Telemetry aggregation, finalization, or digest delivery fails.",
433
+ "startGraceMs": 300000,
434
+ "runTimeoutMs": 1800000,
435
+ "failureAlert": "vercel_route_wrapper",
436
+ "domainReportRequired": true
293
437
  },
294
438
  {
295
439
  "id": "vercel.billing-integrity",
@@ -301,7 +445,13 @@
301
445
  "locator": "/api/v2/cron/billing-integrity",
302
446
  "owner": "billing",
303
447
  "criticality": "critical",
304
- "failureAlert": "vercel_route_wrapper"
448
+ "purpose": "Check usage-rollup freshness and reconcile sampled organization ledger totals against activity.",
449
+ "successDefinition": "Sampled organizations reconcile within tolerance and rollup lag stays below budget.",
450
+ "failureDefinition": "Lag breaches budget, an organization has an unresolved mismatch, or evidence is incomplete.",
451
+ "startGraceMs": 300000,
452
+ "runTimeoutMs": 1800000,
453
+ "failureAlert": "vercel_route_wrapper",
454
+ "domainReportRequired": true
305
455
  },
306
456
  {
307
457
  "id": "vercel.billing-autobill",
@@ -313,7 +463,13 @@
313
463
  "locator": "/api/v2/cron/billing-autobill",
314
464
  "owner": "billing",
315
465
  "criticality": "critical",
316
- "failureAlert": "vercel_route_wrapper"
466
+ "purpose": "Evaluate enabled autobill settings and charge each due organization with durable outcome recording.",
467
+ "successDefinition": "Every selected setting is evaluated and persisted; no due organizations/all-skipped is a valid no-op.",
468
+ "failureDefinition": "A charge runner errors or an evaluation/outcome cannot be persisted.",
469
+ "startGraceMs": 300000,
470
+ "runTimeoutMs": 1800000,
471
+ "failureAlert": "vercel_route_wrapper",
472
+ "domainReportRequired": true
317
473
  },
318
474
  {
319
475
  "id": "vercel.signal-radar-dead-letter-digest",
@@ -325,7 +481,13 @@
325
481
  "locator": "/api/v2/cron/signal-radar-dead-letter-digest",
326
482
  "owner": "monitors",
327
483
  "criticality": "operational",
328
- "failureAlert": "vercel_route_wrapper"
484
+ "purpose": "Scan monitored organizations for signal-radar ingestion dead letters, alert on backlog, and advance recovery cursors.",
485
+ "successDefinition": "All selected organizations are scanned, backlog is reported, and the cursor advances only after complete evidence.",
486
+ "failureDefinition": "A scan/connection or alert fails, or the cursor advances without complete evidence.",
487
+ "startGraceMs": 300000,
488
+ "runTimeoutMs": 1800000,
489
+ "failureAlert": "vercel_route_wrapper",
490
+ "domainReportRequired": true
329
491
  },
330
492
  {
331
493
  "id": "vercel.provider-monitor-audit-sweep",
@@ -337,7 +499,13 @@
337
499
  "locator": "/api/v2/cron/provider-monitor-audit-sweep",
338
500
  "owner": "monitors",
339
501
  "criticality": "operational",
340
- "failureAlert": "vercel_route_wrapper"
502
+ "purpose": "Sweep due provider-monitor audit records and apply the audit reconciliation policy.",
503
+ "successDefinition": "Every due audit is processed and persisted; zero due audits is a valid no-op.",
504
+ "failureDefinition": "A due audit cannot be processed or its state/evidence remains unresolved.",
505
+ "startGraceMs": 300000,
506
+ "runTimeoutMs": 1800000,
507
+ "failureAlert": "vercel_route_wrapper",
508
+ "domainReportRequired": true
341
509
  },
342
510
  {
343
511
  "id": "vercel.provider-monitor-policy-sweep",
@@ -349,19 +517,13 @@
349
517
  "locator": "/api/v2/cron/provider-monitor-policy-sweep",
350
518
  "owner": "monitors",
351
519
  "criticality": "operational",
352
- "failureAlert": "vercel_route_wrapper"
353
- },
354
- {
355
- "id": "vercel.provider-monitor-direct-billing-suspension",
356
- "name": "Provider monitor direct billing suspension",
357
- "scheduler": "vercel_cron",
358
- "cadence": "*/5 * * * *",
359
- "timezone": "UTC",
360
- "source": "apps/deepline-api/vercel.json",
361
- "locator": "/api/v2/cron/provider-monitor-direct-billing-suspension",
362
- "owner": "monitors",
363
- "criticality": "critical",
364
- "failureAlert": "vercel_route_wrapper"
520
+ "purpose": "Sweep provider-monitor policy state and converge monitors to declared desired policy.",
521
+ "successDefinition": "Every due candidate is evaluated and persisted; zero due candidates is a valid no-op.",
522
+ "failureDefinition": "Policy evaluation/persistence fails or a monitor remains unresolved.",
523
+ "startGraceMs": 300000,
524
+ "runTimeoutMs": 1800000,
525
+ "failureAlert": "vercel_route_wrapper",
526
+ "domainReportRequired": true
365
527
  },
366
528
  {
367
529
  "id": "vercel.provider-monitor-batch-operation-sweep",
@@ -373,7 +535,13 @@
373
535
  "locator": "/api/v2/cron/provider-monitor-batch-operation-sweep",
374
536
  "owner": "monitors",
375
537
  "criticality": "critical",
376
- "failureAlert": "vercel_route_wrapper"
538
+ "purpose": "Recover and advance provider-monitor batch operations that are queued, delayed, or stuck.",
539
+ "successDefinition": "Every due operation completes, retries durably, or is terminally classified; no due operations is a valid no-op.",
540
+ "failureDefinition": "An operation is left stuck without a next action or recovery state cannot be written.",
541
+ "startGraceMs": 300000,
542
+ "runTimeoutMs": 1800000,
543
+ "failureAlert": "vercel_route_wrapper",
544
+ "domainReportRequired": true
377
545
  },
378
546
  {
379
547
  "id": "vercel.provider-monitor-webhook-reconciliation",
@@ -385,7 +553,13 @@
385
553
  "locator": "/api/v2/cron/provider-monitor-webhook-reconciliation",
386
554
  "owner": "monitors",
387
555
  "criticality": "critical",
388
- "failureAlert": "vercel_route_wrapper"
556
+ "purpose": "Reconcile provider-monitor webhook receipts with durable operation state and continuation bridges.",
557
+ "successDefinition": "Selected receipts agree with operation state and anomalies have evidence; no receipts is a valid no-op.",
558
+ "failureDefinition": "Bridge/scan/reconciliation write fails or an unresolved mismatch remains.",
559
+ "startGraceMs": 300000,
560
+ "runTimeoutMs": 1800000,
561
+ "failureAlert": "vercel_route_wrapper",
562
+ "domainReportRequired": true
389
563
  },
390
564
  {
391
565
  "id": "vercel.scheduled-work-health-snapshot",
@@ -397,7 +571,13 @@
397
571
  "locator": "/api/v2/cron/scheduled-work-health-snapshot",
398
572
  "owner": "reliability",
399
573
  "criticality": "critical",
400
- "failureAlert": "vercel_route_wrapper"
574
+ "purpose": "Synchronize scheduled-work catalog definitions used by the operational health surface.",
575
+ "successDefinition": "Every catalog definition is accepted and the current snapshot is complete.",
576
+ "failureDefinition": "Validation or synchronization fails, leaving stale/incomplete dashboard semantics.",
577
+ "startGraceMs": 300000,
578
+ "runTimeoutMs": 1800000,
579
+ "failureAlert": "vercel_route_wrapper",
580
+ "domainReportRequired": true
401
581
  },
402
582
  {
403
583
  "id": "convex.provider-monitor-webhook-reconciliation-continuation",
@@ -409,7 +589,13 @@
409
589
  "locator": "dispatchProviderMonitorWebhookReconciliationContinuation",
410
590
  "owner": "monitors",
411
591
  "criticality": "critical",
412
- "failureAlert": "convex_action_wrapper"
592
+ "purpose": "Dispatch one bounded provider-monitor webhook reconciliation continuation owned by Convex.",
593
+ "successDefinition": "The exact continuation is accepted or already terminal/complete, with durable duplicate protection.",
594
+ "failureDefinition": "It cannot be claimed/dispatched or durable state is ambiguous.",
595
+ "startGraceMs": 120000,
596
+ "runTimeoutMs": 1800000,
597
+ "failureAlert": "convex_action_wrapper",
598
+ "domainReportRequired": true
413
599
  },
414
600
  {
415
601
  "id": "convex.provider-monitor-batch-operation-continuation",
@@ -421,7 +607,13 @@
421
607
  "locator": "dispatchProviderMonitorBatchOperationContinuation",
422
608
  "owner": "monitors",
423
609
  "criticality": "critical",
424
- "failureAlert": "convex_action_wrapper"
610
+ "purpose": "Dispatch one bounded provider-monitor batch-operation continuation to the provider executor.",
611
+ "successDefinition": "The exact continuation is accepted or already terminal and the claim fence is durable.",
612
+ "failureDefinition": "It cannot be claimed/dispatched or its state transition is ambiguous.",
613
+ "startGraceMs": 120000,
614
+ "runTimeoutMs": 1800000,
615
+ "failureAlert": "convex_action_wrapper",
616
+ "domainReportRequired": true
425
617
  },
426
618
  {
427
619
  "id": "convex.provider-monitor-global-audit-continuation",
@@ -433,7 +625,13 @@
433
625
  "locator": "dispatchProviderMonitorGlobalAuditContinuation",
434
626
  "owner": "monitors",
435
627
  "criticality": "critical",
436
- "failureAlert": "convex_action_wrapper"
628
+ "purpose": "Advance one leased page of the global provider-monitor audit and schedule the next bounded step.",
629
+ "successDefinition": "The page is processed and the next step is scheduled or audit is terminally recorded.",
630
+ "failureDefinition": "Page completion, continuation scheduling, or lease/state persistence fails.",
631
+ "startGraceMs": 120000,
632
+ "runTimeoutMs": 1800000,
633
+ "failureAlert": "convex_action_wrapper",
634
+ "domainReportRequired": true
437
635
  },
438
636
  {
439
637
  "id": "convex.provider-monitor-global-audit-daily",
@@ -445,7 +643,13 @@
445
643
  "locator": "provider monitor global audit daily",
446
644
  "owner": "monitors",
447
645
  "criticality": "critical",
448
- "failureAlert": "convex_action_wrapper"
646
+ "purpose": "Claim and run the daily global provider-monitor audit across the shared account inventory.",
647
+ "successDefinition": "The inventory is traversed and anomalies are classified/persisted; an empty inventory is a valid no-op.",
648
+ "failureDefinition": "Lease, inventory traversal, provider read, or anomaly persistence fails.",
649
+ "startGraceMs": 120000,
650
+ "runTimeoutMs": 1800000,
651
+ "failureAlert": "convex_action_wrapper",
652
+ "domainReportRequired": true
449
653
  },
450
654
  {
451
655
  "id": "convex.provider-monitor-credit-recovery",
@@ -457,7 +661,13 @@
457
661
  "locator": "recoverProviderMonitorsAfterCreditBalanceChange",
458
662
  "owner": "monitors",
459
663
  "criticality": "critical",
460
- "failureAlert": "convex_action_wrapper"
664
+ "purpose": "Recover provider monitors whose billing suspension can be lifted after a positive credit-balance change.",
665
+ "successDefinition": "Idempotent recovery intent applies to the target organization; no eligible monitors is a valid no-op.",
666
+ "failureDefinition": "Recovery action fails or idempotency/state transition is not durable.",
667
+ "startGraceMs": 120000,
668
+ "runTimeoutMs": 1800000,
669
+ "failureAlert": "convex_action_wrapper",
670
+ "domainReportRequired": true
461
671
  },
462
672
  {
463
673
  "id": "inngest.workflow-run-watchdog",
@@ -469,7 +679,13 @@
469
679
  "locator": "workflow_run_watchdog_v1",
470
680
  "owner": "workflows",
471
681
  "criticality": "operational",
472
- "failureAlert": "inngest_on_failure"
682
+ "purpose": "Fail workflow runs beyond their stale-progress budget and emit alertable cron-run events.",
683
+ "successDefinition": "Stale statuses drain within the bounded budget and each failed run has a terminal event; no stale runs is a valid no-op.",
684
+ "failureDefinition": "A stale run cannot be terminalized/alerted or the sweep fails.",
685
+ "startGraceMs": 120000,
686
+ "runTimeoutMs": 1800000,
687
+ "failureAlert": "inngest_on_failure",
688
+ "domainReportRequired": true
473
689
  },
474
690
  {
475
691
  "id": "inngest.workflow-cron-tick",
@@ -481,7 +697,13 @@
481
697
  "locator": "workflow_cron_tick_v1",
482
698
  "owner": "workflows",
483
699
  "criticality": "critical",
484
- "failureAlert": "inngest_on_failure"
700
+ "purpose": "Find due workflow cron bindings and enqueue their next workflow runs.",
701
+ "successDefinition": "Every due binding is enqueued or durably skipped by its control-plane fence.",
702
+ "failureDefinition": "Scan/enqueue fails or due bindings lack a durable disposition.",
703
+ "startGraceMs": 120000,
704
+ "runTimeoutMs": 1800000,
705
+ "failureAlert": "inngest_on_failure",
706
+ "domainReportRequired": true
485
707
  },
486
708
  {
487
709
  "id": "inngest.play-cron-tick",
@@ -493,7 +715,13 @@
493
715
  "locator": "play_cron_tick_v1",
494
716
  "owner": "runtime",
495
717
  "criticality": "critical",
496
- "failureAlert": "inngest_on_failure"
718
+ "purpose": "Find due Play schedules and enqueue their next Play executions.",
719
+ "successDefinition": "Every due Play is enqueued or durably skipped by its schedule fence.",
720
+ "failureDefinition": "Scan/enqueue fails or a due Play lacks a durable disposition.",
721
+ "startGraceMs": 120000,
722
+ "runTimeoutMs": 1800000,
723
+ "failureAlert": "inngest_on_failure",
724
+ "domainReportRequired": true
497
725
  },
498
726
  {
499
727
  "id": "inngest.ingestion-schedule-tick",
@@ -505,7 +733,13 @@
505
733
  "locator": "ingestion_schedule_tick_v1",
506
734
  "owner": "data-platform",
507
735
  "criticality": "operational",
508
- "failureAlert": "inngest_on_failure"
736
+ "purpose": "Scan active ingestion planes and queue subscriptions whose schedule mirror says work is due.",
737
+ "successDefinition": "Every eligible plane is evaluated, due subscriptions are queued, and stale/missing mirrors are surfaced.",
738
+ "failureDefinition": "A plane cannot be read/repaired or due work is lost without a durable disposition.",
739
+ "startGraceMs": 120000,
740
+ "runTimeoutMs": 1800000,
741
+ "failureAlert": "inngest_on_failure",
742
+ "domainReportRequired": true
509
743
  },
510
744
  {
511
745
  "id": "inngest.ingestion-launch-tick",
@@ -517,7 +751,13 @@
517
751
  "locator": "ingestion_launch_tick_v1",
518
752
  "owner": "data-platform",
519
753
  "criticality": "operational",
520
- "failureAlert": "inngest_on_failure"
754
+ "purpose": "Recover stale ingestion launch/execution jobs and dispatch queued jobs.",
755
+ "successDefinition": "Every eligible queued job launches or is durably left for retry, with stale jobs recovered and diagnosed.",
756
+ "failureDefinition": "A queued job remains stuck without evidence or scan/dispatch fails.",
757
+ "startGraceMs": 120000,
758
+ "runTimeoutMs": 1800000,
759
+ "failureAlert": "inngest_on_failure",
760
+ "domainReportRequired": true
521
761
  },
522
762
  {
523
763
  "id": "convex.fold-usage-rollups",
@@ -529,7 +769,13 @@
529
769
  "locator": "fold usage rollups",
530
770
  "owner": "billing",
531
771
  "criticality": "critical",
532
- "failureAlert": "convex_action_wrapper"
772
+ "purpose": "Fold pending usage-rollup pages into the single-writer aggregate and schedule bounded catch-up.",
773
+ "successDefinition": "All pages fold or none remain; continuation is scheduled when more work exists.",
774
+ "failureDefinition": "A page cannot fold or the continuation cursor is lost.",
775
+ "startGraceMs": 120000,
776
+ "runTimeoutMs": 1800000,
777
+ "failureAlert": "convex_action_wrapper",
778
+ "domainReportRequired": true
533
779
  },
534
780
  {
535
781
  "id": "convex.record-neon-managed-project-usage",
@@ -541,7 +787,31 @@
541
787
  "locator": "record Neon managed project usage",
542
788
  "owner": "billing",
543
789
  "criticality": "operational",
544
- "failureAlert": "convex_action_wrapper"
790
+ "purpose": "Record current usage for managed Neon projects at daily granularity.",
791
+ "successDefinition": "Every eligible project is measured and recorded; no eligible projects is a valid no-op.",
792
+ "failureDefinition": "A project cannot be measured or its usage record fails to persist.",
793
+ "startGraceMs": 120000,
794
+ "runTimeoutMs": 1800000,
795
+ "failureAlert": "convex_action_wrapper",
796
+ "domainReportRequired": true
797
+ },
798
+ {
799
+ "id": "convex.observe-operational-queue-health",
800
+ "name": "Observe operational queue health",
801
+ "scheduler": "convex_cron",
802
+ "cadence": "every 60 seconds",
803
+ "timezone": "UTC",
804
+ "source": "packages/convex/crons.ts",
805
+ "locator": "observe operational queue health",
806
+ "owner": "reliability",
807
+ "criticality": "critical",
808
+ "purpose": "Measure every durable queue through the scheduler-neutral depth, age, flow, and DLQ contract.",
809
+ "successDefinition": "Every cataloged queue publishes a complete measurement and the observer completes.",
810
+ "failureDefinition": "The observer is missed/stuck, a queue is silently omitted, or snapshots cannot persist.",
811
+ "startGraceMs": 120000,
812
+ "runTimeoutMs": 1800000,
813
+ "failureAlert": "convex_action_wrapper",
814
+ "domainReportRequired": true
545
815
  },
546
816
  {
547
817
  "id": "convex.cleanup-expired-mcp-oauth-codes",
@@ -553,7 +823,13 @@
553
823
  "locator": "cleanup expired MCP OAuth codes",
554
824
  "owner": "auth",
555
825
  "criticality": "maintenance",
556
- "failureAlert": "convex_action_wrapper"
826
+ "purpose": "Delete expired MCP OAuth authorization codes and refresh tokens.",
827
+ "successDefinition": "All expired credentials are deleted and counted; zero expired credentials is a valid no-op.",
828
+ "failureDefinition": "The expiry scan/deletion fails, leaving expired credentials retained.",
829
+ "startGraceMs": 120000,
830
+ "runTimeoutMs": 1800000,
831
+ "failureAlert": "convex_action_wrapper",
832
+ "domainReportRequired": true
557
833
  },
558
834
  {
559
835
  "id": "convex.cleanup-expired-analytics-ip2company-cache",
@@ -565,7 +841,13 @@
565
841
  "locator": "cleanup expired Analytics IP2Company cache entries",
566
842
  "owner": "monitors",
567
843
  "criticality": "maintenance",
568
- "failureAlert": "convex_action_wrapper"
844
+ "purpose": "Delete expired salted IP-to-company cache entries within the bounded retention window.",
845
+ "successDefinition": "The expiry scan completes and all eligible entries are deleted; zero eligible entries is a valid no-op.",
846
+ "failureDefinition": "Cache scan/deletion fails or retention cleanup stops early.",
847
+ "startGraceMs": 120000,
848
+ "runTimeoutMs": 1800000,
849
+ "failureAlert": "convex_action_wrapper",
850
+ "domainReportRequired": true
569
851
  },
570
852
  {
571
853
  "id": "convex.cleanup-expired-domain-health-cache",
@@ -577,7 +859,13 @@
577
859
  "locator": "cleanup expired domain health cache entries",
578
860
  "owner": "integrations",
579
861
  "criticality": "maintenance",
580
- "failureAlert": "convex_action_wrapper"
862
+ "purpose": "Delete expired domain-health cache entries in bounded batches.",
863
+ "successDefinition": "Batches reach completion; zero expired entries is a valid no-op.",
864
+ "failureDefinition": "A batch deletion fails or cleanup stops before the backlog is represented.",
865
+ "startGraceMs": 120000,
866
+ "runTimeoutMs": 1800000,
867
+ "failureAlert": "convex_action_wrapper",
868
+ "domainReportRequired": true
581
869
  },
582
870
  {
583
871
  "id": "convex.salesforce-oauth-refresh-maintenance",
@@ -589,7 +877,13 @@
589
877
  "locator": "maintain Salesforce OAuth refresh tokens",
590
878
  "owner": "integrations",
591
879
  "criticality": "critical",
592
- "failureAlert": "convex_action_wrapper"
880
+ "purpose": "Refresh Salesforce OAuth tokens before expiry and preserve each connection's rotating refresh-token chain.",
881
+ "successDefinition": "Every due connection refreshes or is explicitly classified as customer re-auth required, with continuation for remaining pages.",
882
+ "failureDefinition": "Refresh dispatch fails, token-chain persistence fails, or continuation state is lost.",
883
+ "startGraceMs": 120000,
884
+ "runTimeoutMs": 1800000,
885
+ "failureAlert": "convex_action_wrapper",
886
+ "domainReportRequired": true
593
887
  },
594
888
  {
595
889
  "id": "convex.recover-notification-delivery-work",
@@ -601,7 +895,13 @@
601
895
  "locator": "recover notification delivery work",
602
896
  "owner": "platform",
603
897
  "criticality": "critical",
604
- "failureAlert": "convex_action_wrapper"
898
+ "purpose": "Recover scheduled notification digest buckets and deliveries ready for retry.",
899
+ "successDefinition": "Every recoverable delivery advances or is durably retried; zero recoverable deliveries is a valid no-op.",
900
+ "failureDefinition": "A delivery remains stuck without retry/terminal disposition or recovery fails.",
901
+ "startGraceMs": 120000,
902
+ "runTimeoutMs": 1800000,
903
+ "failureAlert": "convex_action_wrapper",
904
+ "domainReportRequired": true
605
905
  },
606
906
  {
607
907
  "id": "convex.fail-stale-play-deployments",
@@ -613,7 +913,13 @@
613
913
  "locator": "fail stale play deployments",
614
914
  "owner": "platform",
615
915
  "criticality": "operational",
616
- "failureAlert": "convex_action_wrapper"
916
+ "purpose": "Terminalize Play deployments past deploy-token lifetime and prune expired webhook dedupe rows.",
917
+ "successDefinition": "Stale deployments fail and eligible dedupe rows prune; zero stale records is a valid no-op.",
918
+ "failureDefinition": "A deployment cannot terminalize or pruning fails, leaving state stuck.",
919
+ "startGraceMs": 120000,
920
+ "runTimeoutMs": 1800000,
921
+ "failureAlert": "convex_action_wrapper",
922
+ "domainReportRequired": true
617
923
  },
618
924
  {
619
925
  "id": "play.deepline-play-execution-heartbeat",
@@ -625,7 +931,13 @@
625
931
  "locator": "deepline-play-execution-heartbeat",
626
932
  "owner": "runtime",
627
933
  "criticality": "critical",
628
- "failureAlert": "better_stack_heartbeat"
934
+ "purpose": "Exercise the Play execution heartbeat that keeps active runs and queue leases alive.",
935
+ "successDefinition": "Active executions receive heartbeats and idle/terminal runs are reported; no active executions is a valid no-op.",
936
+ "failureDefinition": "Heartbeat dispatch, lease refresh, or terminal reporting fails.",
937
+ "startGraceMs": 120000,
938
+ "runTimeoutMs": 1800000,
939
+ "failureAlert": "better_stack_heartbeat",
940
+ "domainReportRequired": true
629
941
  },
630
942
  {
631
943
  "id": "convex.monitor-fleet-convergence-tick",
@@ -637,7 +949,13 @@
637
949
  "locator": "monitor fleet convergence tick",
638
950
  "owner": "monitors",
639
951
  "criticality": "critical",
640
- "failureAlert": "convex_action_wrapper"
952
+ "purpose": "Claim due monitor fleets, dispatch bounded provider work, and request periodic source refresh.",
953
+ "successDefinition": "Every claim dispatches or durably fails and refresh work is accounted; no due fleets is a valid no-op.",
954
+ "failureDefinition": "A claim is stranded, provider dispatch lacks recovery, or convergence state cannot persist.",
955
+ "startGraceMs": 120000,
956
+ "runTimeoutMs": 1800000,
957
+ "failureAlert": "convex_action_wrapper",
958
+ "domainReportRequired": true
641
959
  },
642
960
  {
643
961
  "id": "vercel.play-webhook-receipt-recovery",
@@ -649,7 +967,13 @@
649
967
  "locator": "/api/v2/cron/play-webhook-receipt-recovery",
650
968
  "owner": "runtime",
651
969
  "criticality": "critical",
652
- "failureAlert": "vercel_route_wrapper"
970
+ "purpose": "Recover Play webhook receipts whose admission/dispatch continuation is delayed or stranded.",
971
+ "successDefinition": "Every eligible receipt is retried or terminally classified with evidence; no eligible receipts is a valid no-op.",
972
+ "failureDefinition": "A receipt cannot be safely recovered, remains stranded, or evidence cannot persist.",
973
+ "startGraceMs": 300000,
974
+ "runTimeoutMs": 1800000,
975
+ "failureAlert": "vercel_route_wrapper",
976
+ "domainReportRequired": true
653
977
  },
654
978
  {
655
979
  "id": "convex.cleanup-expired-notification-audit-records",
@@ -661,7 +985,13 @@
661
985
  "locator": "cleanup expired notification audit records",
662
986
  "owner": "platform",
663
987
  "criticality": "maintenance",
664
- "failureAlert": "convex_action_wrapper"
988
+ "purpose": "Delete notification audit records past their retention window.",
989
+ "successDefinition": "All eligible records are deleted; zero eligible records is a valid no-op.",
990
+ "failureDefinition": "Retention scan/deletion fails, leaving expired notification evidence indefinitely.",
991
+ "startGraceMs": 120000,
992
+ "runTimeoutMs": 1800000,
993
+ "failureAlert": "convex_action_wrapper",
994
+ "domainReportRequired": true
665
995
  },
666
996
  {
667
997
  "id": "github.modal-ci-runner-weekly-proof",
@@ -673,7 +1003,13 @@
673
1003
  "locator": "schedule:",
674
1004
  "owner": "platform",
675
1005
  "criticality": "maintenance",
676
- "failureAlert": "github_workflow_run"
1006
+ "purpose": "Lint, test, deploy, and prove the pinned Modal CI runner image and isolated smoke path.",
1007
+ "successDefinition": "Pinned package lint/tests, control-plane/image deploy, and exact-image credential-isolation smoke all pass.",
1008
+ "failureDefinition": "Any lint/test/deploy/health/smoke/cleanup proof fails or image identity is wrong.",
1009
+ "startGraceMs": 600000,
1010
+ "runTimeoutMs": 3600000,
1011
+ "failureAlert": "github_workflow_run",
1012
+ "domainReportRequired": true
677
1013
  },
678
1014
  {
679
1015
  "id": "convex.async-usage-recovery-continuation",
@@ -685,7 +1021,13 @@
685
1021
  "locator": "dispatchAsyncUsageRecoveryContinuation",
686
1022
  "owner": "billing",
687
1023
  "criticality": "critical",
688
- "failureAlert": "convex_action_wrapper"
1024
+ "purpose": "Continue bounded recovery of asynchronous usage records not admitted or settled on the first pass.",
1025
+ "successDefinition": "The recovery batch processes or durably reschedules until complete; an empty batch is a valid no-op.",
1026
+ "failureDefinition": "A usage record remains unrecovered without a next step or continuation state is lost.",
1027
+ "startGraceMs": 120000,
1028
+ "runTimeoutMs": 1800000,
1029
+ "failureAlert": "convex_action_wrapper",
1030
+ "domainReportRequired": true
689
1031
  },
690
1032
  {
691
1033
  "id": "convex.charge-reconciliation-backlog-continuation",
@@ -697,7 +1039,13 @@
697
1039
  "locator": "dispatchChargeReconciliationBacklogContinuation",
698
1040
  "owner": "billing",
699
1041
  "criticality": "critical",
700
- "failureAlert": "convex_action_wrapper"
1042
+ "purpose": "Continue bounded reconciliation of charge work beyond the primary cron batch.",
1043
+ "successDefinition": "The backlog page settles, retries durably, or is terminally classified.",
1044
+ "failureDefinition": "Backlog work is stuck, a financial transition is ambiguous, or continuation scheduling fails.",
1045
+ "startGraceMs": 120000,
1046
+ "runTimeoutMs": 1800000,
1047
+ "failureAlert": "convex_action_wrapper",
1048
+ "domainReportRequired": true
701
1049
  },
702
1050
  {
703
1051
  "id": "convex.monitor-deployment-job-tick",
@@ -709,6 +1057,12 @@
709
1057
  "locator": "monitor deployment job tick",
710
1058
  "owner": "monitors",
711
1059
  "criticality": "critical",
712
- "failureAlert": "convex_action_wrapper"
1060
+ "purpose": "Lease and dispatch one legacy scalar monitor deployment job; batch jobs use their continuation runner.",
1061
+ "successDefinition": "The due lease dispatches exactly once or no due job is a valid no-op; lease is released/terminally recorded.",
1062
+ "failureDefinition": "A claimed job cannot dispatch or its lease remains stranded/ambiguous.",
1063
+ "startGraceMs": 120000,
1064
+ "runTimeoutMs": 1800000,
1065
+ "failureAlert": "convex_action_wrapper",
1066
+ "domainReportRequired": true
713
1067
  }
714
1068
  ]