Просмотр исходного кода

fix(core): log stack trace when schema validation fails (#16401)

James Long 1 месяц назад
Родитель
Сommit
a2634337b8
1 измененных файлов с 8 добавлено и 1 удалено
  1. 8 1
      packages/opencode/src/util/fn.ts

+ 8 - 1
packages/opencode/src/util/fn.ts

@@ -2,7 +2,14 @@ import { z } from "zod"
 
 
 export function fn<T extends z.ZodType, Result>(schema: T, cb: (input: z.infer<T>) => Result) {
 export function fn<T extends z.ZodType, Result>(schema: T, cb: (input: z.infer<T>) => Result) {
   const result = (input: z.infer<T>) => {
   const result = (input: z.infer<T>) => {
-    const parsed = schema.parse(input)
+    let parsed
+    try {
+      parsed = schema.parse(input)
+    } catch (e) {
+      console.trace("schema validation failure stack trace:")
+      throw e
+    }
+
     return cb(parsed)
     return cb(parsed)
   }
   }
   result.force = (input: z.infer<T>) => cb(input)
   result.force = (input: z.infer<T>) => cb(input)