airbyte-faros-destination 0.23.43 → 0.23.45

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.
@@ -36,6 +36,21 @@ class Workitems extends common_1.AzureWorkitemsConverter {
36
36
  const source = this.source;
37
37
  const WorkItem = record.record.data;
38
38
  const taskKey = { uid: String(WorkItem.id), source };
39
+ if (WorkItem.updateAdditionalFields === true) {
40
+ return [
41
+ {
42
+ model: 'tms_Task__Update',
43
+ record: {
44
+ updateOnly: true,
45
+ where: taskKey,
46
+ mask: ['additionalFields'],
47
+ patch: {
48
+ additionalFields: WorkItem.additionalFields,
49
+ },
50
+ },
51
+ },
52
+ ];
53
+ }
39
54
  const projectId = String(WorkItem.project.id);
40
55
  const creatorId = getNormalizedUserIdentifier(WorkItem.fields['System.CreatedBy']);
41
56
  // Track this work item for comment deletion
@@ -1 +1 @@
1
- {"version":3,"file":"workitems.js","sourceRoot":"","sources":["../../../src/converters/azure-workitems/workitems.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workitems.js","sourceRoot":"","sources":["../../../src/converters/azure-workitems/workitems.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FarosEnterpriseAiCreditUsage = void 0;
4
+ const lodash_1 = require("lodash");
4
5
  const vcs_1 = require("../common/vcs");
5
6
  const common_1 = require("./common");
6
7
  const faros_enterprise_premium_requests_1 = require("./faros_enterprise_premium_requests");
@@ -23,9 +24,11 @@ class FarosEnterpriseAiCreditUsage extends faros_enterprise_premium_requests_1.F
23
24
  }
24
25
  async convert(record, _ctx) {
25
26
  const data = record.record.data;
26
- const product = data.product?.trim().toLowerCase();
27
- if (!['copilot', 'copilot ai credits'].includes(product) || !data.username)
28
- return [];
27
+ const user = data.username || undefined;
28
+ const githubOrg = (0, lodash_1.toLower)(data.organization) || undefined;
29
+ const repository = githubOrg && data.repository
30
+ ? { org: githubOrg, name: (0, lodash_1.toLower)(data.repository) }
31
+ : undefined;
29
32
  const result = [];
30
33
  for (const [field, typeCategory, typeDetail] of METRICS) {
31
34
  const value = data[field];
@@ -34,13 +37,17 @@ class FarosEnterpriseAiCreditUsage extends faros_enterprise_premium_requests_1.F
34
37
  result.push(this.getAssistantMetric({
35
38
  date: data.date,
36
39
  organization: common_1.GitHubCommon.enterpriseUid(data.enterprise),
37
- user: data.username,
40
+ user,
38
41
  typeCategory,
39
42
  typeDetail,
40
43
  value,
41
44
  valueType: typeCategory === vcs_1.AssistantMetric.Custom ? 'Float' : 'Int',
42
45
  feature: data.sku,
43
46
  model: data.model,
47
+ // Rows billed to an org or repository rather than a user would
48
+ // otherwise share one identity per enterprise.
49
+ githubOrg: user ? undefined : githubOrg,
50
+ repository,
44
51
  }));
45
52
  }
46
53
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"faros_enterprise_ai_credit_usage.js","sourceRoot":"","sources":["../../../src/converters/github/faros_enterprise_ai_credit_usage.ts"],"names":[],"mappings":";;;AAGA,uCAA8C;AAE9C,qCAAsC;AACtC,2FAAmF;AAEnF,MAAM,OAAO,GAAG;IACd,CAAC,OAAO,EAAE,qBAAe,CAAC,WAAW,CAAC;IACtC,CAAC,QAAQ,EAAE,qBAAe,CAAC,YAAY,CAAC;IACxC,CAAC,YAAY,EAAE,qBAAe,CAAC,eAAe,CAAC;IAC/C,CAAC,aAAa,EAAE,qBAAe,CAAC,gBAAgB,CAAC;IACjD,CAAC,UAAU,EAAE,qBAAe,CAAC,MAAM,EAAE,eAAe,CAAC;IACrD,CAAC,cAAc,EAAE,qBAAe,CAAC,MAAM,EAAE,aAAa,CAAC;IACvD,CAAC,iBAAiB,EAAE,qBAAe,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAC7D,CAAC,YAAY,EAAE,qBAAe,CAAC,MAAM,EAAE,WAAW,CAAC;CAC3C,CAAC;AAEX,MAAa,4BAA6B,SAAQ,kEAA8B;IAAhF;;QACW,sBAAiB,GAAoC;YAC5D,qBAAqB;SACtB,CAAC;IA8BJ,CAAC;IA5BC,KAAK,CAAC,OAAO,CACX,MAAqB,EACrB,IAAmB;QAEnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAA+B,CAAC;QAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACnD,IAAI,CAAC,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ;YACxE,OAAO,EAAE,CAAC;QACZ,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,KAAK,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,CAAC,IAAI,OAAO,EAAE,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,SAAS;YACnE,MAAM,CAAC,IAAI,CACT,IAAI,CAAC,kBAAkB,CAAC;gBACtB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,YAAY,EAAE,qBAAY,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC;gBACzD,IAAI,EAAE,IAAI,CAAC,QAAQ;gBACnB,YAAY;gBACZ,UAAU;gBACV,KAAK;gBACL,SAAS,EAAE,YAAY,KAAK,qBAAe,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;gBACpE,OAAO,EAAE,IAAI,CAAC,GAAG;gBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC,CACH,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAjCD,oEAiCC"}
1
+ {"version":3,"file":"faros_enterprise_ai_credit_usage.js","sourceRoot":"","sources":["../../../src/converters/github/faros_enterprise_ai_credit_usage.ts"],"names":[],"mappings":";;;AAEA,mCAA+B;AAE/B,uCAA8C;AAE9C,qCAAsC;AACtC,2FAAmF;AAEnF,MAAM,OAAO,GAAG;IACd,CAAC,OAAO,EAAE,qBAAe,CAAC,WAAW,CAAC;IACtC,CAAC,QAAQ,EAAE,qBAAe,CAAC,YAAY,CAAC;IACxC,CAAC,YAAY,EAAE,qBAAe,CAAC,eAAe,CAAC;IAC/C,CAAC,aAAa,EAAE,qBAAe,CAAC,gBAAgB,CAAC;IACjD,CAAC,UAAU,EAAE,qBAAe,CAAC,MAAM,EAAE,eAAe,CAAC;IACrD,CAAC,cAAc,EAAE,qBAAe,CAAC,MAAM,EAAE,aAAa,CAAC;IACvD,CAAC,iBAAiB,EAAE,qBAAe,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAC7D,CAAC,YAAY,EAAE,qBAAe,CAAC,MAAM,EAAE,WAAW,CAAC;CAC3C,CAAC;AAEX,MAAa,4BAA6B,SAAQ,kEAA8B;IAAhF;;QACW,sBAAiB,GAAoC;YAC5D,qBAAqB;SACtB,CAAC;IAqCJ,CAAC;IAnCC,KAAK,CAAC,OAAO,CACX,MAAqB,EACrB,IAAmB;QAEnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAA+B,CAAC;QAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC;QACxC,MAAM,SAAS,GAAG,IAAA,gBAAO,EAAC,IAAI,CAAC,YAAY,CAAC,IAAI,SAAS,CAAC;QAC1D,MAAM,UAAU,GACd,SAAS,IAAI,IAAI,CAAC,UAAU;YAC1B,CAAC,CAAC,EAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,IAAA,gBAAO,EAAC,IAAI,CAAC,UAAU,CAAC,EAAC;YAClD,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,KAAK,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,CAAC,IAAI,OAAO,EAAE,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,SAAS;YACnE,MAAM,CAAC,IAAI,CACT,IAAI,CAAC,kBAAkB,CAAC;gBACtB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,YAAY,EAAE,qBAAY,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC;gBACzD,IAAI;gBACJ,YAAY;gBACZ,UAAU;gBACV,KAAK;gBACL,SAAS,EAAE,YAAY,KAAK,qBAAe,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;gBACpE,OAAO,EAAE,IAAI,CAAC,GAAG;gBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,+DAA+D;gBAC/D,+CAA+C;gBAC/C,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;gBACvC,UAAU;aACX,CAAC,CACH,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAxCD,oEAwCC"}
@@ -0,0 +1,9 @@
1
+ import { AirbyteRecord } from 'faros-airbyte-cdk';
2
+ import { DestinationModel, DestinationRecord, StreamContext } from '../converter';
3
+ import { GitHubConverter } from './common';
4
+ export declare class FarosEnterpriseBillingUsage extends GitHubConverter {
5
+ readonly destinationModels: ReadonlyArray<DestinationModel>;
6
+ private readonly seenAccounts;
7
+ id(record: AirbyteRecord): any;
8
+ convert(record: AirbyteRecord, _ctx: StreamContext): Promise<ReadonlyArray<DestinationRecord>>;
9
+ }
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FarosEnterpriseBillingUsage = void 0;
4
+ const lodash_1 = require("lodash");
5
+ const luxon_1 = require("luxon");
6
+ const ai_1 = require("../common/ai");
7
+ const common_1 = require("./common");
8
+ // AI credit lines are skipped: faros_enterprise_ai_credit_usage reports the
9
+ // same spend per user, model and repository
10
+ const LICENSE_UNIT = 'usermonths';
11
+ class FarosEnterpriseBillingUsage extends common_1.GitHubConverter {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.destinationModels = [
15
+ ai_1.AI_ACCOUNT_MODEL,
16
+ ai_1.AI_COST_MODEL,
17
+ ];
18
+ this.seenAccounts = new Set();
19
+ }
20
+ id(record) {
21
+ const item = record?.record?.data;
22
+ return item?.enterprise && item?.date ? costUid(item) : undefined;
23
+ }
24
+ async convert(record, _ctx) {
25
+ const item = record.record.data;
26
+ if (!item?.enterprise || !item.date)
27
+ return [];
28
+ if ((0, lodash_1.toLower)(item.unitType) !== LICENSE_UNIT)
29
+ return [];
30
+ const account = {
31
+ uid: common_1.GitHubCommon.enterpriseUid(item.enterprise),
32
+ source: this.source,
33
+ };
34
+ const result = [];
35
+ if (!this.seenAccounts.has(account.uid)) {
36
+ this.seenAccounts.add(account.uid);
37
+ result.push({ model: ai_1.AI_ACCOUNT_MODEL, record: account });
38
+ }
39
+ const day = luxon_1.DateTime.fromISO(item.date, { zone: 'utc' }).startOf('day');
40
+ result.push({
41
+ model: ai_1.AI_COST_MODEL,
42
+ record: {
43
+ uid: costUid(item),
44
+ source: this.source,
45
+ account,
46
+ project: null,
47
+ credential: null,
48
+ principal: null,
49
+ startedAt: day.toJSDate(),
50
+ endedAt: day.plus({ days: 1 }).toJSDate(),
51
+ lineItem: item.sku ?? null,
52
+ model: null,
53
+ // Net is what GitHub bills after any discount
54
+ amount: item.netAmount ?? null,
55
+ currency: 'USD',
56
+ quantity: item.quantity ?? null,
57
+ quantityUnit: item.unitType ?? null,
58
+ },
59
+ });
60
+ return result;
61
+ }
62
+ }
63
+ exports.FarosEnterpriseBillingUsage = FarosEnterpriseBillingUsage;
64
+ function costUid(item) {
65
+ return [
66
+ 'billing_usage',
67
+ (0, lodash_1.toLower)(item.enterprise),
68
+ item.date,
69
+ (0, lodash_1.toLower)(item.product),
70
+ (0, lodash_1.toLower)(item.sku),
71
+ (0, lodash_1.toLower)(item.organizationName ?? ''),
72
+ (0, lodash_1.toLower)(item.repositoryName ?? ''),
73
+ item.costCenterId ?? '',
74
+ ].join(':');
75
+ }
76
+ //# sourceMappingURL=faros_enterprise_billing_usage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"faros_enterprise_billing_usage.js","sourceRoot":"","sources":["../../../src/converters/github/faros_enterprise_billing_usage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { AirbyteRecord } from 'faros-airbyte-cdk';
2
+ import { DestinationModel, DestinationRecord, StreamContext } from '../converter';
3
+ import { GitHubConverter } from './common';
4
+ export declare class FarosEnterpriseBudgets extends GitHubConverter {
5
+ readonly destinationModels: ReadonlyArray<DestinationModel>;
6
+ private readonly seenDimensions;
7
+ id(record: AirbyteRecord): any;
8
+ convert(record: AirbyteRecord, _ctx: StreamContext): Promise<ReadonlyArray<DestinationRecord>>;
9
+ private pushDimension;
10
+ }
@@ -0,0 +1,177 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FarosEnterpriseBudgets = void 0;
4
+ const lodash_1 = require("lodash");
5
+ const luxon_1 = require("luxon");
6
+ const ai_1 = require("../common/ai");
7
+ const common_1 = require("./common");
8
+ // Metered AI credit SKUs, budgeted in USD. License SKUs and the copilot
9
+ // product budget count licenses instead. See
10
+ // https://docs.github.com/en/enterprise-cloud@latest/billing/reference/product-and-sku-names
11
+ const AI_SKUS = new Set([
12
+ 'ai_credits',
13
+ 'premium_requests',
14
+ 'copilot_ai_credit',
15
+ 'coding_agent_ai_credit',
16
+ 'code_quality_ai_credit',
17
+ 'spark_ai_credits',
18
+ ]);
19
+ const MULTI_USER_SCOPES = new Set([
20
+ 'multi_user_customer',
21
+ 'multi_user_cost_center',
22
+ ]);
23
+ function scopeMapping(scope, entity) {
24
+ switch (scope) {
25
+ case 'enterprise':
26
+ return { category: 'Account', detail: null, pooled: true };
27
+ case 'organization':
28
+ case 'cost_center':
29
+ return { category: 'Group', detail: scope, pooled: true };
30
+ case 'multi_user_customer':
31
+ return { category: 'Account', detail: null, pooled: false };
32
+ case 'multi_user_cost_center':
33
+ return { category: 'Group', detail: 'cost_center', pooled: false };
34
+ case 'user':
35
+ return { category: 'Principal', detail: null, pooled: false };
36
+ default:
37
+ return {
38
+ category: 'Custom',
39
+ detail: (entity ? `${scope}:${entity}` : scope) ?? null,
40
+ pooled: null,
41
+ };
42
+ }
43
+ }
44
+ function groupUid(item) {
45
+ if (!item.budget_entity_name)
46
+ return null;
47
+ switch (item.budget_scope) {
48
+ case 'organization':
49
+ return `organization:${(0, lodash_1.toLower)(item.budget_entity_name)}`;
50
+ // The budgets API gives cost centers by name only
51
+ case 'cost_center':
52
+ case 'multi_user_cost_center':
53
+ return `cost_center:${(0, lodash_1.toLower)(item.budget_entity_name)}`;
54
+ default:
55
+ return null;
56
+ }
57
+ }
58
+ class FarosEnterpriseBudgets extends common_1.GitHubConverter {
59
+ constructor() {
60
+ super(...arguments);
61
+ this.destinationModels = [
62
+ ai_1.AI_ACCOUNT_MODEL,
63
+ ai_1.AI_GROUP_MODEL,
64
+ ai_1.AI_PRINCIPAL_MODEL,
65
+ ai_1.AI_LIMIT_MODEL,
66
+ ];
67
+ this.seenDimensions = new Set();
68
+ }
69
+ id(record) {
70
+ const item = record?.record?.data;
71
+ return item?.level && item?.id
72
+ ? [item.level, item.id, item.user ?? ''].join(':')
73
+ : undefined;
74
+ }
75
+ async convert(record, _ctx) {
76
+ const item = record.record.data;
77
+ if (!item?.enterprise ||
78
+ !item.id ||
79
+ !AI_SKUS.has((0, lodash_1.toLower)(item.budget_product_sku)))
80
+ return [];
81
+ const isUserState = item.level === 'user_state';
82
+ // The source keeps an override only when the overriding budget reports
83
+ // this user itself
84
+ if (isUserState && item.override_budget_id)
85
+ return [];
86
+ const perUser = isUserState || item.budget_scope === 'user';
87
+ if (perUser && !item.user)
88
+ return [];
89
+ // Metered billing periods are UTC calendar months
90
+ const periodStart = luxon_1.DateTime.fromISO(item.observed_at, {
91
+ zone: 'utc',
92
+ }).startOf('month');
93
+ // Individual budgets are removed at the end of their expiration date
94
+ const expiresAt = item.expires_at
95
+ ? luxon_1.DateTime.fromISO(item.expires_at, { zone: 'utc' }).plus({ days: 1 })
96
+ : null;
97
+ // A budget that expired before this period no longer applies
98
+ if (expiresAt?.isValid && expiresAt <= periodStart)
99
+ return [];
100
+ const periodEnd = luxon_1.DateTime.min(periodStart.plus({ months: 1 }), ...(expiresAt?.isValid ? [expiresAt] : []));
101
+ const account = {
102
+ uid: common_1.GitHubCommon.enterpriseUid(item.enterprise),
103
+ source: this.source,
104
+ };
105
+ const result = [];
106
+ this.pushDimension(result, ai_1.AI_ACCOUNT_MODEL, account);
107
+ let group = null;
108
+ const groupId = groupUid(item);
109
+ if (groupId) {
110
+ group = { uid: groupId, account };
111
+ this.pushDimension(result, ai_1.AI_GROUP_MODEL, {
112
+ ...group,
113
+ name: item.budget_entity_name,
114
+ });
115
+ }
116
+ let principal = null;
117
+ if (perUser) {
118
+ principal = { uid: item.user, account };
119
+ // Key fields only, so a missing email never clears one set elsewhere
120
+ this.pushDimension(result, ai_1.AI_PRINCIPAL_MODEL, {
121
+ ...principal,
122
+ });
123
+ }
124
+ const budgetScope = scopeMapping(item.budget_scope, item.budget_entity_name);
125
+ const scope = isUserState
126
+ ? { category: 'Principal', detail: null }
127
+ : { category: budgetScope.category, detail: budgetScope.detail };
128
+ const inheritedFrom = isUserState
129
+ ? { category: budgetScope.category, detail: group?.uid ?? null }
130
+ : null;
131
+ // A per-member default has no single consumption to report
132
+ const isMemberDefault = !isUserState && MULTI_USER_SCOPES.has(item.budget_scope);
133
+ const consumed = isMemberDefault ? null : (item.consumed_amount ?? null);
134
+ const amount = isUserState ? item.target_amount : item.budget_amount;
135
+ result.push({
136
+ model: ai_1.AI_LIMIT_MODEL,
137
+ record: {
138
+ uid: [
139
+ 'budget',
140
+ item.id,
141
+ ...(isUserState ? [item.user] : []),
142
+ 'monthly',
143
+ periodStart.toISODate(),
144
+ ].join(':'),
145
+ source: this.source,
146
+ type: { category: 'Spend', detail: item.budget_product_sku ?? null },
147
+ scope,
148
+ inheritedFrom,
149
+ model: null,
150
+ amount: Number.isFinite(amount) ? amount : null,
151
+ unit: 'USD',
152
+ consumed,
153
+ period: 'monthly',
154
+ periodStartedAt: periodStart.toJSDate(),
155
+ periodEndedAt: periodEnd.toJSDate(),
156
+ pooled: isUserState ? false : budgetScope.pooled,
157
+ enforced: item.prevent_further_usage ?? null,
158
+ account,
159
+ project: null,
160
+ group,
161
+ principal,
162
+ credential: null,
163
+ },
164
+ });
165
+ return result;
166
+ }
167
+ pushDimension(result, model, record) {
168
+ // Groups and principals are keyed per account, and slices span enterprises
169
+ const key = [model, record.account?.uid ?? '', record.uid].join(':');
170
+ if (this.seenDimensions.has(key))
171
+ return;
172
+ this.seenDimensions.add(key);
173
+ result.push({ model, record });
174
+ }
175
+ }
176
+ exports.FarosEnterpriseBudgets = FarosEnterpriseBudgets;
177
+ //# sourceMappingURL=faros_enterprise_budgets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"faros_enterprise_budgets.js","sourceRoot":"","sources":["../../../src/converters/github/faros_enterprise_budgets.ts"],"names":[],"mappings":"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"}
@@ -5,13 +5,18 @@ import { GitHubConverter } from './common';
5
5
  interface AssistantMetricConfig {
6
6
  date: string;
7
7
  organization: string;
8
- user: string;
8
+ user?: string;
9
9
  typeCategory: AssistantMetric;
10
10
  typeDetail?: string;
11
11
  value: number;
12
12
  valueType: string;
13
13
  feature: string;
14
14
  model: string;
15
+ githubOrg?: string;
16
+ repository?: {
17
+ org: string;
18
+ name: string;
19
+ };
15
20
  }
16
21
  export declare class FarosEnterprisePremiumRequests extends GitHubConverter {
17
22
  readonly destinationModels: ReadonlyArray<DestinationModel>;
@@ -45,7 +45,7 @@ class FarosEnterprisePremiumRequests extends common_1.GitHubConverter {
45
45
  }));
46
46
  }
47
47
  getAssistantMetric(config) {
48
- const { date, organization, user, typeCategory, typeDetail, value, valueType, feature, model, } = config;
48
+ const { date, organization, user, typeCategory, typeDetail, value, valueType, feature, model, githubOrg, repository, } = config;
49
49
  const startedAt = faros_js_client_1.Utils.toDate(date);
50
50
  const endedAt = faros_js_client_1.Utils.toDate(startedAt.getTime() + 24 * 60 * 60 * 1000);
51
51
  const source = this.streamName.source;
@@ -67,6 +67,11 @@ class FarosEnterprisePremiumRequests extends common_1.GitHubConverter {
67
67
  ...[
68
68
  { key: 'feature', value: feature },
69
69
  { key: 'model', value: model },
70
+ { key: 'organization', value: githubOrg },
71
+ {
72
+ key: 'repository',
73
+ value: repository && `${repository.org}/${repository.name}`,
74
+ },
70
75
  ]
71
76
  .filter((v) => !(0, lodash_1.isNil)(v.value))
72
77
  .map((v) => `${v.key}:${v.value}`))
@@ -74,11 +79,17 @@ class FarosEnterprisePremiumRequests extends common_1.GitHubConverter {
74
79
  source,
75
80
  startedAt,
76
81
  endedAt,
77
- type: { category: typeCategory, detail: typeDetail },
82
+ type: {
83
+ category: typeCategory,
84
+ ...(!(0, lodash_1.isNil)(typeDetail) && { detail: typeDetail }),
85
+ },
78
86
  valueType,
79
87
  value: String(value),
80
88
  organization: { uid: organization, source },
81
- user: { uid: user, source },
89
+ ...(user && { user: { uid: user, source } }),
90
+ ...(repository && {
91
+ repository: common_1.GitHubCommon.repoKey(repository.org, repository.name, source),
92
+ }),
82
93
  tool: { category: vcs_1.VCSToolCategory.GitHubCopilot },
83
94
  feature,
84
95
  model,
@@ -1 +1 @@
1
- {"version":3,"file":"faros_enterprise_premium_requests.js","sourceRoot":"","sources":["../../../src/converters/github/faros_enterprise_premium_requests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"faros_enterprise_premium_requests.js","sourceRoot":"","sources":["../../../src/converters/github/faros_enterprise_premium_requests.ts"],"names":[],"mappings":";;;AAEA,qDAAsC;AACtC,mCAA6B;AAE7B,uCAA+D;AAE/D,qCAAuD;AAgBvD,MAAa,8BAA+B,SAAQ,wBAAe;IAAnE;;QACW,sBAAiB,GAAoC;YAC5D,qBAAqB;SACtB,CAAC;IAuHJ,CAAC;IArHC,KAAK,CAAC,OAAO,CACX,MAAqB,EACrB,IAAmB;QAEnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAqC,CAAC;QAEjE,4BAA4B;QAC5B,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,4CAA4C;QAC5C,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7C,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,OAAO,GAAG;YACd;gBACE,UAAU,EAAE,eAAe;gBAC3B,KAAK,EAAE,IAAI,CAAC,aAAa;gBACzB,SAAS,EAAE,OAAO;aACnB;YACD,EAAC,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAC;YACxE,EAAC,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAC;YACxE,EAAC,UAAU,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAC;SACrE,CAAC;QAEF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAC5B,IAAI,CAAC,kBAAkB,CAAC;YACtB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,YAAY,EAAE,qBAAY,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC;YACzD,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,YAAY,EAAE,qBAAe,CAAC,MAAM;YACpC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,IAAI,CAAC,GAAG;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CACH,CAAC;IACJ,CAAC;IAES,kBAAkB,CAC1B,MAA6B;QAE7B,MAAM,EACJ,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,YAAY,EACZ,UAAU,EACV,KAAK,EACL,SAAS,EACT,OAAO,EACP,KAAK,EACL,SAAS,EACT,UAAU,GACX,GAAG,MAAM,CAAC;QAEX,MAAM,SAAS,GAAG,uBAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,uBAAK,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QACxE,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAEtC,OAAO;YACL,KAAK,EAAE,qBAAqB;YAC5B,MAAM,EAAE;gBACN,GAAG,EAAE,qBAAY,CAAC,MAAM,CACtB,EAAE;qBACC,MAAM;gBACL,kCAAkC;gBAClC,GAAG;oBACD,qBAAe,CAAC,aAAa;oBAC7B,YAAY;oBACZ,UAAU;oBACV,IAAI;oBACJ,YAAY;oBACZ,IAAI;iBACL;gBACD,8BAA8B;gBAC9B,GAAG;oBACD,EAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAC;oBAChC,EAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAC;oBAC5B,EAAC,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,EAAC;oBACvC;wBACE,GAAG,EAAE,YAAY;wBACjB,KAAK,EAAE,UAAU,IAAI,GAAG,UAAU,CAAC,GAAG,IAAI,UAAU,CAAC,IAAI,EAAE;qBAC5D;iBACF;qBACE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAA,cAAK,EAAC,CAAC,CAAC,KAAK,CAAC,CAAC;qBAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CACrC;qBACA,IAAI,CAAC,IAAI,CAAC,CACd;gBACD,MAAM;gBACN,SAAS;gBACT,OAAO;gBACP,IAAI,EAAE;oBACJ,QAAQ,EAAE,YAAY;oBACtB,GAAG,CAAC,CAAC,IAAA,cAAK,EAAC,UAAU,CAAC,IAAI,EAAC,MAAM,EAAE,UAAU,EAAC,CAAC;iBAChD;gBACD,SAAS;gBACT,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;gBACpB,YAAY,EAAE,EAAC,GAAG,EAAE,YAAY,EAAE,MAAM,EAAC;gBACzC,GAAG,CAAC,IAAI,IAAI,EAAC,IAAI,EAAE,EAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAC,EAAC,CAAC;gBACxC,GAAG,CAAC,UAAU,IAAI;oBAChB,UAAU,EAAE,qBAAY,CAAC,OAAO,CAC9B,UAAU,CAAC,GAAG,EACd,UAAU,CAAC,IAAI,EACf,MAAM,CACP;iBACF,CAAC;gBACF,IAAI,EAAE,EAAC,QAAQ,EAAE,qBAAe,CAAC,aAAa,EAAC;gBAC/C,OAAO;gBACP,KAAK;aACN;SACF,CAAC;IACJ,CAAC;CACF;AA1HD,wEA0HC"}
@@ -25,6 +25,7 @@ const jsonata_1 = require("./converters/jsonata");
25
25
  const destination_logger_1 = require("./destination-logger");
26
26
  const record_redactor_1 = require("./record-redactor");
27
27
  const sync_1 = __importDefault(require("./sync"));
28
+ const task_field_update_client_1 = require("./task-field-update-client");
28
29
  const PACKAGE_ROOT = path_1.default.join(__dirname, '..');
29
30
  const BASE_RESOURCES_DIR = path_1.default.join(PACKAGE_ROOT, 'resources');
30
31
  const DEFAULT_API_URL = 'https://prod.api.faros.ai';
@@ -213,7 +214,7 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
213
214
  return await client.gqlSchema(graph);
214
215
  },
215
216
  };
216
- this.graphQLClient = new faros_js_client_1.GraphQLClient(this.logger, schemaLoader, backend, config.edition_configs.cloud_graphql_upsert_batch_size, config.edition_configs.cloud_graphql_batch_size, true, config.reset_page_size);
217
+ this.graphQLClient = new task_field_update_client_1.TaskFieldUpdateClient(this.logger, schemaLoader, backend, config.edition_configs.cloud_graphql_upsert_batch_size, config.edition_configs.cloud_graphql_batch_size, true, config.reset_page_size);
217
218
  }
218
219
  catch (e) {
219
220
  throw new verror_1.VError(`Failed to initialize GraphQLClient. Error: ${e}`);
@@ -445,7 +446,7 @@ class FarosDestination extends faros_airbyte_cdk_1.AirbyteDestination {
445
446
  return originMap[origin] ?? origin;
446
447
  };
447
448
  }
448
- const writer = new faros_js_client_1.GraphQLWriter(graphQLClient, acceptInputRecordsOrigin
449
+ const writer = new task_field_update_client_1.TaskFieldUpdateWriter(graphQLClient, acceptInputRecordsOrigin
449
450
  ? {
450
451
  getOrigin: (record) => {
451
452
  if (!record.origin) {