|
|
@@ -17,7 +17,7 @@ import type { Provider } from "@/provider"
|
|
|
import { ModelID, ProviderID } from "@/provider/schema"
|
|
|
import { Effect, Schema, Types } from "effect"
|
|
|
import { zod, ZodOverride } from "@/util/effect-zod"
|
|
|
-import { withStatics } from "@/util/schema"
|
|
|
+import { NonNegativeInt, withStatics } from "@/util/schema"
|
|
|
import { namedSchemaError } from "@/util/named-schema-error"
|
|
|
import { EffectLogger } from "@/effect"
|
|
|
|
|
|
@@ -64,9 +64,7 @@ export class OutputFormatText extends Schema.Class<OutputFormatText>("OutputForm
|
|
|
export class OutputFormatJsonSchema extends Schema.Class<OutputFormatJsonSchema>("OutputFormatJsonSchema")({
|
|
|
type: Schema.Literal("json_schema"),
|
|
|
schema: Schema.Record(Schema.String, Schema.Any).annotate({ identifier: "JSONSchema" }),
|
|
|
- retryCount: Schema.Number.check(Schema.isInt())
|
|
|
- .check(Schema.isGreaterThanOrEqualTo(0))
|
|
|
- .pipe(Schema.optional, Schema.withDecodingDefault(Effect.succeed(2))),
|
|
|
+ retryCount: NonNegativeInt.pipe(Schema.optional, Schema.withDecodingDefault(Effect.succeed(2))),
|
|
|
}) {
|
|
|
static readonly zod = zod(this)
|
|
|
}
|
|
|
@@ -138,8 +136,8 @@ export type ReasoningPart = Types.DeepMutable<Schema.Schema.Type<typeof Reasonin
|
|
|
const filePartSourceBase = {
|
|
|
text: Schema.Struct({
|
|
|
value: Schema.String,
|
|
|
- start: Schema.Number.check(Schema.isInt()),
|
|
|
- end: Schema.Number.check(Schema.isInt()),
|
|
|
+ start: Schema.Int,
|
|
|
+ end: Schema.Int,
|
|
|
}).annotate({ identifier: "FilePartSourceText" }),
|
|
|
}
|
|
|
|
|
|
@@ -157,7 +155,7 @@ export const SymbolSource = Schema.Struct({
|
|
|
path: Schema.String,
|
|
|
range: LSP.Range,
|
|
|
name: Schema.String,
|
|
|
- kind: Schema.Number.check(Schema.isInt()),
|
|
|
+ kind: Schema.Int,
|
|
|
})
|
|
|
.annotate({ identifier: "SymbolSource" })
|
|
|
.pipe(withStatics((s) => ({ zod: zod(s) })))
|
|
|
@@ -196,8 +194,8 @@ export const AgentPart = Schema.Struct({
|
|
|
source: Schema.optional(
|
|
|
Schema.Struct({
|
|
|
value: Schema.String,
|
|
|
- start: Schema.Number.check(Schema.isInt()),
|
|
|
- end: Schema.Number.check(Schema.isInt()),
|
|
|
+ start: Schema.Int,
|
|
|
+ end: Schema.Int,
|
|
|
}),
|
|
|
),
|
|
|
})
|
|
|
@@ -501,8 +499,8 @@ export const AgentPartInput = Schema.Struct({
|
|
|
source: Schema.optional(
|
|
|
Schema.Struct({
|
|
|
value: Schema.String,
|
|
|
- start: Schema.Number.check(Schema.isInt()),
|
|
|
- end: Schema.Number.check(Schema.isInt()),
|
|
|
+ start: Schema.Int,
|
|
|
+ end: Schema.Int,
|
|
|
}),
|
|
|
),
|
|
|
})
|