MCPcopy
hub / github.com/CodebuffAI/codebuff / setupBigQuery

Function setupBigQuery

packages/bigquery/src/client.ts:38–115  ·  view source on GitHub ↗
({
  dataset,
  logger,
}: {
  dataset?: string
  logger: Logger
})

Source from the content-addressed store, hash-verified

36}
37
38export async function setupBigQuery({
39 dataset,
40 logger,
41}: {
42 dataset?: string
43 logger: Logger
44}) {
45 if (client) {
46 return
47 }
48 const resolvedDataset = dataset ?? DATASET
49 try {
50 client = new BigQuery()
51
52 // Ensure dataset exists
53 const [ds] = await client.dataset(resolvedDataset).get({ autoCreate: true })
54
55 // Ensure tables exist
56 await ds.table(TRACES_TABLE).get({
57 autoCreate: true,
58 schema: TRACES_SCHEMA,
59 timePartitioning: {
60 type: 'MONTH',
61 field: 'created_at',
62 },
63 clustering: {
64 fields: ['user_id', 'agent_step_id'],
65 },
66 })
67 await ds.table(RELABELS_TABLE).get({
68 autoCreate: true,
69 schema: RELABELS_SCHEMA,
70 timePartitioning: {
71 type: 'MONTH',
72 field: 'created_at',
73 },
74 clustering: {
75 fields: ['user_id', 'agent_step_id'],
76 },
77 })
78 await ds.table(MESSAGE_TABLE).get({
79 autoCreate: true,
80 schema: MESSAGE_SCHEMA,
81 timePartitioning: {
82 type: 'MONTH',
83 field: 'finished_at',
84 },
85 clustering: {
86 fields: ['user_id'],
87 },
88 })
89 await ds.table(CHAT_COMPLETION_TRACES_TABLE).get({
90 autoCreate: true,
91 schema: CHAT_COMPLETION_TRACES_SCHEMA,
92 timePartitioning: {
93 type: 'MONTH',
94 field: 'created_at',
95 },

Callers 5

printRecentTracesFunction · 0.90
printRecentRelabelsFunction · 0.90
insertMessageToBigQueryFunction · 0.90
ensureBigQueryFunction · 0.90

Calls 1

getMethod · 0.65

Tested by

no test coverage detected