SpanPresenter: use org event repository
This commit is contained in:
@@ -21,7 +21,6 @@ import { isFailedRunStatus, isFinalRunStatus } from "~/v3/taskStatus";
|
||||
import { BasePresenter } from "./basePresenter.server";
|
||||
import { WaitpointPresenter } from "./WaitpointPresenter.server";
|
||||
import { engine } from "~/v3/runEngine.server";
|
||||
import { resolveEventRepositoryForStore } from "~/v3/eventRepository/index.server";
|
||||
import { IEventRepository, SpanDetail } from "~/v3/eventRepository/eventRepository.types";
|
||||
import { safeJsonParse } from "~/utils/json";
|
||||
import {
|
||||
@@ -30,6 +29,7 @@ import {
|
||||
extractAIToolCallData,
|
||||
extractAIEmbedData,
|
||||
} from "~/components/runs/v3/ai";
|
||||
import { clickhouseFactory } from "~/services/clickhouse/clickhouseFactory.server";
|
||||
|
||||
export type PromptSpanData = {
|
||||
slug: string;
|
||||
@@ -42,9 +42,7 @@ export type PromptSpanData = {
|
||||
config?: string;
|
||||
};
|
||||
|
||||
function extractPromptSpanData(
|
||||
properties: Record<string, unknown>
|
||||
): PromptSpanData | undefined {
|
||||
function extractPromptSpanData(properties: Record<string, unknown>): PromptSpanData | undefined {
|
||||
// Properties come as an unflattened nested object from ClickHouse,
|
||||
// e.g. { prompt: { slug: "...", version: 3, ... } }
|
||||
const prompt = properties.prompt;
|
||||
@@ -132,14 +130,17 @@ export class SpanPresenter extends BasePresenter {
|
||||
|
||||
const { traceId } = parentRun;
|
||||
|
||||
const eventRepository = resolveEventRepositoryForStore(parentRun.taskEventStore);
|
||||
const { repository } = await clickhouseFactory.getEventRepositoryForOrganization(
|
||||
parentRun.taskEventStore,
|
||||
project.organizationId
|
||||
);
|
||||
|
||||
const eventStore = getTaskEventStoreTableForRun(parentRun);
|
||||
|
||||
const run = await this.getRun({
|
||||
eventStore,
|
||||
traceId,
|
||||
eventRepository,
|
||||
eventRepository: repository,
|
||||
spanId,
|
||||
linkedRunId,
|
||||
createdAt: parentRun.createdAt,
|
||||
@@ -161,7 +162,7 @@ export class SpanPresenter extends BasePresenter {
|
||||
projectId: parentRun.projectId,
|
||||
createdAt: parentRun.createdAt,
|
||||
completedAt: parentRun.completedAt,
|
||||
eventRepository,
|
||||
eventRepository: repository,
|
||||
});
|
||||
|
||||
if (!span) {
|
||||
@@ -592,10 +593,7 @@ export class SpanPresenter extends BasePresenter {
|
||||
triggeredRuns,
|
||||
aiData:
|
||||
span.properties && typeof span.properties === "object"
|
||||
? extractAISpanData(
|
||||
span.properties as Record<string, unknown>,
|
||||
span.duration / 1_000_000
|
||||
)
|
||||
? extractAISpanData(span.properties as Record<string, unknown>, span.duration / 1_000_000)
|
||||
: undefined,
|
||||
};
|
||||
|
||||
@@ -739,10 +737,7 @@ export class SpanPresenter extends BasePresenter {
|
||||
"ai.streamObject",
|
||||
];
|
||||
|
||||
if (
|
||||
typeof span.message === "string" &&
|
||||
AI_SUMMARY_MESSAGES.includes(span.message)
|
||||
) {
|
||||
if (typeof span.message === "string" && AI_SUMMARY_MESSAGES.includes(span.message)) {
|
||||
const aiSummaryData = extractAISummarySpanData(
|
||||
span.properties as Record<string, unknown>,
|
||||
span.duration / 1_000_000
|
||||
|
||||
Reference in New Issue
Block a user