@elevasis/sdk 1.36.4 → 1.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2352,21 +2352,18 @@ export interface AcqContact {
2352
2352
  /**
2353
2353
  * Live-scan aggregate telemetry for a single list, computed on demand from
2354
2354
  * the list junction tables and current contact deliverability state.
2355
- * `stageCounts` are attempted counts from list-row processing_state.
2355
+ * `stageCounts` are attempted counts from list-row processing_state, keyed
2356
+ * by the tenant's declared lead-gen stage catalog IDs. The canonical Elevasis
2357
+ * pipeline stages (`populated`, `extracted`, `qualified`, `discovered`,
2358
+ * `verified`, `personalized`, `uploaded`) are included when declared in the
2359
+ * tenant's stage catalog; tenants may declare additional or different stages.
2356
2360
  */
2357
2361
  export interface ListTelemetry {
2358
2362
  listId: string
2359
2363
  totalCompanies: number
2360
2364
  totalContacts: number
2361
- stageCounts: {
2362
- populated: number
2363
- extracted: number
2364
- qualified: number
2365
- discovered: number
2366
- verified: number
2367
- personalized: number
2368
- uploaded: number
2369
- }
2365
+ /** Stage attempt counts keyed by the tenant's declared stage catalog IDs. */
2366
+ stageCounts: Record<string, number>
2370
2367
  deliverability: {
2371
2368
  valid: number
2372
2369
  risky: number
@@ -2383,17 +2380,13 @@ export interface ListTelemetry {
2383
2380
 
2384
2381
  ```typescript
2385
2382
  export const ListStageCountsSchema = z.object({
2386
- // Attempted counts by canonical lead-gen stage. The detailed status
2387
- // distribution lives on ListProgress; telemetry keeps the overview payload small.
2388
- stageCounts: z.object({
2389
- populated: z.number().int(),
2390
- extracted: z.number().int(),
2391
- qualified: z.number().int(),
2392
- discovered: z.number().int(),
2393
- verified: z.number().int(),
2394
- personalized: z.number().int(),
2395
- uploaded: z.number().int()
2396
- }),
2383
+ // Attempted counts keyed by the tenant's declared lead-gen stage catalog IDs.
2384
+ // The catalog is tenant-owned and OM-derived at compute time; the schema
2385
+ // validates the transport shape (string keys → integer values) rather than
2386
+ // a fixed key set, so tenants with custom stages receive complete telemetry.
2387
+ // Canonical Elevasis stages (populated, extracted, qualified, discovered,
2388
+ // verified, personalized, uploaded) are included when declared in the catalog.
2389
+ stageCounts: z.record(z.string().min(1), z.number().int()),
2397
2390
  deliverability: z.object({
2398
2391
  valid: z.number().int(),
2399
2392
  risky: z.number().int(),