agent_patch
runs/2026-02-27__21-30-28__gpt-5-1-codex-mini/flux-pr-3850/flux-pr-3850.1-of-1.2026-02-27__21-30-28__gpt-5-1-codex-mini/agent-logs/agent.patch
21426 bytes
diff --git a/tmp/agent-patch-flux-pr-3850.1-of-1.2026-02-27__21-30-28__gpt-5-1-codex-mini/app/deno/lib/external.ts b/app/deno/lib/external.ts
index b2070f8..c44c2b7 100644
--- a/tmp/agent-patch-flux-pr-3850.1-of-1.2026-02-27__21-30-28__gpt-5-1-codex-mini/app/deno/lib/external.ts
+++ b/app/deno/lib/external.ts
@@ -2,5 +2,6 @@ export * from "./errors.ts";
export * from "./helpers/parseUtil.ts";
export * from "./helpers/typeAliases.ts";
export * from "./helpers/util.ts";
+export * from "./standard-schema.ts";
export * from "./types.ts";
export * from "./ZodError.ts";
diff --git a/app/deno/lib/standard-schema.ts b/app/deno/lib/standard-schema.ts
new file mode 100644
index 0000000..90133f6
--- /dev/null
+++ b/app/deno/lib/standard-schema.ts
@@ -0,0 +1,163 @@
+/** The Standard Typed interface. This is a base type extended by other specs. */
+export interface StandardTypedV1<Input = unknown, Output = Input> {
+ /** The Standard properties. */
+ readonly "~standard": StandardTypedV1.Props<Input, Output>;
+}
+
+export declare namespace StandardTypedV1 {
+ /** The Standard Typed properties interface. */
+ export interface Props<Input = unknown, Output = Input> {
+ /** The version number of the standard. */
+ readonly version: 1;
+ /** The vendor name of the schema library. */
+ readonly vendor: string;
+ /** Inferred types associated with the schema. */
+ readonly types?: Types<Input, Output> | undefined;
+ }
+
+ /** The Standard Typed types interface. */
+ export interface Types<Input = unknown, Output = Input> {
+ /** The input type of the schema. */
+ readonly input: Input;
+ /** The output type of the schema. */
+ readonly output: Output;
+ }
+
+ /** Infers the input type of a Standard Typed. */
+ export type InferInput<Schema extends StandardTypedV1> = NonNullable<
+ Schema["~standard"]["types"]
+ >["input"];
+
+ /** Infers the output type of a Standard Typed. */
+ export type InferOutput<Schema extends StandardTypedV1> = NonNullable<
+ Schema["~standard"]["types"]
+ >["output"];
+}
+
+/** The Standard Schema interface. */
+export interface StandardSchemaV1<Input = unknown, Output = Input> {
+ /** The Standard Schema properties. */
+ readonly "~standard": StandardSchemaV1.Props<Input, Output>;
+}
+
+export declare namespace StandardSchemaV1 {
+ /** The Standard Schema properties interface. */
+ export interface Props<Input = unknown, Output = Input>
+ extends StandardTypedV1.Props<Input, Output> {
+ /** Validates unknown input values. */
+ readonly validate: (
+ value: unknown,
+ options?: StandardSchemaV1.Options | undefined,
+ ) => Result<Output> | Promise<Result<Output>>;
+ }
+
+ /** The result interface of the validate function. */
+ export type Result<Output> = SuccessResult<Output> | FailureResult;
+
+ /** The result interface if validation succeeds. */
+ export interface SuccessResult<Output> {
+ /** The typed output value. */
+ readonly value: Output;
+ /** A falsy value for `issues` indicates success. */
+ readonly issues?: undefined;
+ }
+
+ export interface Options {
+ /** Explicit support for additional vendor-specific parameters, if needed. */
+ readonly libraryOptions?: Record<string, unknown> | undefined;
+ }
+
+ /** The result interface if validation fails. */
+ export interface FailureResult {
+ /** The issues of failed validation. */
+ readonly issues: ReadonlyArray<Issue>;
+ }
+
+ /** The issue interface of the failure output. */
+ export interface Issue {
+ /** The error message of the issue. */
+ readonly message: string;
+ /** The path of the issue, if any. */
+ readonly path?: ReadonlyArray<PropertyKey | PathSegment> | undefined;
+ }
+
+ /** The path segment interface of the issue. */
+ export interface PathSegment {
+ /** The key representing a path segment. */
+ readonly key: PropertyKey;
+ }
+
+ /** The Standard types interface. */
+ export interface Types<Input = unknown, Output = Input>
+ extends StandardTypedV1.Types<Input, Output> {}
+
+ /** Infers the input type of a Standard. */
+ export type InferInput<Schema extends StandardTypedV1> =
+ StandardTypedV1.InferInput<Schema>;
+
+ /** Infers the output type of a Standard. */
+ export type InferOutput<Schema extends StandardTypedV1> =
+ StandardTypedV1.InferOutput<Schema>;
+}
+
+/** The Standard JSON Schema interface. */
+export interface StandardJSONSchemaV1<Input = unknown, Output = Input> {
+ /** The Standard JSON Schema properties. */
+ readonly "~standard": StandardJSONSchemaV1.Props<Input, Output>;
+}
+
+export declare namespace StandardJSONSchemaV1 {
+ /** The Standard JSON Schema properties interface. */
+ export interface Props<Input = unknown, Output = Input>
+ extends StandardTypedV1.Props<Input, Output> {
+ /** Methods for generating the input/output JSON Schema. */
+ readonly jsonSchema: StandardJSONSchemaV1.Converter;
+ }
+
+ /** The Standard JSON Schema converter interface. */
+ export interface Converter {
+ /** Converts the input type to JSON Schema. May throw if conversion is not supported. */
+ readonly input: (
+ options: StandardJSONSchemaV1.Options,
+ ) => Record<string, unknown>;
+ /** Converts the output type to JSON Schema. May throw if conversion is not supported. */
+ readonly output: (
+ options: StandardJSONSchemaV1.Options,
+ ) => Record<string, unknown>;
+ }
+
+ /**
+ * The target version of the generated JSON Schema.
+ *
+ * It is *strongly recommended* that implementers support `"draft-2020-12"` and `"draft-07"`, as they are both in wide use. All other targets can be implemented on a best-effort basis. Libraries should throw if they don't support a specified target.
+ *
+ * The `"openapi-3.0"` target is intended as a standardized specifier for OpenAPI 3.0 which is a superset of JSON Schema `"draft-04"`.
+ */
+ export type Target =
+ | "draft-2020-12"
+ | "draft-07"
+ | "openapi-3.0"
+ // Accepts any string: allows future targets while preserving autocomplete
+ | ({} & string);
+
+ /** The options for the input/output methods. */
+ export interface Options {
+ /** Specifies the target version of the generated JSON Schema. Support for all versions is on a best-effort basis. If a given version is not supported, the library should throw. */
+ readonly target: Target;
+
+ /** Explicit support for additional vendor-specific parameters, if needed. */
+ readonly libraryOptions?: Record<string, unknown> | undefined;
+ }
+
+ /** The Standard types interface. */
+ export interface Types<Input = unknown, Output = Input>
+ extends StandardTypedV1.Types<Input, Output> {}
+
+ /** Infers the input type of a Standard. */
+ export type InferInput<Schema extends StandardTypedV1> =
+ StandardTypedV1.InferInput<Schema>;
+
+ /** Infers the output type of a Standard. */
+ export type InferOutput<Schema extends StandardTypedV1> =
+ StandardTypedV1.InferOutput<Schema>;
+}
diff --git a/tmp/agent-patch-flux-pr-3850.1-of-1.2026-02-27__21-30-28__gpt-5-1-codex-mini/app/deno/lib/types.ts b/app/deno/lib/types.ts
index 3bb8b65..7764a6c 100644
--- a/tmp/agent-patch-flux-pr-3850.1-of-1.2026-02-27__21-30-28__gpt-5-1-codex-mini/app/deno/lib/types.ts
+++ b/app/deno/lib/types.ts
@@ -32,6 +32,7 @@ import {
ZodIssue,
ZodIssueCode,
} from "./ZodError.ts";
+import { StandardSchemaV1 } from "./standard-schema.ts";
///////////////////////////////////////
///////////////////////////////////////
@@ -169,11 +170,12 @@ export abstract class ZodType<
Output = any,
Def extends ZodTypeDef = ZodTypeDef,
Input = Output
-> {
+> implements StandardSchemaV1<Input, Output> {
readonly _type!: Output;
readonly _output!: Output;
readonly _input!: Input;
readonly _def!: Def;
+ readonly ["~standard"]: StandardSchemaV1.Props<Input, Output>;
get description() {
return this._def.description;
@@ -235,6 +237,76 @@ export abstract class ZodType<
return Promise.resolve(result);
}
+ private _createValidationContext(
+ data: unknown,
+ async: boolean,
+ ): ParseContext {
+ return {
+ common: {
+ issues: [],
+ contextualErrorMap: undefined,
+ async,
+ },
+ path: [],
+ schemaErrorMap: this._def.errorMap,
+ parent: null,
+ data,
+ parsedType: getParsedType(data),
+ };
+ }
+
+ private _standardIssues(issues: ZodIssue[]): StandardSchemaV1.Issue[] {
+ return issues.map((issue) => ({
+ message: issue.message,
+ ...(issue.path.length ? { path: issue.path } : {}),
+ }));
+ }
+
+ private _standardResult(
+ ctx: ParseContext,
+ result: SyncParseReturnType<Output>,
+ ): StandardSchemaV1.Result<Output> {
+ if (ctx.common.issues.length) {
+ return { issues: this._standardIssues(ctx.common.issues) };
+ }
+ return { value: result.value };
+ }
+
+ private async _validateAsync(
+ data: unknown,
+ options?: StandardSchemaV1.Options,
+ ): Promise<StandardSchemaV1.Result<Output>> {
+ void options?.libraryOptions;
+ const ctx = this._createValidationContext(data, true);
+ const result = await this._parseAsync({
+ data,
+ path: ctx.path,
+ parent: ctx,
+ });
+ return this._standardResult(ctx, result);
+ }
+
+ private ["~validate"](
+ data: unknown,
+ options?: StandardSchemaV1.Options,
+ ): StandardSchemaV1.Result<Output> | Promise<StandardSchemaV1.Result<Output>> {
+ void options?.libraryOptions;
+ const ctx = this._createValidationContext(data, false);
+ try {
+ const result = this._parseSync({
+ data,
+ path: ctx.path,
+ parent: ctx,
+ });
+ return this._standardResult(ctx, result);
+ } catch (err) {
+ if ((err as Error)?.message?.toLowerCase()?.includes("encountered")) {
+ return this._validateAsync(data, options);
+ }
+ throw err;
+ }
+ }
+
parse(data: unknown, params?: Partial<ParseParams>): Output {
const result = this.safeParse(data, params);
if (result.success) return result.data;
@@ -398,6 +470,17 @@ export abstract class ZodType<
constructor(def: Def) {
this._def = def;
+ const standardTypes: StandardSchemaV1.Types<Input, Output> = {
+ input: undefined as Input,
+ output: undefined as Output,
+ };
+ this["~standard"] = {
+ version: 1,
+ vendor: "zod",
+ validate: (value, options) => this["~validate"](value, options),
+ types: standardTypes,
+ };
+ (this["~standard"] as any).async = true;
this.parse = this.parse.bind(this);
this.safeParse = this.safeParse.bind(this);
this.parseAsync = this.parseAsync.bind(this);
diff --git a/tmp/agent-patch-flux-pr-3850.1-of-1.2026-02-27__21-30-28__gpt-5-1-codex-mini/app/src/external.ts b/app/src/external.ts
index 002e17d..1e918b8 100644
--- a/tmp/agent-patch-flux-pr-3850.1-of-1.2026-02-27__21-30-28__gpt-5-1-codex-mini/app/src/external.ts
+++ b/app/src/external.ts
@@ -2,5 +2,6 @@ export * from "./errors";
export * from "./helpers/parseUtil";
export * from "./helpers/typeAliases";
export * from "./helpers/util";
+export * from "./standard-schema";
export * from "./types";
export * from "./ZodError";
diff --git a/app/src/standard-schema.ts b/app/src/standard-schema.ts
new file mode 100644
index 0000000..90133f6
--- /dev/null
+++ b/app/src/standard-schema.ts
@@ -0,0 +1,163 @@
+/** The Standard Typed interface. This is a base type extended by other specs. */
+export interface StandardTypedV1<Input = unknown, Output = Input> {
+ /** The Standard properties. */
+ readonly "~standard": StandardTypedV1.Props<Input, Output>;
+}
+
+export declare namespace StandardTypedV1 {
+ /** The Standard Typed properties interface. */
+ export interface Props<Input = unknown, Output = Input> {
+ /** The version number of the standard. */
+ readonly version: 1;
+ /** The vendor name of the schema library. */
+ readonly vendor: string;
+ /** Inferred types associated with the schema. */
+ readonly types?: Types<Input, Output> | undefined;
+ }
+
+ /** The Standard Typed types interface. */
+ export interface Types<Input = unknown, Output = Input> {
+ /** The input type of the schema. */
+ readonly input: Input;
+ /** The output type of the schema. */
+ readonly output: Output;
+ }
+
+ /** Infers the input type of a Standard Typed. */
+ export type InferInput<Schema extends StandardTypedV1> = NonNullable<
+ Schema["~standard"]["types"]
+ >["input"];
+
+ /** Infers the output type of a Standard Typed. */
+ export type InferOutput<Schema extends StandardTypedV1> = NonNullable<
+ Schema["~standard"]["types"]
+ >["output"];
+}
+
+/** The Standard Schema interface. */
+export interface StandardSchemaV1<Input = unknown, Output = Input> {
+ /** The Standard Schema properties. */
+ readonly "~standard": StandardSchemaV1.Props<Input, Output>;
+}
+
+export declare namespace StandardSchemaV1 {
+ /** The Standard Schema properties interface. */
+ export interface Props<Input = unknown, Output = Input>
+ extends StandardTypedV1.Props<Input, Output> {
+ /** Validates unknown input values. */
+ readonly validate: (
+ value: unknown,
+ options?: StandardSchemaV1.Options | undefined,
+ ) => Result<Output> | Promise<Result<Output>>;
+ }
+
+ /** The result interface of the validate function. */
+ export type Result<Output> = SuccessResult<Output> | FailureResult;
+
+ /** The result interface if validation succeeds. */
+ export interface SuccessResult<Output> {
+ /** The typed output value. */
+ readonly value: Output;
+ /** A falsy value for `issues` indicates success. */
+ readonly issues?: undefined;
+ }
+
+ export interface Options {
+ /** Explicit support for additional vendor-specific parameters, if needed. */
+ readonly libraryOptions?: Record<string, unknown> | undefined;
+ }
+
+ /** The result interface if validation fails. */
+ export interface FailureResult {
+ /** The issues of failed validation. */
+ readonly issues: ReadonlyArray<Issue>;
+ }
+
+ /** The issue interface of the failure output. */
+ export interface Issue {
+ /** The error message of the issue. */
+ readonly message: string;
+ /** The path of the issue, if any. */
+ readonly path?: ReadonlyArray<PropertyKey | PathSegment> | undefined;
+ }
+
+ /** The path segment interface of the issue. */
+ export interface PathSegment {
+ /** The key representing a path segment. */
+ readonly key: PropertyKey;
+ }
+
+ /** The Standard types interface. */
+ export interface Types<Input = unknown, Output = Input>
+ extends StandardTypedV1.Types<Input, Output> {}
+
+ /** Infers the input type of a Standard. */
+ export type InferInput<Schema extends StandardTypedV1> =
+ StandardTypedV1.InferInput<Schema>;
+
+ /** Infers the output type of a Standard. */
+ export type InferOutput<Schema extends StandardTypedV1> =
+ StandardTypedV1.InferOutput<Schema>;
+}
+
+/** The Standard JSON Schema interface. */
+export interface StandardJSONSchemaV1<Input = unknown, Output = Input> {
+ /** The Standard JSON Schema properties. */
+ readonly "~standard": StandardJSONSchemaV1.Props<Input, Output>;
+}
+
+export declare namespace StandardJSONSchemaV1 {
+ /** The Standard JSON Schema properties interface. */
+ export interface Props<Input = unknown, Output = Input>
+ extends StandardTypedV1.Props<Input, Output> {
+ /** Methods for generating the input/output JSON Schema. */
+ readonly jsonSchema: StandardJSONSchemaV1.Converter;
+ }
+
+ /** The Standard JSON Schema converter interface. */
+ export interface Converter {
+ /** Converts the input type to JSON Schema. May throw if conversion is not supported. */
+ readonly input: (
+ options: StandardJSONSchemaV1.Options,
+ ) => Record<string, unknown>;
+ /** Converts the output type to JSON Schema. May throw if conversion is not supported. */
+ readonly output: (
+ options: StandardJSONSchemaV1.Options,
+ ) => Record<string, unknown>;
+ }
+
+ /**
+ * The target version of the generated JSON Schema.
+ *
+ * It is *strongly recommended* that implementers support `"draft-2020-12"` and `"draft-07"`, as they are both in wide use. All other targets can be implemented on a best-effort basis. Libraries should throw if they don't support a specified target.
+ *
+ * The `"openapi-3.0"` target is intended as a standardized specifier for OpenAPI 3.0 which is a superset of JSON Schema `"draft-04"`.
+ */
+ export type Target =
+ | "draft-2020-12"
+ | "draft-07"
+ | "openapi-3.0"
+ // Accepts any string: allows future targets while preserving autocomplete
+ | ({} & string);
+
+ /** The options for the input/output methods. */
+ export interface Options {
+ /** Specifies the target version of the generated JSON Schema. Support for all versions is on a best-effort basis. If a given version is not supported, the library should throw. */
+ readonly target: Target;
+
+ /** Explicit support for additional vendor-specific parameters, if needed. */
+ readonly libraryOptions?: Record<string, unknown> | undefined;
+ }
+
+ /** The Standard types interface. */
+ export interface Types<Input = unknown, Output = Input>
+ extends StandardTypedV1.Types<Input, Output> {}
+
+ /** Infers the input type of a Standard. */
+ export type InferInput<Schema extends StandardTypedV1> =
+ StandardTypedV1.InferInput<Schema>;
+
+ /** Infers the output type of a Standard. */
+ export type InferOutput<Schema extends StandardTypedV1> =
+ StandardTypedV1.InferOutput<Schema>;
+}
diff --git a/tmp/agent-patch-flux-pr-3850.1-of-1.2026-02-27__21-30-28__gpt-5-1-codex-mini/app/src/types.ts b/app/src/types.ts
index 5f8c65d..11c01ef 100644
--- a/tmp/agent-patch-flux-pr-3850.1-of-1.2026-02-27__21-30-28__gpt-5-1-codex-mini/app/src/types.ts
+++ b/app/src/types.ts
@@ -32,6 +32,7 @@ import {
ZodIssue,
ZodIssueCode,
} from "./ZodError";
+import { StandardSchemaV1 } from "./standard-schema";
///////////////////////////////////////
///////////////////////////////////////
@@ -169,11 +170,12 @@ export abstract class ZodType<
Output = any,
Def extends ZodTypeDef = ZodTypeDef,
Input = Output
-> {
+> implements StandardSchemaV1<Input, Output> {
readonly _type!: Output;
readonly _output!: Output;
readonly _input!: Input;
readonly _def!: Def;
+ readonly ["~standard"]: StandardSchemaV1.Props<Input, Output>;
get description() {
return this._def.description;
@@ -235,6 +237,76 @@ export abstract class ZodType<
return Promise.resolve(result);
}
+ private _createValidationContext(
+ data: unknown,
+ async: boolean
+ ): ParseContext {
+ return {
+ common: {
+ issues: [],
+ contextualErrorMap: undefined,
+ async,
+ },
+ path: [],
+ schemaErrorMap: this._def.errorMap,
+ parent: null,
+ data,
+ parsedType: getParsedType(data),
+ };
+ }
+
+ private _standardIssues(issues: ZodIssue[]): StandardSchemaV1.Issue[] {
+ return issues.map((issue) => ({
+ message: issue.message,
+ ...(issue.path.length ? { path: issue.path } : {}),
+ }));
+ }
+
+ private _standardResult(
+ ctx: ParseContext,
+ result: SyncParseReturnType<Output>
+ ): StandardSchemaV1.Result<Output> {
+ if (ctx.common.issues.length) {
+ return { issues: this._standardIssues(ctx.common.issues) };
+ }
+ return { value: result.value };
+ }
+
+ private async _validateAsync(
+ data: unknown,
+ options?: StandardSchemaV1.Options
+ ): Promise<StandardSchemaV1.Result<Output>> {
+ void options?.libraryOptions;
+ const ctx = this._createValidationContext(data, true);
+ const result = await this._parseAsync({
+ data,
+ path: ctx.path,
+ parent: ctx,
+ });
+ return this._standardResult(ctx, result);
+ }
+
+ private ["~validate"](
+ data: unknown,
+ options?: StandardSchemaV1.Options
+ ): StandardSchemaV1.Result<Output> | Promise<StandardSchemaV1.Result<Output>> {
+ void options?.libraryOptions;
+ const ctx = this._createValidationContext(data, false);
+ try {
+ const result = this._parseSync({
+ data,
+ path: ctx.path,
+ parent: ctx,
+ });
+ return this._standardResult(ctx, result);
+ } catch (err) {
+ if ((err as Error)?.message?.toLowerCase()?.includes("encountered")) {
+ return this._validateAsync(data, options);
+ }
+ throw err;
+ }
+ }
+
parse(data: unknown, params?: Partial<ParseParams>): Output {
const result = this.safeParse(data, params);
if (result.success) return result.data;
@@ -398,6 +470,17 @@ export abstract class ZodType<
constructor(def: Def) {
this._def = def;
+ const standardTypes: StandardSchemaV1.Types<Input, Output> = {
+ input: undefined as Input,
+ output: undefined as Output,
+ };
+ this["~standard"] = {
+ version: 1,
+ vendor: "zod",
+ validate: (value, options) => this["~validate"](value, options),
+ types: standardTypes,
+ };
+ (this["~standard"] as any).async = true;
this.parse = this.parse.bind(this);
this.safeParse = this.safeParse.bind(this);
this.parseAsync = this.parseAsync.bind(this);