@@ -21,7 +21,7 @@ import {
2121 SectionsGroup ,
2222} from "~/components/layout/PageLayout" ;
2323import { Badge } from "~/components/ui/badge" ;
24- import { useConfig } from "~/context/config" ;
24+ import { useFunctionConfig } from "~/context/config" ;
2525import { resolvedInputToTensorZeroInput } from "~/routes/api/tensorzero/inference" ;
2626import {
2727 prepareInferenceActionRequest ,
@@ -37,7 +37,7 @@ import {
3737 getDatasetCounts ,
3838 staleDatapoint ,
3939} from "~/utils/clickhouse/datasets.server" ;
40- import { getConfig } from "~/utils/config/index.server" ;
40+ import { getConfig , getFunctionConfig } from "~/utils/config/index.server" ;
4141import { logger } from "~/utils/logger" ;
4242import { getTensorZeroClient } from "~/utils/tensorzero.server" ;
4343import type { Route } from "./+types/route" ;
@@ -77,7 +77,10 @@ export async function action({ request }: ActionFunctionArgs) {
7777 const parsedFormData : ParsedDatasetRow =
7878 ParsedDatasetRowSchema . parse ( cleanedData ) ;
7979 const config = await getConfig ( ) ;
80- const functionConfig = config . functions [ parsedFormData . function_name ] ;
80+ const functionConfig = await getFunctionConfig (
81+ parsedFormData . function_name ,
82+ config ,
83+ ) ;
8184 if ( ! functionConfig ) {
8285 return new Response (
8386 `Failed to find function config for function ${ parsedFormData . function_name } ` ,
@@ -198,7 +201,6 @@ export default function DatapointPage({ loaderData }: Route.ComponentProps) {
198201 const [ output , setOutput ] = useState < typeof datapoint . output > (
199202 datapoint . output ,
200203 ) ;
201- const config = useConfig ( ) ;
202204 const [ isEditing , setIsEditing ] = useState ( false ) ;
203205
204206 const canSave = useMemo ( ( ) => {
@@ -259,9 +261,8 @@ export default function DatapointPage({ loaderData }: Route.ComponentProps) {
259261 }
260262 } ;
261263
262- const variants = Object . keys (
263- config . functions [ datapoint . function_name ] ?. variants || { } ,
264- ) ;
264+ const functionConfig = useFunctionConfig ( datapoint . function_name ) ;
265+ const variants = Object . keys ( functionConfig ?. variants || { } ) ;
265266
266267 const variantInferenceFetcher = useInferenceActionFetcher ( ) ;
267268 const variantSource = "datapoint" ;
0 commit comments