fix(opencode): avoid nullable webfetch format schema (#30215)

This commit is contained in:
Shoubhit Dash
2026-06-01 14:15:57 +05:30
committed by GitHub
parent bba76009a8
commit 2d2f587bfa
3 changed files with 24 additions and 17 deletions

View File

@@ -82,6 +82,13 @@ describe("tool parameters", () => {
properties: { value: { minimum: Number.MIN_SAFE_INTEGER, maximum: Number.MAX_SAFE_INTEGER } },
})
})
test("does not expose defaulted optional keys as nullable", () => {
expect(toJsonSchema(WebFetch)).toMatchObject({
properties: { format: { type: "string", enum: ["text", "markdown", "html"], default: "markdown" } },
})
expect(toJsonSchema(WebFetch).properties?.format).not.toHaveProperty("anyOf")
})
})
describe("apply_patch", () => {
@@ -257,8 +264,15 @@ describe("tool parameters", () => {
})
describe("webfetch", () => {
test("accepts url-only", () => {
expect(parse(WebFetch, { url: "https://example.com" }).url).toBe("https://example.com")
test("defaults omitted format to markdown", () => {
expect(parse(WebFetch, { url: "https://example.com" })).toEqual({
url: "https://example.com",
format: "markdown",
})
expect(parse(WebFetch, { url: "https://example.com", format: undefined })).toEqual({
url: "https://example.com",
format: "markdown",
})
})
})