@outlit/tools 2.1.2 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  declare const contractVersion: 1;
2
- declare const publicToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_customer_relationship", "outlit_assign_customer_owner", "outlit_grant_customer_access", "outlit_update_customer_access", "outlit_revoke_customer_access", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_list_destinations", "outlit_get_destination", "outlit_create_destination", "outlit_update_destination", "outlit_enable_destination", "outlit_disable_destination", "outlit_archive_destination", "outlit_get_integration_capabilities", "outlit_begin_integration_setup", "outlit_get_integration_setup_status", "outlit_get_integration_status", "outlit_setup_integration", "outlit_get_customer_activation", "outlit_preview_customer_activation", "outlit_update_customer_activation", "outlit_get_workspace_settings", "outlit_update_workspace_settings", "outlit_list_features", "outlit_create_feature", "outlit_archive_feature", "outlit_get_customer_features", "outlit_list_attention_items", "outlit_get_attention_item"];
2
+ declare const publicToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_customer_relationship", "outlit_assign_customer_owner", "outlit_grant_customer_access", "outlit_update_customer_access", "outlit_revoke_customer_access", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_list_destinations", "outlit_get_destination", "outlit_create_destination", "outlit_update_destination", "outlit_enable_destination", "outlit_disable_destination", "outlit_archive_destination", "outlit_get_integration_capabilities", "outlit_begin_integration_setup", "outlit_get_integration_setup_status", "outlit_get_integration_status", "outlit_setup_integration", "outlit_get_customer_activation", "outlit_preview_customer_activation", "outlit_update_customer_activation", "outlit_get_workspace_settings", "outlit_update_workspace_settings", "outlit_list_features", "outlit_create_feature", "outlit_archive_feature", "outlit_get_customer_features", "outlit_get_customer_credits", "outlit_list_attention_items", "outlit_get_attention_item", "outlit_get_customer_identity", "outlit_list_identity_merge_suggestions", "outlit_reject_identity_merge_suggestion", "outlit_merge_customers", "outlit_get_customer_merge_status"];
3
3
  declare const publicToolContracts: {
4
4
  readonly outlit_list_customers: {
5
5
  readonly toolName: "outlit_list_customers";
@@ -587,7 +587,7 @@ declare const publicToolContracts: {
587
587
  readonly commandVersion: 1;
588
588
  readonly ownerDomain: "customers";
589
589
  readonly title: "Get Customer";
590
- readonly description: "Get full details for a single customer. Use this when you already know which customer you want to inspect. Optionally include related data (users, revenue, recent activity, engagement metrics, company enrichment).";
590
+ readonly description: "Get full details for a single customer. Optionally include users, revenue, recent activity, engagement metrics, or company enrichment.";
591
591
  readonly inputSchema: {
592
592
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
593
593
  readonly type: "object";
@@ -1669,11 +1669,11 @@ declare const publicToolContracts: {
1669
1669
  };
1670
1670
  };
1671
1671
  readonly factTypes: {
1672
- readonly description: "Optional customer-memory fact type filters, such as CHURN_RISK, EXPANSION, SENTIMENT, or BUDGET. Anomaly detector fact types are not supported.";
1672
+ readonly description: "Optional customer-memory fact type filters; omit to retrieve across types. Choose types relevant to the question. Anomaly detector fact types are not supported.\nCUSTOM: A custom customer fact whose meaning is given by its content and supporting evidence.\nCOMPANY_CHANGE: Changes to the customer company, such as leadership, staffing, structure, or office location.\nFUNDING_REVENUE: The customer company's funding, revenue, financial health, or burn rate.\nTECHNOLOGY: Changes to the customer's technology stack, including migrations, adoption, or deprecation.\nSTRATEGY: The customer company's strategic direction, pivots, markets, or business priorities.\nCOMPETITIVE: The customer's consideration of competing products, including evaluations, switching intent, or RFPs.\nSENTIMENT: The customer's expressed satisfaction, frustration, praise, or complaints about the product.\nEXPANSION: Potential growth in the customer's use or purchase of the product through new use cases, users, or departments.\nCHURN_RISK: The customer reducing or ending use of the organization's product; exclude the customer's own customers churning, generic complaints without reduction intent, unrelated budget changes, and unrelated vendor notices\nTIMELINE: Stated dates or deadlines for customer decisions, launches, renewals, or other milestones.\nBUDGET: The customer's budget, spending approval status, or procurement process.\nDECISION_MAKER: Who influences or approves the customer's purchasing or implementation decisions.\nREQUIREMENTS: Specific product capabilities, features, or integrations the customer requests or requires.\nBLOCKER: An obstacle preventing the customer's launch, renewal, expansion, implementation, integration, or successful product use.\nCOMMITMENT: A promise, obligation, agreed next step, approval, or decision by the customer or vendor.\nSUCCESS_CRITERION: An explicitly customer-stated desired outcome or condition for getting value from the product, including qualitative outcomes without invented metrics or deadlines.\nPRODUCT_USAGE: How the customer uses, adopts, abandons, or works around specific product capabilities.\nCONTACT_INFO: A customer contact's title, professional responsibilities, team membership, or reporting chain.\nCONTACT_PREFERENCE: A customer contact's communication preferences, availability, timezone, or meeting style.\nCONTACT_DEPARTURE: A known customer contact explicitly left or is leaving the customer's company; exclude vacation, parental or medical leave, ordinary out-of-office notices, candidates, and people discussed as part of the customer's own business\nCONTACT_POSITION_CHANGE: A known customer contact changed title, department, team, or professional responsibility; do not use this for an Outlit relationship role change, and use CONTACT_DEPARTURE when the person left the company\nCONTACT_DISENGAGEMENT: A known customer contact explicitly stopped participating, organizing, responding, or owning the initiative; a single unanswered message, scheduling friction, or an out-of-office notice is insufficient\nCHAMPION_RISK: Historical broad relationship-risk fact retained for existing rows and occurrences; new extraction uses specific contact-transition Fact types";
1673
1673
  readonly type: "array";
1674
1674
  readonly items: {
1675
1675
  readonly type: "string";
1676
- readonly enum: readonly ["CUSTOM", "COMPANY_CHANGE", "FUNDING_REVENUE", "TECHNOLOGY", "STRATEGY", "COMPETITIVE", "SENTIMENT", "CHAMPION_RISK", "EXPANSION", "CHURN_RISK", "TIMELINE", "BUDGET", "DECISION_MAKER", "REQUIREMENTS", "PRODUCT_USAGE", "CONTACT_INFO", "CONTACT_PREFERENCE", "CONTACT_DEPARTURE", "CONTACT_POSITION_CHANGE", "CONTACT_DISENGAGEMENT"];
1676
+ readonly enum: readonly ["CUSTOM", "COMPANY_CHANGE", "FUNDING_REVENUE", "TECHNOLOGY", "STRATEGY", "COMPETITIVE", "SENTIMENT", "EXPANSION", "CHURN_RISK", "TIMELINE", "BUDGET", "DECISION_MAKER", "REQUIREMENTS", "BLOCKER", "COMMITMENT", "SUCCESS_CRITERION", "PRODUCT_USAGE", "CONTACT_INFO", "CONTACT_PREFERENCE", "CONTACT_DEPARTURE", "CONTACT_POSITION_CHANGE", "CONTACT_DISENGAGEMENT", "CHAMPION_RISK"];
1677
1677
  };
1678
1678
  };
1679
1679
  readonly factCategories: {
@@ -2433,7 +2433,7 @@ declare const publicToolContracts: {
2433
2433
  readonly properties: {
2434
2434
  readonly sourceType: {
2435
2435
  readonly type: "string";
2436
- readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "SLACK", "PERSON_PROFILE", "CRM", "CRM_OPPORTUNITY"];
2436
+ readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "SLACK", "PERSON_PROFILE", "CRM", "CRM_OPPORTUNITY", "EXTRACTED"];
2437
2437
  };
2438
2438
  readonly sourceId: {
2439
2439
  readonly type: "string";
@@ -2441,13 +2441,13 @@ declare const publicToolContracts: {
2441
2441
  readonly maxLength: 500;
2442
2442
  };
2443
2443
  readonly limit: {
2444
- readonly description: "Slack replies per page (default 50, maximum 100). Ignored for other source types.";
2444
+ readonly description: "Exact content segments per page (default 10, maximum 100).";
2445
2445
  readonly type: "integer";
2446
2446
  readonly minimum: 1;
2447
2447
  readonly maximum: 100;
2448
2448
  };
2449
2449
  readonly cursor: {
2450
- readonly description: "Opaque Slack reply cursor returned by a previous exact lookup.";
2450
+ readonly description: "Opaque cursor returned by a previous exact lookup for the same source.";
2451
2451
  readonly type: "string";
2452
2452
  readonly minLength: 1;
2453
2453
  readonly maxLength: 2000;
@@ -2589,6 +2589,98 @@ declare const publicToolContracts: {
2589
2589
  };
2590
2590
  readonly additionalProperties: {};
2591
2591
  };
2592
+ readonly contentPage: {
2593
+ readonly type: "object";
2594
+ readonly properties: {
2595
+ readonly sourceType: {
2596
+ readonly type: "string";
2597
+ readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "SLACK", "PERSON_PROFILE"];
2598
+ };
2599
+ readonly sourceId: {
2600
+ readonly type: "string";
2601
+ readonly minLength: 1;
2602
+ readonly maxLength: 500;
2603
+ };
2604
+ readonly contentKind: {
2605
+ readonly type: "string";
2606
+ readonly enum: readonly ["email_body", "call_transcript", "support_thread", "slack_thread"];
2607
+ };
2608
+ readonly segments: {
2609
+ readonly type: "array";
2610
+ readonly items: {
2611
+ readonly type: "object";
2612
+ readonly properties: {
2613
+ readonly id: {
2614
+ readonly type: "string";
2615
+ readonly minLength: 1;
2616
+ readonly maxLength: 1000;
2617
+ };
2618
+ readonly occurredAt: {
2619
+ readonly type: "string";
2620
+ readonly format: "date-time";
2621
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
2622
+ };
2623
+ readonly authorLabel: {
2624
+ readonly type: "string";
2625
+ readonly maxLength: 500;
2626
+ };
2627
+ readonly text: {
2628
+ readonly type: "string";
2629
+ };
2630
+ };
2631
+ readonly required: readonly ["id", "text"];
2632
+ readonly additionalProperties: false;
2633
+ };
2634
+ };
2635
+ readonly page: {
2636
+ readonly type: "object";
2637
+ readonly properties: {
2638
+ readonly returned: {
2639
+ readonly type: "integer";
2640
+ readonly minimum: 0;
2641
+ readonly maximum: 9007199254740991;
2642
+ };
2643
+ readonly hasMore: {
2644
+ readonly type: "boolean";
2645
+ };
2646
+ readonly nextCursor: {
2647
+ readonly anyOf: readonly [{
2648
+ readonly type: "string";
2649
+ readonly maxLength: 2000;
2650
+ }, {
2651
+ readonly type: "null";
2652
+ }];
2653
+ };
2654
+ };
2655
+ readonly required: readonly ["returned", "hasMore", "nextCursor"];
2656
+ readonly additionalProperties: false;
2657
+ };
2658
+ readonly completeness: {
2659
+ readonly type: "object";
2660
+ readonly properties: {
2661
+ readonly status: {
2662
+ readonly type: "string";
2663
+ readonly enum: readonly ["complete", "partial", "unavailable"];
2664
+ };
2665
+ readonly reason: {
2666
+ readonly type: "string";
2667
+ readonly maxLength: 1000;
2668
+ };
2669
+ readonly omittedFields: {
2670
+ readonly type: "array";
2671
+ readonly items: {
2672
+ readonly type: "string";
2673
+ readonly maxLength: 500;
2674
+ };
2675
+ };
2676
+ };
2677
+ readonly required: readonly ["status", "omittedFields"];
2678
+ readonly additionalProperties: false;
2679
+ };
2680
+ };
2681
+ readonly required: readonly ["sourceType", "sourceId", "contentKind", "segments", "page", "completeness"];
2682
+ readonly additionalProperties: false;
2683
+ };
2592
2684
  };
2593
2685
  readonly required: readonly ["sourceType", "sourceId", "occurredAt", "title", "summary", "permalink", "provider", "customer", "participants", "record"];
2594
2686
  readonly additionalProperties: false;
@@ -2799,6 +2891,98 @@ declare const publicToolContracts: {
2799
2891
  };
2800
2892
  readonly additionalProperties: {};
2801
2893
  };
2894
+ readonly contentPage: {
2895
+ readonly type: "object";
2896
+ readonly properties: {
2897
+ readonly sourceType: {
2898
+ readonly type: "string";
2899
+ readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "SLACK", "PERSON_PROFILE"];
2900
+ };
2901
+ readonly sourceId: {
2902
+ readonly type: "string";
2903
+ readonly minLength: 1;
2904
+ readonly maxLength: 500;
2905
+ };
2906
+ readonly contentKind: {
2907
+ readonly type: "string";
2908
+ readonly enum: readonly ["email_body", "call_transcript", "support_thread", "slack_thread"];
2909
+ };
2910
+ readonly segments: {
2911
+ readonly type: "array";
2912
+ readonly items: {
2913
+ readonly type: "object";
2914
+ readonly properties: {
2915
+ readonly id: {
2916
+ readonly type: "string";
2917
+ readonly minLength: 1;
2918
+ readonly maxLength: 1000;
2919
+ };
2920
+ readonly occurredAt: {
2921
+ readonly type: "string";
2922
+ readonly format: "date-time";
2923
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
2924
+ };
2925
+ readonly authorLabel: {
2926
+ readonly type: "string";
2927
+ readonly maxLength: 500;
2928
+ };
2929
+ readonly text: {
2930
+ readonly type: "string";
2931
+ };
2932
+ };
2933
+ readonly required: readonly ["id", "text"];
2934
+ readonly additionalProperties: false;
2935
+ };
2936
+ };
2937
+ readonly page: {
2938
+ readonly type: "object";
2939
+ readonly properties: {
2940
+ readonly returned: {
2941
+ readonly type: "integer";
2942
+ readonly minimum: 0;
2943
+ readonly maximum: 9007199254740991;
2944
+ };
2945
+ readonly hasMore: {
2946
+ readonly type: "boolean";
2947
+ };
2948
+ readonly nextCursor: {
2949
+ readonly anyOf: readonly [{
2950
+ readonly type: "string";
2951
+ readonly maxLength: 2000;
2952
+ }, {
2953
+ readonly type: "null";
2954
+ }];
2955
+ };
2956
+ };
2957
+ readonly required: readonly ["returned", "hasMore", "nextCursor"];
2958
+ readonly additionalProperties: false;
2959
+ };
2960
+ readonly completeness: {
2961
+ readonly type: "object";
2962
+ readonly properties: {
2963
+ readonly status: {
2964
+ readonly type: "string";
2965
+ readonly enum: readonly ["complete", "partial", "unavailable"];
2966
+ };
2967
+ readonly reason: {
2968
+ readonly type: "string";
2969
+ readonly maxLength: 1000;
2970
+ };
2971
+ readonly omittedFields: {
2972
+ readonly type: "array";
2973
+ readonly items: {
2974
+ readonly type: "string";
2975
+ readonly maxLength: 500;
2976
+ };
2977
+ };
2978
+ };
2979
+ readonly required: readonly ["status", "omittedFields"];
2980
+ readonly additionalProperties: false;
2981
+ };
2982
+ };
2983
+ readonly required: readonly ["sourceType", "sourceId", "contentKind", "segments", "page", "completeness"];
2984
+ readonly additionalProperties: false;
2985
+ };
2802
2986
  };
2803
2987
  readonly required: readonly ["sourceType", "sourceId", "occurredAt", "title", "summary", "permalink", "provider", "customer", "participants", "record"];
2804
2988
  readonly additionalProperties: false;
@@ -5501,7 +5685,7 @@ declare const publicToolContracts: {
5501
5685
  readonly properties: {
5502
5686
  readonly provider: {
5503
5687
  readonly type: "string";
5504
- readonly enum: readonly ["salesforce", "hubspot", "attio", "slack", "google-calendar", "google-mail", "granola", "gong", "fireflies", "pylon", "stripe", "mixpanel", "posthog", "supabase", "clerk"];
5688
+ readonly enum: readonly ["salesforce", "hubspot", "attio", "slack", "google-calendar", "google-mail", "granola", "gong", "fireflies", "ergo", "pylon", "stripe", "mixpanel", "posthog", "supabase", "clerk", "autumn"];
5505
5689
  };
5506
5690
  };
5507
5691
  readonly additionalProperties: false;
@@ -5706,6 +5890,27 @@ declare const publicToolContracts: {
5706
5890
  };
5707
5891
  readonly required: readonly ["provider"];
5708
5892
  readonly additionalProperties: false;
5893
+ }, {
5894
+ readonly type: "object";
5895
+ readonly properties: {
5896
+ readonly provider: {
5897
+ readonly type: "string";
5898
+ readonly const: "ergo";
5899
+ };
5900
+ readonly credentials: {
5901
+ readonly type: "object";
5902
+ readonly properties: {
5903
+ readonly apiKey: {
5904
+ readonly type: "string";
5905
+ readonly minLength: 1;
5906
+ };
5907
+ };
5908
+ readonly required: readonly ["apiKey"];
5909
+ readonly additionalProperties: false;
5910
+ };
5911
+ };
5912
+ readonly required: readonly ["provider"];
5913
+ readonly additionalProperties: false;
5709
5914
  }, {
5710
5915
  readonly type: "object";
5711
5916
  readonly properties: {
@@ -5879,6 +6084,27 @@ declare const publicToolContracts: {
5879
6084
  };
5880
6085
  readonly required: readonly ["provider"];
5881
6086
  readonly additionalProperties: false;
6087
+ }, {
6088
+ readonly type: "object";
6089
+ readonly properties: {
6090
+ readonly provider: {
6091
+ readonly type: "string";
6092
+ readonly const: "autumn";
6093
+ };
6094
+ readonly credentials: {
6095
+ readonly type: "object";
6096
+ readonly properties: {
6097
+ readonly apiKey: {
6098
+ readonly type: "string";
6099
+ readonly minLength: 1;
6100
+ };
6101
+ };
6102
+ readonly required: readonly ["apiKey"];
6103
+ readonly additionalProperties: false;
6104
+ };
6105
+ };
6106
+ readonly required: readonly ["provider"];
6107
+ readonly additionalProperties: false;
5882
6108
  }];
5883
6109
  };
5884
6110
  readonly outputSchema: {
@@ -5887,7 +6113,7 @@ declare const publicToolContracts: {
5887
6113
  readonly properties: {
5888
6114
  readonly provider: {
5889
6115
  readonly type: "string";
5890
- readonly enum: readonly ["salesforce", "hubspot", "attio", "slack", "google-calendar", "google-mail", "granola", "gong", "fireflies", "pylon", "stripe", "mixpanel", "posthog", "supabase", "clerk"];
6116
+ readonly enum: readonly ["salesforce", "hubspot", "attio", "slack", "google-calendar", "google-mail", "granola", "gong", "fireflies", "ergo", "pylon", "stripe", "mixpanel", "posthog", "supabase", "clerk", "autumn"];
5891
6117
  };
5892
6118
  readonly name: {
5893
6119
  readonly type: "string";
@@ -6115,7 +6341,7 @@ declare const publicToolContracts: {
6115
6341
  readonly properties: {
6116
6342
  readonly code: {
6117
6343
  readonly type: "string";
6118
- readonly enum: readonly ["OWNER_REQUIRED", "CONNECTION_CONFLICT", "CREDENTIAL_REQUIRED", "CREDENTIAL_REJECTED", "LEGACY_CONNECTION_REQUIRED", "HANDOFF_UNAVAILABLE", "TRANSIENT_FAILURE"];
6344
+ readonly enum: readonly ["OWNER_REQUIRED", "CONNECTION_CONFLICT", "CREDENTIAL_REQUIRED", "CREDENTIAL_REJECTED", "LEGACY_CONNECTION_REQUIRED", "HANDOFF_UNAVAILABLE", "SYNC_START_FAILED", "TRANSIENT_FAILURE"];
6119
6345
  };
6120
6346
  readonly message: {
6121
6347
  readonly type: "string";
@@ -7194,7 +7420,7 @@ declare const publicToolContracts: {
7194
7420
  readonly commandVersion: 1;
7195
7421
  readonly ownerDomain: "value_features";
7196
7422
  readonly title: "Get Customer Features";
7197
- readonly description: "Read exact historical feature-usage evidence for one authorized customer.";
7423
+ readonly description: "Read Outlit event evidence and stored non-credit Autumn feature quantities, frequency, recency, weekly coverage, and explicit links for one authorized customer. Provider totals and linked event counts remain separate.";
7198
7424
  readonly inputSchema: {
7199
7425
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
7200
7426
  readonly type: "object";
@@ -7239,315 +7465,1890 @@ declare const publicToolContracts: {
7239
7465
  readonly required: readonly ["id", "name"];
7240
7466
  readonly additionalProperties: false;
7241
7467
  };
7468
+ readonly events: {
7469
+ readonly type: "string";
7470
+ readonly enum: readonly ["available", "unavailable"];
7471
+ readonly description: "Whether configured event features could be enumerated and their evidence reads attempted. Individual event coverage may still be unavailable. If unavailable, event features are omitted and stored provider features remain independently readable.";
7472
+ };
7242
7473
  readonly features: {
7243
- readonly maxItems: 100;
7474
+ readonly maxItems: 4100;
7244
7475
  readonly type: "array";
7245
7476
  readonly items: {
7246
- readonly type: "object";
7247
- readonly properties: {
7248
- readonly id: {
7249
- readonly type: "string";
7250
- readonly pattern: "^value_feature_v1_[a-f0-9]{32}$";
7251
- };
7252
- readonly revision: {
7253
- readonly type: "string";
7254
- readonly pattern: "^value_feature_revision_v1_[a-f0-9]{32}$";
7255
- };
7256
- readonly sourceKey: {
7257
- readonly type: "string";
7258
- readonly pattern: "^metric_source_v1_[a-f0-9]{32}$";
7259
- };
7260
- readonly featureKey: {
7261
- readonly type: "string";
7262
- readonly maxLength: 64;
7263
- readonly pattern: "^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$";
7264
- };
7265
- readonly name: {
7266
- readonly type: "string";
7267
- readonly minLength: 1;
7268
- readonly maxLength: 255;
7269
- };
7270
- readonly rule: {
7271
- readonly type: "object";
7272
- readonly properties: {
7273
- readonly eventName: {
7274
- readonly type: "string";
7275
- readonly minLength: 1;
7276
- readonly maxLength: 191;
7277
- };
7278
- readonly propertyFilters: {
7279
- readonly maxItems: 5;
7280
- readonly type: "array";
7281
- readonly items: {
7282
- readonly oneOf: readonly [{
7283
- readonly type: "object";
7284
- readonly properties: {
7285
- readonly property: {
7286
- readonly type: "string";
7287
- readonly minLength: 1;
7288
- readonly maxLength: 191;
7289
- };
7290
- readonly operator: {
7291
- readonly type: "string";
7292
- readonly const: "equals";
7293
- };
7294
- readonly value: {
7295
- readonly oneOf: readonly [{
7296
- readonly type: "object";
7297
- readonly properties: {
7298
- readonly type: {
7299
- readonly type: "string";
7300
- readonly const: "string";
7301
- };
7302
- readonly value: {
7303
- readonly type: "string";
7304
- readonly maxLength: 191;
7305
- };
7306
- };
7307
- readonly required: readonly ["type", "value"];
7308
- readonly additionalProperties: false;
7309
- }, {
7310
- readonly type: "object";
7311
- readonly properties: {
7312
- readonly type: {
7313
- readonly type: "string";
7314
- readonly const: "number";
7315
- };
7316
- readonly value: {
7317
- readonly type: "number";
7318
- readonly minimum: -9007199254740991;
7319
- readonly maximum: 9007199254740991;
7320
- };
7321
- };
7322
- readonly required: readonly ["type", "value"];
7323
- readonly additionalProperties: false;
7324
- }, {
7325
- readonly type: "object";
7326
- readonly properties: {
7327
- readonly type: {
7328
- readonly type: "string";
7329
- readonly const: "boolean";
7330
- };
7331
- readonly value: {
7332
- readonly type: "boolean";
7333
- };
7334
- };
7335
- readonly required: readonly ["type", "value"];
7336
- readonly additionalProperties: false;
7337
- }];
7338
- };
7339
- };
7340
- readonly required: readonly ["property", "operator", "value"];
7341
- readonly additionalProperties: false;
7342
- }, {
7343
- readonly type: "object";
7344
- readonly properties: {
7345
- readonly property: {
7346
- readonly type: "string";
7347
- readonly minLength: 1;
7348
- readonly maxLength: 191;
7349
- };
7350
- readonly operator: {
7351
- readonly type: "string";
7352
- readonly const: "exists";
7353
- };
7354
- };
7355
- readonly required: readonly ["property", "operator"];
7356
- readonly additionalProperties: false;
7357
- }];
7358
- };
7477
+ readonly oneOf: readonly [{
7478
+ readonly type: "object";
7479
+ readonly properties: {
7480
+ readonly id: {
7481
+ readonly type: "string";
7482
+ readonly pattern: "^value_feature_v1_[a-f0-9]{32}$";
7483
+ };
7484
+ readonly revision: {
7485
+ readonly type: "string";
7486
+ readonly pattern: "^value_feature_revision_v1_[a-f0-9]{32}$";
7487
+ };
7488
+ readonly kind: {
7489
+ readonly type: "string";
7490
+ readonly const: "event";
7491
+ };
7492
+ readonly sourceKey: {
7493
+ readonly type: "string";
7494
+ readonly pattern: "^metric_source_v1_[a-f0-9]{32}$";
7495
+ };
7496
+ readonly source: {
7497
+ readonly type: "object";
7498
+ readonly properties: {
7499
+ readonly provider: {
7500
+ readonly type: "string";
7501
+ readonly enum: readonly ["outlit_sdk", "posthog", "mixpanel"];
7502
+ };
7503
+ readonly connection: {
7504
+ readonly anyOf: readonly [{
7505
+ readonly type: "string";
7506
+ }, {
7507
+ readonly type: "null";
7508
+ }];
7509
+ };
7510
+ readonly scope: {
7511
+ readonly type: "string";
7512
+ };
7513
+ readonly label: {
7514
+ readonly anyOf: readonly [{
7515
+ readonly type: "string";
7516
+ }, {
7517
+ readonly type: "null";
7518
+ }];
7519
+ };
7359
7520
  };
7521
+ readonly required: readonly ["provider", "connection", "scope", "label"];
7522
+ readonly additionalProperties: false;
7360
7523
  };
7361
- readonly required: readonly ["eventName", "propertyFilters"];
7362
- readonly additionalProperties: false;
7363
- };
7364
- readonly evidence: {
7365
- readonly oneOf: readonly [{
7524
+ readonly featureKey: {
7525
+ readonly type: "string";
7526
+ readonly maxLength: 64;
7527
+ readonly pattern: "^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$";
7528
+ };
7529
+ readonly name: {
7530
+ readonly type: "string";
7531
+ readonly minLength: 1;
7532
+ readonly maxLength: 255;
7533
+ };
7534
+ readonly rule: {
7366
7535
  readonly type: "object";
7367
7536
  readonly properties: {
7368
- readonly window: {
7369
- readonly type: "object";
7370
- readonly properties: {
7371
- readonly startAt: {
7372
- readonly type: "string";
7373
- readonly format: "date-time";
7374
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7375
- };
7376
- readonly endAt: {
7377
- readonly type: "string";
7378
- readonly format: "date-time";
7379
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7380
- };
7381
- };
7382
- readonly required: readonly ["startAt", "endAt"];
7383
- readonly additionalProperties: false;
7384
- };
7385
- readonly coverage: {
7537
+ readonly eventName: {
7386
7538
  readonly type: "string";
7387
- readonly enum: readonly ["complete", "partial"];
7388
- };
7389
- readonly eventCount: {
7390
- readonly type: "integer";
7391
- readonly minimum: 0;
7392
- readonly maximum: 9007199254740991;
7393
- };
7394
- readonly activeDays: {
7395
- readonly type: "integer";
7396
- readonly minimum: 0;
7397
- readonly maximum: 9007199254740991;
7398
- };
7399
- readonly activeWeeks: {
7400
- readonly type: "integer";
7401
- readonly minimum: 0;
7402
- readonly maximum: 53;
7403
- };
7404
- readonly firstObservedAt: {
7405
- readonly anyOf: readonly [{
7406
- readonly type: "string";
7407
- readonly format: "date-time";
7408
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7409
- }, {
7410
- readonly type: "null";
7411
- }];
7412
- };
7413
- readonly lastObservedAt: {
7414
- readonly anyOf: readonly [{
7415
- readonly type: "string";
7416
- readonly format: "date-time";
7417
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7418
- }, {
7419
- readonly type: "null";
7420
- }];
7539
+ readonly minLength: 1;
7540
+ readonly maxLength: 191;
7421
7541
  };
7422
- readonly weeklyUsage: {
7423
- readonly maxItems: 53;
7542
+ readonly propertyFilters: {
7543
+ readonly maxItems: 5;
7424
7544
  readonly type: "array";
7425
7545
  readonly items: {
7426
7546
  readonly oneOf: readonly [{
7427
7547
  readonly type: "object";
7428
7548
  readonly properties: {
7429
- readonly weekStartAt: {
7549
+ readonly property: {
7430
7550
  readonly type: "string";
7431
- readonly format: "date-time";
7432
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7551
+ readonly minLength: 1;
7552
+ readonly maxLength: 191;
7433
7553
  };
7434
- readonly coverage: {
7554
+ readonly operator: {
7435
7555
  readonly type: "string";
7436
- readonly enum: readonly ["complete", "partial"];
7437
- };
7438
- readonly eventCount: {
7439
- readonly type: "integer";
7440
- readonly minimum: 0;
7441
- readonly maximum: 9007199254740991;
7556
+ readonly const: "equals";
7442
7557
  };
7443
- readonly activeDays: {
7444
- readonly type: "integer";
7445
- readonly minimum: 0;
7446
- readonly maximum: 7;
7558
+ readonly value: {
7559
+ readonly oneOf: readonly [{
7560
+ readonly type: "object";
7561
+ readonly properties: {
7562
+ readonly type: {
7563
+ readonly type: "string";
7564
+ readonly const: "string";
7565
+ };
7566
+ readonly value: {
7567
+ readonly type: "string";
7568
+ readonly maxLength: 191;
7569
+ };
7570
+ };
7571
+ readonly required: readonly ["type", "value"];
7572
+ readonly additionalProperties: false;
7573
+ }, {
7574
+ readonly type: "object";
7575
+ readonly properties: {
7576
+ readonly type: {
7577
+ readonly type: "string";
7578
+ readonly const: "number";
7579
+ };
7580
+ readonly value: {
7581
+ readonly type: "number";
7582
+ readonly minimum: -9007199254740991;
7583
+ readonly maximum: 9007199254740991;
7584
+ };
7585
+ };
7586
+ readonly required: readonly ["type", "value"];
7587
+ readonly additionalProperties: false;
7588
+ }, {
7589
+ readonly type: "object";
7590
+ readonly properties: {
7591
+ readonly type: {
7592
+ readonly type: "string";
7593
+ readonly const: "boolean";
7594
+ };
7595
+ readonly value: {
7596
+ readonly type: "boolean";
7597
+ };
7598
+ };
7599
+ readonly required: readonly ["type", "value"];
7600
+ readonly additionalProperties: false;
7601
+ }];
7447
7602
  };
7448
7603
  };
7449
- readonly required: readonly ["weekStartAt", "coverage", "eventCount", "activeDays"];
7604
+ readonly required: readonly ["property", "operator", "value"];
7450
7605
  readonly additionalProperties: false;
7451
7606
  }, {
7452
7607
  readonly type: "object";
7453
7608
  readonly properties: {
7454
- readonly weekStartAt: {
7609
+ readonly property: {
7455
7610
  readonly type: "string";
7456
- readonly format: "date-time";
7457
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7611
+ readonly minLength: 1;
7612
+ readonly maxLength: 191;
7458
7613
  };
7459
- readonly coverage: {
7614
+ readonly operator: {
7460
7615
  readonly type: "string";
7461
- readonly const: "unavailable";
7616
+ readonly const: "exists";
7462
7617
  };
7463
7618
  };
7464
- readonly required: readonly ["weekStartAt", "coverage"];
7619
+ readonly required: readonly ["property", "operator"];
7465
7620
  readonly additionalProperties: false;
7466
7621
  }];
7467
7622
  };
7468
7623
  };
7469
7624
  };
7470
- readonly required: readonly ["window", "coverage", "eventCount", "activeDays", "activeWeeks", "firstObservedAt", "lastObservedAt"];
7625
+ readonly required: readonly ["eventName", "propertyFilters"];
7471
7626
  readonly additionalProperties: false;
7472
- }, {
7473
- readonly type: "object";
7474
- readonly properties: {
7475
- readonly window: {
7476
- readonly type: "object";
7477
- readonly properties: {
7478
- readonly startAt: {
7627
+ };
7628
+ readonly evidence: {
7629
+ readonly oneOf: readonly [{
7630
+ readonly type: "object";
7631
+ readonly properties: {
7632
+ readonly window: {
7633
+ readonly type: "object";
7634
+ readonly properties: {
7635
+ readonly startAt: {
7636
+ readonly type: "string";
7637
+ readonly format: "date-time";
7638
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7639
+ };
7640
+ readonly endAt: {
7641
+ readonly type: "string";
7642
+ readonly format: "date-time";
7643
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7644
+ };
7645
+ };
7646
+ readonly required: readonly ["startAt", "endAt"];
7647
+ readonly additionalProperties: false;
7648
+ };
7649
+ readonly coverage: {
7650
+ readonly type: "string";
7651
+ readonly enum: readonly ["complete", "partial"];
7652
+ };
7653
+ readonly eventCount: {
7654
+ readonly type: "integer";
7655
+ readonly minimum: 0;
7656
+ readonly maximum: 9007199254740991;
7657
+ };
7658
+ readonly activeDays: {
7659
+ readonly type: "integer";
7660
+ readonly minimum: 0;
7661
+ readonly maximum: 9007199254740991;
7662
+ };
7663
+ readonly activeWeeks: {
7664
+ readonly type: "integer";
7665
+ readonly minimum: 0;
7666
+ readonly maximum: 53;
7667
+ };
7668
+ readonly firstObservedAt: {
7669
+ readonly anyOf: readonly [{
7479
7670
  readonly type: "string";
7480
7671
  readonly format: "date-time";
7481
7672
  readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7482
- };
7483
- readonly endAt: {
7673
+ }, {
7674
+ readonly type: "null";
7675
+ }];
7676
+ };
7677
+ readonly lastObservedAt: {
7678
+ readonly anyOf: readonly [{
7484
7679
  readonly type: "string";
7485
7680
  readonly format: "date-time";
7486
7681
  readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7682
+ }, {
7683
+ readonly type: "null";
7684
+ }];
7685
+ };
7686
+ readonly weeklyUsage: {
7687
+ readonly maxItems: 53;
7688
+ readonly type: "array";
7689
+ readonly items: {
7690
+ readonly oneOf: readonly [{
7691
+ readonly type: "object";
7692
+ readonly properties: {
7693
+ readonly weekStartAt: {
7694
+ readonly type: "string";
7695
+ readonly format: "date-time";
7696
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7697
+ };
7698
+ readonly coverage: {
7699
+ readonly type: "string";
7700
+ readonly enum: readonly ["complete", "partial"];
7701
+ };
7702
+ readonly eventCount: {
7703
+ readonly type: "integer";
7704
+ readonly minimum: 0;
7705
+ readonly maximum: 9007199254740991;
7706
+ };
7707
+ readonly activeDays: {
7708
+ readonly type: "integer";
7709
+ readonly minimum: 0;
7710
+ readonly maximum: 7;
7711
+ };
7712
+ };
7713
+ readonly required: readonly ["weekStartAt", "coverage", "eventCount", "activeDays"];
7714
+ readonly additionalProperties: false;
7715
+ }, {
7716
+ readonly type: "object";
7717
+ readonly properties: {
7718
+ readonly weekStartAt: {
7719
+ readonly type: "string";
7720
+ readonly format: "date-time";
7721
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7722
+ };
7723
+ readonly coverage: {
7724
+ readonly type: "string";
7725
+ readonly const: "unavailable";
7726
+ };
7727
+ };
7728
+ readonly required: readonly ["weekStartAt", "coverage"];
7729
+ readonly additionalProperties: false;
7730
+ }];
7487
7731
  };
7488
7732
  };
7489
- readonly required: readonly ["startAt", "endAt"];
7490
- readonly additionalProperties: false;
7491
- };
7492
- readonly coverage: {
7493
- readonly type: "string";
7494
- readonly const: "unavailable";
7495
- };
7496
- readonly reason: {
7497
- readonly type: "string";
7498
- readonly enum: readonly ["SOURCE_BLOCKED", "SOURCE_NOT_READY", "QUERY_FAILED"];
7733
+ };
7734
+ readonly required: readonly ["window", "coverage", "eventCount", "activeDays", "activeWeeks", "firstObservedAt", "lastObservedAt"];
7735
+ readonly additionalProperties: false;
7736
+ }, {
7737
+ readonly type: "object";
7738
+ readonly properties: {
7739
+ readonly window: {
7740
+ readonly type: "object";
7741
+ readonly properties: {
7742
+ readonly startAt: {
7743
+ readonly type: "string";
7744
+ readonly format: "date-time";
7745
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7746
+ };
7747
+ readonly endAt: {
7748
+ readonly type: "string";
7749
+ readonly format: "date-time";
7750
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7751
+ };
7752
+ };
7753
+ readonly required: readonly ["startAt", "endAt"];
7754
+ readonly additionalProperties: false;
7755
+ };
7756
+ readonly coverage: {
7757
+ readonly type: "string";
7758
+ readonly const: "unavailable";
7759
+ };
7760
+ readonly reason: {
7761
+ readonly type: "string";
7762
+ readonly enum: readonly ["SOURCE_BLOCKED", "SOURCE_NOT_READY", "QUERY_FAILED"];
7763
+ };
7764
+ };
7765
+ readonly required: readonly ["window", "coverage", "reason"];
7766
+ readonly additionalProperties: false;
7767
+ }];
7768
+ };
7769
+ };
7770
+ readonly required: readonly ["id", "revision", "kind", "sourceKey", "source", "featureKey", "name", "rule", "evidence"];
7771
+ readonly additionalProperties: false;
7772
+ }, {
7773
+ readonly type: "object";
7774
+ readonly properties: {
7775
+ readonly kind: {
7776
+ readonly type: "string";
7777
+ readonly const: "metered";
7778
+ };
7779
+ readonly id: {
7780
+ readonly type: "string";
7781
+ readonly minLength: 1;
7782
+ readonly maxLength: 2048;
7783
+ };
7784
+ readonly name: {
7785
+ readonly type: "string";
7786
+ readonly minLength: 1;
7787
+ readonly maxLength: 2048;
7788
+ };
7789
+ readonly source: {
7790
+ readonly type: "object";
7791
+ readonly properties: {
7792
+ readonly provider: {
7793
+ readonly type: "string";
7794
+ readonly const: "autumn";
7795
+ };
7796
+ readonly connection: {
7797
+ readonly anyOf: readonly [{
7798
+ readonly type: "string";
7799
+ }, {
7800
+ readonly type: "null";
7801
+ }];
7802
+ };
7803
+ readonly account: {
7804
+ readonly type: "string";
7805
+ };
7806
+ readonly environment: {
7807
+ readonly type: "string";
7808
+ readonly enum: readonly ["sandbox", "live"];
7809
+ };
7810
+ readonly observed: {
7811
+ readonly type: "string";
7812
+ readonly format: "date-time";
7813
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
7814
+ };
7815
+ readonly stale: {
7816
+ readonly type: "boolean";
7817
+ };
7818
+ };
7819
+ readonly required: readonly ["provider", "connection", "account", "environment", "observed", "stale"];
7820
+ readonly additionalProperties: false;
7821
+ };
7822
+ readonly unit: {
7823
+ readonly type: "string";
7824
+ readonly const: "provider_defined";
7825
+ readonly description: "This feature's own units; never sum across features or with linked event counts.";
7826
+ };
7827
+ readonly reported: {
7828
+ readonly anyOf: readonly [{
7829
+ readonly type: "number";
7830
+ }, {
7831
+ readonly type: "null";
7832
+ }];
7833
+ readonly description: "Provider-reported balance usage, independent of the requested history window.";
7834
+ };
7835
+ readonly links: {
7836
+ readonly type: "array";
7837
+ readonly items: {
7838
+ readonly type: "object";
7839
+ readonly properties: {
7840
+ readonly id: {
7841
+ readonly type: "string";
7842
+ readonly pattern: "^value_feature_v1_[a-f0-9]{32}$";
7843
+ };
7844
+ readonly source: {
7845
+ readonly type: "string";
7846
+ readonly pattern: "^metric_source_v1_[a-f0-9]{32}$";
7847
+ };
7848
+ readonly feature: {
7849
+ readonly anyOf: readonly [{
7850
+ readonly type: "object";
7851
+ readonly properties: {
7852
+ readonly id: {
7853
+ readonly type: "string";
7854
+ readonly pattern: "^value_feature_v1_[a-f0-9]{32}$";
7855
+ };
7856
+ readonly revision: {
7857
+ readonly type: "string";
7858
+ readonly pattern: "^value_feature_revision_v1_[a-f0-9]{32}$";
7859
+ };
7860
+ readonly kind: {
7861
+ readonly type: "string";
7862
+ readonly const: "event";
7863
+ };
7864
+ readonly sourceKey: {
7865
+ readonly type: "string";
7866
+ readonly pattern: "^metric_source_v1_[a-f0-9]{32}$";
7867
+ };
7868
+ readonly source: {
7869
+ readonly type: "object";
7870
+ readonly properties: {
7871
+ readonly provider: {
7872
+ readonly type: "string";
7873
+ readonly enum: readonly ["outlit_sdk", "posthog", "mixpanel"];
7874
+ };
7875
+ readonly connection: {
7876
+ readonly anyOf: readonly [{
7877
+ readonly type: "string";
7878
+ }, {
7879
+ readonly type: "null";
7880
+ }];
7881
+ };
7882
+ readonly scope: {
7883
+ readonly type: "string";
7884
+ };
7885
+ readonly label: {
7886
+ readonly anyOf: readonly [{
7887
+ readonly type: "string";
7888
+ }, {
7889
+ readonly type: "null";
7890
+ }];
7891
+ };
7892
+ };
7893
+ readonly required: readonly ["provider", "connection", "scope", "label"];
7894
+ readonly additionalProperties: false;
7895
+ };
7896
+ readonly featureKey: {
7897
+ readonly type: "string";
7898
+ readonly maxLength: 64;
7899
+ readonly pattern: "^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$";
7900
+ };
7901
+ readonly name: {
7902
+ readonly type: "string";
7903
+ readonly minLength: 1;
7904
+ readonly maxLength: 255;
7905
+ };
7906
+ readonly rule: {
7907
+ readonly type: "object";
7908
+ readonly properties: {
7909
+ readonly eventName: {
7910
+ readonly type: "string";
7911
+ readonly minLength: 1;
7912
+ readonly maxLength: 191;
7913
+ };
7914
+ readonly propertyFilters: {
7915
+ readonly maxItems: 5;
7916
+ readonly type: "array";
7917
+ readonly items: {
7918
+ readonly oneOf: readonly [{
7919
+ readonly type: "object";
7920
+ readonly properties: {
7921
+ readonly property: {
7922
+ readonly type: "string";
7923
+ readonly minLength: 1;
7924
+ readonly maxLength: 191;
7925
+ };
7926
+ readonly operator: {
7927
+ readonly type: "string";
7928
+ readonly const: "equals";
7929
+ };
7930
+ readonly value: {
7931
+ readonly oneOf: readonly [{
7932
+ readonly type: "object";
7933
+ readonly properties: {
7934
+ readonly type: {
7935
+ readonly type: "string";
7936
+ readonly const: "string";
7937
+ };
7938
+ readonly value: {
7939
+ readonly type: "string";
7940
+ readonly maxLength: 191;
7941
+ };
7942
+ };
7943
+ readonly required: readonly ["type", "value"];
7944
+ readonly additionalProperties: false;
7945
+ }, {
7946
+ readonly type: "object";
7947
+ readonly properties: {
7948
+ readonly type: {
7949
+ readonly type: "string";
7950
+ readonly const: "number";
7951
+ };
7952
+ readonly value: {
7953
+ readonly type: "number";
7954
+ readonly minimum: -9007199254740991;
7955
+ readonly maximum: 9007199254740991;
7956
+ };
7957
+ };
7958
+ readonly required: readonly ["type", "value"];
7959
+ readonly additionalProperties: false;
7960
+ }, {
7961
+ readonly type: "object";
7962
+ readonly properties: {
7963
+ readonly type: {
7964
+ readonly type: "string";
7965
+ readonly const: "boolean";
7966
+ };
7967
+ readonly value: {
7968
+ readonly type: "boolean";
7969
+ };
7970
+ };
7971
+ readonly required: readonly ["type", "value"];
7972
+ readonly additionalProperties: false;
7973
+ }];
7974
+ };
7975
+ };
7976
+ readonly required: readonly ["property", "operator", "value"];
7977
+ readonly additionalProperties: false;
7978
+ }, {
7979
+ readonly type: "object";
7980
+ readonly properties: {
7981
+ readonly property: {
7982
+ readonly type: "string";
7983
+ readonly minLength: 1;
7984
+ readonly maxLength: 191;
7985
+ };
7986
+ readonly operator: {
7987
+ readonly type: "string";
7988
+ readonly const: "exists";
7989
+ };
7990
+ };
7991
+ readonly required: readonly ["property", "operator"];
7992
+ readonly additionalProperties: false;
7993
+ }];
7994
+ };
7995
+ };
7996
+ };
7997
+ readonly required: readonly ["eventName", "propertyFilters"];
7998
+ readonly additionalProperties: false;
7999
+ };
8000
+ readonly evidence: {
8001
+ readonly oneOf: readonly [{
8002
+ readonly type: "object";
8003
+ readonly properties: {
8004
+ readonly window: {
8005
+ readonly type: "object";
8006
+ readonly properties: {
8007
+ readonly startAt: {
8008
+ readonly type: "string";
8009
+ readonly format: "date-time";
8010
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8011
+ };
8012
+ readonly endAt: {
8013
+ readonly type: "string";
8014
+ readonly format: "date-time";
8015
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8016
+ };
8017
+ };
8018
+ readonly required: readonly ["startAt", "endAt"];
8019
+ readonly additionalProperties: false;
8020
+ };
8021
+ readonly coverage: {
8022
+ readonly type: "string";
8023
+ readonly enum: readonly ["complete", "partial"];
8024
+ };
8025
+ readonly eventCount: {
8026
+ readonly type: "integer";
8027
+ readonly minimum: 0;
8028
+ readonly maximum: 9007199254740991;
8029
+ };
8030
+ readonly activeDays: {
8031
+ readonly type: "integer";
8032
+ readonly minimum: 0;
8033
+ readonly maximum: 9007199254740991;
8034
+ };
8035
+ readonly activeWeeks: {
8036
+ readonly type: "integer";
8037
+ readonly minimum: 0;
8038
+ readonly maximum: 53;
8039
+ };
8040
+ readonly firstObservedAt: {
8041
+ readonly anyOf: readonly [{
8042
+ readonly type: "string";
8043
+ readonly format: "date-time";
8044
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8045
+ }, {
8046
+ readonly type: "null";
8047
+ }];
8048
+ };
8049
+ readonly lastObservedAt: {
8050
+ readonly anyOf: readonly [{
8051
+ readonly type: "string";
8052
+ readonly format: "date-time";
8053
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8054
+ }, {
8055
+ readonly type: "null";
8056
+ }];
8057
+ };
8058
+ readonly weeklyUsage: {
8059
+ readonly maxItems: 53;
8060
+ readonly type: "array";
8061
+ readonly items: {
8062
+ readonly oneOf: readonly [{
8063
+ readonly type: "object";
8064
+ readonly properties: {
8065
+ readonly weekStartAt: {
8066
+ readonly type: "string";
8067
+ readonly format: "date-time";
8068
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8069
+ };
8070
+ readonly coverage: {
8071
+ readonly type: "string";
8072
+ readonly enum: readonly ["complete", "partial"];
8073
+ };
8074
+ readonly eventCount: {
8075
+ readonly type: "integer";
8076
+ readonly minimum: 0;
8077
+ readonly maximum: 9007199254740991;
8078
+ };
8079
+ readonly activeDays: {
8080
+ readonly type: "integer";
8081
+ readonly minimum: 0;
8082
+ readonly maximum: 7;
8083
+ };
8084
+ };
8085
+ readonly required: readonly ["weekStartAt", "coverage", "eventCount", "activeDays"];
8086
+ readonly additionalProperties: false;
8087
+ }, {
8088
+ readonly type: "object";
8089
+ readonly properties: {
8090
+ readonly weekStartAt: {
8091
+ readonly type: "string";
8092
+ readonly format: "date-time";
8093
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8094
+ };
8095
+ readonly coverage: {
8096
+ readonly type: "string";
8097
+ readonly const: "unavailable";
8098
+ };
8099
+ };
8100
+ readonly required: readonly ["weekStartAt", "coverage"];
8101
+ readonly additionalProperties: false;
8102
+ }];
8103
+ };
8104
+ };
8105
+ };
8106
+ readonly required: readonly ["window", "coverage", "eventCount", "activeDays", "activeWeeks", "firstObservedAt", "lastObservedAt"];
8107
+ readonly additionalProperties: false;
8108
+ }, {
8109
+ readonly type: "object";
8110
+ readonly properties: {
8111
+ readonly window: {
8112
+ readonly type: "object";
8113
+ readonly properties: {
8114
+ readonly startAt: {
8115
+ readonly type: "string";
8116
+ readonly format: "date-time";
8117
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8118
+ };
8119
+ readonly endAt: {
8120
+ readonly type: "string";
8121
+ readonly format: "date-time";
8122
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8123
+ };
8124
+ };
8125
+ readonly required: readonly ["startAt", "endAt"];
8126
+ readonly additionalProperties: false;
8127
+ };
8128
+ readonly coverage: {
8129
+ readonly type: "string";
8130
+ readonly const: "unavailable";
8131
+ };
8132
+ readonly reason: {
8133
+ readonly type: "string";
8134
+ readonly enum: readonly ["SOURCE_BLOCKED", "SOURCE_NOT_READY", "QUERY_FAILED"];
8135
+ };
8136
+ };
8137
+ readonly required: readonly ["window", "coverage", "reason"];
8138
+ readonly additionalProperties: false;
8139
+ }];
8140
+ };
8141
+ };
8142
+ readonly required: readonly ["id", "revision", "kind", "sourceKey", "source", "featureKey", "name", "rule", "evidence"];
8143
+ readonly additionalProperties: false;
8144
+ }, {
8145
+ readonly type: "null";
8146
+ }];
8147
+ readonly description: "Linked Outlit definition and event evidence, or null when unavailable. Never added to provider quantities.";
8148
+ };
8149
+ };
8150
+ readonly required: readonly ["id", "source", "feature"];
8151
+ readonly additionalProperties: false;
8152
+ };
8153
+ };
8154
+ readonly evidence: {
8155
+ readonly type: "object";
8156
+ readonly properties: {
8157
+ readonly window: {
8158
+ readonly type: "object";
8159
+ readonly properties: {
8160
+ readonly startAt: {
8161
+ readonly type: "string";
8162
+ readonly format: "date-time";
8163
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8164
+ };
8165
+ readonly endAt: {
8166
+ readonly type: "string";
8167
+ readonly format: "date-time";
8168
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8169
+ };
8170
+ };
8171
+ readonly required: readonly ["startAt", "endAt"];
8172
+ readonly additionalProperties: false;
8173
+ };
8174
+ readonly coverage: {
8175
+ readonly type: "string";
8176
+ readonly enum: readonly ["complete", "partial", "unavailable"];
8177
+ };
8178
+ readonly quantity: {
8179
+ readonly anyOf: readonly [{
8180
+ readonly type: "number";
8181
+ readonly minimum: 0;
8182
+ }, {
8183
+ readonly type: "null";
8184
+ }];
8185
+ };
8186
+ readonly days: {
8187
+ readonly anyOf: readonly [{
8188
+ readonly type: "integer";
8189
+ readonly minimum: 0;
8190
+ readonly maximum: 9007199254740991;
8191
+ }, {
8192
+ readonly type: "null";
8193
+ }];
8194
+ };
8195
+ readonly weeks: {
8196
+ readonly anyOf: readonly [{
8197
+ readonly type: "integer";
8198
+ readonly minimum: 0;
8199
+ readonly maximum: 9007199254740991;
8200
+ }, {
8201
+ readonly type: "null";
8202
+ }];
8203
+ };
8204
+ readonly first: {
8205
+ readonly anyOf: readonly [{
8206
+ readonly type: "string";
8207
+ readonly format: "date-time";
8208
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8209
+ }, {
8210
+ readonly type: "null";
8211
+ }];
8212
+ readonly description: "First positive daily observation in the requested window, at UTC day precision.";
8213
+ };
8214
+ readonly last: {
8215
+ readonly anyOf: readonly [{
8216
+ readonly type: "string";
8217
+ readonly format: "date-time";
8218
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8219
+ }, {
8220
+ readonly type: "null";
8221
+ }];
8222
+ readonly description: "Latest positive daily observation in the requested window, at UTC day precision.";
8223
+ };
8224
+ readonly weekly: {
8225
+ readonly maxItems: 53;
8226
+ readonly type: "array";
8227
+ readonly items: {
8228
+ readonly oneOf: readonly [{
8229
+ readonly type: "object";
8230
+ readonly properties: {
8231
+ readonly start: {
8232
+ readonly type: "string";
8233
+ readonly format: "date-time";
8234
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8235
+ };
8236
+ readonly coverage: {
8237
+ readonly type: "string";
8238
+ readonly enum: readonly ["complete", "partial"];
8239
+ };
8240
+ readonly quantity: {
8241
+ readonly type: "number";
8242
+ readonly minimum: 0;
8243
+ };
8244
+ readonly days: {
8245
+ readonly type: "integer";
8246
+ readonly minimum: 0;
8247
+ readonly maximum: 7;
8248
+ };
8249
+ };
8250
+ readonly required: readonly ["start", "coverage", "quantity", "days"];
8251
+ readonly additionalProperties: false;
8252
+ }, {
8253
+ readonly type: "object";
8254
+ readonly properties: {
8255
+ readonly start: {
8256
+ readonly type: "string";
8257
+ readonly format: "date-time";
8258
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8259
+ };
8260
+ readonly coverage: {
8261
+ readonly type: "string";
8262
+ readonly const: "unavailable";
8263
+ };
8264
+ };
8265
+ readonly required: readonly ["start", "coverage"];
8266
+ readonly additionalProperties: false;
8267
+ }];
8268
+ };
8269
+ };
8270
+ };
8271
+ readonly required: readonly ["window", "coverage", "quantity", "days", "weeks", "first", "last"];
8272
+ readonly additionalProperties: false;
8273
+ };
8274
+ };
8275
+ readonly required: readonly ["kind", "id", "name", "source", "unit", "reported", "links", "evidence"];
8276
+ readonly additionalProperties: false;
8277
+ }];
8278
+ };
8279
+ };
8280
+ readonly sources: {
8281
+ readonly type: "array";
8282
+ readonly items: {
8283
+ readonly type: "object";
8284
+ readonly properties: {
8285
+ readonly provider: {
8286
+ readonly type: "string";
8287
+ readonly const: "autumn";
8288
+ };
8289
+ readonly status: {
8290
+ readonly type: "string";
8291
+ readonly enum: readonly ["not_connected", "unavailable", "no_match", "available"];
8292
+ };
8293
+ readonly truncated: {
8294
+ readonly type: "boolean";
8295
+ };
8296
+ };
8297
+ readonly required: readonly ["provider", "status", "truncated"];
8298
+ readonly additionalProperties: false;
8299
+ };
8300
+ };
8301
+ };
8302
+ readonly required: readonly ["customer", "events", "features", "sources"];
8303
+ readonly additionalProperties: false;
8304
+ };
8305
+ };
8306
+ readonly outlit_get_customer_credits: {
8307
+ readonly toolName: "outlit_get_customer_credits";
8308
+ readonly commandId: "customer.credits.get";
8309
+ readonly commandVersion: 1;
8310
+ readonly ownerDomain: "customers";
8311
+ readonly title: "Get Customer Credits";
8312
+ readonly description: "Read a customer's credit pools, remaining credits, provider reset dates, and deterministic daily burn rate, rate change, runway, and trend from stored data. Missing or stale evidence is explicit; no live provider calls. For individual product feature usage use outlit_get_customer_features.";
8313
+ readonly inputSchema: {
8314
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
8315
+ readonly type: "object";
8316
+ readonly properties: {
8317
+ readonly customer: {
8318
+ readonly type: "string";
8319
+ readonly minLength: 1;
8320
+ readonly maxLength: 500;
8321
+ readonly description: "Customer ID, domain, or exact name";
8322
+ };
8323
+ };
8324
+ readonly required: readonly ["customer"];
8325
+ readonly additionalProperties: false;
8326
+ };
8327
+ readonly outputSchema: {
8328
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
8329
+ readonly type: "object";
8330
+ readonly properties: {
8331
+ readonly customer: {
8332
+ readonly type: "object";
8333
+ readonly properties: {
8334
+ readonly id: {
8335
+ readonly type: "string";
8336
+ readonly minLength: 1;
8337
+ };
8338
+ readonly name: {
8339
+ readonly type: "string";
8340
+ readonly minLength: 1;
8341
+ };
8342
+ };
8343
+ readonly required: readonly ["id", "name"];
8344
+ readonly additionalProperties: false;
8345
+ };
8346
+ readonly status: {
8347
+ readonly type: "string";
8348
+ readonly enum: readonly ["not_connected", "unavailable", "no_match", "available"];
8349
+ };
8350
+ readonly credits: {
8351
+ readonly maxItems: 4000;
8352
+ readonly type: "array";
8353
+ readonly items: {
8354
+ readonly type: "object";
8355
+ readonly properties: {
8356
+ readonly id: {
8357
+ readonly type: "string";
8358
+ readonly minLength: 1;
8359
+ };
8360
+ readonly name: {
8361
+ readonly anyOf: readonly [{
8362
+ readonly type: "string";
8363
+ }, {
8364
+ readonly type: "null";
8365
+ }];
8366
+ };
8367
+ readonly source: {
8368
+ readonly type: "object";
8369
+ readonly properties: {
8370
+ readonly provider: {
8371
+ readonly type: "string";
8372
+ readonly const: "autumn";
8373
+ };
8374
+ readonly connection: {
8375
+ readonly type: "string";
8376
+ readonly minLength: 1;
8377
+ };
8378
+ readonly account: {
8379
+ readonly type: "string";
8380
+ readonly minLength: 1;
8381
+ };
8382
+ readonly environment: {
8383
+ readonly type: "string";
8384
+ readonly enum: readonly ["sandbox", "live"];
8385
+ };
8386
+ };
8387
+ readonly required: readonly ["provider", "connection", "account", "environment"];
8388
+ readonly additionalProperties: false;
8389
+ };
8390
+ readonly observed: {
8391
+ readonly type: "string";
8392
+ readonly format: "date-time";
8393
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8394
+ };
8395
+ readonly stale: {
8396
+ readonly type: "boolean";
8397
+ };
8398
+ readonly scope: {
8399
+ readonly type: "string";
8400
+ readonly const: "customer";
8401
+ readonly description: "Customer-level pool; excludes entity balances.";
8402
+ };
8403
+ readonly granted: {
8404
+ readonly anyOf: readonly [{
8405
+ readonly type: "number";
8406
+ }, {
8407
+ readonly type: "null";
8408
+ }];
8409
+ };
8410
+ readonly remaining: {
8411
+ readonly anyOf: readonly [{
8412
+ readonly type: "number";
8413
+ }, {
8414
+ readonly type: "null";
8415
+ }];
8416
+ };
8417
+ readonly unlimited: {
8418
+ readonly type: "boolean";
8419
+ };
8420
+ readonly overage: {
8421
+ readonly type: "boolean";
8422
+ };
8423
+ readonly reset: {
8424
+ readonly anyOf: readonly [{
8425
+ readonly type: "string";
8426
+ readonly format: "date-time";
8427
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8428
+ }, {
8429
+ readonly type: "null";
8430
+ }];
8431
+ };
8432
+ readonly burn: {
8433
+ readonly type: "object";
8434
+ readonly properties: {
8435
+ readonly rate: {
8436
+ readonly anyOf: readonly [{
8437
+ readonly type: "number";
8438
+ readonly minimum: 0;
8439
+ }, {
8440
+ readonly type: "null";
8441
+ }];
8442
+ readonly description: "Average daily usage over the last seven complete UTC days. See scope before interpreting this as pool deductions.";
8443
+ };
8444
+ readonly scope: {
8445
+ readonly type: "string";
8446
+ readonly enum: readonly ["customer_balance", "account"];
8447
+ };
8448
+ readonly change: {
8449
+ readonly anyOf: readonly [{
8450
+ readonly type: "number";
8451
+ }, {
8452
+ readonly type: "null";
8453
+ }];
8454
+ readonly description: "Percentage change in customer-balance burn rate versus the preceding seven complete days. Null when either window is incomplete or the prior rate is zero.";
8455
+ };
8456
+ readonly days: {
8457
+ readonly anyOf: readonly [{
8458
+ readonly type: "number";
8459
+ readonly minimum: 0;
8460
+ }, {
8461
+ readonly type: "null";
8462
+ }];
8463
+ readonly description: "Estimated days until exhaustion. Null when an estimate is unavailable or the allowance resets first.";
8464
+ };
8465
+ readonly depletion: {
8466
+ readonly anyOf: readonly [{
8467
+ readonly type: "string";
8468
+ readonly format: "date-time";
8469
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
8470
+ }, {
8471
+ readonly type: "null";
8472
+ }];
8473
+ };
8474
+ readonly status: {
8475
+ readonly type: "string";
8476
+ readonly enum: readonly ["available", "stale", "incomplete", "unknown_scope", "no_usage", "unlimited", "reset_due", "exhausted", "beyond_range", "through_reset"];
8477
+ };
8478
+ readonly window: {
8479
+ readonly type: "object";
8480
+ readonly properties: {
8481
+ readonly start: {
8482
+ readonly anyOf: readonly [{
8483
+ readonly type: "string";
8484
+ readonly format: "date";
8485
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$";
8486
+ }, {
8487
+ readonly type: "null";
8488
+ }];
8489
+ };
8490
+ readonly end: {
8491
+ readonly anyOf: readonly [{
8492
+ readonly type: "string";
8493
+ readonly format: "date";
8494
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$";
8495
+ }, {
8496
+ readonly type: "null";
8497
+ }];
8498
+ };
8499
+ };
8500
+ readonly required: readonly ["start", "end"];
8501
+ readonly additionalProperties: false;
8502
+ readonly description: "UTC dates for the seven-day rate window; end is exclusive.";
8503
+ };
8504
+ readonly trend: {
8505
+ readonly maxItems: 14;
8506
+ readonly type: "array";
8507
+ readonly items: {
8508
+ readonly type: "object";
8509
+ readonly properties: {
8510
+ readonly date: {
8511
+ readonly type: "string";
8512
+ readonly format: "date";
8513
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$";
8514
+ };
8515
+ readonly usage: {
8516
+ readonly anyOf: readonly [{
8517
+ readonly type: "number";
8518
+ readonly minimum: 0;
8519
+ }, {
8520
+ readonly type: "null";
8521
+ }];
8522
+ };
8523
+ readonly rate: {
8524
+ readonly anyOf: readonly [{
8525
+ readonly type: "number";
8526
+ readonly minimum: 0;
8527
+ }, {
8528
+ readonly type: "null";
8529
+ }];
8530
+ };
8531
+ };
8532
+ readonly required: readonly ["date", "usage", "rate"];
8533
+ readonly additionalProperties: false;
8534
+ };
8535
+ readonly description: "Daily customer-balance deductions and seven-day rolling rates. Missing observations remain null.";
8536
+ };
8537
+ };
8538
+ readonly required: readonly ["rate", "scope", "change", "days", "depletion", "status", "window", "trend"];
8539
+ readonly additionalProperties: false;
8540
+ };
8541
+ readonly signalKind: {
8542
+ readonly type: "string";
8543
+ readonly enum: readonly ["expansion_risk", "trial_conversion", "none", "unknown_plan"];
8544
+ readonly description: "Plan-aware routing for the credit signal. unknown_plan means the provider snapshot carried no product list, so the plan could not be classified.";
8545
+ };
8546
+ readonly configurationNotes: {
8547
+ readonly maxItems: 20;
8548
+ readonly type: "array";
8549
+ readonly items: {
8550
+ readonly type: "string";
8551
+ readonly maxLength: 500;
8552
+ };
8553
+ };
8554
+ };
8555
+ readonly required: readonly ["id", "name", "source", "observed", "stale", "scope", "granted", "remaining", "unlimited", "overage", "reset", "burn"];
8556
+ readonly additionalProperties: false;
8557
+ };
8558
+ };
8559
+ readonly truncated: {
8560
+ readonly type: "boolean";
8561
+ };
8562
+ };
8563
+ readonly required: readonly ["customer", "status", "credits", "truncated"];
8564
+ readonly additionalProperties: false;
8565
+ readonly description: "Credit pools read from stored provider snapshots. An available empty list means no credit pools were found in the matched snapshots. No provider refresh is triggered.";
8566
+ };
8567
+ };
8568
+ readonly outlit_list_attention_items: {
8569
+ readonly toolName: "outlit_list_attention_items";
8570
+ readonly commandId: "attention.list";
8571
+ readonly commandVersion: 1;
8572
+ readonly ownerDomain: "attention";
8573
+ readonly title: "List Attention Items";
8574
+ readonly description: "List authorized open or resolved Attention items. Returns bounded customer identity, current priority, ARR importance, lifecycle timestamps, and a prepared-action URL without evidence bodies or internal agent state.";
8575
+ readonly inputSchema: {
8576
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
8577
+ readonly type: "object";
8578
+ readonly properties: {
8579
+ readonly status: {
8580
+ readonly description: "Attention lifecycle to list (default: open)";
8581
+ readonly default: "open";
8582
+ readonly type: "string";
8583
+ readonly enum: readonly ["open", "resolved"];
8584
+ };
8585
+ readonly customerId: {
8586
+ readonly description: "Filter by exact customer ID";
8587
+ readonly type: "string";
8588
+ readonly format: "uuid";
8589
+ readonly pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$";
8590
+ };
8591
+ readonly limit: {
8592
+ readonly description: "Results per page (default: 25, max: 100)";
8593
+ readonly default: 25;
8594
+ readonly type: "integer";
8595
+ readonly minimum: 1;
8596
+ readonly maximum: 100;
8597
+ };
8598
+ readonly cursor: {
8599
+ readonly description: "Opaque cursor from a previous response with the same filters";
8600
+ readonly type: "string";
8601
+ readonly minLength: 1;
8602
+ readonly maxLength: 2000;
8603
+ };
8604
+ };
8605
+ readonly additionalProperties: false;
8606
+ };
8607
+ readonly outputSchema: {
8608
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
8609
+ readonly type: "object";
8610
+ readonly properties: {
8611
+ readonly items: {
8612
+ readonly maxItems: 100;
8613
+ readonly type: "array";
8614
+ readonly items: {
8615
+ readonly type: "object";
8616
+ readonly properties: {
8617
+ readonly id: {
8618
+ readonly type: "string";
8619
+ readonly minLength: 1;
8620
+ readonly maxLength: 500;
8621
+ };
8622
+ readonly customer: {
8623
+ readonly type: "object";
8624
+ readonly properties: {
8625
+ readonly id: {
8626
+ readonly type: "string";
8627
+ readonly minLength: 1;
8628
+ readonly maxLength: 500;
8629
+ };
8630
+ readonly name: {
8631
+ readonly type: "string";
8632
+ readonly minLength: 1;
8633
+ readonly maxLength: 500;
8634
+ };
8635
+ readonly domain: {
8636
+ readonly type: "string";
8637
+ readonly maxLength: 253;
8638
+ };
8639
+ readonly ownerName: {
8640
+ readonly anyOf: readonly [{
8641
+ readonly type: "string";
8642
+ readonly minLength: 1;
8643
+ readonly maxLength: 500;
8644
+ }, {
8645
+ readonly type: "null";
8646
+ }];
8647
+ };
8648
+ };
8649
+ readonly required: readonly ["id", "name", "domain", "ownerName"];
8650
+ readonly additionalProperties: false;
8651
+ };
8652
+ readonly title: {
8653
+ readonly type: "string";
8654
+ readonly minLength: 1;
8655
+ readonly maxLength: 240;
8656
+ };
8657
+ readonly priority: {
8658
+ readonly type: "string";
8659
+ readonly enum: readonly ["NORMAL", "HIGH", "URGENT"];
8660
+ };
8661
+ readonly evidenceCount: {
8662
+ readonly type: "integer";
8663
+ readonly minimum: 0;
8664
+ readonly maximum: 50;
8665
+ };
8666
+ readonly lifecycle: {
8667
+ readonly type: "object";
8668
+ readonly properties: {
8669
+ readonly status: {
8670
+ readonly type: "string";
8671
+ readonly enum: readonly ["open", "resolved"];
8672
+ };
8673
+ readonly customerVisibleAt: {
8674
+ readonly type: "string";
8675
+ readonly format: "date-time";
8676
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8677
+ };
8678
+ readonly resolvedAt: {
8679
+ readonly anyOf: readonly [{
8680
+ readonly type: "string";
8681
+ readonly format: "date-time";
8682
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8683
+ }, {
8684
+ readonly type: "null";
8685
+ }];
8686
+ };
8687
+ readonly reopenedAt: {
8688
+ readonly anyOf: readonly [{
8689
+ readonly type: "string";
8690
+ readonly format: "date-time";
8691
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8692
+ }, {
8693
+ readonly type: "null";
8694
+ }];
8695
+ };
8696
+ readonly createdAt: {
8697
+ readonly type: "string";
8698
+ readonly format: "date-time";
8699
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8700
+ };
8701
+ readonly updatedAt: {
8702
+ readonly type: "string";
8703
+ readonly format: "date-time";
8704
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8705
+ };
8706
+ readonly materialUpdateAt: {
8707
+ readonly anyOf: readonly [{
8708
+ readonly type: "string";
8709
+ readonly format: "date-time";
8710
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8711
+ }, {
8712
+ readonly type: "null";
8713
+ }];
8714
+ };
8715
+ };
8716
+ readonly required: readonly ["status", "customerVisibleAt", "resolvedAt", "reopenedAt", "createdAt", "updatedAt", "materialUpdateAt"];
8717
+ readonly additionalProperties: false;
8718
+ };
8719
+ readonly accountImportance: {
8720
+ readonly type: "object";
8721
+ readonly properties: {
8722
+ readonly arrCents: {
8723
+ readonly anyOf: readonly [{
8724
+ readonly type: "number";
8725
+ readonly minimum: 0;
8726
+ }, {
8727
+ readonly type: "null";
8728
+ }];
8729
+ };
8730
+ readonly currency: {
8731
+ readonly anyOf: readonly [{
8732
+ readonly type: "string";
8733
+ readonly pattern: "^[A-Z]{3}$";
8734
+ }, {
8735
+ readonly type: "null";
8736
+ }];
8737
+ };
8738
+ readonly arrShareWithinCurrency: {
8739
+ readonly anyOf: readonly [{
8740
+ readonly type: "number";
8741
+ readonly minimum: 0;
8742
+ readonly maximum: 1;
8743
+ }, {
8744
+ readonly type: "null";
8745
+ }];
8746
+ readonly description: "Organization ARR share among customers using the same currency";
8747
+ };
8748
+ readonly arrPercentileWithinCurrency: {
8749
+ readonly anyOf: readonly [{
8750
+ readonly type: "number";
8751
+ readonly minimum: 0;
8752
+ readonly maximum: 100;
8753
+ }, {
8754
+ readonly type: "null";
8755
+ }];
8756
+ readonly description: "ARR percentile among customers using the same currency";
8757
+ };
8758
+ readonly segments: {
8759
+ readonly maxItems: 50;
8760
+ readonly type: "array";
8761
+ readonly items: {
8762
+ readonly type: "string";
8763
+ readonly minLength: 1;
8764
+ readonly maxLength: 240;
8765
+ };
8766
+ };
8767
+ };
8768
+ readonly required: readonly ["arrCents", "currency", "arrShareWithinCurrency", "arrPercentileWithinCurrency", "segments"];
8769
+ readonly additionalProperties: false;
8770
+ };
8771
+ readonly preparedActionUrl: {
8772
+ readonly anyOf: readonly [{
8773
+ readonly type: "string";
8774
+ readonly maxLength: 2000;
8775
+ readonly format: "uri";
8776
+ }, {
8777
+ readonly type: "null";
8778
+ }];
8779
+ };
8780
+ };
8781
+ readonly required: readonly ["id", "customer", "title", "priority", "evidenceCount", "lifecycle", "accountImportance", "preparedActionUrl"];
8782
+ readonly additionalProperties: false;
8783
+ };
8784
+ };
8785
+ readonly pagination: {
8786
+ readonly type: "object";
8787
+ readonly properties: {
8788
+ readonly hasMore: {
8789
+ readonly type: "boolean";
8790
+ };
8791
+ readonly nextCursor: {
8792
+ readonly anyOf: readonly [{
8793
+ readonly type: "string";
8794
+ readonly minLength: 1;
8795
+ readonly maxLength: 2000;
8796
+ }, {
8797
+ readonly type: "null";
8798
+ }];
8799
+ };
8800
+ readonly total: {
8801
+ readonly type: "integer";
8802
+ readonly minimum: 0;
8803
+ readonly maximum: 9007199254740991;
8804
+ };
8805
+ };
8806
+ readonly required: readonly ["hasMore", "nextCursor", "total"];
8807
+ readonly additionalProperties: false;
8808
+ };
8809
+ };
8810
+ readonly required: readonly ["items", "pagination"];
8811
+ readonly additionalProperties: false;
8812
+ };
8813
+ };
8814
+ readonly outlit_get_attention_item: {
8815
+ readonly toolName: "outlit_get_attention_item";
8816
+ readonly commandId: "attention.get";
8817
+ readonly commandVersion: 1;
8818
+ readonly ownerDomain: "attention";
8819
+ readonly title: "Get Attention Item";
8820
+ readonly description: "Get one authorized Attention item with its bounded current assessment, timeline, evidence summaries, and prepared-action URL. Does not return evidence IDs, quotes, email drafts, or internal agent state.";
8821
+ readonly inputSchema: {
8822
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
8823
+ readonly type: "object";
8824
+ readonly properties: {
8825
+ readonly id: {
8826
+ readonly type: "string";
8827
+ readonly format: "uuid";
8828
+ readonly pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$";
8829
+ readonly description: "Exact Attention item ID";
8830
+ };
8831
+ };
8832
+ readonly required: readonly ["id"];
8833
+ readonly additionalProperties: false;
8834
+ };
8835
+ readonly outputSchema: {
8836
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
8837
+ readonly type: "object";
8838
+ readonly properties: {
8839
+ readonly id: {
8840
+ readonly type: "string";
8841
+ readonly minLength: 1;
8842
+ readonly maxLength: 500;
8843
+ };
8844
+ readonly customer: {
8845
+ readonly type: "object";
8846
+ readonly properties: {
8847
+ readonly id: {
8848
+ readonly type: "string";
8849
+ readonly minLength: 1;
8850
+ readonly maxLength: 500;
8851
+ };
8852
+ readonly name: {
8853
+ readonly type: "string";
8854
+ readonly minLength: 1;
8855
+ readonly maxLength: 500;
8856
+ };
8857
+ readonly domain: {
8858
+ readonly type: "string";
8859
+ readonly maxLength: 253;
8860
+ };
8861
+ readonly ownerName: {
8862
+ readonly anyOf: readonly [{
8863
+ readonly type: "string";
8864
+ readonly minLength: 1;
8865
+ readonly maxLength: 500;
8866
+ }, {
8867
+ readonly type: "null";
8868
+ }];
8869
+ };
8870
+ };
8871
+ readonly required: readonly ["id", "name", "domain", "ownerName"];
8872
+ readonly additionalProperties: false;
8873
+ };
8874
+ readonly title: {
8875
+ readonly type: "string";
8876
+ readonly minLength: 1;
8877
+ readonly maxLength: 240;
8878
+ };
8879
+ readonly priority: {
8880
+ readonly type: "string";
8881
+ readonly enum: readonly ["NORMAL", "HIGH", "URGENT"];
8882
+ };
8883
+ readonly evidenceCount: {
8884
+ readonly type: "integer";
8885
+ readonly minimum: 0;
8886
+ readonly maximum: 50;
8887
+ };
8888
+ readonly lifecycle: {
8889
+ readonly type: "object";
8890
+ readonly properties: {
8891
+ readonly status: {
8892
+ readonly type: "string";
8893
+ readonly enum: readonly ["open", "resolved"];
8894
+ };
8895
+ readonly customerVisibleAt: {
8896
+ readonly type: "string";
8897
+ readonly format: "date-time";
8898
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8899
+ };
8900
+ readonly resolvedAt: {
8901
+ readonly anyOf: readonly [{
8902
+ readonly type: "string";
8903
+ readonly format: "date-time";
8904
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8905
+ }, {
8906
+ readonly type: "null";
8907
+ }];
8908
+ };
8909
+ readonly reopenedAt: {
8910
+ readonly anyOf: readonly [{
8911
+ readonly type: "string";
8912
+ readonly format: "date-time";
8913
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8914
+ }, {
8915
+ readonly type: "null";
8916
+ }];
8917
+ };
8918
+ readonly createdAt: {
8919
+ readonly type: "string";
8920
+ readonly format: "date-time";
8921
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8922
+ };
8923
+ readonly updatedAt: {
8924
+ readonly type: "string";
8925
+ readonly format: "date-time";
8926
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8927
+ };
8928
+ readonly materialUpdateAt: {
8929
+ readonly anyOf: readonly [{
8930
+ readonly type: "string";
8931
+ readonly format: "date-time";
8932
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8933
+ }, {
8934
+ readonly type: "null";
8935
+ }];
8936
+ };
8937
+ };
8938
+ readonly required: readonly ["status", "customerVisibleAt", "resolvedAt", "reopenedAt", "createdAt", "updatedAt", "materialUpdateAt"];
8939
+ readonly additionalProperties: false;
8940
+ };
8941
+ readonly accountImportance: {
8942
+ readonly type: "object";
8943
+ readonly properties: {
8944
+ readonly arrCents: {
8945
+ readonly anyOf: readonly [{
8946
+ readonly type: "number";
8947
+ readonly minimum: 0;
8948
+ }, {
8949
+ readonly type: "null";
8950
+ }];
8951
+ };
8952
+ readonly currency: {
8953
+ readonly anyOf: readonly [{
8954
+ readonly type: "string";
8955
+ readonly pattern: "^[A-Z]{3}$";
8956
+ }, {
8957
+ readonly type: "null";
8958
+ }];
8959
+ };
8960
+ readonly arrShareWithinCurrency: {
8961
+ readonly anyOf: readonly [{
8962
+ readonly type: "number";
8963
+ readonly minimum: 0;
8964
+ readonly maximum: 1;
8965
+ }, {
8966
+ readonly type: "null";
8967
+ }];
8968
+ readonly description: "Organization ARR share among customers using the same currency";
8969
+ };
8970
+ readonly arrPercentileWithinCurrency: {
8971
+ readonly anyOf: readonly [{
8972
+ readonly type: "number";
8973
+ readonly minimum: 0;
8974
+ readonly maximum: 100;
8975
+ }, {
8976
+ readonly type: "null";
8977
+ }];
8978
+ readonly description: "ARR percentile among customers using the same currency";
8979
+ };
8980
+ readonly segments: {
8981
+ readonly maxItems: 50;
8982
+ readonly type: "array";
8983
+ readonly items: {
8984
+ readonly type: "string";
8985
+ readonly minLength: 1;
8986
+ readonly maxLength: 240;
8987
+ };
8988
+ };
8989
+ };
8990
+ readonly required: readonly ["arrCents", "currency", "arrShareWithinCurrency", "arrPercentileWithinCurrency", "segments"];
8991
+ readonly additionalProperties: false;
8992
+ };
8993
+ readonly preparedActionUrl: {
8994
+ readonly anyOf: readonly [{
8995
+ readonly type: "string";
8996
+ readonly maxLength: 2000;
8997
+ readonly format: "uri";
8998
+ }, {
8999
+ readonly type: "null";
9000
+ }];
9001
+ };
9002
+ readonly whatChanged: {
9003
+ readonly type: "string";
9004
+ readonly minLength: 1;
9005
+ readonly maxLength: 8000;
9006
+ };
9007
+ readonly whyItMatters: {
9008
+ readonly type: "string";
9009
+ readonly minLength: 1;
9010
+ readonly maxLength: 8000;
9011
+ };
9012
+ readonly uncertainty: {
9013
+ readonly anyOf: readonly [{
9014
+ readonly type: "string";
9015
+ readonly minLength: 1;
9016
+ readonly maxLength: 8000;
9017
+ }, {
9018
+ readonly type: "null";
9019
+ }];
9020
+ };
9021
+ readonly priorityReason: {
9022
+ readonly type: "string";
9023
+ readonly minLength: 1;
9024
+ readonly maxLength: 8000;
9025
+ };
9026
+ readonly timeline: {
9027
+ readonly maxItems: 20;
9028
+ readonly type: "array";
9029
+ readonly items: {
9030
+ readonly type: "object";
9031
+ readonly properties: {
9032
+ readonly title: {
9033
+ readonly type: "string";
9034
+ readonly minLength: 1;
9035
+ readonly maxLength: 240;
9036
+ };
9037
+ readonly explanation: {
9038
+ readonly type: "string";
9039
+ readonly minLength: 1;
9040
+ readonly maxLength: 4000;
9041
+ };
9042
+ readonly observedAt: {
9043
+ readonly type: "string";
9044
+ readonly format: "date-time";
9045
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9046
+ };
9047
+ };
9048
+ readonly required: readonly ["title", "explanation", "observedAt"];
9049
+ readonly additionalProperties: false;
9050
+ };
9051
+ };
9052
+ readonly evidence: {
9053
+ readonly maxItems: 20;
9054
+ readonly type: "array";
9055
+ readonly items: {
9056
+ readonly type: "object";
9057
+ readonly properties: {
9058
+ readonly role: {
9059
+ readonly type: "string";
9060
+ readonly enum: readonly ["supporting", "contradictory", "context"];
9061
+ };
9062
+ readonly kind: {
9063
+ readonly type: "string";
9064
+ readonly enum: readonly ["metric", "communication", "record", "event"];
9065
+ };
9066
+ readonly title: {
9067
+ readonly type: "string";
9068
+ readonly minLength: 1;
9069
+ readonly maxLength: 500;
9070
+ };
9071
+ readonly observedAt: {
9072
+ readonly anyOf: readonly [{
9073
+ readonly type: "string";
9074
+ readonly format: "date-time";
9075
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9076
+ }, {
9077
+ readonly type: "null";
9078
+ }];
9079
+ };
9080
+ readonly window: {
9081
+ readonly anyOf: readonly [{
9082
+ readonly type: "object";
9083
+ readonly properties: {
9084
+ readonly start: {
9085
+ readonly type: "string";
9086
+ readonly format: "date-time";
9087
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9088
+ };
9089
+ readonly end: {
9090
+ readonly type: "string";
9091
+ readonly format: "date-time";
9092
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9093
+ };
9094
+ };
9095
+ readonly required: readonly ["start", "end"];
9096
+ readonly additionalProperties: false;
9097
+ }, {
9098
+ readonly type: "null";
9099
+ }];
9100
+ };
9101
+ readonly sourceLabel: {
9102
+ readonly type: "string";
9103
+ readonly minLength: 1;
9104
+ readonly maxLength: 240;
9105
+ };
9106
+ };
9107
+ readonly required: readonly ["role", "kind", "title", "observedAt", "window", "sourceLabel"];
9108
+ readonly additionalProperties: false;
9109
+ };
9110
+ };
9111
+ readonly latestUpdate: {
9112
+ readonly anyOf: readonly [{
9113
+ readonly type: "object";
9114
+ readonly properties: {
9115
+ readonly updatedAt: {
9116
+ readonly type: "string";
9117
+ readonly format: "date-time";
9118
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9119
+ };
9120
+ readonly summary: {
9121
+ readonly type: "string";
9122
+ readonly minLength: 1;
9123
+ readonly maxLength: 8000;
9124
+ };
9125
+ };
9126
+ readonly required: readonly ["updatedAt", "summary"];
9127
+ readonly additionalProperties: false;
9128
+ }, {
9129
+ readonly type: "null";
9130
+ }];
9131
+ };
9132
+ };
9133
+ readonly required: readonly ["id", "customer", "title", "priority", "evidenceCount", "lifecycle", "accountImportance", "preparedActionUrl", "whatChanged", "whyItMatters", "uncertainty", "priorityReason", "timeline", "evidence", "latestUpdate"];
9134
+ readonly additionalProperties: false;
9135
+ };
9136
+ };
9137
+ readonly outlit_get_customer_identity: {
9138
+ readonly toolName: "outlit_get_customer_identity";
9139
+ readonly commandId: "customer.identity.get";
9140
+ readonly commandVersion: 1;
9141
+ readonly ownerDomain: "identity";
9142
+ readonly title: "Get customer identity";
9143
+ readonly description: "Read one customer's identity coverage and bounded possible split records in the same workspace. Candidate matches are leads, not proof that companies are the same. Returns supporting anchor evidence and search limitations; an empty or incomplete result does not prove zero usage. Does not merge, create suggestions, or authorize combining customer activity.";
9144
+ readonly annotations: {
9145
+ readonly readOnlyHint: true;
9146
+ readonly destructiveHint: false;
9147
+ };
9148
+ readonly inputSchema: {
9149
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
9150
+ readonly type: "object";
9151
+ readonly properties: {
9152
+ readonly customerId: {
9153
+ readonly type: "string";
9154
+ readonly minLength: 1;
9155
+ readonly maxLength: 191;
9156
+ };
9157
+ };
9158
+ readonly required: readonly ["customerId"];
9159
+ readonly additionalProperties: false;
9160
+ };
9161
+ readonly outputSchema: {
9162
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
9163
+ readonly type: "object";
9164
+ readonly properties: {
9165
+ readonly customerId: {
9166
+ readonly type: "string";
9167
+ readonly minLength: 1;
9168
+ readonly maxLength: 191;
9169
+ };
9170
+ readonly checkedAt: {
9171
+ readonly type: "string";
9172
+ readonly format: "date-time";
9173
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
9174
+ };
9175
+ readonly evidenceCutoffAt: {
9176
+ readonly type: "string";
9177
+ readonly format: "date-time";
9178
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
9179
+ };
9180
+ readonly basis: {
9181
+ readonly type: "string";
9182
+ readonly const: "unchanged_records_at_cutoff";
9183
+ };
9184
+ readonly window: {
9185
+ readonly type: "object";
9186
+ readonly properties: {
9187
+ readonly after: {
9188
+ readonly type: "string";
9189
+ readonly format: "date-time";
9190
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
9191
+ };
9192
+ readonly before: {
9193
+ readonly type: "string";
9194
+ readonly format: "date-time";
9195
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
9196
+ };
9197
+ };
9198
+ readonly required: readonly ["after", "before"];
9199
+ readonly additionalProperties: false;
9200
+ };
9201
+ readonly coverage: {
9202
+ readonly type: "object";
9203
+ readonly properties: {
9204
+ readonly status: {
9205
+ readonly type: "string";
9206
+ readonly enum: readonly ["complete_within_bounds", "incomplete"];
9207
+ };
9208
+ readonly reasons: {
9209
+ readonly maxItems: 20;
9210
+ readonly type: "array";
9211
+ readonly items: {
9212
+ readonly type: "string";
9213
+ readonly minLength: 1;
9214
+ readonly maxLength: 500;
9215
+ };
9216
+ };
9217
+ };
9218
+ readonly required: readonly ["status", "reasons"];
9219
+ readonly additionalProperties: false;
9220
+ };
9221
+ readonly limits: {
9222
+ readonly type: "object";
9223
+ readonly properties: {
9224
+ readonly calls: {
9225
+ readonly type: "integer";
9226
+ readonly minimum: 0;
9227
+ readonly maximum: 9007199254740991;
9228
+ };
9229
+ readonly domains: {
9230
+ readonly type: "integer";
9231
+ readonly minimum: 0;
9232
+ readonly maximum: 9007199254740991;
9233
+ };
9234
+ readonly candidates: {
9235
+ readonly type: "integer";
9236
+ readonly minimum: 0;
9237
+ readonly maximum: 9007199254740991;
9238
+ };
9239
+ };
9240
+ readonly required: readonly ["calls", "domains", "candidates"];
9241
+ readonly additionalProperties: false;
9242
+ };
9243
+ readonly candidates: {
9244
+ readonly maxItems: 10;
9245
+ readonly type: "array";
9246
+ readonly items: {
9247
+ readonly type: "object";
9248
+ readonly properties: {
9249
+ readonly id: {
9250
+ readonly type: "string";
9251
+ readonly minLength: 1;
9252
+ readonly maxLength: 191;
9253
+ };
9254
+ readonly name: {
9255
+ readonly type: "string";
9256
+ readonly maxLength: 500;
9257
+ };
9258
+ readonly domain: {
9259
+ readonly type: "string";
9260
+ readonly maxLength: 500;
9261
+ };
9262
+ readonly type: {
9263
+ readonly type: "string";
9264
+ readonly enum: readonly ["COMPANY", "INDIVIDUAL"];
9265
+ };
9266
+ readonly reasons: {
9267
+ readonly maxItems: 50;
9268
+ readonly type: "array";
9269
+ readonly items: {
9270
+ readonly type: "object";
9271
+ readonly properties: {
9272
+ readonly kind: {
9273
+ readonly type: "string";
9274
+ readonly const: "participant_domain";
9275
+ };
9276
+ readonly domain: {
9277
+ readonly type: "string";
9278
+ readonly maxLength: 253;
9279
+ };
9280
+ readonly sourceType: {
9281
+ readonly type: "string";
9282
+ readonly const: "CALL";
9283
+ };
9284
+ readonly sourceId: {
9285
+ readonly type: "string";
9286
+ readonly minLength: 1;
9287
+ readonly maxLength: 191;
9288
+ };
9289
+ readonly field: {
9290
+ readonly type: "string";
9291
+ readonly const: "participants.email";
7499
9292
  };
7500
9293
  };
7501
- readonly required: readonly ["window", "coverage", "reason"];
9294
+ readonly required: readonly ["kind", "domain", "sourceType", "sourceId", "field"];
7502
9295
  readonly additionalProperties: false;
7503
- }];
9296
+ };
7504
9297
  };
7505
9298
  };
7506
- readonly required: readonly ["id", "revision", "sourceKey", "featureKey", "name", "rule", "evidence"];
9299
+ readonly required: readonly ["id", "name", "domain", "type", "reasons"];
7507
9300
  readonly additionalProperties: false;
7508
9301
  };
7509
9302
  };
7510
9303
  };
7511
- readonly required: readonly ["customer", "features"];
9304
+ readonly required: readonly ["customerId", "checkedAt", "window", "coverage", "limits", "candidates"];
7512
9305
  readonly additionalProperties: false;
7513
9306
  };
7514
9307
  };
7515
- readonly outlit_list_attention_items: {
7516
- readonly toolName: "outlit_list_attention_items";
7517
- readonly commandId: "attention.list";
9308
+ readonly outlit_list_identity_merge_suggestions: {
9309
+ readonly toolName: "outlit_list_identity_merge_suggestions";
9310
+ readonly commandId: "identity.suggestions.list";
7518
9311
  readonly commandVersion: 1;
7519
- readonly ownerDomain: "attention";
7520
- readonly title: "List Attention Items";
7521
- readonly description: "List authorized open or resolved Attention items. Returns bounded customer identity, current priority, ARR importance, lifecycle timestamps, and a prepared-action URL without evidence bodies or internal agent state.";
9312
+ readonly ownerDomain: "identity";
9313
+ readonly title: "List identity merge suggestions";
9314
+ readonly description: "Browse saved identity merge suggestions and history with complete details, review notes and latest job status. When latestJob.operationId is non-null, pass it to outlit_get_customer_merge_status to track that merge. Filter by exact suggestion or customer ID to inspect a record without scanning pages. Empty saved suggestions do not prove there is no identity split; use customer identity reads for bounded diagnosis. Follow nextCursor for more results.";
9315
+ readonly annotations: {
9316
+ readonly readOnlyHint: true;
9317
+ readonly destructiveHint: false;
9318
+ };
7522
9319
  readonly inputSchema: {
7523
9320
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
7524
9321
  readonly type: "object";
7525
9322
  readonly properties: {
9323
+ readonly customerId: {
9324
+ readonly type: "string";
9325
+ readonly minLength: 1;
9326
+ readonly maxLength: 191;
9327
+ };
9328
+ readonly suggestionId: {
9329
+ readonly type: "string";
9330
+ readonly minLength: 1;
9331
+ readonly maxLength: 191;
9332
+ };
9333
+ readonly cursor: {
9334
+ readonly type: "string";
9335
+ readonly minLength: 1;
9336
+ readonly maxLength: 2000;
9337
+ };
7526
9338
  readonly status: {
7527
- readonly description: "Attention lifecycle to list (default: open)";
7528
- readonly default: "open";
7529
9339
  readonly type: "string";
7530
- readonly enum: readonly ["open", "resolved"];
9340
+ readonly enum: readonly ["suggested", "processing", "merged", "rejected"];
7531
9341
  };
7532
- readonly customerId: {
7533
- readonly description: "Filter by exact customer ID";
9342
+ readonly confidence: {
7534
9343
  readonly type: "string";
7535
- readonly format: "uuid";
7536
- readonly pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$";
9344
+ readonly enum: readonly ["HIGH", "MEDIUM", "LOW"];
7537
9345
  };
7538
9346
  readonly limit: {
7539
- readonly description: "Results per page (default: 25, max: 100)";
7540
- readonly default: 25;
9347
+ readonly default: 50;
7541
9348
  readonly type: "integer";
7542
9349
  readonly minimum: 1;
7543
9350
  readonly maximum: 100;
7544
9351
  };
7545
- readonly cursor: {
7546
- readonly description: "Opaque cursor from a previous response with the same filters";
7547
- readonly type: "string";
7548
- readonly minLength: 1;
7549
- readonly maxLength: 2000;
7550
- };
7551
9352
  };
7552
9353
  readonly additionalProperties: false;
7553
9354
  };
@@ -7555,8 +9356,7 @@ declare const publicToolContracts: {
7555
9356
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
7556
9357
  readonly type: "object";
7557
9358
  readonly properties: {
7558
- readonly items: {
7559
- readonly maxItems: 100;
9359
+ readonly suggestions: {
7560
9360
  readonly type: "array";
7561
9361
  readonly items: {
7562
9362
  readonly type: "object";
@@ -7564,15 +9364,27 @@ declare const publicToolContracts: {
7564
9364
  readonly id: {
7565
9365
  readonly type: "string";
7566
9366
  readonly minLength: 1;
7567
- readonly maxLength: 500;
9367
+ readonly maxLength: 191;
7568
9368
  };
7569
- readonly customer: {
9369
+ readonly status: {
9370
+ readonly type: "string";
9371
+ readonly enum: readonly ["suggested", "processing", "merged", "rejected"];
9372
+ };
9373
+ readonly proposalStatus: {
9374
+ readonly type: "string";
9375
+ readonly enum: readonly ["PROPOSED", "STAGED", "STALE", "REJECTED", "APPLIED"];
9376
+ };
9377
+ readonly confidence: {
9378
+ readonly type: "string";
9379
+ readonly enum: readonly ["HIGH", "MEDIUM", "LOW"];
9380
+ };
9381
+ readonly survivor: {
7570
9382
  readonly type: "object";
7571
9383
  readonly properties: {
7572
9384
  readonly id: {
7573
9385
  readonly type: "string";
7574
9386
  readonly minLength: 1;
7575
- readonly maxLength: 500;
9387
+ readonly maxLength: 191;
7576
9388
  };
7577
9389
  readonly name: {
7578
9390
  readonly type: "string";
@@ -7580,10 +9392,6 @@ declare const publicToolContracts: {
7580
9392
  readonly maxLength: 500;
7581
9393
  };
7582
9394
  readonly domain: {
7583
- readonly type: "string";
7584
- readonly maxLength: 253;
7585
- };
7586
- readonly ownerName: {
7587
9395
  readonly anyOf: readonly [{
7588
9396
  readonly type: "string";
7589
9397
  readonly minLength: 1;
@@ -7592,492 +9400,578 @@ declare const publicToolContracts: {
7592
9400
  readonly type: "null";
7593
9401
  }];
7594
9402
  };
9403
+ readonly type: {
9404
+ readonly type: "string";
9405
+ readonly enum: readonly ["COMPANY", "INDIVIDUAL"];
9406
+ };
9407
+ readonly status: {
9408
+ readonly anyOf: readonly [{
9409
+ readonly type: "string";
9410
+ readonly enum: readonly ["PROVISIONAL", "ACTIVE", "CHURNED", "MERGED"];
9411
+ }, {
9412
+ readonly type: "null";
9413
+ }];
9414
+ };
9415
+ readonly identifierCount: {
9416
+ readonly type: "integer";
9417
+ readonly minimum: 0;
9418
+ readonly maximum: 9007199254740991;
9419
+ };
9420
+ readonly contactCount: {
9421
+ readonly type: "integer";
9422
+ readonly minimum: 0;
9423
+ readonly maximum: 9007199254740991;
9424
+ };
7595
9425
  };
7596
- readonly required: readonly ["id", "name", "domain", "ownerName"];
9426
+ readonly required: readonly ["id", "name", "domain", "type", "status", "identifierCount", "contactCount"];
7597
9427
  readonly additionalProperties: false;
7598
9428
  };
7599
- readonly title: {
7600
- readonly type: "string";
7601
- readonly minLength: 1;
7602
- readonly maxLength: 240;
7603
- };
7604
- readonly priority: {
7605
- readonly type: "string";
7606
- readonly enum: readonly ["NORMAL", "HIGH", "URGENT"];
7607
- };
7608
- readonly evidenceCount: {
7609
- readonly type: "integer";
7610
- readonly minimum: 0;
7611
- readonly maximum: 50;
7612
- };
7613
- readonly lifecycle: {
9429
+ readonly duplicate: {
7614
9430
  readonly type: "object";
7615
9431
  readonly properties: {
7616
- readonly status: {
9432
+ readonly id: {
7617
9433
  readonly type: "string";
7618
- readonly enum: readonly ["open", "resolved"];
9434
+ readonly minLength: 1;
9435
+ readonly maxLength: 191;
7619
9436
  };
7620
- readonly customerVisibleAt: {
9437
+ readonly name: {
7621
9438
  readonly type: "string";
7622
- readonly format: "date-time";
7623
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
7624
- };
7625
- readonly resolvedAt: {
7626
- readonly anyOf: readonly [{
7627
- readonly type: "string";
7628
- readonly format: "date-time";
7629
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
7630
- }, {
7631
- readonly type: "null";
7632
- }];
9439
+ readonly minLength: 1;
9440
+ readonly maxLength: 500;
7633
9441
  };
7634
- readonly reopenedAt: {
9442
+ readonly domain: {
7635
9443
  readonly anyOf: readonly [{
7636
9444
  readonly type: "string";
7637
- readonly format: "date-time";
7638
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9445
+ readonly minLength: 1;
9446
+ readonly maxLength: 500;
7639
9447
  }, {
7640
9448
  readonly type: "null";
7641
9449
  }];
7642
9450
  };
7643
- readonly createdAt: {
7644
- readonly type: "string";
7645
- readonly format: "date-time";
7646
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
7647
- };
7648
- readonly updatedAt: {
9451
+ readonly type: {
7649
9452
  readonly type: "string";
7650
- readonly format: "date-time";
7651
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9453
+ readonly enum: readonly ["COMPANY", "INDIVIDUAL"];
7652
9454
  };
7653
- readonly materialUpdateAt: {
9455
+ readonly status: {
7654
9456
  readonly anyOf: readonly [{
7655
9457
  readonly type: "string";
7656
- readonly format: "date-time";
7657
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9458
+ readonly enum: readonly ["PROVISIONAL", "ACTIVE", "CHURNED", "MERGED"];
7658
9459
  }, {
7659
9460
  readonly type: "null";
7660
9461
  }];
7661
9462
  };
9463
+ readonly identifierCount: {
9464
+ readonly type: "integer";
9465
+ readonly minimum: 0;
9466
+ readonly maximum: 9007199254740991;
9467
+ };
9468
+ readonly contactCount: {
9469
+ readonly type: "integer";
9470
+ readonly minimum: 0;
9471
+ readonly maximum: 9007199254740991;
9472
+ };
7662
9473
  };
7663
- readonly required: readonly ["status", "customerVisibleAt", "resolvedAt", "reopenedAt", "createdAt", "updatedAt", "materialUpdateAt"];
9474
+ readonly required: readonly ["id", "name", "domain", "type", "status", "identifierCount", "contactCount"];
7664
9475
  readonly additionalProperties: false;
7665
9476
  };
7666
- readonly accountImportance: {
9477
+ readonly reviewNotes: {
9478
+ readonly anyOf: readonly [{
9479
+ readonly type: "string";
9480
+ readonly maxLength: 10000;
9481
+ }, {
9482
+ readonly type: "null";
9483
+ }];
9484
+ };
9485
+ readonly reviewedAt: {
9486
+ readonly anyOf: readonly [{
9487
+ readonly type: "string";
9488
+ readonly format: "date-time";
9489
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9490
+ }, {
9491
+ readonly type: "null";
9492
+ }];
9493
+ };
9494
+ readonly reviewedByName: {
9495
+ readonly anyOf: readonly [{
9496
+ readonly type: "string";
9497
+ readonly minLength: 1;
9498
+ readonly maxLength: 500;
9499
+ }, {
9500
+ readonly type: "null";
9501
+ }];
9502
+ };
9503
+ readonly appliedAt: {
9504
+ readonly anyOf: readonly [{
9505
+ readonly type: "string";
9506
+ readonly format: "date-time";
9507
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9508
+ }, {
9509
+ readonly type: "null";
9510
+ }];
9511
+ };
9512
+ readonly appliedByName: {
9513
+ readonly anyOf: readonly [{
9514
+ readonly type: "string";
9515
+ readonly minLength: 1;
9516
+ readonly maxLength: 500;
9517
+ }, {
9518
+ readonly type: "null";
9519
+ }];
9520
+ };
9521
+ readonly createdAt: {
9522
+ readonly type: "string";
9523
+ readonly format: "date-time";
9524
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9525
+ };
9526
+ readonly explanation: {
9527
+ readonly type: "array";
9528
+ readonly items: {
9529
+ readonly type: "string";
9530
+ readonly minLength: 1;
9531
+ readonly maxLength: 1000;
9532
+ };
9533
+ };
9534
+ readonly impact: {
7667
9535
  readonly type: "object";
7668
9536
  readonly properties: {
7669
- readonly arrCents: {
7670
- readonly anyOf: readonly [{
7671
- readonly type: "number";
7672
- readonly minimum: 0;
7673
- }, {
7674
- readonly type: "null";
7675
- }];
9537
+ readonly identifiers: {
9538
+ readonly type: "integer";
9539
+ readonly minimum: 0;
9540
+ readonly maximum: 9007199254740991;
7676
9541
  };
7677
- readonly currency: {
7678
- readonly anyOf: readonly [{
7679
- readonly type: "string";
7680
- readonly pattern: "^[A-Z]{3}$";
7681
- }, {
7682
- readonly type: "null";
7683
- }];
9542
+ readonly users: {
9543
+ readonly type: "integer";
9544
+ readonly minimum: 0;
9545
+ readonly maximum: 9007199254740991;
7684
9546
  };
7685
- readonly arrShareWithinCurrency: {
7686
- readonly anyOf: readonly [{
7687
- readonly type: "number";
7688
- readonly minimum: 0;
7689
- readonly maximum: 1;
7690
- }, {
7691
- readonly type: "null";
7692
- }];
7693
- readonly description: "Organization ARR share among customers using the same currency";
9547
+ readonly activities: {
9548
+ readonly type: "integer";
9549
+ readonly minimum: 0;
9550
+ readonly maximum: 9007199254740991;
7694
9551
  };
7695
- readonly arrPercentileWithinCurrency: {
7696
- readonly anyOf: readonly [{
7697
- readonly type: "number";
7698
- readonly minimum: 0;
7699
- readonly maximum: 100;
7700
- }, {
7701
- readonly type: "null";
7702
- }];
7703
- readonly description: "ARR percentile among customers using the same currency";
9552
+ readonly visitors: {
9553
+ readonly type: "integer";
9554
+ readonly minimum: 0;
9555
+ readonly maximum: 9007199254740991;
7704
9556
  };
7705
- readonly segments: {
7706
- readonly maxItems: 50;
7707
- readonly type: "array";
7708
- readonly items: {
9557
+ readonly billingEvents: {
9558
+ readonly type: "integer";
9559
+ readonly minimum: 0;
9560
+ readonly maximum: 9007199254740991;
9561
+ };
9562
+ readonly facts: {
9563
+ readonly type: "integer";
9564
+ readonly minimum: 0;
9565
+ readonly maximum: 9007199254740991;
9566
+ };
9567
+ readonly supportTickets: {
9568
+ readonly type: "integer";
9569
+ readonly minimum: 0;
9570
+ readonly maximum: 9007199254740991;
9571
+ };
9572
+ readonly calls: {
9573
+ readonly type: "integer";
9574
+ readonly minimum: 0;
9575
+ readonly maximum: 9007199254740991;
9576
+ };
9577
+ readonly accessEntries: {
9578
+ readonly type: "integer";
9579
+ readonly minimum: 0;
9580
+ readonly maximum: 9007199254740991;
9581
+ };
9582
+ readonly analyticsEvents: {
9583
+ readonly type: "integer";
9584
+ readonly minimum: 0;
9585
+ readonly maximum: 9007199254740991;
9586
+ };
9587
+ readonly analyticsDimensions: {
9588
+ readonly type: "integer";
9589
+ readonly minimum: 0;
9590
+ readonly maximum: 9007199254740991;
9591
+ };
9592
+ };
9593
+ readonly required: readonly ["identifiers", "users", "activities", "visitors", "billingEvents", "facts", "supportTickets", "calls", "accessEntries", "analyticsEvents", "analyticsDimensions"];
9594
+ readonly additionalProperties: false;
9595
+ };
9596
+ readonly latestJob: {
9597
+ readonly anyOf: readonly [{
9598
+ readonly type: "object";
9599
+ readonly properties: {
9600
+ readonly id: {
9601
+ readonly type: "string";
9602
+ readonly minLength: 1;
9603
+ readonly maxLength: 191;
9604
+ };
9605
+ readonly operationId: {
9606
+ readonly anyOf: readonly [{
9607
+ readonly type: "string";
9608
+ readonly minLength: 1;
9609
+ readonly maxLength: 191;
9610
+ }, {
9611
+ readonly type: "null";
9612
+ }];
9613
+ readonly description: "Pass to outlit_get_customer_merge_status. Null when this job has no matching tracked operation.";
9614
+ };
9615
+ readonly status: {
7709
9616
  readonly type: "string";
7710
- readonly minLength: 1;
7711
- readonly maxLength: 240;
9617
+ readonly enum: readonly ["QUEUED", "RUNNING", "COMPLETED", "FAILED"];
9618
+ };
9619
+ readonly createdAt: {
9620
+ readonly type: "string";
9621
+ readonly format: "date-time";
9622
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9623
+ };
9624
+ readonly updatedAt: {
9625
+ readonly type: "string";
9626
+ readonly format: "date-time";
9627
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
7712
9628
  };
7713
9629
  };
7714
- };
7715
- readonly required: readonly ["arrCents", "currency", "arrShareWithinCurrency", "arrPercentileWithinCurrency", "segments"];
7716
- readonly additionalProperties: false;
7717
- };
7718
- readonly preparedActionUrl: {
7719
- readonly anyOf: readonly [{
7720
- readonly type: "string";
7721
- readonly maxLength: 2000;
7722
- readonly format: "uri";
9630
+ readonly required: readonly ["id", "operationId", "status", "createdAt", "updatedAt"];
9631
+ readonly additionalProperties: false;
7723
9632
  }, {
7724
9633
  readonly type: "null";
7725
9634
  }];
7726
9635
  };
9636
+ readonly canMerge: {
9637
+ readonly type: "boolean";
9638
+ };
9639
+ readonly canReject: {
9640
+ readonly type: "boolean";
9641
+ };
7727
9642
  };
7728
- readonly required: readonly ["id", "customer", "title", "priority", "evidenceCount", "lifecycle", "accountImportance", "preparedActionUrl"];
9643
+ readonly required: readonly ["id", "status", "proposalStatus", "confidence", "survivor", "duplicate", "reviewNotes", "reviewedAt", "reviewedByName", "appliedAt", "appliedByName", "createdAt", "explanation", "impact", "latestJob", "canMerge", "canReject"];
7729
9644
  readonly additionalProperties: false;
7730
9645
  };
7731
9646
  };
7732
- readonly pagination: {
7733
- readonly type: "object";
7734
- readonly properties: {
7735
- readonly hasMore: {
7736
- readonly type: "boolean";
7737
- };
7738
- readonly nextCursor: {
7739
- readonly anyOf: readonly [{
7740
- readonly type: "string";
7741
- readonly minLength: 1;
7742
- readonly maxLength: 2000;
7743
- }, {
7744
- readonly type: "null";
7745
- }];
7746
- };
7747
- readonly total: {
7748
- readonly type: "integer";
7749
- readonly minimum: 0;
7750
- readonly maximum: 9007199254740991;
7751
- };
7752
- };
7753
- readonly required: readonly ["hasMore", "nextCursor", "total"];
7754
- readonly additionalProperties: false;
9647
+ readonly canManageIdentityMerges: {
9648
+ readonly type: "boolean";
9649
+ };
9650
+ readonly nextCursor: {
9651
+ readonly default: null;
9652
+ readonly anyOf: readonly [{
9653
+ readonly type: "string";
9654
+ readonly minLength: 1;
9655
+ readonly maxLength: 2000;
9656
+ }, {
9657
+ readonly type: "null";
9658
+ }];
7755
9659
  };
7756
9660
  };
7757
- readonly required: readonly ["items", "pagination"];
9661
+ readonly required: readonly ["suggestions", "canManageIdentityMerges", "nextCursor"];
7758
9662
  readonly additionalProperties: false;
7759
9663
  };
7760
9664
  };
7761
- readonly outlit_get_attention_item: {
7762
- readonly toolName: "outlit_get_attention_item";
7763
- readonly commandId: "attention.get";
9665
+ readonly outlit_reject_identity_merge_suggestion: {
9666
+ readonly toolName: "outlit_reject_identity_merge_suggestion";
9667
+ readonly commandId: "identity.suggestions.reject";
7764
9668
  readonly commandVersion: 1;
7765
- readonly ownerDomain: "attention";
7766
- readonly title: "Get Attention Item";
7767
- readonly description: "Get one authorized Attention item with its bounded current assessment, timeline, evidence summaries, and prepared-action URL. Does not return evidence IDs, quotes, email drafts, or internal agent state.";
9669
+ readonly ownerDomain: "identity";
9670
+ readonly title: "Reject identity merge suggestion";
9671
+ readonly description: "Reject a saved identity merge suggestion and optionally record why. Requires identity review permission. Keeps the customer profiles separate; does not merge or change customer identities. Outlit-owned agents cannot perform this operation.";
9672
+ readonly annotations: {
9673
+ readonly readOnlyHint: false;
9674
+ readonly destructiveHint: false;
9675
+ };
7768
9676
  readonly inputSchema: {
7769
9677
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
7770
9678
  readonly type: "object";
7771
9679
  readonly properties: {
7772
- readonly id: {
9680
+ readonly suggestionId: {
7773
9681
  readonly type: "string";
7774
- readonly format: "uuid";
7775
- readonly pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$";
7776
- readonly description: "Exact Attention item ID";
9682
+ readonly minLength: 1;
9683
+ readonly maxLength: 191;
9684
+ };
9685
+ readonly reviewNotes: {
9686
+ readonly type: "string";
9687
+ readonly maxLength: 10000;
7777
9688
  };
7778
9689
  };
7779
- readonly required: readonly ["id"];
9690
+ readonly required: readonly ["suggestionId"];
7780
9691
  readonly additionalProperties: false;
7781
9692
  };
7782
9693
  readonly outputSchema: {
7783
9694
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
7784
9695
  readonly type: "object";
7785
9696
  readonly properties: {
7786
- readonly id: {
9697
+ readonly suggestionId: {
7787
9698
  readonly type: "string";
7788
9699
  readonly minLength: 1;
7789
- readonly maxLength: 500;
9700
+ readonly maxLength: 191;
7790
9701
  };
7791
- readonly customer: {
7792
- readonly type: "object";
7793
- readonly properties: {
7794
- readonly id: {
7795
- readonly type: "string";
7796
- readonly minLength: 1;
7797
- readonly maxLength: 500;
7798
- };
7799
- readonly name: {
7800
- readonly type: "string";
7801
- readonly minLength: 1;
7802
- readonly maxLength: 500;
7803
- };
7804
- readonly domain: {
7805
- readonly type: "string";
7806
- readonly maxLength: 253;
7807
- };
7808
- readonly ownerName: {
7809
- readonly anyOf: readonly [{
7810
- readonly type: "string";
7811
- readonly minLength: 1;
7812
- readonly maxLength: 500;
7813
- }, {
7814
- readonly type: "null";
7815
- }];
7816
- };
7817
- };
7818
- readonly required: readonly ["id", "name", "domain", "ownerName"];
7819
- readonly additionalProperties: false;
9702
+ readonly status: {
9703
+ readonly type: "string";
9704
+ readonly const: "REJECTED";
7820
9705
  };
7821
- readonly title: {
9706
+ };
9707
+ readonly required: readonly ["suggestionId", "status"];
9708
+ readonly additionalProperties: false;
9709
+ };
9710
+ };
9711
+ readonly outlit_merge_customers: {
9712
+ readonly toolName: "outlit_merge_customers";
9713
+ readonly commandId: "customer.merge";
9714
+ readonly commandVersion: 1;
9715
+ readonly ownerDomain: "identity";
9716
+ readonly title: "Merge customers";
9717
+ readonly description: "DANGEROUS execution with no supported undo. Preview or execute a merge of two exact records into the specified survivor; defaults to preview (dryRun:true). Without suggestionId, both records must be COMPANY. Any pair involving an INDIVIDUAL requires an eligible saved suggestionId for that exact pair. Execute only when authorized and absolutely certain both records represent the same customer; two company records must represent the same company. Similar names, related domains, shared participants, parent/subsidiary relationships or a suggested match are insufficient. If uncertain, do not execute. Execution moves customer data and access relationships and requires the reviewed previewToken, stable requestId and explicit merge permission. A preview grants no execution authority. Reuse identical request inputs for retries. Execution is asynchronous; queued does not mean complete. Outlit-owned agents cannot perform this operation.";
9718
+ readonly annotations: {
9719
+ readonly readOnlyHint: false;
9720
+ readonly destructiveHint: true;
9721
+ };
9722
+ readonly inputSchema: {
9723
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
9724
+ readonly type: "object";
9725
+ readonly properties: {
9726
+ readonly survivingCustomerId: {
7822
9727
  readonly type: "string";
7823
9728
  readonly minLength: 1;
7824
- readonly maxLength: 240;
9729
+ readonly maxLength: 191;
7825
9730
  };
7826
- readonly priority: {
9731
+ readonly duplicateCustomerId: {
7827
9732
  readonly type: "string";
7828
- readonly enum: readonly ["NORMAL", "HIGH", "URGENT"];
7829
- };
7830
- readonly evidenceCount: {
7831
- readonly type: "integer";
7832
- readonly minimum: 0;
7833
- readonly maximum: 50;
7834
- };
7835
- readonly lifecycle: {
7836
- readonly type: "object";
7837
- readonly properties: {
7838
- readonly status: {
7839
- readonly type: "string";
7840
- readonly enum: readonly ["open", "resolved"];
7841
- };
7842
- readonly customerVisibleAt: {
7843
- readonly type: "string";
7844
- readonly format: "date-time";
7845
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
7846
- };
7847
- readonly resolvedAt: {
7848
- readonly anyOf: readonly [{
7849
- readonly type: "string";
7850
- readonly format: "date-time";
7851
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
7852
- }, {
7853
- readonly type: "null";
7854
- }];
7855
- };
7856
- readonly reopenedAt: {
7857
- readonly anyOf: readonly [{
7858
- readonly type: "string";
7859
- readonly format: "date-time";
7860
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
7861
- }, {
7862
- readonly type: "null";
7863
- }];
7864
- };
7865
- readonly createdAt: {
7866
- readonly type: "string";
7867
- readonly format: "date-time";
7868
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
7869
- };
7870
- readonly updatedAt: {
7871
- readonly type: "string";
7872
- readonly format: "date-time";
7873
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
7874
- };
7875
- readonly materialUpdateAt: {
7876
- readonly anyOf: readonly [{
7877
- readonly type: "string";
7878
- readonly format: "date-time";
7879
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
7880
- }, {
7881
- readonly type: "null";
7882
- }];
7883
- };
7884
- };
7885
- readonly required: readonly ["status", "customerVisibleAt", "resolvedAt", "reopenedAt", "createdAt", "updatedAt", "materialUpdateAt"];
7886
- readonly additionalProperties: false;
7887
- };
7888
- readonly accountImportance: {
7889
- readonly type: "object";
7890
- readonly properties: {
7891
- readonly arrCents: {
7892
- readonly anyOf: readonly [{
7893
- readonly type: "number";
7894
- readonly minimum: 0;
7895
- }, {
7896
- readonly type: "null";
7897
- }];
7898
- };
7899
- readonly currency: {
7900
- readonly anyOf: readonly [{
7901
- readonly type: "string";
7902
- readonly pattern: "^[A-Z]{3}$";
7903
- }, {
7904
- readonly type: "null";
7905
- }];
7906
- };
7907
- readonly arrShareWithinCurrency: {
7908
- readonly anyOf: readonly [{
7909
- readonly type: "number";
7910
- readonly minimum: 0;
7911
- readonly maximum: 1;
7912
- }, {
7913
- readonly type: "null";
7914
- }];
7915
- readonly description: "Organization ARR share among customers using the same currency";
7916
- };
7917
- readonly arrPercentileWithinCurrency: {
7918
- readonly anyOf: readonly [{
7919
- readonly type: "number";
7920
- readonly minimum: 0;
7921
- readonly maximum: 100;
7922
- }, {
7923
- readonly type: "null";
7924
- }];
7925
- readonly description: "ARR percentile among customers using the same currency";
7926
- };
7927
- readonly segments: {
7928
- readonly maxItems: 50;
7929
- readonly type: "array";
7930
- readonly items: {
7931
- readonly type: "string";
7932
- readonly minLength: 1;
7933
- readonly maxLength: 240;
7934
- };
7935
- };
7936
- };
7937
- readonly required: readonly ["arrCents", "currency", "arrShareWithinCurrency", "arrPercentileWithinCurrency", "segments"];
7938
- readonly additionalProperties: false;
7939
- };
7940
- readonly preparedActionUrl: {
7941
- readonly anyOf: readonly [{
7942
- readonly type: "string";
7943
- readonly maxLength: 2000;
7944
- readonly format: "uri";
7945
- }, {
7946
- readonly type: "null";
7947
- }];
9733
+ readonly minLength: 1;
9734
+ readonly maxLength: 191;
7948
9735
  };
7949
- readonly whatChanged: {
9736
+ readonly suggestionId: {
7950
9737
  readonly type: "string";
7951
9738
  readonly minLength: 1;
7952
- readonly maxLength: 8000;
9739
+ readonly maxLength: 191;
9740
+ readonly description: "Eligible saved suggestion for this exact pair. Required if either record is INDIVIDUAL; optional for two COMPANY records.";
7953
9741
  };
7954
- readonly whyItMatters: {
9742
+ readonly reviewNotes: {
7955
9743
  readonly type: "string";
7956
- readonly minLength: 1;
7957
- readonly maxLength: 8000;
9744
+ readonly maxLength: 10000;
7958
9745
  };
7959
- readonly uncertainty: {
7960
- readonly anyOf: readonly [{
7961
- readonly type: "string";
7962
- readonly minLength: 1;
7963
- readonly maxLength: 8000;
7964
- }, {
7965
- readonly type: "null";
7966
- }];
9746
+ readonly dryRun: {
9747
+ readonly default: true;
9748
+ readonly type: "boolean";
7967
9749
  };
7968
- readonly priorityReason: {
9750
+ readonly previewToken: {
7969
9751
  readonly type: "string";
7970
9752
  readonly minLength: 1;
7971
- readonly maxLength: 8000;
9753
+ readonly maxLength: 4096;
7972
9754
  };
7973
- readonly timeline: {
7974
- readonly maxItems: 20;
7975
- readonly type: "array";
7976
- readonly items: {
9755
+ readonly requestId: {
9756
+ readonly type: "string";
9757
+ readonly minLength: 1;
9758
+ readonly maxLength: 191;
9759
+ };
9760
+ };
9761
+ readonly required: readonly ["survivingCustomerId", "duplicateCustomerId"];
9762
+ readonly additionalProperties: false;
9763
+ };
9764
+ readonly outputSchema: {
9765
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
9766
+ readonly oneOf: readonly [{
9767
+ readonly type: "object";
9768
+ readonly properties: {
9769
+ readonly kind: {
9770
+ readonly type: "string";
9771
+ readonly const: "preview";
9772
+ };
9773
+ readonly survivingCustomerId: {
9774
+ readonly type: "string";
9775
+ readonly minLength: 1;
9776
+ readonly maxLength: 191;
9777
+ };
9778
+ readonly duplicateCustomerId: {
9779
+ readonly type: "string";
9780
+ readonly minLength: 1;
9781
+ readonly maxLength: 191;
9782
+ };
9783
+ readonly previewToken: {
9784
+ readonly type: "string";
9785
+ readonly minLength: 1;
9786
+ readonly maxLength: 4096;
9787
+ };
9788
+ readonly evaluatedAt: {
9789
+ readonly type: "string";
9790
+ readonly format: "date-time";
9791
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
9792
+ };
9793
+ readonly impact: {
7977
9794
  readonly type: "object";
7978
9795
  readonly properties: {
7979
- readonly title: {
7980
- readonly type: "string";
7981
- readonly minLength: 1;
7982
- readonly maxLength: 240;
9796
+ readonly identifiers: {
9797
+ readonly type: "integer";
9798
+ readonly minimum: 0;
9799
+ readonly maximum: 9007199254740991;
7983
9800
  };
7984
- readonly explanation: {
7985
- readonly type: "string";
7986
- readonly minLength: 1;
7987
- readonly maxLength: 4000;
9801
+ readonly contacts: {
9802
+ readonly type: "integer";
9803
+ readonly minimum: 0;
9804
+ readonly maximum: 9007199254740991;
7988
9805
  };
7989
- readonly observedAt: {
7990
- readonly type: "string";
7991
- readonly format: "date-time";
7992
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9806
+ readonly facts: {
9807
+ readonly type: "integer";
9808
+ readonly minimum: 0;
9809
+ readonly maximum: 9007199254740991;
9810
+ };
9811
+ readonly communications: {
9812
+ readonly type: "integer";
9813
+ readonly minimum: 0;
9814
+ readonly maximum: 9007199254740991;
9815
+ };
9816
+ readonly accessEntries: {
9817
+ readonly type: "integer";
9818
+ readonly minimum: 0;
9819
+ readonly maximum: 9007199254740991;
7993
9820
  };
7994
9821
  };
7995
- readonly required: readonly ["title", "explanation", "observedAt"];
9822
+ readonly required: readonly ["identifiers", "contacts", "facts", "communications", "accessEntries"];
7996
9823
  readonly additionalProperties: false;
7997
9824
  };
7998
- };
7999
- readonly evidence: {
8000
- readonly maxItems: 20;
8001
- readonly type: "array";
8002
- readonly items: {
8003
- readonly type: "object";
8004
- readonly properties: {
8005
- readonly role: {
8006
- readonly type: "string";
8007
- readonly enum: readonly ["supporting", "contradictory", "context"];
8008
- };
8009
- readonly kind: {
8010
- readonly type: "string";
8011
- readonly enum: readonly ["metric", "communication", "record", "event"];
8012
- };
8013
- readonly title: {
8014
- readonly type: "string";
8015
- readonly minLength: 1;
8016
- readonly maxLength: 500;
8017
- };
8018
- readonly observedAt: {
8019
- readonly anyOf: readonly [{
9825
+ readonly warnings: {
9826
+ readonly maxItems: 30;
9827
+ readonly type: "array";
9828
+ readonly items: {
9829
+ readonly type: "object";
9830
+ readonly properties: {
9831
+ readonly code: {
8020
9832
  readonly type: "string";
8021
- readonly format: "date-time";
8022
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8023
- }, {
8024
- readonly type: "null";
8025
- }];
8026
- };
8027
- readonly window: {
8028
- readonly anyOf: readonly [{
8029
- readonly type: "object";
8030
- readonly properties: {
8031
- readonly start: {
8032
- readonly type: "string";
8033
- readonly format: "date-time";
8034
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8035
- };
8036
- readonly end: {
8037
- readonly type: "string";
8038
- readonly format: "date-time";
8039
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
8040
- };
8041
- };
8042
- readonly required: readonly ["start", "end"];
8043
- readonly additionalProperties: false;
8044
- }, {
8045
- readonly type: "null";
8046
- }];
8047
- };
8048
- readonly sourceLabel: {
8049
- readonly type: "string";
8050
- readonly minLength: 1;
8051
- readonly maxLength: 240;
9833
+ readonly minLength: 1;
9834
+ readonly maxLength: 100;
9835
+ };
9836
+ readonly message: {
9837
+ readonly type: "string";
9838
+ readonly maxLength: 1000;
9839
+ };
8052
9840
  };
9841
+ readonly required: readonly ["code", "message"];
9842
+ readonly additionalProperties: false;
8053
9843
  };
8054
- readonly required: readonly ["role", "kind", "title", "observedAt", "window", "sourceLabel"];
8055
- readonly additionalProperties: false;
8056
9844
  };
8057
9845
  };
8058
- readonly latestUpdate: {
8059
- readonly anyOf: readonly [{
9846
+ readonly required: readonly ["kind", "survivingCustomerId", "duplicateCustomerId", "previewToken", "evaluatedAt", "impact", "warnings"];
9847
+ readonly additionalProperties: false;
9848
+ }, {
9849
+ readonly type: "object";
9850
+ readonly properties: {
9851
+ readonly kind: {
9852
+ readonly type: "string";
9853
+ readonly const: "operation";
9854
+ };
9855
+ readonly operationId: {
9856
+ readonly type: "string";
9857
+ readonly minLength: 1;
9858
+ readonly maxLength: 191;
9859
+ };
9860
+ readonly survivingCustomerId: {
9861
+ readonly type: "string";
9862
+ readonly minLength: 1;
9863
+ readonly maxLength: 191;
9864
+ };
9865
+ readonly duplicateCustomerId: {
9866
+ readonly type: "string";
9867
+ readonly minLength: 1;
9868
+ readonly maxLength: 191;
9869
+ };
9870
+ readonly status: {
9871
+ readonly type: "string";
9872
+ readonly enum: readonly ["queued", "running", "completed", "failed"];
9873
+ };
9874
+ readonly phase: {
9875
+ readonly type: "string";
9876
+ readonly minLength: 1;
9877
+ readonly maxLength: 100;
9878
+ };
9879
+ readonly error: {
8060
9880
  readonly type: "object";
8061
9881
  readonly properties: {
8062
- readonly updatedAt: {
9882
+ readonly code: {
8063
9883
  readonly type: "string";
8064
- readonly format: "date-time";
8065
- readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
9884
+ readonly minLength: 1;
9885
+ readonly maxLength: 100;
8066
9886
  };
8067
- readonly summary: {
9887
+ readonly message: {
8068
9888
  readonly type: "string";
8069
- readonly minLength: 1;
8070
- readonly maxLength: 8000;
9889
+ readonly maxLength: 1000;
8071
9890
  };
8072
9891
  };
8073
- readonly required: readonly ["updatedAt", "summary"];
9892
+ readonly required: readonly ["code", "message"];
8074
9893
  readonly additionalProperties: false;
8075
- }, {
8076
- readonly type: "null";
8077
- }];
9894
+ };
9895
+ };
9896
+ readonly required: readonly ["kind", "operationId", "survivingCustomerId", "duplicateCustomerId", "status", "phase"];
9897
+ readonly additionalProperties: false;
9898
+ }];
9899
+ };
9900
+ };
9901
+ readonly outlit_get_customer_merge_status: {
9902
+ readonly toolName: "outlit_get_customer_merge_status";
9903
+ readonly commandId: "customer.merge.status";
9904
+ readonly commandVersion: 1;
9905
+ readonly ownerDomain: "identity";
9906
+ readonly title: "Get customer merge status";
9907
+ readonly description: "Read a customer merge operation's current progress, completion or bounded failure information. Requires current read access; possession of an operation ID does not grant access. Queued or running operations are not complete. Does not retry, restart, cancel or undo the merge.";
9908
+ readonly annotations: {
9909
+ readonly readOnlyHint: true;
9910
+ readonly destructiveHint: false;
9911
+ };
9912
+ readonly inputSchema: {
9913
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
9914
+ readonly type: "object";
9915
+ readonly properties: {
9916
+ readonly operationId: {
9917
+ readonly type: "string";
9918
+ readonly minLength: 1;
9919
+ readonly maxLength: 191;
8078
9920
  };
8079
9921
  };
8080
- readonly required: readonly ["id", "customer", "title", "priority", "evidenceCount", "lifecycle", "accountImportance", "preparedActionUrl", "whatChanged", "whyItMatters", "uncertainty", "priorityReason", "timeline", "evidence", "latestUpdate"];
9922
+ readonly required: readonly ["operationId"];
9923
+ readonly additionalProperties: false;
9924
+ };
9925
+ readonly outputSchema: {
9926
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
9927
+ readonly type: "object";
9928
+ readonly properties: {
9929
+ readonly kind: {
9930
+ readonly type: "string";
9931
+ readonly const: "operation";
9932
+ };
9933
+ readonly operationId: {
9934
+ readonly type: "string";
9935
+ readonly minLength: 1;
9936
+ readonly maxLength: 191;
9937
+ };
9938
+ readonly survivingCustomerId: {
9939
+ readonly type: "string";
9940
+ readonly minLength: 1;
9941
+ readonly maxLength: 191;
9942
+ };
9943
+ readonly duplicateCustomerId: {
9944
+ readonly type: "string";
9945
+ readonly minLength: 1;
9946
+ readonly maxLength: 191;
9947
+ };
9948
+ readonly status: {
9949
+ readonly type: "string";
9950
+ readonly enum: readonly ["queued", "running", "completed", "failed"];
9951
+ };
9952
+ readonly phase: {
9953
+ readonly type: "string";
9954
+ readonly minLength: 1;
9955
+ readonly maxLength: 100;
9956
+ };
9957
+ readonly error: {
9958
+ readonly type: "object";
9959
+ readonly properties: {
9960
+ readonly code: {
9961
+ readonly type: "string";
9962
+ readonly minLength: 1;
9963
+ readonly maxLength: 100;
9964
+ };
9965
+ readonly message: {
9966
+ readonly type: "string";
9967
+ readonly maxLength: 1000;
9968
+ };
9969
+ };
9970
+ readonly required: readonly ["code", "message"];
9971
+ readonly additionalProperties: false;
9972
+ };
9973
+ };
9974
+ readonly required: readonly ["kind", "operationId", "survivingCustomerId", "duplicateCustomerId", "status", "phase"];
8081
9975
  readonly additionalProperties: false;
8082
9976
  };
8083
9977
  };
@@ -8098,13 +9992,13 @@ declare const publicOpenApiTransports: readonly [{
8098
9992
  declare const consumerToolPolicies: {
8099
9993
  readonly default: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context"];
8100
9994
  readonly analytical: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema"];
8101
- readonly pi: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_customer_relationship", "outlit_assign_customer_owner", "outlit_grant_customer_access", "outlit_update_customer_access", "outlit_revoke_customer_access", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_list_destinations", "outlit_get_destination", "outlit_create_destination", "outlit_update_destination", "outlit_enable_destination", "outlit_disable_destination", "outlit_archive_destination", "outlit_get_integration_capabilities", "outlit_begin_integration_setup", "outlit_get_integration_setup_status", "outlit_get_integration_status", "outlit_setup_integration", "outlit_get_customer_activation", "outlit_preview_customer_activation", "outlit_update_customer_activation", "outlit_get_workspace_settings", "outlit_update_workspace_settings", "outlit_list_features", "outlit_create_feature", "outlit_archive_feature", "outlit_get_customer_features", "outlit_list_attention_items", "outlit_get_attention_item"];
8102
- readonly cli: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_customer_relationship", "outlit_assign_customer_owner", "outlit_grant_customer_access", "outlit_update_customer_access", "outlit_revoke_customer_access", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_list_destinations", "outlit_get_destination", "outlit_create_destination", "outlit_update_destination", "outlit_enable_destination", "outlit_disable_destination", "outlit_archive_destination", "outlit_get_integration_capabilities", "outlit_begin_integration_setup", "outlit_get_integration_setup_status", "outlit_get_integration_status", "outlit_setup_integration", "outlit_get_customer_activation", "outlit_preview_customer_activation", "outlit_update_customer_activation", "outlit_get_workspace_settings", "outlit_update_workspace_settings", "outlit_list_features", "outlit_create_feature", "outlit_archive_feature", "outlit_get_customer_features", "outlit_list_attention_items", "outlit_get_attention_item"];
9995
+ readonly pi: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_customer_relationship", "outlit_assign_customer_owner", "outlit_grant_customer_access", "outlit_update_customer_access", "outlit_revoke_customer_access", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_list_destinations", "outlit_get_destination", "outlit_create_destination", "outlit_update_destination", "outlit_enable_destination", "outlit_disable_destination", "outlit_archive_destination", "outlit_get_integration_capabilities", "outlit_begin_integration_setup", "outlit_get_integration_setup_status", "outlit_get_integration_status", "outlit_setup_integration", "outlit_get_customer_activation", "outlit_preview_customer_activation", "outlit_update_customer_activation", "outlit_get_workspace_settings", "outlit_update_workspace_settings", "outlit_list_features", "outlit_create_feature", "outlit_archive_feature", "outlit_get_customer_features", "outlit_get_customer_credits", "outlit_list_attention_items", "outlit_get_attention_item", "outlit_get_customer_identity", "outlit_list_identity_merge_suggestions", "outlit_reject_identity_merge_suggestion", "outlit_merge_customers", "outlit_get_customer_merge_status"];
9996
+ readonly cli: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_customer_relationship", "outlit_assign_customer_owner", "outlit_grant_customer_access", "outlit_update_customer_access", "outlit_revoke_customer_access", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_list_destinations", "outlit_get_destination", "outlit_create_destination", "outlit_update_destination", "outlit_enable_destination", "outlit_disable_destination", "outlit_archive_destination", "outlit_get_integration_capabilities", "outlit_begin_integration_setup", "outlit_get_integration_setup_status", "outlit_get_integration_status", "outlit_setup_integration", "outlit_get_customer_activation", "outlit_preview_customer_activation", "outlit_update_customer_activation", "outlit_get_workspace_settings", "outlit_update_workspace_settings", "outlit_list_features", "outlit_create_feature", "outlit_archive_feature", "outlit_get_customer_features", "outlit_get_customer_credits", "outlit_list_attention_items", "outlit_get_attention_item", "outlit_get_customer_identity", "outlit_list_identity_merge_suggestions", "outlit_reject_identity_merge_suggestion", "outlit_merge_customers", "outlit_get_customer_merge_status"];
8103
9997
  };
8104
9998
  declare const toolGatewayTransport: {
8105
9999
  readonly method: "POST";
8106
10000
  readonly path: "/api/tools/call";
8107
- readonly errorStatuses: readonly [400, 401, 402, 403, 404, 409, 422, 429, 500, 502, 503];
10001
+ readonly errorStatuses: readonly [400, 401, 402, 403, 404, 409, 413, 422, 429, 500, 502, 503];
8108
10002
  };
8109
10003
  declare const apiKeyValidationTransport: {
8110
10004
  readonly method: "POST";
@@ -8116,7 +10010,7 @@ declare const apiKeyValidationTransport: {
8116
10010
  };
8117
10011
  readonly publicResponseStatuses: readonly [200, 401, 503];
8118
10012
  };
8119
- declare const apiKeyGrants: readonly ["customer_intelligence:read", "workspace_members:read", "analytics:read", "destinations:manage", "behavior_metrics:manage", "integrations:connect_own", "integrations:manage", "activation:read", "activation:manage", "workspace_settings:read", "workspace_settings:manage", "customer_access:manage"];
10013
+ declare const apiKeyGrants: readonly ["customer_intelligence:read", "workspace_members:read", "analytics:read", "destinations:manage", "behavior_metrics:manage", "integrations:connect_own", "integrations:manage", "activation:read", "activation:manage", "workspace_settings:read", "workspace_settings:manage", "customer_access:manage", "customer_identity:review", "customer_identity:merge"];
8120
10014
  declare const apiKeyValidationSuccessSchema: {
8121
10015
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
8122
10016
  readonly type: "object";
@@ -8203,7 +10097,7 @@ declare const apiKeyValidationSuccessSchema: {
8203
10097
  readonly type: "array";
8204
10098
  readonly items: {
8205
10099
  readonly type: "string";
8206
- readonly enum: readonly ["customer_intelligence:read", "workspace_members:read", "analytics:read", "destinations:manage", "behavior_metrics:manage", "integrations:connect_own", "integrations:manage", "activation:read", "activation:manage", "workspace_settings:read", "workspace_settings:manage", "customer_access:manage"];
10100
+ readonly enum: readonly ["customer_intelligence:read", "workspace_members:read", "analytics:read", "destinations:manage", "behavior_metrics:manage", "integrations:connect_own", "integrations:manage", "activation:read", "activation:manage", "workspace_settings:read", "workspace_settings:manage", "customer_access:manage", "customer_identity:review", "customer_identity:merge"];
8207
10101
  };
8208
10102
  };
8209
10103
  readonly createdAt: {
@@ -8236,7 +10130,7 @@ declare const apiKeyValidationSuccessSchema: {
8236
10130
  readonly type: "array";
8237
10131
  readonly items: {
8238
10132
  readonly type: "string";
8239
- readonly enum: readonly ["customer_intelligence:read", "workspace_members:read", "analytics:read", "destinations:manage", "behavior_metrics:manage", "integrations:connect_own", "integrations:manage", "activation:read", "activation:manage", "workspace_settings:read", "workspace_settings:manage", "customer_access:manage"];
10133
+ readonly enum: readonly ["customer_intelligence:read", "workspace_members:read", "analytics:read", "destinations:manage", "behavior_metrics:manage", "integrations:connect_own", "integrations:manage", "activation:read", "activation:manage", "workspace_settings:read", "workspace_settings:manage", "customer_access:manage", "customer_identity:review", "customer_identity:merge"];
8240
10134
  };
8241
10135
  };
8242
10136
  };
@@ -8262,14 +10156,14 @@ declare const apiKeyValidationFailureSchema: {
8262
10156
  readonly required: readonly ["valid", "error"];
8263
10157
  readonly additionalProperties: false;
8264
10158
  };
8265
- declare const toolGatewayErrorCodes: readonly ["INVALID_JSON", "INVALID_TOOL_CALL", "INVALID_TOOL_INPUT", "INVALID_CREDENTIALS", "TOOL_CALL_FORBIDDEN", "TOOL_BINDING_MISSING", "TOOL_IMPLEMENTATION_ERROR", "TOOL_OUTPUT_INVALID", "TOOL_GATEWAY_ERROR", "plan_api_limit_exceeded", "plan_billing_action_required"];
10159
+ declare const toolGatewayErrorCodes: readonly ["INVALID_JSON", "INVALID_TOOL_CALL", "INVALID_TOOL_INPUT", "INVALID_CREDENTIALS", "TOOL_CALL_FORBIDDEN", "TOOL_BINDING_MISSING", "TOOL_IMPLEMENTATION_ERROR", "TOOL_OUTPUT_INVALID", "TOOL_RESULT_TOO_LARGE", "TOOL_GATEWAY_ERROR", "plan_api_limit_exceeded", "plan_billing_action_required"];
8266
10160
  declare const toolGatewayErrorSchema: {
8267
10161
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
8268
10162
  readonly type: "object";
8269
10163
  readonly properties: {
8270
10164
  readonly code: {
8271
10165
  readonly type: "string";
8272
- readonly enum: readonly ["INVALID_JSON", "INVALID_TOOL_CALL", "INVALID_TOOL_INPUT", "INVALID_CREDENTIALS", "TOOL_CALL_FORBIDDEN", "TOOL_BINDING_MISSING", "TOOL_IMPLEMENTATION_ERROR", "TOOL_OUTPUT_INVALID", "TOOL_GATEWAY_ERROR", "plan_api_limit_exceeded", "plan_billing_action_required"];
10166
+ readonly enum: readonly ["INVALID_JSON", "INVALID_TOOL_CALL", "INVALID_TOOL_INPUT", "INVALID_CREDENTIALS", "TOOL_CALL_FORBIDDEN", "TOOL_BINDING_MISSING", "TOOL_IMPLEMENTATION_ERROR", "TOOL_OUTPUT_INVALID", "TOOL_RESULT_TOO_LARGE", "TOOL_GATEWAY_ERROR", "plan_api_limit_exceeded", "plan_billing_action_required"];
8273
10167
  };
8274
10168
  readonly message: {
8275
10169
  readonly type: "string";
@@ -8293,6 +10187,36 @@ declare const toolGatewayErrorSchema: {
8293
10187
  readonly type: "null";
8294
10188
  }];
8295
10189
  };
10190
+ readonly limitBytes: {
10191
+ readonly type: "integer";
10192
+ readonly exclusiveMinimum: 0;
10193
+ readonly maximum: 9007199254740991;
10194
+ };
10195
+ readonly actualBytes: {
10196
+ readonly type: "integer";
10197
+ readonly exclusiveMinimum: 0;
10198
+ readonly maximum: 9007199254740991;
10199
+ };
10200
+ readonly validationIssues: {
10201
+ readonly maxItems: 10;
10202
+ readonly type: "array";
10203
+ readonly items: {
10204
+ readonly type: "object";
10205
+ readonly properties: {
10206
+ readonly code: {
10207
+ readonly type: "string";
10208
+ readonly minLength: 1;
10209
+ readonly maxLength: 100;
10210
+ };
10211
+ readonly path: {
10212
+ readonly type: "string";
10213
+ readonly maxLength: 200;
10214
+ };
10215
+ };
10216
+ readonly required: readonly ["code", "path"];
10217
+ readonly additionalProperties: false;
10218
+ };
10219
+ };
8296
10220
  };
8297
10221
  readonly required: readonly ["code", "message", "retryable", "requestId"];
8298
10222
  readonly additionalProperties: false;
@@ -8981,7 +10905,7 @@ declare const customerBillingStatuses: readonly ["NONE", "TRIALING", "PAYING", "
8981
10905
  declare const customerActivityWindows: readonly ["7d", "14d", "30d", "90d"];
8982
10906
  declare const customerFactStatuses: readonly ["ACTIVE", "ACKNOWLEDGED", "RESOLVED", "SNOOZED", "CANDIDATE"];
8983
10907
  declare const customerFactIncludes: readonly ["evidence"];
8984
- declare const customerFactTypes: readonly ["CUSTOM", "COMPANY_CHANGE", "FUNDING_REVENUE", "TECHNOLOGY", "STRATEGY", "COMPETITIVE", "SENTIMENT", "CHAMPION_RISK", "EXPANSION", "CHURN_RISK", "TIMELINE", "BUDGET", "DECISION_MAKER", "REQUIREMENTS", "PRODUCT_USAGE", "CONTACT_INFO", "CONTACT_PREFERENCE", "CONTACT_DEPARTURE", "CONTACT_POSITION_CHANGE", "CONTACT_DISENGAGEMENT"];
10908
+ declare const customerFactTypes: readonly ["CUSTOM", "COMPANY_CHANGE", "FUNDING_REVENUE", "TECHNOLOGY", "STRATEGY", "COMPETITIVE", "SENTIMENT", "EXPANSION", "CHURN_RISK", "TIMELINE", "BUDGET", "DECISION_MAKER", "REQUIREMENTS", "BLOCKER", "COMMITMENT", "SUCCESS_CRITERION", "PRODUCT_USAGE", "CONTACT_INFO", "CONTACT_PREFERENCE", "CONTACT_DEPARTURE", "CONTACT_POSITION_CHANGE", "CONTACT_DISENGAGEMENT", "CHAMPION_RISK"];
8985
10909
  declare const unsupportedCustomerFactTypes: readonly ["TRACKING_GAP", "SCHEMA_DRIFT", "INGESTION_LAG", "ACTIVATION_RATE_DROP", "FUNNEL_DROPOFF", "CORE_ACTION_DECAY", "CADENCE_BREAK", "QUIET_ACCOUNT", "CHAMPION_AT_RISK", "SEGMENT_DIVERGENCE"];
8986
10910
  declare const customerFactCategories: readonly ["MEMORY", "RELATIONSHIP", "CUSTOM"];
8987
10911
  declare const customerListOrderFields: readonly ["last_activity_at", "first_seen_at", "name", "mrr_cents"];
@@ -9000,7 +10924,7 @@ declare const userJourneyStages: readonly ["DISCOVERED", "SIGNED_UP", "ACTIVATED
9000
10924
  declare const userListOrderFields: readonly ["last_activity_at", "first_seen_at", "email"];
9001
10925
  declare const workspaceUserListOrderFields: readonly ["name", "email", "owned_customer_count"];
9002
10926
  declare const schemaTables: readonly ["activity", "customers", "users", "revenue"];
9003
- declare const sdkConsumerContractHash: "6e94d54edef77e194566831299475f1814ec8a4cf6302aa38f7fd2d596623673";
10927
+ declare const sdkConsumerContractHash: "b2bc7e86d4e524f2799b4b676f6ee94c2f8184d572771ed51311f79139a261d5";
9004
10928
 
9005
10929
  type JsonSchema = Readonly<Record<string, unknown>>;
9006
10930
  type PublicToolName = (typeof publicToolNames)[number];
@@ -9093,6 +11017,8 @@ type FeatureArchiveResult = PublicToolResult<"outlit_archive_feature">;
9093
11017
  type FeatureRef = FeatureArchiveResult["feature"];
9094
11018
  type CustomerFeaturesResult = PublicToolResult<"outlit_get_customer_features">;
9095
11019
  type CustomerFeature = CustomerFeaturesResult["features"][number];
11020
+ type CustomerCreditsResult = PublicToolResult<"outlit_get_customer_credits">;
11021
+ type CustomerCredit = CustomerCreditsResult["credits"][number];
9096
11022
  interface CustomerAnalyticsRow {
9097
11023
  activated_at: string | null;
9098
11024
  [column: string]: unknown;
@@ -9150,11 +11076,11 @@ declare function matchesGeneratedJsonSchema<TSchema extends RuntimeJsonSchema>(v
9150
11076
 
9151
11077
  declare const defaultToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context"];
9152
11078
  declare const analyticalToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema"];
9153
- declare const piToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_customer_relationship", "outlit_assign_customer_owner", "outlit_grant_customer_access", "outlit_update_customer_access", "outlit_revoke_customer_access", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_list_destinations", "outlit_get_destination", "outlit_create_destination", "outlit_update_destination", "outlit_enable_destination", "outlit_disable_destination", "outlit_archive_destination", "outlit_get_integration_capabilities", "outlit_begin_integration_setup", "outlit_get_integration_setup_status", "outlit_get_integration_status", "outlit_setup_integration", "outlit_get_customer_activation", "outlit_preview_customer_activation", "outlit_update_customer_activation", "outlit_get_workspace_settings", "outlit_update_workspace_settings", "outlit_list_features", "outlit_create_feature", "outlit_archive_feature", "outlit_get_customer_features", "outlit_list_attention_items", "outlit_get_attention_item"];
9154
- declare const cliToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_customer_relationship", "outlit_assign_customer_owner", "outlit_grant_customer_access", "outlit_update_customer_access", "outlit_revoke_customer_access", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_list_destinations", "outlit_get_destination", "outlit_create_destination", "outlit_update_destination", "outlit_enable_destination", "outlit_disable_destination", "outlit_archive_destination", "outlit_get_integration_capabilities", "outlit_begin_integration_setup", "outlit_get_integration_setup_status", "outlit_get_integration_status", "outlit_setup_integration", "outlit_get_customer_activation", "outlit_preview_customer_activation", "outlit_update_customer_activation", "outlit_get_workspace_settings", "outlit_update_workspace_settings", "outlit_list_features", "outlit_create_feature", "outlit_archive_feature", "outlit_get_customer_features", "outlit_list_attention_items", "outlit_get_attention_item"];
9155
- declare const allPublicToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_customer_relationship", "outlit_assign_customer_owner", "outlit_grant_customer_access", "outlit_update_customer_access", "outlit_revoke_customer_access", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_list_destinations", "outlit_get_destination", "outlit_create_destination", "outlit_update_destination", "outlit_enable_destination", "outlit_disable_destination", "outlit_archive_destination", "outlit_get_integration_capabilities", "outlit_begin_integration_setup", "outlit_get_integration_setup_status", "outlit_get_integration_status", "outlit_setup_integration", "outlit_get_customer_activation", "outlit_preview_customer_activation", "outlit_update_customer_activation", "outlit_get_workspace_settings", "outlit_update_workspace_settings", "outlit_list_features", "outlit_create_feature", "outlit_archive_feature", "outlit_get_customer_features", "outlit_list_attention_items", "outlit_get_attention_item"];
11079
+ declare const piToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_customer_relationship", "outlit_assign_customer_owner", "outlit_grant_customer_access", "outlit_update_customer_access", "outlit_revoke_customer_access", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_list_destinations", "outlit_get_destination", "outlit_create_destination", "outlit_update_destination", "outlit_enable_destination", "outlit_disable_destination", "outlit_archive_destination", "outlit_get_integration_capabilities", "outlit_begin_integration_setup", "outlit_get_integration_setup_status", "outlit_get_integration_status", "outlit_setup_integration", "outlit_get_customer_activation", "outlit_preview_customer_activation", "outlit_update_customer_activation", "outlit_get_workspace_settings", "outlit_update_workspace_settings", "outlit_list_features", "outlit_create_feature", "outlit_archive_feature", "outlit_get_customer_features", "outlit_get_customer_credits", "outlit_list_attention_items", "outlit_get_attention_item", "outlit_get_customer_identity", "outlit_list_identity_merge_suggestions", "outlit_reject_identity_merge_suggestion", "outlit_merge_customers", "outlit_get_customer_merge_status"];
11080
+ declare const cliToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_customer_relationship", "outlit_assign_customer_owner", "outlit_grant_customer_access", "outlit_update_customer_access", "outlit_revoke_customer_access", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_list_destinations", "outlit_get_destination", "outlit_create_destination", "outlit_update_destination", "outlit_enable_destination", "outlit_disable_destination", "outlit_archive_destination", "outlit_get_integration_capabilities", "outlit_begin_integration_setup", "outlit_get_integration_setup_status", "outlit_get_integration_status", "outlit_setup_integration", "outlit_get_customer_activation", "outlit_preview_customer_activation", "outlit_update_customer_activation", "outlit_get_workspace_settings", "outlit_update_workspace_settings", "outlit_list_features", "outlit_create_feature", "outlit_archive_feature", "outlit_get_customer_features", "outlit_get_customer_credits", "outlit_list_attention_items", "outlit_get_attention_item", "outlit_get_customer_identity", "outlit_list_identity_merge_suggestions", "outlit_reject_identity_merge_suggestion", "outlit_merge_customers", "outlit_get_customer_merge_status"];
11081
+ declare const allPublicToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_customer_relationship", "outlit_assign_customer_owner", "outlit_grant_customer_access", "outlit_update_customer_access", "outlit_revoke_customer_access", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_list_destinations", "outlit_get_destination", "outlit_create_destination", "outlit_update_destination", "outlit_enable_destination", "outlit_disable_destination", "outlit_archive_destination", "outlit_get_integration_capabilities", "outlit_begin_integration_setup", "outlit_get_integration_setup_status", "outlit_get_integration_status", "outlit_setup_integration", "outlit_get_customer_activation", "outlit_preview_customer_activation", "outlit_update_customer_activation", "outlit_get_workspace_settings", "outlit_update_workspace_settings", "outlit_list_features", "outlit_create_feature", "outlit_archive_feature", "outlit_get_customer_features", "outlit_get_customer_credits", "outlit_list_attention_items", "outlit_get_attention_item", "outlit_get_customer_identity", "outlit_list_identity_merge_suggestions", "outlit_reject_identity_merge_suggestion", "outlit_merge_customers", "outlit_get_customer_merge_status"];
9156
11082
  type CliToolName = (typeof cliToolNames)[number];
9157
11083
  type PiToolName = (typeof piToolNames)[number];
9158
11084
  declare const sqlToolNames: ("outlit_list_customers" | "outlit_list_users" | "outlit_get_customer" | "outlit_get_timeline" | "outlit_list_facts" | "outlit_get_fact" | "outlit_get_source" | "outlit_list_sources" | "outlit_search_customer_context" | "outlit_query" | "outlit_schema")[];
9159
11085
 
9160
- export { type ApiKeyValidationFailure, type ApiKeyValidationSuccess, type AttentionItem, type AttentionItemResult, type AttentionItemSummary, type AttentionListResult, type CliToolName, type CustomerAnalyticsRow, type CustomerContextSearchInput, type CustomerDetail, type CustomerDetailResult, type CustomerFeature, type CustomerFeaturesResult, type CustomerListItem, type CustomerListResult, type CustomerRelationship, type CustomerRelationshipResult, type CustomerSourceType, type CustomerSourceTypeInput, DEFAULT_OUTLIT_API_URL, type Feature, type FeatureArchiveResult, type FeatureCreateResult, type FeatureDefinition, type FeatureListResult, type FeatureRef, type JsonSchema, type JsonSchemaValue, OutlitToolsApiError, type OutlitToolsClient, type OutlitToolsClientOptions, type OutlitToolsFetch, type PiToolName, type PublicToolContract, type PublicToolName, type PublicToolResult, type RuntimeJsonSchema, type SearchArgsLike, type ToolGatewayErrorCode, type ToolGatewayErrorEnvelope, allPublicToolNames, analyticalToolNames, apiKeyGrants, apiKeyValidationFailureSchema, apiKeyValidationSuccessSchema, apiKeyValidationTransport, cliToolNames, consumerToolPolicies, contractVersion, createOutlitClient, customerActivityWindows, customerBillingStatuses, customerFactCategories, customerFactIncludes, customerFactStatuses, customerFactTypes, customerIncludeSections, customerListOrderFields, customerSourceTypeAliasMap, customerSourceTypeAliases, customerSourceTypeInputs, customerSourceTypes, customerTimeframes, defaultToolNames, getPublicToolContract, ingestTransport, isOutlitToolsApiError, isPublicToolName, matchesGeneratedJsonSchema, normalizeCustomerSourceType, piToolNames, publicOpenApiTransports, publicToolContracts, publicToolNames, resolveCustomerContextSearchInput, schemaTables, sdkConsumerContractHash, sqlToolNames, timelineChannels, timelineTimeframes, toolGatewayErrorCodes, toolGatewayErrorSchema, toolGatewayTransport, unsupportedCustomerFactTypes, userJourneyStages, userListOrderFields, workspaceUserListOrderFields };
11086
+ export { type ApiKeyValidationFailure, type ApiKeyValidationSuccess, type AttentionItem, type AttentionItemResult, type AttentionItemSummary, type AttentionListResult, type CliToolName, type CustomerAnalyticsRow, type CustomerContextSearchInput, type CustomerCredit, type CustomerCreditsResult, type CustomerDetail, type CustomerDetailResult, type CustomerFeature, type CustomerFeaturesResult, type CustomerListItem, type CustomerListResult, type CustomerRelationship, type CustomerRelationshipResult, type CustomerSourceType, type CustomerSourceTypeInput, DEFAULT_OUTLIT_API_URL, type Feature, type FeatureArchiveResult, type FeatureCreateResult, type FeatureDefinition, type FeatureListResult, type FeatureRef, type JsonSchema, type JsonSchemaValue, OutlitToolsApiError, type OutlitToolsClient, type OutlitToolsClientOptions, type OutlitToolsFetch, type PiToolName, type PublicToolContract, type PublicToolName, type PublicToolResult, type RuntimeJsonSchema, type SearchArgsLike, type ToolGatewayErrorCode, type ToolGatewayErrorEnvelope, allPublicToolNames, analyticalToolNames, apiKeyGrants, apiKeyValidationFailureSchema, apiKeyValidationSuccessSchema, apiKeyValidationTransport, cliToolNames, consumerToolPolicies, contractVersion, createOutlitClient, customerActivityWindows, customerBillingStatuses, customerFactCategories, customerFactIncludes, customerFactStatuses, customerFactTypes, customerIncludeSections, customerListOrderFields, customerSourceTypeAliasMap, customerSourceTypeAliases, customerSourceTypeInputs, customerSourceTypes, customerTimeframes, defaultToolNames, getPublicToolContract, ingestTransport, isOutlitToolsApiError, isPublicToolName, matchesGeneratedJsonSchema, normalizeCustomerSourceType, piToolNames, publicOpenApiTransports, publicToolContracts, publicToolNames, resolveCustomerContextSearchInput, schemaTables, sdkConsumerContractHash, sqlToolNames, timelineChannels, timelineTimeframes, toolGatewayErrorCodes, toolGatewayErrorSchema, toolGatewayTransport, unsupportedCustomerFactTypes, userJourneyStages, userListOrderFields, workspaceUserListOrderFields };