codebuff 1.0.281 → 1.0.283

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 (149) hide show
  1. package/dist/cli-handlers/initialization-flow.d.ts +1 -0
  2. package/dist/cli-handlers/initialization-flow.js +24 -0
  3. package/dist/cli-handlers/initialization-flow.js.map +1 -0
  4. package/dist/cli-modules/command-processor.d.ts +2 -0
  5. package/dist/cli-modules/command-processor.js +112 -0
  6. package/dist/cli-modules/command-processor.js.map +1 -0
  7. package/dist/cli-modules/input-handler.d.ts +4 -0
  8. package/dist/cli-modules/input-handler.js +75 -0
  9. package/dist/cli-modules/input-handler.js.map +1 -0
  10. package/dist/cli-modules/readline-handler.d.ts +11 -0
  11. package/dist/cli-modules/readline-handler.js +158 -0
  12. package/dist/cli-modules/readline-handler.js.map +1 -0
  13. package/dist/cli-modules/signal-handler.d.ts +7 -0
  14. package/dist/cli-modules/signal-handler.js +128 -0
  15. package/dist/cli-modules/signal-handler.js.map +1 -0
  16. package/dist/cli-modules/types.d.ts +51 -0
  17. package/dist/cli-modules/types.js +3 -0
  18. package/dist/cli-modules/types.js.map +1 -0
  19. package/dist/cli-modules/websocket-handler.d.ts +16 -0
  20. package/dist/cli-modules/websocket-handler.js +53 -0
  21. package/dist/cli-modules/websocket-handler.js.map +1 -0
  22. package/dist/cli.js +8 -6
  23. package/dist/cli.js.map +1 -1
  24. package/dist/client.d.ts +1 -1
  25. package/dist/client.js +5 -1
  26. package/dist/client.js.map +1 -1
  27. package/dist/code-map/__mocks__/tree-sitter-typescript.d.ts +12 -0
  28. package/dist/code-map/__mocks__/tree-sitter-typescript.d.ts.map +1 -0
  29. package/dist/code-map/__mocks__/tree-sitter-typescript.js +14 -0
  30. package/dist/code-map/__mocks__/tree-sitter-typescript.js.map +1 -0
  31. package/dist/code-map/__mocks__/wasm-mock.d.ts +2 -0
  32. package/dist/code-map/__mocks__/wasm-mock.d.ts.map +1 -0
  33. package/dist/code-map/__mocks__/wasm-mock.js +3 -0
  34. package/dist/code-map/__mocks__/wasm-mock.js.map +1 -0
  35. package/dist/code-map/__tests__/parse.test.d.ts +2 -0
  36. package/dist/code-map/__tests__/parse.test.d.ts.map +1 -0
  37. package/dist/code-map/__tests__/parse.test.js +231 -0
  38. package/dist/code-map/__tests__/parse.test.js.map +1 -0
  39. package/dist/code-map/__tests__/test-langs/consumer.d.ts +2 -0
  40. package/dist/code-map/__tests__/test-langs/consumer.d.ts.map +1 -0
  41. package/dist/code-map/__tests__/test-langs/consumer.js +6 -0
  42. package/dist/code-map/__tests__/test-langs/consumer.js.map +1 -0
  43. package/dist/code-map/__tests__/test-langs/empty.d.ts +1 -0
  44. package/dist/code-map/__tests__/test-langs/empty.d.ts.map +1 -0
  45. package/dist/code-map/__tests__/test-langs/empty.js +2 -0
  46. package/dist/code-map/__tests__/test-langs/empty.js.map +1 -0
  47. package/dist/code-map/__tests__/test-langs/test.d.ts +12 -0
  48. package/dist/code-map/__tests__/test-langs/test.d.ts.map +1 -0
  49. package/dist/code-map/__tests__/test-langs/test.js +23 -0
  50. package/dist/code-map/__tests__/test-langs/test.js.map +1 -0
  51. package/dist/code-map/__tests__/test-langs/unused.d.ts +2 -0
  52. package/dist/code-map/__tests__/test-langs/unused.d.ts.map +1 -0
  53. package/dist/code-map/__tests__/test-langs/unused.js +7 -0
  54. package/dist/code-map/__tests__/test-langs/unused.js.map +1 -0
  55. package/dist/code-map/__tests__/test-langs/utils1.d.ts +2 -0
  56. package/dist/code-map/__tests__/test-langs/utils1.d.ts.map +1 -0
  57. package/dist/code-map/__tests__/test-langs/utils1.js +7 -0
  58. package/dist/code-map/__tests__/test-langs/utils1.js.map +1 -0
  59. package/dist/code-map/__tests__/test-langs/utils2.d.ts +2 -0
  60. package/dist/code-map/__tests__/test-langs/utils2.d.ts.map +1 -0
  61. package/dist/code-map/__tests__/test-langs/utils2.js +8 -0
  62. package/dist/code-map/__tests__/test-langs/utils2.js.map +1 -0
  63. package/dist/code-map/__tests__/tree-sitter-minimal.test.d.ts +2 -0
  64. package/dist/code-map/__tests__/tree-sitter-minimal.test.d.ts.map +1 -0
  65. package/dist/code-map/__tests__/tree-sitter-minimal.test.js +79 -0
  66. package/dist/code-map/__tests__/tree-sitter-minimal.test.js.map +1 -0
  67. package/dist/code-map/jest.config.d.ts +4 -0
  68. package/dist/code-map/jest.config.d.ts.map +1 -0
  69. package/dist/code-map/jest.config.js +18 -0
  70. package/dist/code-map/jest.config.js.map +1 -0
  71. package/dist/code-map/parse.d.ts.map +1 -1
  72. package/dist/code-map/parse.js.map +1 -1
  73. package/dist/code-map/parse.test.d.ts +2 -0
  74. package/dist/code-map/parse.test.d.ts.map +1 -0
  75. package/dist/code-map/parse.test.js +218 -0
  76. package/dist/code-map/parse.test.js.map +1 -0
  77. package/dist/code-map/scripts/tree-sitter-test.cjs +27 -0
  78. package/dist/code-map/scripts/tree-sitter-test.cjs.map +1 -0
  79. package/dist/code-map/scripts/tree-sitter-test.d.cts +2 -0
  80. package/dist/code-map/scripts/tree-sitter-test.d.cts.map +1 -0
  81. package/dist/code-map/scripts/tree-sitter-test.d.ts +2 -0
  82. package/dist/code-map/scripts/tree-sitter-test.d.ts.map +1 -0
  83. package/dist/code-map/scripts/tree-sitter-test.js +54 -0
  84. package/dist/code-map/scripts/tree-sitter-test.js.map +1 -0
  85. package/dist/code-map/test-parser.d.ts +2 -0
  86. package/dist/code-map/test-parser.d.ts.map +1 -0
  87. package/dist/code-map/test-parser.js +42 -0
  88. package/dist/code-map/test-parser.js.map +1 -0
  89. package/dist/code-map/tsconfig.tsbuildinfo +1 -1
  90. package/dist/common/actions.d.ts +82 -82
  91. package/dist/common/bigquery/client.d.ts +15 -0
  92. package/dist/common/bigquery/client.js +265 -0
  93. package/dist/common/bigquery/client.js.map +1 -0
  94. package/dist/common/bigquery/schema.d.ts +55 -0
  95. package/dist/common/bigquery/schema.js +24 -0
  96. package/dist/common/bigquery/schema.js.map +1 -0
  97. package/dist/common/constants/analytics-events.d.ts +2 -1
  98. package/dist/common/constants/analytics-events.js +2 -1
  99. package/dist/common/constants/analytics-events.js.map +1 -1
  100. package/dist/common/constants/tools.d.ts +0 -1
  101. package/dist/common/constants/tools.js +1 -3
  102. package/dist/common/constants/tools.js.map +1 -1
  103. package/dist/common/db/schema.d.ts +4 -4
  104. package/dist/common/types/agent-state.d.ts +12 -12
  105. package/dist/common/types/grant.d.ts +1 -1
  106. package/dist/common/types/grant.js.map +1 -1
  107. package/dist/common/types/usage.d.ts +7 -7
  108. package/dist/common/types/usage.js +2 -1
  109. package/dist/common/types/usage.js.map +1 -1
  110. package/dist/common/util/__tests__/saxy.test.js +182 -48
  111. package/dist/common/util/__tests__/saxy.test.js.map +1 -1
  112. package/dist/common/util/file-metadata.d.ts +9 -0
  113. package/dist/common/util/file-metadata.js +24 -0
  114. package/dist/common/util/file-metadata.js.map +1 -0
  115. package/dist/common/util/saxy.d.ts +0 -1
  116. package/dist/common/util/saxy.js +5 -15
  117. package/dist/common/util/saxy.js.map +1 -1
  118. package/dist/common/websockets/websocket-schema.d.ts +150 -150
  119. package/dist/display.js.map +1 -1
  120. package/dist/index.js +2 -56
  121. package/dist/tool-handlers.js +1 -6
  122. package/dist/tool-handlers.js.map +1 -1
  123. package/dist/utils/__tests__/tool-renderers.test.js +4 -6
  124. package/dist/utils/__tests__/tool-renderers.test.js.map +1 -1
  125. package/dist/utils/terminal.js +1 -1
  126. package/dist/utils/terminal.js.map +1 -1
  127. package/dist/utils/tool-renderers.js +3 -6
  128. package/dist/utils/tool-renderers.js.map +1 -1
  129. package/package.json +1 -1
  130. package/dist/common/__tests__/project-file-tree.test.d.ts +0 -1
  131. package/dist/common/__tests__/project-file-tree.test.js +0 -251
  132. package/dist/common/__tests__/project-file-tree.test.js.map +0 -1
  133. package/dist/common/json-config/__tests__/__snapshots__/stringify-schema.test.js.snap +0 -119
  134. package/dist/common/util/process-stream.d.ts +0 -7
  135. package/dist/common/util/process-stream.js +0 -162
  136. package/dist/common/util/process-stream.js.map +0 -1
  137. package/dist/utils/__tests__/__snapshots__/background-process-manager.test.js.snap +0 -137
  138. package/dist/utils/__tests__/file-paths.test.d.ts +0 -1
  139. package/dist/utils/__tests__/file-paths.test.js +0 -37
  140. package/dist/utils/__tests__/file-paths.test.js.map +0 -1
  141. package/dist/utils/__tests__/path.test.d.ts +0 -1
  142. package/dist/utils/__tests__/path.test.js +0 -37
  143. package/dist/utils/__tests__/path.test.js.map +0 -1
  144. package/dist/utils/file-paths.d.ts +0 -9
  145. package/dist/utils/file-paths.js +0 -24
  146. package/dist/utils/file-paths.js.map +0 -1
  147. package/dist/utils/path.d.ts +0 -9
  148. package/dist/utils/path.js +0 -27
  149. package/dist/utils/path.js.map +0 -1
@@ -0,0 +1,15 @@
1
+ import { GetRelevantFilesTrace, Relabel, Trace } from './schema';
2
+ export declare function setupBigQuery(dataset?: string): Promise<void>;
3
+ export declare function insertTrace(trace: Trace, dataset?: string): Promise<boolean>;
4
+ export declare function insertRelabel(relabel: Relabel, dataset?: string): Promise<boolean>;
5
+ export declare function getRecentTraces(limit?: number, dataset?: string): Promise<Trace[]>;
6
+ export declare function getRecentRelabels(limit?: number, dataset?: string): Promise<Relabel[]>;
7
+ export declare function getTracesWithoutRelabels(model: string, limit?: number, userId?: string | undefined, dataset?: string): Promise<GetRelevantFilesTrace[]>;
8
+ export declare function getTracesWithRelabels(model: string, limit?: number, dataset?: string): Promise<{
9
+ trace: GetRelevantFilesTrace;
10
+ relabel: Relabel;
11
+ }[]>;
12
+ export declare function getTracesAndRelabelsForUser(userId: string, limit?: number, dataset?: string): Promise<{
13
+ trace: GetRelevantFilesTrace;
14
+ relabels: Relabel[];
15
+ }[]>;
@@ -0,0 +1,265 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setupBigQuery = setupBigQuery;
4
+ exports.insertTrace = insertTrace;
5
+ exports.insertRelabel = insertRelabel;
6
+ exports.getRecentTraces = getRecentTraces;
7
+ exports.getRecentRelabels = getRecentRelabels;
8
+ exports.getTracesWithoutRelabels = getTracesWithoutRelabels;
9
+ exports.getTracesWithRelabels = getTracesWithRelabels;
10
+ exports.getTracesAndRelabelsForUser = getTracesAndRelabelsForUser;
11
+ const bigquery_1 = require("@google-cloud/bigquery");
12
+ const logger_1 = require("../util/logger");
13
+ const schema_1 = require("./schema");
14
+ const DATASET = process.env.NEXT_PUBLIC_CB_ENVIRONMENT === 'production'
15
+ ? 'codebuff_data'
16
+ : 'codebuff_data_dev';
17
+ const TRACES_TABLE = 'traces';
18
+ const RELABELS_TABLE = 'relabels';
19
+ // Create a single BigQuery client instance to be used by all functions
20
+ let client = null;
21
+ function getClient() {
22
+ if (!client) {
23
+ throw new Error('BigQuery client not initialized. Call setupBigQuery first.');
24
+ }
25
+ return client;
26
+ }
27
+ async function setupBigQuery(dataset = DATASET) {
28
+ try {
29
+ logger_1.logger.info('Creating BigQuery client...');
30
+ client = new bigquery_1.BigQuery();
31
+ logger_1.logger.info('BigQuery client created, initializing dataset...');
32
+ // Ensure dataset exists
33
+ const [ds] = await client.dataset(dataset).get({ autoCreate: true });
34
+ logger_1.logger.info({ dataset }, 'Dataset initialized');
35
+ // Ensure tables exist
36
+ logger_1.logger.info('Creating/verifying tables...');
37
+ await ds.table(TRACES_TABLE).get({
38
+ autoCreate: true,
39
+ schema: schema_1.TRACES_SCHEMA,
40
+ timePartitioning: {
41
+ type: 'MONTH',
42
+ field: 'created_at',
43
+ },
44
+ clustering: {
45
+ fields: ['user_id', 'agent_step_id'],
46
+ },
47
+ });
48
+ await ds.table(RELABELS_TABLE).get({
49
+ autoCreate: true,
50
+ schema: schema_1.RELABELS_SCHEMA,
51
+ timePartitioning: {
52
+ type: 'MONTH',
53
+ field: 'created_at',
54
+ },
55
+ clustering: {
56
+ fields: ['user_id', 'agent_step_id'],
57
+ },
58
+ });
59
+ logger_1.logger.info('Tables initialized successfully');
60
+ }
61
+ catch (error) {
62
+ logger_1.logger.error({
63
+ error,
64
+ stack: error.stack,
65
+ message: error.message,
66
+ name: error.name,
67
+ code: error.code,
68
+ details: error.details,
69
+ }, 'Failed to initialize BigQuery');
70
+ throw error; // Re-throw to be caught by caller
71
+ }
72
+ }
73
+ async function insertTrace(trace, dataset = DATASET) {
74
+ try {
75
+ // Create a copy of the trace and stringify payload if needed
76
+ const traceToInsert = {
77
+ ...trace,
78
+ payload: trace.payload && typeof trace.payload !== 'string'
79
+ ? JSON.stringify(trace.payload)
80
+ : trace.payload,
81
+ };
82
+ await getClient().dataset(dataset).table(TRACES_TABLE).insert(traceToInsert);
83
+ logger_1.logger.debug({ traceId: trace.id, type: trace.type }, 'Inserted trace into BigQuery');
84
+ return true;
85
+ }
86
+ catch (error) {
87
+ logger_1.logger.error({ error, traceId: trace.id }, 'Failed to insert trace into BigQuery');
88
+ return false;
89
+ }
90
+ }
91
+ async function insertRelabel(relabel, dataset = DATASET) {
92
+ try {
93
+ // Stringify payload if needed
94
+ const relabelToInsert = {
95
+ ...relabel,
96
+ payload: relabel.payload && typeof relabel.payload !== 'string'
97
+ ? JSON.stringify(relabel.payload)
98
+ : relabel.payload,
99
+ };
100
+ await getClient().dataset(dataset).table(RELABELS_TABLE).insert(relabelToInsert);
101
+ logger_1.logger.debug({ relabelId: relabel.id }, 'Inserted relabel into BigQuery');
102
+ return true;
103
+ }
104
+ catch (error) {
105
+ logger_1.logger.error({ error, relabelId: relabel.id }, 'Failed to insert relabel into BigQuery');
106
+ return false;
107
+ }
108
+ }
109
+ async function getRecentTraces(limit = 10, dataset = DATASET) {
110
+ const query = `
111
+ SELECT * FROM ${dataset}.${TRACES_TABLE}
112
+ ORDER BY created_at DESC
113
+ LIMIT ${limit}
114
+ `;
115
+ const [rows] = await getClient().query(query);
116
+ // Parse the payload as JSON if it's a string
117
+ return rows.map((row) => ({
118
+ ...row,
119
+ payload: typeof row.payload === 'string' ? JSON.parse(row.payload) : row.payload,
120
+ }));
121
+ }
122
+ async function getRecentRelabels(limit = 10, dataset = DATASET) {
123
+ const query = `
124
+ SELECT * FROM ${dataset}.${RELABELS_TABLE}
125
+ ORDER BY created_at DESC
126
+ LIMIT ${limit}
127
+ `;
128
+ const [rows] = await getClient().query(query);
129
+ // Parse the payload as JSON if it's a string
130
+ return rows.map((row) => ({
131
+ ...row,
132
+ payload: typeof row.payload === 'string' ? JSON.parse(row.payload) : row.payload,
133
+ }));
134
+ }
135
+ async function getTracesWithoutRelabels(model, limit = 100, userId = undefined, dataset = DATASET) {
136
+ // TODO: Optimize query, maybe only get traces in last 30 days etc
137
+ const query = `
138
+ SELECT t.*
139
+ FROM \`${dataset}.${TRACES_TABLE}\` t
140
+ LEFT JOIN (
141
+ SELECT r.agent_step_id, r.user_id, JSON_EXTRACT_SCALAR(r.payload, '$.user_input_id') as user_input_id
142
+ FROM \`${dataset}.${RELABELS_TABLE}\` r
143
+ WHERE r.model = '${model}'
144
+ ${userId ? `AND r.user_id = '${userId}'` : ''}
145
+ ) r
146
+ ON t.agent_step_id = r.agent_step_id
147
+ AND t.user_id = r.user_id
148
+ AND JSON_EXTRACT_SCALAR(t.payload, '$.user_input_id') = r.user_input_id
149
+ WHERE t.type = 'get-relevant-files'
150
+ AND r.agent_step_id IS NULL
151
+ ${userId ? `AND t.user_id = '${userId}'` : ''}
152
+ ORDER BY t.created_at DESC
153
+ LIMIT ${limit}
154
+ `;
155
+ const [rows] = await getClient().query(query);
156
+ // Parse the payload as JSON if it's a string
157
+ return rows.map((row) => ({
158
+ ...row,
159
+ payload: typeof row.payload === 'string' ? JSON.parse(row.payload) : row.payload,
160
+ }));
161
+ }
162
+ async function getTracesWithRelabels(model, limit = 100, dataset = DATASET) {
163
+ // Get traces that DO have matching relabels for the specified model
164
+ const query = `
165
+ SELECT
166
+ ANY_VALUE(t) as trace,
167
+ ARRAY_AGG(r ORDER BY r.created_at DESC LIMIT 1)[OFFSET(0)] as relabel
168
+ FROM \`${dataset}.${TRACES_TABLE}\` t
169
+ INNER JOIN (
170
+ SELECT *
171
+ FROM \`${dataset}.${RELABELS_TABLE}\` r
172
+ WHERE r.model = '${model}'
173
+ ) r
174
+ ON t.agent_step_id = r.agent_step_id
175
+ AND t.user_id = r.user_id
176
+ AND JSON_EXTRACT_SCALAR(t.payload, '$.user_input_id') = JSON_EXTRACT_SCALAR(r.payload, '$.user_input_id')
177
+ WHERE t.type = 'get-relevant-files'
178
+ AND JSON_EXTRACT_SCALAR(t.payload, '$.output') IS NOT NULL
179
+ AND JSON_EXTRACT_SCALAR(r.payload, '$.output') IS NOT NULL
180
+ GROUP BY t.agent_step_id
181
+ ORDER BY MAX(t.created_at) DESC
182
+ LIMIT ${limit}
183
+ `;
184
+ const [rows] = await getClient().query(query);
185
+ // Filter out any results where either trace or relabel data is missing
186
+ const res = rows
187
+ .filter((row) => row.trace && row.relabel)
188
+ .map((row) => ({
189
+ trace: row.trace,
190
+ relabel: row.relabel,
191
+ }));
192
+ // Parse the payload as JSON if it's a string
193
+ return res.map((row) => ({
194
+ ...row,
195
+ trace: {
196
+ ...row.trace,
197
+ payload: typeof row.trace.payload === 'string'
198
+ ? JSON.parse(row.trace.payload)
199
+ : row.trace.payload,
200
+ },
201
+ relabel: {
202
+ ...row.relabel,
203
+ payload: typeof row.relabel.payload === 'string'
204
+ ? JSON.parse(row.relabel.payload)
205
+ : row.relabel.payload,
206
+ },
207
+ }));
208
+ }
209
+ async function getTracesAndRelabelsForUser(userId, limit = 50, dataset = DATASET) {
210
+ // Get recent traces for the user and any associated relabels
211
+ const query = `
212
+ WITH traces AS (
213
+ SELECT
214
+ id,
215
+ agent_step_id,
216
+ user_id,
217
+ created_at,
218
+ type,
219
+ payload
220
+ FROM \`${dataset}.${TRACES_TABLE}\`
221
+ WHERE user_id = '${userId}' AND type = 'get-relevant-files'
222
+ ORDER BY created_at DESC
223
+ LIMIT ${limit}
224
+ )
225
+ SELECT
226
+ t.id,
227
+ ANY_VALUE(t.agent_step_id) as agent_step_id,
228
+ ANY_VALUE(t.user_id) as user_id,
229
+ ANY_VALUE(t.created_at) as created_at,
230
+ ANY_VALUE(t.type) as type,
231
+ ANY_VALUE(t.payload) as payload,
232
+ ARRAY_AGG(r IGNORE NULLS) as relabels
233
+ FROM traces t
234
+ LEFT JOIN \`${dataset}.${RELABELS_TABLE}\` r
235
+ ON t.agent_step_id = r.agent_step_id
236
+ AND t.user_id = r.user_id
237
+ AND JSON_EXTRACT_SCALAR(t.payload, '$.user_input_id') = JSON_EXTRACT_SCALAR(r.payload, '$.user_input_id')
238
+ GROUP BY t.id
239
+ ORDER BY ANY_VALUE(t.created_at) DESC
240
+ `;
241
+ const [rows] = await getClient().query(query);
242
+ // Process and parse the results
243
+ return rows.map((row) => {
244
+ // Create trace object from individual fields
245
+ const trace = {
246
+ id: row.id,
247
+ agent_step_id: row.agent_step_id,
248
+ user_id: row.user_id,
249
+ created_at: row.created_at,
250
+ type: row.type,
251
+ payload: typeof row.payload === 'string' ? JSON.parse(row.payload) : row.payload,
252
+ };
253
+ // Parse relabel payloads (if any exist)
254
+ const relabels = row.relabels && row.relabels.length > 0
255
+ ? row.relabels.map((relabel) => ({
256
+ ...relabel,
257
+ payload: typeof relabel.payload === 'string'
258
+ ? JSON.parse(relabel.payload)
259
+ : relabel.payload,
260
+ }))
261
+ : [];
262
+ return { trace, relabels };
263
+ });
264
+ }
265
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/bigquery/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ import { TableSchema } from '@google-cloud/bigquery';
2
+ interface BaseEvent {
3
+ id: string;
4
+ agent_step_id: string;
5
+ user_id: string;
6
+ }
7
+ interface BasePayload {
8
+ user_input_id: string;
9
+ client_session_id: string;
10
+ fingerprint_id: string;
11
+ }
12
+ export type TraceType = 'get-relevant-files' | 'file-trees' | 'agent-response';
13
+ export interface BaseTrace extends BaseEvent {
14
+ created_at: Date;
15
+ type: TraceType;
16
+ payload: unknown;
17
+ }
18
+ export interface GetRelevantFilesPayload extends BasePayload {
19
+ messages: unknown;
20
+ system: unknown;
21
+ output: string;
22
+ request_type: string;
23
+ cost_mode: string;
24
+ model?: string;
25
+ }
26
+ export interface GetRelevantFilesTrace extends BaseTrace {
27
+ type: 'get-relevant-files';
28
+ payload: GetRelevantFilesPayload;
29
+ }
30
+ interface FileTreePayload extends BasePayload {
31
+ filetrees: Record<number, string>;
32
+ }
33
+ export interface FileTreeTrace extends BaseTrace {
34
+ type: 'file-trees';
35
+ payload: FileTreePayload;
36
+ }
37
+ interface AgentResponsePayload extends BasePayload {
38
+ output: string;
39
+ }
40
+ export interface AgentResponseTrace extends BaseTrace {
41
+ type: 'agent-response';
42
+ payload: AgentResponsePayload;
43
+ }
44
+ export type Trace = GetRelevantFilesTrace | FileTreeTrace | AgentResponseTrace;
45
+ export declare const TRACES_SCHEMA: TableSchema;
46
+ interface RelabelPayload extends BasePayload {
47
+ output: string;
48
+ }
49
+ export interface Relabel extends BaseEvent {
50
+ created_at: Date;
51
+ model: string;
52
+ payload: RelabelPayload;
53
+ }
54
+ export declare const RELABELS_SCHEMA: TableSchema;
55
+ export {};
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RELABELS_SCHEMA = exports.TRACES_SCHEMA = void 0;
4
+ exports.TRACES_SCHEMA = {
5
+ fields: [
6
+ { name: 'id', type: 'STRING', mode: 'REQUIRED' }, // UUID
7
+ { name: 'agent_step_id', type: 'STRING', mode: 'REQUIRED' }, // Used to link traces together within a single agent step
8
+ { name: 'user_id', type: 'STRING', mode: 'REQUIRED' }, // user ID
9
+ { name: 'created_at', type: 'TIMESTAMP', mode: 'REQUIRED' },
10
+ { name: 'type', type: 'STRING', mode: 'REQUIRED' },
11
+ { name: 'payload', type: 'JSON', mode: 'REQUIRED' },
12
+ ],
13
+ };
14
+ exports.RELABELS_SCHEMA = {
15
+ fields: [
16
+ { name: 'id', type: 'STRING', mode: 'REQUIRED' }, // UUID
17
+ { name: 'agent_step_id', type: 'STRING', mode: 'REQUIRED' }, // Used to link traces together within a single agent step
18
+ { name: 'user_id', type: 'STRING', mode: 'REQUIRED' }, // user ID
19
+ { name: 'created_at', type: 'TIMESTAMP', mode: 'REQUIRED' },
20
+ { name: 'model', type: 'STRING', mode: 'REQUIRED' },
21
+ { name: 'payload', type: 'JSON', mode: 'REQUIRED' },
22
+ ],
23
+ };
24
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/bigquery/schema.ts"],"names":[],"mappings":";;;AA4Da,QAAA,aAAa,GAAgB;IACxC,MAAM,EAAE;QACN,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,OAAO;QACzD,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,0DAA0D;QACvH,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,UAAU;QACjE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE;QAC3D,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE;QAClD,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE;KACpD;CACF,CAAA;AAYY,QAAA,eAAe,GAAgB;IAC1C,MAAM,EAAE;QACN,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,OAAO;QACzD,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,0DAA0D;QACvH,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,UAAU;QACjE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE;QAC3D,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE;QACnD,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE;KACpD;CACF,CAAA"}
@@ -12,7 +12,8 @@ export declare enum AnalyticsEvent {
12
12
  LOGIN = "cli.login",
13
13
  TERMINAL_COMMAND_COMPLETED = "cli.terminal_command_completed",
14
14
  MALFORMED_PROMPT_RESPONSE = "cli.malformed_prompt_response",
15
- PROMPT_SENT = "backend.prompt_sent",
15
+ USER_INPUT = "backend.user_input",
16
+ AGENT_STEP = "backend.agent_step",
16
17
  CREDIT_GRANT = "backend.credit_grant",
17
18
  CREDIT_CONSUMED = "backend.credit_consumed",
18
19
  TOOL_USE = "backend.tool_use",
@@ -18,7 +18,8 @@ var AnalyticsEvent;
18
18
  AnalyticsEvent["TERMINAL_COMMAND_COMPLETED"] = "cli.terminal_command_completed";
19
19
  AnalyticsEvent["MALFORMED_PROMPT_RESPONSE"] = "cli.malformed_prompt_response";
20
20
  // Backend
21
- AnalyticsEvent["PROMPT_SENT"] = "backend.prompt_sent";
21
+ AnalyticsEvent["USER_INPUT"] = "backend.user_input";
22
+ AnalyticsEvent["AGENT_STEP"] = "backend.agent_step";
22
23
  AnalyticsEvent["CREDIT_GRANT"] = "backend.credit_grant";
23
24
  AnalyticsEvent["CREDIT_CONSUMED"] = "backend.credit_consumed";
24
25
  AnalyticsEvent["TOOL_USE"] = "backend.tool_use";
@@ -1 +1 @@
1
- {"version":3,"file":"analytics-events.js","sourceRoot":"","sources":["../../src/constants/analytics-events.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,cAqBX;AArBD,WAAY,cAAc;IACxB,MAAM;IACN,mDAAiC,CAAA;IACjC,iFAA+D,CAAA;IAC/D,uEAAqD,CAAA;IACrD,mGAAiF,CAAA;IACjF,2EAAyD,CAAA;IACzD,2DAAyC,CAAA;IACzC,yEAAuD,CAAA;IACvD,qCAAmB,CAAA;IACnB,+EAA6D,CAAA;IAC7D,6EAA2D,CAAA;IAE3D,UAAU;IACV,qDAAmC,CAAA;IACnC,uDAAqC,CAAA;IACrC,6DAA2C,CAAA;IAC3C,+CAA6B,CAAA;IAE7B,MAAM;IACN,uCAAqB,CAAA;AACvB,CAAC,EArBW,cAAc,8BAAd,cAAc,QAqBzB"}
1
+ {"version":3,"file":"analytics-events.js","sourceRoot":"","sources":["../../src/constants/analytics-events.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,cAsBX;AAtBD,WAAY,cAAc;IACxB,MAAM;IACN,mDAAiC,CAAA;IACjC,iFAA+D,CAAA;IAC/D,uEAAqD,CAAA;IACrD,mGAAiF,CAAA;IACjF,2EAAyD,CAAA;IACzD,2DAAyC,CAAA;IACzC,yEAAuD,CAAA;IACvD,qCAAmB,CAAA;IACnB,+EAA6D,CAAA;IAC7D,6EAA2D,CAAA;IAE3D,UAAU;IACV,mDAAiC,CAAA;IACjC,mDAAiC,CAAA;IACjC,uDAAqC,CAAA;IACrC,6DAA2C,CAAA;IAC3C,+CAA6B,CAAA;IAE7B,MAAM;IACN,uCAAqB,CAAA;AACvB,CAAC,EAtBW,cAAc,8BAAd,cAAc,QAsBzB"}
@@ -10,7 +10,6 @@ export declare const toolSchema: {
10
10
  think_deeply: string[];
11
11
  create_plan: string[];
12
12
  browser_logs: string[];
13
- await_tool_results: never[];
14
13
  end_turn: never[];
15
14
  };
16
15
  export type ToolName = keyof typeof toolSchema;
@@ -17,9 +17,7 @@ exports.toolSchema = {
17
17
  think_deeply: ['thought'],
18
18
  create_plan: ['path', 'plan'],
19
19
  browser_logs: ['type', 'url', 'waitUntil'],
20
- // Simple tools
21
- await_tool_results: [], // No parameters
22
- end_turn: [], // No parameters
20
+ end_turn: [],
23
21
  };
24
22
  // List of all available tools
25
23
  exports.TOOL_LIST = Object.keys(exports.toolSchema);
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/constants/tools.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG;IACxB,yCAAyC;IACzC,WAAW,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;IACzD,cAAc,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;IAE/C,kBAAkB;IAClB,UAAU,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;IAC/B,WAAW,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC;IACnC,UAAU,EAAE,CAAC,OAAO,CAAC;IACrB,UAAU,EAAE,CAAC,aAAa,CAAC;IAE3B,sBAAsB;IACtB,WAAW,EAAE,CAAC,SAAS,CAAC;IACxB,oBAAoB,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,iBAAiB,CAAC;IAE3E,iBAAiB;IACjB,YAAY,EAAE,CAAC,SAAS,CAAC;IACzB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;IAE7B,YAAY,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC;IAE1C,eAAe;IACf,kBAAkB,EAAE,EAAE,EAAE,gBAAgB;IACxC,QAAQ,EAAE,EAAE,EAAE,gBAAgB;CAC/B,CAAA;AAID,8BAA8B;AACjB,QAAA,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAU,CAAe,CAAA;AAEvD,MAAM,iBAAiB,GAAG,CAC/B,QAAkB,EAClB,MAA8B,EAC9B,EAAE;IACF,MAAM,OAAO,GAAG,IAAI,QAAQ,GAAG,CAAA;IAC/B,MAAM,QAAQ,GAAG,KAAK,QAAQ,GAAG,CAAA;IAEjC,0CAA0C;IAC1C,MAAM,UAAU,GAAG,kBAAU,CAAC,QAAQ,CAAa,CAAA;IAEnD,4DAA4D;IAC5D,MAAM,aAAa,GAAG,UAAU;SAC7B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,iDAAiD;SACpF,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,CAAA;IAE1D,wDAAwD;IACxD,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SAC5C,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAChD,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,KAAK,KAAK,KAAK,GAAG,CAAC,CAAA;IAE3D,4CAA4C;IAC5C,MAAM,YAAY,GAAG,CAAC,GAAG,aAAa,EAAE,GAAG,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEvE,OAAO,YAAY;QACjB,CAAC,CAAC,GAAG,OAAO,KAAK,YAAY,KAAK,QAAQ,EAAE;QAC5C,CAAC,CAAC,GAAG,OAAO,GAAG,QAAQ,EAAE,CAAA;AAC7B,CAAC,CAAA;AA1BY,QAAA,iBAAiB,qBA0B7B"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/constants/tools.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG;IACxB,yCAAyC;IACzC,WAAW,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;IACzD,cAAc,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;IAE/C,kBAAkB;IAClB,UAAU,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;IAC/B,WAAW,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC;IACnC,UAAU,EAAE,CAAC,OAAO,CAAC;IACrB,UAAU,EAAE,CAAC,aAAa,CAAC;IAE3B,sBAAsB;IACtB,WAAW,EAAE,CAAC,SAAS,CAAC;IACxB,oBAAoB,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,iBAAiB,CAAC;IAE3E,iBAAiB;IACjB,YAAY,EAAE,CAAC,SAAS,CAAC;IACzB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;IAE7B,YAAY,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC;IAE1C,QAAQ,EAAE,EAAE;CACb,CAAA;AAID,8BAA8B;AACjB,QAAA,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAU,CAAe,CAAA;AAEvD,MAAM,iBAAiB,GAAG,CAC/B,QAAkB,EAClB,MAA8B,EAC9B,EAAE;IACF,MAAM,OAAO,GAAG,IAAI,QAAQ,GAAG,CAAA;IAC/B,MAAM,QAAQ,GAAG,KAAK,QAAQ,GAAG,CAAA;IAEjC,0CAA0C;IAC1C,MAAM,UAAU,GAAG,kBAAU,CAAC,QAAQ,CAAa,CAAA;IAEnD,4DAA4D;IAC5D,MAAM,aAAa,GAAG,UAAU;SAC7B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,iDAAiD;SACpF,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,CAAA;IAE1D,wDAAwD;IACxD,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SAC5C,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAChD,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,KAAK,KAAK,KAAK,GAAG,CAAC,CAAA;IAE3D,4CAA4C;IAC5C,MAAM,YAAY,GAAG,CAAC,GAAG,aAAa,EAAE,GAAG,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEvE,OAAO,YAAY;QACjB,CAAC,CAAC,GAAG,OAAO,KAAK,YAAY,KAAK,QAAQ,EAAE;QAC5C,CAAC,CAAC,GAAG,OAAO,GAAG,QAAQ,EAAE,CAAA;AAC7B,CAAC,CAAA;AA1BY,QAAA,iBAAiB,qBA0B7B"}
@@ -1,6 +1,6 @@
1
1
  export declare const ReferralStatus: import("drizzle-orm/pg-core").PgEnum<[import("../types/referral").ReferralStatus, ...import("../types/referral").ReferralStatus[]]>;
2
2
  export declare const apiKeyTypeEnum: import("drizzle-orm/pg-core").PgEnum<["anthropic", "gemini", "openai"]>;
3
- export declare const grantTypeEnum: import("drizzle-orm/pg-core").PgEnum<[import("../types/grant").GrantType, ...import("../types/grant").GrantType[]]>;
3
+ export declare const grantTypeEnum: import("drizzle-orm/pg-core").PgEnum<["free", ...("free" | "referral" | "purchase" | "admin")[]]>;
4
4
  export type GrantType = (typeof grantTypeEnum.enumValues)[number];
5
5
  export declare const user: import("drizzle-orm/pg-core").PgTableWithColumns<{
6
6
  name: "user";
@@ -569,14 +569,14 @@ export declare const creditLedger: import("drizzle-orm/pg-core").PgTableWithColu
569
569
  tableName: "credit_ledger";
570
570
  dataType: "string";
571
571
  columnType: "PgEnumColumn";
572
- data: import("../types/grant").GrantType;
572
+ data: "free" | "referral" | "purchase" | "admin";
573
573
  driverParam: string;
574
574
  notNull: true;
575
575
  hasDefault: false;
576
576
  isPrimaryKey: false;
577
577
  isAutoincrement: false;
578
578
  hasRuntimeDefault: false;
579
- enumValues: [import("../types/grant").GrantType, ...import("../types/grant").GrantType[]];
579
+ enumValues: ["free", ...("free" | "referral" | "purchase" | "admin")[]];
580
580
  baseColumn: never;
581
581
  identity: undefined;
582
582
  generated: undefined;
@@ -1385,7 +1385,7 @@ export declare const encryptedApiKeys: import("drizzle-orm/pg-core").PgTableWith
1385
1385
  tableName: "encrypted_api_keys";
1386
1386
  dataType: "string";
1387
1387
  columnType: "PgEnumColumn";
1388
- data: "gemini" | "anthropic" | "openai";
1388
+ data: "anthropic" | "gemini" | "openai";
1389
1389
  driverParam: string;
1390
1390
  notNull: true;
1391
1391
  hasDefault: false;
@@ -179,16 +179,16 @@ export declare const AgentStateSchema: z.ZodObject<{
179
179
  type: "ephemeral";
180
180
  }>>;
181
181
  }, "strip", z.ZodTypeAny, {
182
- type: "tool_use";
183
182
  name: string;
183
+ type: "tool_use";
184
184
  id: string;
185
185
  input: Record<string, any>;
186
186
  cache_control?: {
187
187
  type: "ephemeral";
188
188
  } | undefined;
189
189
  }, {
190
- type: "tool_use";
191
190
  name: string;
191
+ type: "tool_use";
192
192
  id: string;
193
193
  input: Record<string, any>;
194
194
  cache_control?: {
@@ -206,15 +206,15 @@ export declare const AgentStateSchema: z.ZodObject<{
206
206
  type: "ephemeral";
207
207
  }>>;
208
208
  }, "strip", z.ZodTypeAny, {
209
- content: string;
210
209
  type: "tool_result";
210
+ content: string;
211
211
  tool_use_id: string;
212
212
  cache_control?: {
213
213
  type: "ephemeral";
214
214
  } | undefined;
215
215
  }, {
216
- content: string;
217
216
  type: "tool_result";
217
+ content: string;
218
218
  tool_use_id: string;
219
219
  cache_control?: {
220
220
  type: "ephemeral";
@@ -270,16 +270,16 @@ export declare const AgentStateSchema: z.ZodObject<{
270
270
  type: "ephemeral";
271
271
  } | undefined;
272
272
  } | {
273
- type: "tool_use";
274
273
  name: string;
274
+ type: "tool_use";
275
275
  id: string;
276
276
  input: Record<string, any>;
277
277
  cache_control?: {
278
278
  type: "ephemeral";
279
279
  } | undefined;
280
280
  } | {
281
- content: string;
282
281
  type: "tool_result";
282
+ content: string;
283
283
  tool_use_id: string;
284
284
  cache_control?: {
285
285
  type: "ephemeral";
@@ -304,16 +304,16 @@ export declare const AgentStateSchema: z.ZodObject<{
304
304
  type: "ephemeral";
305
305
  } | undefined;
306
306
  } | {
307
- type: "tool_use";
308
307
  name: string;
308
+ type: "tool_use";
309
309
  id: string;
310
310
  input: Record<string, any>;
311
311
  cache_control?: {
312
312
  type: "ephemeral";
313
313
  } | undefined;
314
314
  } | {
315
- content: string;
316
315
  type: "tool_result";
316
+ content: string;
317
317
  tool_use_id: string;
318
318
  cache_control?: {
319
319
  type: "ephemeral";
@@ -370,16 +370,16 @@ export declare const AgentStateSchema: z.ZodObject<{
370
370
  type: "ephemeral";
371
371
  } | undefined;
372
372
  } | {
373
- type: "tool_use";
374
373
  name: string;
374
+ type: "tool_use";
375
375
  id: string;
376
376
  input: Record<string, any>;
377
377
  cache_control?: {
378
378
  type: "ephemeral";
379
379
  } | undefined;
380
380
  } | {
381
- content: string;
382
381
  type: "tool_result";
382
+ content: string;
383
383
  tool_use_id: string;
384
384
  cache_control?: {
385
385
  type: "ephemeral";
@@ -436,16 +436,16 @@ export declare const AgentStateSchema: z.ZodObject<{
436
436
  type: "ephemeral";
437
437
  } | undefined;
438
438
  } | {
439
- type: "tool_use";
440
439
  name: string;
440
+ type: "tool_use";
441
441
  id: string;
442
442
  input: Record<string, any>;
443
443
  cache_control?: {
444
444
  type: "ephemeral";
445
445
  } | undefined;
446
446
  } | {
447
- content: string;
448
447
  type: "tool_result";
448
+ content: string;
449
449
  tool_use_id: string;
450
450
  cache_control?: {
451
451
  type: "ephemeral";
@@ -1,2 +1,2 @@
1
1
  export type GrantType = 'free' | 'referral' | 'purchase' | 'admin';
2
- export declare const GrantTypeValues: GrantType[];
2
+ export declare const GrantTypeValues: readonly ["free", "referral", "purchase", "admin"];
@@ -1 +1 @@
1
- {"version":3,"file":"grant.js","sourceRoot":"","sources":["../../src/types/grant.ts"],"names":[],"mappings":";;;AAEa,QAAA,eAAe,GAAgB;IAC1C,MAAM;IACN,UAAU;IACV,UAAU;IACV,OAAO;CACR,CAAA"}
1
+ {"version":3,"file":"grant.js","sourceRoot":"","sources":["../../src/types/grant.ts"],"names":[],"mappings":";;;AAEa,QAAA,eAAe,GAAG;IAC7B,MAAM;IACN,UAAU;IACV,UAAU;IACV,OAAO;CACC,CAAC"}
@@ -5,36 +5,36 @@ export declare const usageDataSchema: z.ZodObject<{
5
5
  totalRemaining: z.ZodNumber;
6
6
  totalDebt: z.ZodNumber;
7
7
  netBalance: z.ZodNumber;
8
- breakdown: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
8
+ breakdown: z.ZodRecord<z.ZodEnum<["free", "referral", "purchase", "admin"]>, z.ZodNumber>;
9
9
  }, "strip", z.ZodTypeAny, {
10
10
  totalRemaining: number;
11
11
  totalDebt: number;
12
12
  netBalance: number;
13
- breakdown?: Record<string, number> | undefined;
13
+ breakdown: Partial<Record<"free" | "referral" | "purchase" | "admin", number>>;
14
14
  }, {
15
15
  totalRemaining: number;
16
16
  totalDebt: number;
17
17
  netBalance: number;
18
- breakdown?: Record<string, number> | undefined;
18
+ breakdown: Partial<Record<"free" | "referral" | "purchase" | "admin", number>>;
19
19
  }>;
20
20
  nextQuotaReset: z.ZodNullable<z.ZodDate>;
21
21
  }, "strip", z.ZodTypeAny, {
22
+ usageThisCycle: number;
22
23
  balance: {
23
24
  totalRemaining: number;
24
25
  totalDebt: number;
25
26
  netBalance: number;
26
- breakdown?: Record<string, number> | undefined;
27
+ breakdown: Partial<Record<"free" | "referral" | "purchase" | "admin", number>>;
27
28
  };
28
- usageThisCycle: number;
29
29
  nextQuotaReset: Date | null;
30
30
  }, {
31
+ usageThisCycle: number;
31
32
  balance: {
32
33
  totalRemaining: number;
33
34
  totalDebt: number;
34
35
  netBalance: number;
35
- breakdown?: Record<string, number> | undefined;
36
+ breakdown: Partial<Record<"free" | "referral" | "purchase" | "admin", number>>;
36
37
  };
37
- usageThisCycle: number;
38
38
  nextQuotaReset: Date | null;
39
39
  }>;
40
40
  export type UsageData = z.infer<typeof usageDataSchema>;
@@ -2,13 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.usageDataSchema = void 0;
4
4
  const zod_1 = require("zod");
5
+ const grant_1 = require("./grant");
5
6
  exports.usageDataSchema = zod_1.z.object({
6
7
  usageThisCycle: zod_1.z.number(),
7
8
  balance: zod_1.z.object({
8
9
  totalRemaining: zod_1.z.number(),
9
10
  totalDebt: zod_1.z.number(),
10
11
  netBalance: zod_1.z.number(),
11
- breakdown: zod_1.z.record(zod_1.z.string(), zod_1.z.number()).optional(),
12
+ breakdown: zod_1.z.record(zod_1.z.enum(grant_1.GrantTypeValues), zod_1.z.number()),
12
13
  }),
13
14
  nextQuotaReset: zod_1.z.coerce.date().nullable(),
14
15
  });