weave-typescript 0.51.2 → 0.52.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.
Files changed (185) hide show
  1. package/dist/google/protobuf/duration.pb.d.ts +99 -0
  2. package/dist/google/protobuf/duration.pb.js +93 -0
  3. package/dist/index.d.ts +1 -0
  4. package/dist/index.js +2 -1
  5. package/dist/weave/authz/v1/index.d.ts +1 -0
  6. package/dist/weave/authz/v1/index.js +38 -0
  7. package/dist/weave/authz/v1/options.pb.d.ts +52 -0
  8. package/dist/weave/authz/v1/options.pb.js +403 -0
  9. package/dist/weave/filter/v1/index.d.ts +1 -0
  10. package/dist/weave/filter/v1/index.js +38 -0
  11. package/dist/{weaveapi/atc/v1/message.pb.d.ts → weave/filter/v1/options.pb.d.ts} +33 -21
  12. package/dist/weave/filter/v1/options.pb.js +417 -0
  13. package/dist/weave/index.d.ts +2 -0
  14. package/dist/weave/index.js +39 -0
  15. package/dist/weaveapi/agent/v1/agent.pb.d.ts +137 -188
  16. package/dist/weaveapi/agent/v1/agent.pb.js +891 -2151
  17. package/dist/weaveapi/agent/v1/index.d.ts +1 -1
  18. package/dist/weaveapi/agent/v1/index.js +2 -2
  19. package/dist/weaveapi/agent/v1/run.pb.d.ts +289 -0
  20. package/dist/weaveapi/agent/v1/run.pb.js +2763 -0
  21. package/dist/weaveapi/auth/v1/auth.pb.d.ts +67 -14
  22. package/dist/weaveapi/auth/v1/auth.pb.js +829 -89
  23. package/dist/weaveapi/auth/v1/index.d.ts +4 -1
  24. package/dist/weaveapi/auth/v1/index.js +5 -2
  25. package/dist/weaveapi/auth/v1/{service.pb.d.ts → organization_admin.pb.d.ts} +39 -530
  26. package/dist/weaveapi/auth/v1/{service.pb.js → organization_admin.pb.js} +2978 -5812
  27. package/dist/weaveapi/auth/v1/personal_access_token.pb.d.ts +114 -0
  28. package/dist/weaveapi/auth/v1/personal_access_token.pb.js +750 -0
  29. package/dist/weaveapi/auth/v1/profile.pb.d.ts +161 -0
  30. package/dist/weaveapi/auth/v1/profile.pb.js +1007 -0
  31. package/dist/weaveapi/auth/v1/session.pb.d.ts +460 -0
  32. package/dist/weaveapi/auth/v1/session.pb.js +3544 -0
  33. package/dist/weaveapi/chat/v1/chat.pb.d.ts +377 -149
  34. package/dist/weaveapi/chat/v1/chat.pb.js +3492 -1614
  35. package/dist/weaveapi/chat/v1/index.d.ts +0 -1
  36. package/dist/weaveapi/chat/v1/index.js +1 -2
  37. package/dist/weaveapi/consolidation/v1/consolidation.pb.d.ts +95 -0
  38. package/dist/weaveapi/consolidation/v1/consolidation.pb.js +770 -1
  39. package/dist/weaveapi/consolidation/v1/index.d.ts +0 -1
  40. package/dist/weaveapi/consolidation/v1/index.js +1 -2
  41. package/dist/weaveapi/content/v1/content.pb.d.ts +63 -0
  42. package/dist/weaveapi/content/v1/content.pb.js +470 -0
  43. package/dist/weaveapi/content/v1/index.d.ts +1 -0
  44. package/dist/weaveapi/content/v1/index.js +38 -0
  45. package/dist/weaveapi/gateway/v1/gateway.pb.d.ts +247 -523
  46. package/dist/weaveapi/gateway/v1/gateway.pb.js +1648 -5783
  47. package/dist/weaveapi/gateway/v1/index.d.ts +0 -1
  48. package/dist/weaveapi/gateway/v1/index.js +1 -2
  49. package/dist/weaveapi/index.d.ts +5 -5
  50. package/dist/weaveapi/index.js +6 -6
  51. package/dist/weaveapi/inference/v1/generate.pb.d.ts +120 -0
  52. package/dist/weaveapi/inference/v1/generate.pb.js +1159 -0
  53. package/dist/weaveapi/inference/v1/index.d.ts +4 -0
  54. package/dist/weaveapi/{provider → inference}/v1/index.js +4 -2
  55. package/dist/weaveapi/{model → inference}/v1/model.pb.d.ts +52 -15
  56. package/dist/weaveapi/{model → inference}/v1/model.pb.js +529 -116
  57. package/dist/weaveapi/{model/v1/service.pb.d.ts → inference/v1/model_route.pb.d.ts} +182 -110
  58. package/dist/weaveapi/{model/v1/service.pb.js → inference/v1/model_route.pb.js} +2197 -1061
  59. package/dist/weaveapi/inference/v1/provider.pb.d.ts +264 -0
  60. package/dist/weaveapi/inference/v1/provider.pb.js +2590 -0
  61. package/dist/weaveapi/ingestion/v1/index.d.ts +0 -2
  62. package/dist/weaveapi/ingestion/v1/index.js +1 -3
  63. package/dist/weaveapi/ingestion/v1/ingestion.pb.d.ts +543 -0
  64. package/dist/weaveapi/ingestion/v1/ingestion.pb.js +5550 -16
  65. package/dist/weaveapi/initialization/v1/index.d.ts +1 -0
  66. package/dist/weaveapi/initialization/v1/index.js +38 -0
  67. package/dist/weaveapi/initialization/v1/initialization.pb.d.ts +99 -0
  68. package/dist/weaveapi/initialization/v1/initialization.pb.js +510 -0
  69. package/dist/weaveapi/organization/v1/index.d.ts +0 -1
  70. package/dist/weaveapi/organization/v1/index.js +1 -2
  71. package/dist/weaveapi/organization/v1/organization.pb.d.ts +241 -0
  72. package/dist/weaveapi/organization/v1/organization.pb.js +1838 -1
  73. package/dist/weaveapi/reporting/index.d.ts +1 -0
  74. package/dist/weaveapi/reporting/index.js +38 -0
  75. package/dist/weaveapi/{task → reporting}/v1/index.d.ts +1 -1
  76. package/dist/weaveapi/{model → reporting}/v1/index.js +2 -2
  77. package/dist/weaveapi/reporting/v1/service.pb.d.ts +38 -0
  78. package/dist/weaveapi/reporting/v1/service.pb.js +167 -0
  79. package/dist/weaveapi/reporting/v1/usage.pb.d.ts +150 -0
  80. package/dist/weaveapi/reporting/v1/usage.pb.js +1837 -0
  81. package/dist/weaveapi/retrieval/v1/index.d.ts +0 -1
  82. package/dist/weaveapi/retrieval/v1/index.js +1 -2
  83. package/dist/weaveapi/retrieval/v1/retrieval.pb.d.ts +96 -2
  84. package/dist/weaveapi/retrieval/v1/retrieval.pb.js +690 -10
  85. package/dist/weaveapi/tool/index.d.ts +1 -0
  86. package/dist/weaveapi/tool/index.js +38 -0
  87. package/dist/weaveapi/tool/v1/index.d.ts +1 -0
  88. package/dist/weaveapi/tool/v1/index.js +38 -0
  89. package/dist/weaveapi/tool/v1/tool.pb.d.ts +370 -0
  90. package/dist/weaveapi/tool/v1/tool.pb.js +2717 -0
  91. package/dist/weaveapi/workflow/v1/index.d.ts +1 -1
  92. package/dist/weaveapi/workflow/v1/index.js +2 -2
  93. package/dist/weaveapi/workflow/v1/run.pb.d.ts +244 -0
  94. package/dist/weaveapi/workflow/v1/run.pb.js +2084 -0
  95. package/dist/weaveapi/workflow/v1/workflow.pb.d.ts +122 -275
  96. package/dist/weaveapi/workflow/v1/workflow.pb.js +790 -3261
  97. package/dist/weavesql/weavedb/agent_sql.d.ts +173 -477
  98. package/dist/weavesql/weavedb/agent_sql.js +281 -758
  99. package/dist/weavesql/weavedb/authorization_outbox_sql.d.ts +261 -0
  100. package/dist/weavesql/weavedb/authorization_outbox_sql.js +445 -0
  101. package/dist/weavesql/weavedb/chat_sql.d.ts +103 -345
  102. package/dist/weavesql/weavedb/chat_sql.js +312 -597
  103. package/dist/weavesql/weavedb/document_consolidation_sql.d.ts +217 -0
  104. package/dist/weavesql/weavedb/document_consolidation_sql.js +486 -0
  105. package/dist/weavesql/weavedb/document_ingestion_sql.d.ts +1433 -0
  106. package/dist/weavesql/weavedb/document_ingestion_sql.js +3488 -0
  107. package/dist/weavesql/weavedb/document_retrieval_sql.d.ts +314 -0
  108. package/dist/weavesql/weavedb/document_retrieval_sql.js +965 -0
  109. package/dist/weavesql/weavedb/document_table_sql.d.ts +6 -6
  110. package/dist/weavesql/weavedb/document_table_sql.js +12 -12
  111. package/dist/weavesql/weavedb/identity_sql.d.ts +1014 -0
  112. package/dist/weavesql/weavedb/identity_sql.js +1811 -0
  113. package/dist/weavesql/weavedb/inference_model_route_sql.d.ts +161 -0
  114. package/dist/weavesql/weavedb/inference_model_route_sql.js +408 -0
  115. package/dist/weavesql/weavedb/inference_provider_sql.d.ts +125 -0
  116. package/dist/weavesql/weavedb/inference_provider_sql.js +228 -0
  117. package/dist/weavesql/weavedb/initialization_sql.d.ts +15 -0
  118. package/dist/weavesql/weavedb/initialization_sql.js +33 -0
  119. package/dist/weavesql/weavedb/model_catalog_sql.d.ts +6 -6
  120. package/dist/weavesql/weavedb/model_catalog_sql.js +6 -6
  121. package/dist/weavesql/weavedb/organization_sql.d.ts +22 -102
  122. package/dist/weavesql/weavedb/organization_sql.js +54 -262
  123. package/dist/weavesql/weavedb/tool_sql.d.ts +209 -0
  124. package/dist/weavesql/weavedb/tool_sql.js +407 -0
  125. package/dist/weavesql/weavedb/usage_sql.d.ts +356 -0
  126. package/dist/weavesql/weavedb/usage_sql.js +568 -0
  127. package/dist/weavesql/weavedb/workflow_sql.d.ts +159 -546
  128. package/dist/weavesql/weavedb/workflow_sql.js +281 -909
  129. package/package.json +2 -2
  130. package/dist/weaveapi/agent/v1/service.pb.d.ts +0 -397
  131. package/dist/weaveapi/agent/v1/service.pb.js +0 -3152
  132. package/dist/weaveapi/atc/v1/event.pb.d.ts +0 -134
  133. package/dist/weaveapi/atc/v1/event.pb.js +0 -1124
  134. package/dist/weaveapi/atc/v1/index.d.ts +0 -5
  135. package/dist/weaveapi/atc/v1/index.js +0 -42
  136. package/dist/weaveapi/atc/v1/message.pb.js +0 -287
  137. package/dist/weaveapi/atc/v1/process.pb.d.ts +0 -91
  138. package/dist/weaveapi/atc/v1/process.pb.js +0 -658
  139. package/dist/weaveapi/atc/v1/run.pb.d.ts +0 -71
  140. package/dist/weaveapi/atc/v1/run.pb.js +0 -525
  141. package/dist/weaveapi/atc/v1/service.pb.d.ts +0 -472
  142. package/dist/weaveapi/atc/v1/service.pb.js +0 -3093
  143. package/dist/weaveapi/chat/v1/service.pb.d.ts +0 -345
  144. package/dist/weaveapi/chat/v1/service.pb.js +0 -2545
  145. package/dist/weaveapi/consolidation/v1/service.pb.d.ts +0 -93
  146. package/dist/weaveapi/consolidation/v1/service.pb.js +0 -427
  147. package/dist/weaveapi/gateway/v1/service.pb.d.ts +0 -235
  148. package/dist/weaveapi/gateway/v1/service.pb.js +0 -651
  149. package/dist/weaveapi/ingestion/v1/service.pb.d.ts +0 -420
  150. package/dist/weaveapi/ingestion/v1/service.pb.js +0 -2311
  151. package/dist/weaveapi/ingestion/v1/table.pb.d.ts +0 -121
  152. package/dist/weaveapi/ingestion/v1/table.pb.js +0 -1478
  153. package/dist/weaveapi/model/v1/index.d.ts +0 -2
  154. package/dist/weaveapi/organization/v1/service.pb.d.ts +0 -261
  155. package/dist/weaveapi/organization/v1/service.pb.js +0 -1561
  156. package/dist/weaveapi/project/v1/index.d.ts +0 -2
  157. package/dist/weaveapi/project/v1/index.js +0 -39
  158. package/dist/weaveapi/project/v1/project.pb.d.ts +0 -105
  159. package/dist/weaveapi/project/v1/project.pb.js +0 -1004
  160. package/dist/weaveapi/project/v1/service.pb.d.ts +0 -247
  161. package/dist/weaveapi/project/v1/service.pb.js +0 -1994
  162. package/dist/weaveapi/provider/v1/index.d.ts +0 -2
  163. package/dist/weaveapi/provider/v1/provider.pb.d.ts +0 -137
  164. package/dist/weaveapi/provider/v1/provider.pb.js +0 -1000
  165. package/dist/weaveapi/provider/v1/service.pb.d.ts +0 -223
  166. package/dist/weaveapi/provider/v1/service.pb.js +0 -1888
  167. package/dist/weaveapi/retrieval/v1/service.pb.d.ts +0 -93
  168. package/dist/weaveapi/retrieval/v1/service.pb.js +0 -385
  169. package/dist/weaveapi/task/v1/index.js +0 -39
  170. package/dist/weaveapi/task/v1/service.pb.d.ts +0 -172
  171. package/dist/weaveapi/task/v1/service.pb.js +0 -1436
  172. package/dist/weaveapi/task/v1/task.pb.d.ts +0 -85
  173. package/dist/weaveapi/task/v1/task.pb.js +0 -802
  174. package/dist/weaveapi/workflow/v1/service.pb.d.ts +0 -392
  175. package/dist/weaveapi/workflow/v1/service.pb.js +0 -3146
  176. /package/dist/{weaveapi/atc → weave/authz}/index.d.ts +0 -0
  177. /package/dist/{weaveapi/atc → weave/authz}/index.js +0 -0
  178. /package/dist/{weaveapi/model → weave/filter}/index.d.ts +0 -0
  179. /package/dist/{weaveapi/model → weave/filter}/index.js +0 -0
  180. /package/dist/weaveapi/{project → content}/index.d.ts +0 -0
  181. /package/dist/weaveapi/{project → content}/index.js +0 -0
  182. /package/dist/weaveapi/{provider → inference}/index.d.ts +0 -0
  183. /package/dist/weaveapi/{provider → inference}/index.js +0 -0
  184. /package/dist/weaveapi/{task → initialization}/index.d.ts +0 -0
  185. /package/dist/weaveapi/{task → initialization}/index.js +0 -0
@@ -0,0 +1,568 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listAgentRunUsageBackfillSourceRowsQuery = exports.listUsageTransactionsForBackfillAuditQuery = exports.getUsageTransactionBySourceQuery = exports.upsertUsageTransactionQuery = exports.insertUsageTransactionQuery = void 0;
4
+ exports.insertUsageTransaction = insertUsageTransaction;
5
+ exports.upsertUsageTransaction = upsertUsageTransaction;
6
+ exports.getUsageTransactionBySource = getUsageTransactionBySource;
7
+ exports.listUsageTransactionsForBackfillAudit = listUsageTransactionsForBackfillAudit;
8
+ exports.listAgentRunUsageBackfillSourceRows = listAgentRunUsageBackfillSourceRows;
9
+ exports.insertUsageTransactionQuery = `-- name: InsertUsageTransaction :one
10
+ INSERT INTO weave.usage_transactions (
11
+ id,
12
+ occurred_at,
13
+ bucket_hour,
14
+ organization_id,
15
+ actor_user_id,
16
+ provider_configuration_id,
17
+ provider_kind,
18
+ approved_model_id,
19
+ resolved_model_id,
20
+ root_agent_id,
21
+ agent_id,
22
+ agent_run_id,
23
+ agent_run_event_row_id,
24
+ agent_run_event_id,
25
+ agent_run_event_sequence,
26
+ agent_run_event_kind,
27
+ chat_session_id,
28
+ chat_message_id,
29
+ workflow_key,
30
+ feature,
31
+ feature_detail,
32
+ operation,
33
+ input_tokens,
34
+ input_cache_read_tokens,
35
+ input_cache_write_tokens,
36
+ cached_input_tokens,
37
+ output_tokens,
38
+ output_reasoning_tokens,
39
+ total_tokens,
40
+ token_breakdown_status,
41
+ input_cost_micros,
42
+ input_cache_read_cost_micros,
43
+ input_cache_write_cost_micros,
44
+ cached_input_cost_micros,
45
+ output_cost_micros,
46
+ output_reasoning_cost_micros,
47
+ total_cost_micros,
48
+ unpriced_tokens,
49
+ currency,
50
+ pricing_status,
51
+ pricing_source,
52
+ input_price_per_million_micros,
53
+ input_cache_read_price_per_million_micros,
54
+ input_cache_write_price_per_million_micros,
55
+ output_price_per_million_micros,
56
+ source_event_key,
57
+ source_metadata
58
+ ) VALUES (
59
+ $1,
60
+ $2,
61
+ $3,
62
+ $4,
63
+ $5::uuid,
64
+ $6::uuid,
65
+ $7,
66
+ $8,
67
+ $9,
68
+ $10::uuid,
69
+ $11::uuid,
70
+ $12,
71
+ $13::uuid,
72
+ $14,
73
+ $15,
74
+ $16,
75
+ $17::uuid,
76
+ $18::uuid,
77
+ $19::text,
78
+ $20,
79
+ $21,
80
+ $22,
81
+ $23,
82
+ $24,
83
+ $25,
84
+ $26,
85
+ $27,
86
+ $28,
87
+ $29,
88
+ $30,
89
+ $31,
90
+ $32,
91
+ $33,
92
+ $34,
93
+ $35,
94
+ $36,
95
+ $37,
96
+ $38,
97
+ $39,
98
+ $40,
99
+ $41,
100
+ $42::bigint,
101
+ $43::bigint,
102
+ $44::bigint,
103
+ $45::bigint,
104
+ $46,
105
+ COALESCE($47::jsonb, '{}'::jsonb)
106
+ )
107
+ RETURNING id, occurred_at, bucket_hour, organization_id, actor_user_id, provider_configuration_id, provider_kind, approved_model_id, resolved_model_id, root_agent_id, agent_id, agent_run_id, agent_run_event_row_id, agent_run_event_id, agent_run_event_sequence, agent_run_event_kind, chat_session_id, chat_message_id, workflow_key, feature, feature_detail, operation, input_tokens, input_cache_read_tokens, input_cache_write_tokens, cached_input_tokens, output_tokens, output_reasoning_tokens, total_tokens, token_breakdown_status, input_cost_micros, input_cache_read_cost_micros, input_cache_write_cost_micros, cached_input_cost_micros, output_cost_micros, output_reasoning_cost_micros, total_cost_micros, unpriced_tokens, currency, pricing_status, pricing_source, input_price_per_million_micros, input_cache_read_price_per_million_micros, input_cache_write_price_per_million_micros, output_price_per_million_micros, source_event_key, source_metadata, created_at, updated_at`;
108
+ async function insertUsageTransaction(client, args) {
109
+ const result = await client.query({
110
+ text: exports.insertUsageTransactionQuery,
111
+ values: [args.id, args.occurredAt, args.bucketHour, args.organizationId, args.actorUserId, args.providerConfigurationId, args.providerKind, args.approvedModelId, args.resolvedModelId, args.rootAgentId, args.agentId, args.agentRunId, args.agentRunEventRowId, args.agentRunEventId, args.agentRunEventSequence, args.agentRunEventKind, args.chatSessionId, args.chatMessageId, args.workflowKey, args.feature, args.featureDetail, args.operation, args.inputTokens, args.inputCacheReadTokens, args.inputCacheWriteTokens, args.cachedInputTokens, args.outputTokens, args.outputReasoningTokens, args.totalTokens, args.tokenBreakdownStatus, args.inputCostMicros, args.inputCacheReadCostMicros, args.inputCacheWriteCostMicros, args.cachedInputCostMicros, args.outputCostMicros, args.outputReasoningCostMicros, args.totalCostMicros, args.unpricedTokens, args.currency, args.pricingStatus, args.pricingSource, args.inputPricePerMillionMicros, args.inputCacheReadPricePerMillionMicros, args.inputCacheWritePricePerMillionMicros, args.outputPricePerMillionMicros, args.sourceEventKey, args.sourceMetadata],
112
+ rowMode: "array"
113
+ });
114
+ if (result.rows.length !== 1) {
115
+ return null;
116
+ }
117
+ const row = result.rows[0];
118
+ return {
119
+ id: row[0],
120
+ occurredAt: row[1],
121
+ bucketHour: row[2],
122
+ organizationId: row[3],
123
+ actorUserId: row[4],
124
+ providerConfigurationId: row[5],
125
+ providerKind: row[6],
126
+ approvedModelId: row[7],
127
+ resolvedModelId: row[8],
128
+ rootAgentId: row[9],
129
+ agentId: row[10],
130
+ agentRunId: row[11],
131
+ agentRunEventRowId: row[12],
132
+ agentRunEventId: row[13],
133
+ agentRunEventSequence: row[14],
134
+ agentRunEventKind: row[15],
135
+ chatSessionId: row[16],
136
+ chatMessageId: row[17],
137
+ workflowKey: row[18],
138
+ feature: row[19],
139
+ featureDetail: row[20],
140
+ operation: row[21],
141
+ inputTokens: row[22],
142
+ inputCacheReadTokens: row[23],
143
+ inputCacheWriteTokens: row[24],
144
+ cachedInputTokens: row[25],
145
+ outputTokens: row[26],
146
+ outputReasoningTokens: row[27],
147
+ totalTokens: row[28],
148
+ tokenBreakdownStatus: row[29],
149
+ inputCostMicros: row[30],
150
+ inputCacheReadCostMicros: row[31],
151
+ inputCacheWriteCostMicros: row[32],
152
+ cachedInputCostMicros: row[33],
153
+ outputCostMicros: row[34],
154
+ outputReasoningCostMicros: row[35],
155
+ totalCostMicros: row[36],
156
+ unpricedTokens: row[37],
157
+ currency: row[38],
158
+ pricingStatus: row[39],
159
+ pricingSource: row[40],
160
+ inputPricePerMillionMicros: row[41],
161
+ inputCacheReadPricePerMillionMicros: row[42],
162
+ inputCacheWritePricePerMillionMicros: row[43],
163
+ outputPricePerMillionMicros: row[44],
164
+ sourceEventKey: row[45],
165
+ sourceMetadata: row[46],
166
+ createdAt: row[47],
167
+ updatedAt: row[48]
168
+ };
169
+ }
170
+ exports.upsertUsageTransactionQuery = `-- name: UpsertUsageTransaction :one
171
+ INSERT INTO weave.usage_transactions (
172
+ id,
173
+ occurred_at,
174
+ bucket_hour,
175
+ organization_id,
176
+ actor_user_id,
177
+ provider_configuration_id,
178
+ provider_kind,
179
+ approved_model_id,
180
+ resolved_model_id,
181
+ root_agent_id,
182
+ agent_id,
183
+ agent_run_id,
184
+ agent_run_event_row_id,
185
+ agent_run_event_id,
186
+ agent_run_event_sequence,
187
+ agent_run_event_kind,
188
+ chat_session_id,
189
+ chat_message_id,
190
+ workflow_key,
191
+ feature,
192
+ feature_detail,
193
+ operation,
194
+ input_tokens,
195
+ input_cache_read_tokens,
196
+ input_cache_write_tokens,
197
+ cached_input_tokens,
198
+ output_tokens,
199
+ output_reasoning_tokens,
200
+ total_tokens,
201
+ token_breakdown_status,
202
+ input_cost_micros,
203
+ input_cache_read_cost_micros,
204
+ input_cache_write_cost_micros,
205
+ cached_input_cost_micros,
206
+ output_cost_micros,
207
+ output_reasoning_cost_micros,
208
+ total_cost_micros,
209
+ unpriced_tokens,
210
+ currency,
211
+ pricing_status,
212
+ pricing_source,
213
+ input_price_per_million_micros,
214
+ input_cache_read_price_per_million_micros,
215
+ input_cache_write_price_per_million_micros,
216
+ output_price_per_million_micros,
217
+ source_event_key,
218
+ source_metadata
219
+ ) VALUES (
220
+ $1,
221
+ $2,
222
+ $3,
223
+ $4,
224
+ $5::uuid,
225
+ $6::uuid,
226
+ $7,
227
+ $8,
228
+ $9,
229
+ $10::uuid,
230
+ $11::uuid,
231
+ $12,
232
+ $13::uuid,
233
+ $14,
234
+ $15,
235
+ $16,
236
+ $17::uuid,
237
+ $18::uuid,
238
+ $19::text,
239
+ $20,
240
+ $21,
241
+ $22,
242
+ $23,
243
+ $24,
244
+ $25,
245
+ $26,
246
+ $27,
247
+ $28,
248
+ $29,
249
+ $30,
250
+ $31,
251
+ $32,
252
+ $33,
253
+ $34,
254
+ $35,
255
+ $36,
256
+ $37,
257
+ $38,
258
+ $39,
259
+ $40,
260
+ $41,
261
+ $42::bigint,
262
+ $43::bigint,
263
+ $44::bigint,
264
+ $45::bigint,
265
+ $46,
266
+ COALESCE($47::jsonb, '{}'::jsonb)
267
+ )
268
+ ON CONFLICT (occurred_at, agent_run_id, agent_run_event_id, source_event_key)
269
+ DO UPDATE SET
270
+ bucket_hour = EXCLUDED.bucket_hour,
271
+ organization_id = EXCLUDED.organization_id,
272
+ actor_user_id = EXCLUDED.actor_user_id,
273
+ provider_configuration_id = EXCLUDED.provider_configuration_id,
274
+ provider_kind = EXCLUDED.provider_kind,
275
+ approved_model_id = EXCLUDED.approved_model_id,
276
+ resolved_model_id = EXCLUDED.resolved_model_id,
277
+ root_agent_id = EXCLUDED.root_agent_id,
278
+ agent_id = EXCLUDED.agent_id,
279
+ agent_run_event_row_id = EXCLUDED.agent_run_event_row_id,
280
+ agent_run_event_sequence = EXCLUDED.agent_run_event_sequence,
281
+ agent_run_event_kind = EXCLUDED.agent_run_event_kind,
282
+ chat_session_id = EXCLUDED.chat_session_id,
283
+ chat_message_id = EXCLUDED.chat_message_id,
284
+ workflow_key = EXCLUDED.workflow_key,
285
+ feature = EXCLUDED.feature,
286
+ feature_detail = EXCLUDED.feature_detail,
287
+ operation = EXCLUDED.operation,
288
+ input_tokens = EXCLUDED.input_tokens,
289
+ input_cache_read_tokens = EXCLUDED.input_cache_read_tokens,
290
+ input_cache_write_tokens = EXCLUDED.input_cache_write_tokens,
291
+ cached_input_tokens = EXCLUDED.cached_input_tokens,
292
+ output_tokens = EXCLUDED.output_tokens,
293
+ output_reasoning_tokens = EXCLUDED.output_reasoning_tokens,
294
+ total_tokens = EXCLUDED.total_tokens,
295
+ token_breakdown_status = EXCLUDED.token_breakdown_status,
296
+ input_cost_micros = EXCLUDED.input_cost_micros,
297
+ input_cache_read_cost_micros = EXCLUDED.input_cache_read_cost_micros,
298
+ input_cache_write_cost_micros = EXCLUDED.input_cache_write_cost_micros,
299
+ cached_input_cost_micros = EXCLUDED.cached_input_cost_micros,
300
+ output_cost_micros = EXCLUDED.output_cost_micros,
301
+ output_reasoning_cost_micros = EXCLUDED.output_reasoning_cost_micros,
302
+ total_cost_micros = EXCLUDED.total_cost_micros,
303
+ unpriced_tokens = EXCLUDED.unpriced_tokens,
304
+ currency = EXCLUDED.currency,
305
+ pricing_status = EXCLUDED.pricing_status,
306
+ pricing_source = EXCLUDED.pricing_source,
307
+ input_price_per_million_micros = EXCLUDED.input_price_per_million_micros,
308
+ input_cache_read_price_per_million_micros = EXCLUDED.input_cache_read_price_per_million_micros,
309
+ input_cache_write_price_per_million_micros = EXCLUDED.input_cache_write_price_per_million_micros,
310
+ output_price_per_million_micros = EXCLUDED.output_price_per_million_micros,
311
+ source_metadata = EXCLUDED.source_metadata,
312
+ updated_at = now()
313
+ RETURNING id, occurred_at, bucket_hour, organization_id, actor_user_id, provider_configuration_id, provider_kind, approved_model_id, resolved_model_id, root_agent_id, agent_id, agent_run_id, agent_run_event_row_id, agent_run_event_id, agent_run_event_sequence, agent_run_event_kind, chat_session_id, chat_message_id, workflow_key, feature, feature_detail, operation, input_tokens, input_cache_read_tokens, input_cache_write_tokens, cached_input_tokens, output_tokens, output_reasoning_tokens, total_tokens, token_breakdown_status, input_cost_micros, input_cache_read_cost_micros, input_cache_write_cost_micros, cached_input_cost_micros, output_cost_micros, output_reasoning_cost_micros, total_cost_micros, unpriced_tokens, currency, pricing_status, pricing_source, input_price_per_million_micros, input_cache_read_price_per_million_micros, input_cache_write_price_per_million_micros, output_price_per_million_micros, source_event_key, source_metadata, created_at, updated_at`;
314
+ async function upsertUsageTransaction(client, args) {
315
+ const result = await client.query({
316
+ text: exports.upsertUsageTransactionQuery,
317
+ values: [args.id, args.occurredAt, args.bucketHour, args.organizationId, args.actorUserId, args.providerConfigurationId, args.providerKind, args.approvedModelId, args.resolvedModelId, args.rootAgentId, args.agentId, args.agentRunId, args.agentRunEventRowId, args.agentRunEventId, args.agentRunEventSequence, args.agentRunEventKind, args.chatSessionId, args.chatMessageId, args.workflowKey, args.feature, args.featureDetail, args.operation, args.inputTokens, args.inputCacheReadTokens, args.inputCacheWriteTokens, args.cachedInputTokens, args.outputTokens, args.outputReasoningTokens, args.totalTokens, args.tokenBreakdownStatus, args.inputCostMicros, args.inputCacheReadCostMicros, args.inputCacheWriteCostMicros, args.cachedInputCostMicros, args.outputCostMicros, args.outputReasoningCostMicros, args.totalCostMicros, args.unpricedTokens, args.currency, args.pricingStatus, args.pricingSource, args.inputPricePerMillionMicros, args.inputCacheReadPricePerMillionMicros, args.inputCacheWritePricePerMillionMicros, args.outputPricePerMillionMicros, args.sourceEventKey, args.sourceMetadata],
318
+ rowMode: "array"
319
+ });
320
+ if (result.rows.length !== 1) {
321
+ return null;
322
+ }
323
+ const row = result.rows[0];
324
+ return {
325
+ id: row[0],
326
+ occurredAt: row[1],
327
+ bucketHour: row[2],
328
+ organizationId: row[3],
329
+ actorUserId: row[4],
330
+ providerConfigurationId: row[5],
331
+ providerKind: row[6],
332
+ approvedModelId: row[7],
333
+ resolvedModelId: row[8],
334
+ rootAgentId: row[9],
335
+ agentId: row[10],
336
+ agentRunId: row[11],
337
+ agentRunEventRowId: row[12],
338
+ agentRunEventId: row[13],
339
+ agentRunEventSequence: row[14],
340
+ agentRunEventKind: row[15],
341
+ chatSessionId: row[16],
342
+ chatMessageId: row[17],
343
+ workflowKey: row[18],
344
+ feature: row[19],
345
+ featureDetail: row[20],
346
+ operation: row[21],
347
+ inputTokens: row[22],
348
+ inputCacheReadTokens: row[23],
349
+ inputCacheWriteTokens: row[24],
350
+ cachedInputTokens: row[25],
351
+ outputTokens: row[26],
352
+ outputReasoningTokens: row[27],
353
+ totalTokens: row[28],
354
+ tokenBreakdownStatus: row[29],
355
+ inputCostMicros: row[30],
356
+ inputCacheReadCostMicros: row[31],
357
+ inputCacheWriteCostMicros: row[32],
358
+ cachedInputCostMicros: row[33],
359
+ outputCostMicros: row[34],
360
+ outputReasoningCostMicros: row[35],
361
+ totalCostMicros: row[36],
362
+ unpricedTokens: row[37],
363
+ currency: row[38],
364
+ pricingStatus: row[39],
365
+ pricingSource: row[40],
366
+ inputPricePerMillionMicros: row[41],
367
+ inputCacheReadPricePerMillionMicros: row[42],
368
+ inputCacheWritePricePerMillionMicros: row[43],
369
+ outputPricePerMillionMicros: row[44],
370
+ sourceEventKey: row[45],
371
+ sourceMetadata: row[46],
372
+ createdAt: row[47],
373
+ updatedAt: row[48]
374
+ };
375
+ }
376
+ exports.getUsageTransactionBySourceQuery = `-- name: GetUsageTransactionBySource :one
377
+ SELECT id, occurred_at, bucket_hour, organization_id, actor_user_id, provider_configuration_id, provider_kind, approved_model_id, resolved_model_id, root_agent_id, agent_id, agent_run_id, agent_run_event_row_id, agent_run_event_id, agent_run_event_sequence, agent_run_event_kind, chat_session_id, chat_message_id, workflow_key, feature, feature_detail, operation, input_tokens, input_cache_read_tokens, input_cache_write_tokens, cached_input_tokens, output_tokens, output_reasoning_tokens, total_tokens, token_breakdown_status, input_cost_micros, input_cache_read_cost_micros, input_cache_write_cost_micros, cached_input_cost_micros, output_cost_micros, output_reasoning_cost_micros, total_cost_micros, unpriced_tokens, currency, pricing_status, pricing_source, input_price_per_million_micros, input_cache_read_price_per_million_micros, input_cache_write_price_per_million_micros, output_price_per_million_micros, source_event_key, source_metadata, created_at, updated_at
378
+ FROM weave.usage_transactions
379
+ WHERE organization_id = $1
380
+ AND occurred_at = $2
381
+ AND agent_run_id = $3
382
+ AND agent_run_event_id = $4
383
+ AND source_event_key = $5`;
384
+ async function getUsageTransactionBySource(client, args) {
385
+ const result = await client.query({
386
+ text: exports.getUsageTransactionBySourceQuery,
387
+ values: [args.organizationId, args.occurredAt, args.agentRunId, args.agentRunEventId, args.sourceEventKey],
388
+ rowMode: "array"
389
+ });
390
+ if (result.rows.length !== 1) {
391
+ return null;
392
+ }
393
+ const row = result.rows[0];
394
+ return {
395
+ id: row[0],
396
+ occurredAt: row[1],
397
+ bucketHour: row[2],
398
+ organizationId: row[3],
399
+ actorUserId: row[4],
400
+ providerConfigurationId: row[5],
401
+ providerKind: row[6],
402
+ approvedModelId: row[7],
403
+ resolvedModelId: row[8],
404
+ rootAgentId: row[9],
405
+ agentId: row[10],
406
+ agentRunId: row[11],
407
+ agentRunEventRowId: row[12],
408
+ agentRunEventId: row[13],
409
+ agentRunEventSequence: row[14],
410
+ agentRunEventKind: row[15],
411
+ chatSessionId: row[16],
412
+ chatMessageId: row[17],
413
+ workflowKey: row[18],
414
+ feature: row[19],
415
+ featureDetail: row[20],
416
+ operation: row[21],
417
+ inputTokens: row[22],
418
+ inputCacheReadTokens: row[23],
419
+ inputCacheWriteTokens: row[24],
420
+ cachedInputTokens: row[25],
421
+ outputTokens: row[26],
422
+ outputReasoningTokens: row[27],
423
+ totalTokens: row[28],
424
+ tokenBreakdownStatus: row[29],
425
+ inputCostMicros: row[30],
426
+ inputCacheReadCostMicros: row[31],
427
+ inputCacheWriteCostMicros: row[32],
428
+ cachedInputCostMicros: row[33],
429
+ outputCostMicros: row[34],
430
+ outputReasoningCostMicros: row[35],
431
+ totalCostMicros: row[36],
432
+ unpricedTokens: row[37],
433
+ currency: row[38],
434
+ pricingStatus: row[39],
435
+ pricingSource: row[40],
436
+ inputPricePerMillionMicros: row[41],
437
+ inputCacheReadPricePerMillionMicros: row[42],
438
+ inputCacheWritePricePerMillionMicros: row[43],
439
+ outputPricePerMillionMicros: row[44],
440
+ sourceEventKey: row[45],
441
+ sourceMetadata: row[46],
442
+ createdAt: row[47],
443
+ updatedAt: row[48]
444
+ };
445
+ }
446
+ exports.listUsageTransactionsForBackfillAuditQuery = `-- name: ListUsageTransactionsForBackfillAudit :many
447
+ SELECT id, occurred_at, bucket_hour, organization_id, actor_user_id, provider_configuration_id, provider_kind, approved_model_id, resolved_model_id, root_agent_id, agent_id, agent_run_id, agent_run_event_row_id, agent_run_event_id, agent_run_event_sequence, agent_run_event_kind, chat_session_id, chat_message_id, workflow_key, feature, feature_detail, operation, input_tokens, input_cache_read_tokens, input_cache_write_tokens, cached_input_tokens, output_tokens, output_reasoning_tokens, total_tokens, token_breakdown_status, input_cost_micros, input_cache_read_cost_micros, input_cache_write_cost_micros, cached_input_cost_micros, output_cost_micros, output_reasoning_cost_micros, total_cost_micros, unpriced_tokens, currency, pricing_status, pricing_source, input_price_per_million_micros, input_cache_read_price_per_million_micros, input_cache_write_price_per_million_micros, output_price_per_million_micros, source_event_key, source_metadata, created_at, updated_at
448
+ FROM weave.usage_transactions
449
+ WHERE organization_id = $1
450
+ AND occurred_at >= $2
451
+ AND occurred_at < $3
452
+ AND ($4::uuid IS NULL OR agent_run_id = $4::uuid)
453
+ AND ($5::text IS NULL OR agent_run_event_id = $5::text)
454
+ ORDER BY occurred_at ASC, agent_run_id ASC, agent_run_event_id ASC, source_event_key ASC
455
+ LIMIT $7::integer
456
+ OFFSET $6::integer`;
457
+ async function listUsageTransactionsForBackfillAudit(client, args) {
458
+ const result = await client.query({
459
+ text: exports.listUsageTransactionsForBackfillAuditQuery,
460
+ values: [args.organizationId, args.startAt, args.endAt, args.agentRunId, args.agentRunEventId, args.offsetCount, args.limitCount],
461
+ rowMode: "array"
462
+ });
463
+ return result.rows.map(row => {
464
+ return {
465
+ id: row[0],
466
+ occurredAt: row[1],
467
+ bucketHour: row[2],
468
+ organizationId: row[3],
469
+ actorUserId: row[4],
470
+ providerConfigurationId: row[5],
471
+ providerKind: row[6],
472
+ approvedModelId: row[7],
473
+ resolvedModelId: row[8],
474
+ rootAgentId: row[9],
475
+ agentId: row[10],
476
+ agentRunId: row[11],
477
+ agentRunEventRowId: row[12],
478
+ agentRunEventId: row[13],
479
+ agentRunEventSequence: row[14],
480
+ agentRunEventKind: row[15],
481
+ chatSessionId: row[16],
482
+ chatMessageId: row[17],
483
+ workflowKey: row[18],
484
+ feature: row[19],
485
+ featureDetail: row[20],
486
+ operation: row[21],
487
+ inputTokens: row[22],
488
+ inputCacheReadTokens: row[23],
489
+ inputCacheWriteTokens: row[24],
490
+ cachedInputTokens: row[25],
491
+ outputTokens: row[26],
492
+ outputReasoningTokens: row[27],
493
+ totalTokens: row[28],
494
+ tokenBreakdownStatus: row[29],
495
+ inputCostMicros: row[30],
496
+ inputCacheReadCostMicros: row[31],
497
+ inputCacheWriteCostMicros: row[32],
498
+ cachedInputCostMicros: row[33],
499
+ outputCostMicros: row[34],
500
+ outputReasoningCostMicros: row[35],
501
+ totalCostMicros: row[36],
502
+ unpricedTokens: row[37],
503
+ currency: row[38],
504
+ pricingStatus: row[39],
505
+ pricingSource: row[40],
506
+ inputPricePerMillionMicros: row[41],
507
+ inputCacheReadPricePerMillionMicros: row[42],
508
+ inputCacheWritePricePerMillionMicros: row[43],
509
+ outputPricePerMillionMicros: row[44],
510
+ sourceEventKey: row[45],
511
+ sourceMetadata: row[46],
512
+ createdAt: row[47],
513
+ updatedAt: row[48]
514
+ };
515
+ });
516
+ }
517
+ exports.listAgentRunUsageBackfillSourceRowsQuery = `-- name: ListAgentRunUsageBackfillSourceRows :many
518
+ SELECT
519
+ e.id AS agent_run_event_row_id,
520
+ e.organization_id,
521
+ r.started_by_user_id AS actor_user_id,
522
+ r.root_agent_id,
523
+ e.agent_id,
524
+ e.agent_run_id,
525
+ e.id::text AS agent_run_event_id,
526
+ e.sequence AS agent_run_event_sequence,
527
+ e.kind AS agent_run_event_kind,
528
+ r.chat_session_id,
529
+ r.model_id AS run_model_id,
530
+ r.inference_model_route_id,
531
+ e.generation_details,
532
+ e.created_at AS occurred_at
533
+ FROM weave.agent_run_event e
534
+ JOIN weave.agent_run r
535
+ ON r.organization_id = e.organization_id
536
+ AND r.id = e.agent_run_id
537
+ WHERE e.organization_id = $1
538
+ AND e.generation_details IS NOT NULL
539
+ AND e.created_at >= $2
540
+ AND e.created_at < $3
541
+ ORDER BY e.created_at ASC, e.agent_run_id ASC, e.sequence ASC
542
+ LIMIT $5::integer
543
+ OFFSET $4::integer`;
544
+ async function listAgentRunUsageBackfillSourceRows(client, args) {
545
+ const result = await client.query({
546
+ text: exports.listAgentRunUsageBackfillSourceRowsQuery,
547
+ values: [args.organizationId, args.startAt, args.endAt, args.offsetCount, args.limitCount],
548
+ rowMode: "array"
549
+ });
550
+ return result.rows.map(row => {
551
+ return {
552
+ agentRunEventRowId: row[0],
553
+ organizationId: row[1],
554
+ actorUserId: row[2],
555
+ rootAgentId: row[3],
556
+ agentId: row[4],
557
+ agentRunId: row[5],
558
+ agentRunEventId: row[6],
559
+ agentRunEventSequence: row[7],
560
+ agentRunEventKind: row[8],
561
+ chatSessionId: row[9],
562
+ runModelId: row[10],
563
+ inferenceModelRouteId: row[11],
564
+ generationDetails: row[12],
565
+ occurredAt: row[13]
566
+ };
567
+ });
568
+ }