Skip to content

fix: restore web fetch firecrawl config in runtime zod schema#42583

Merged
altaywtf merged 3 commits intoopenclaw:mainfrom
stim64045-spec:fix/web-fetch-zod-firecrawl
Mar 13, 2026
Merged

fix: restore web fetch firecrawl config in runtime zod schema#42583
altaywtf merged 3 commits intoopenclaw:mainfrom
stim64045-spec:fix/web-fetch-zod-firecrawl

Conversation

@stim64045-spec
Copy link
Contributor

Summary

  • add the missing tools.web.fetch.firecrawl runtime zod schema
  • restore tools.web.fetch.readability in the same schema so documented config keys validate again
  • add schema tests covering accepted keys and strict nested validation

Notes

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Mar 11, 2026

Greptile Summary

This PR restores two config keys that were missing from the Zod runtime validation schema but already existed in the TypeScript type definitions and were in active use by the runtime code. Specifically, readability and the full firecrawl sub-object are added back to ToolsWebFetchSchema in zod-schema.agent-runtime.ts, fixing issue #42570 where valid configuration referencing those keys would fail schema validation.

Key changes:

  • src/config/zod-schema.agent-runtime.ts: Adds readability: z.boolean().optional() and a strict firecrawl sub-schema with all six documented keys (enabled, apiKey, baseUrl, onlyMainContent, maxAgeMs, timeoutSeconds) to ToolsWebFetchSchema. The shape matches src/config/types.tools.ts exactly and follows existing conventions (.strict() on sub-objects, SecretInputSchema.optional().register(sensitive) for secrets).
  • src/config/schema.test.ts: Adds a happy-path test parsing a full firecrawl config and a negative test confirming unknown keys in the firecrawl object are rejected by Zod's strict mode.

Confidence Score: 5/5

  • Safe to merge — minimal, well-scoped schema restoration with matching tests and no behavioral side effects.
  • The changes are additive-only (adding previously-missing optional fields to a Zod schema) and are strictly aligned with the existing TypeScript type definitions in types.tools.ts and the runtime code. No logic changes, no regressions in strict-mode validation, and two targeted tests cover both the valid and invalid key paths.
  • No files require special attention.

Last reviewed commit: a2ca03f

@altaywtf altaywtf self-assigned this Mar 13, 2026
@altaywtf altaywtf force-pushed the fix/web-fetch-zod-firecrawl branch 2 times, most recently from 50af7c1 to 1815951 Compare March 13, 2026 11:53
@altaywtf altaywtf force-pushed the fix/web-fetch-zod-firecrawl branch from 1815951 to e37f965 Compare March 13, 2026 11:55
@altaywtf altaywtf merged commit 4e68684 into openclaw:main Mar 13, 2026
27 checks passed
@altaywtf
Copy link
Member

Merged via squash.

Thanks @stim64045-spec!

Jerry-Xin pushed a commit to Jerry-Xin/openclaw that referenced this pull request Mar 13, 2026
…aw#42583)

Merged via squash.

Prepared head SHA: e37f965
Co-authored-by: stim64045-spec <[email protected]>
Co-authored-by: altaywtf <[email protected]>
Reviewed-by: @altaywtf
mrosmarin added a commit to mrosmarin/openclaw that referenced this pull request Mar 13, 2026
* main: (168 commits)
  fix: stabilize macos daemon onboarding
  fix(ui): keep shared auth on insecure control-ui connects (openclaw#45088)
  docs(plugins): clarify workspace shadowing
  fix(node-host): harden perl approval binding
  fix(node-host): harden pnpm approval binding
  fix(discovery): add missing domain to wideArea Zod config schema (openclaw#35615)
  chore(gitignore): add docker-compose override (openclaw#42879)
  feat(ios): add onboarding welcome pager (openclaw#45054)
  fix(signal): add groups config to Signal channel schema (openclaw#27199)
  fix: restore web fetch firecrawl config in runtime zod schema (openclaw#42583)
  fix: polish Android QR scanner onboarding (openclaw#45021)
  fix(android): use Google Code Scanner for onboarding QR
  fix(config): add missing params field to agents.list[] validation schema (openclaw#41171)
  docs(contributing): update Android app ownership
  fix(agents): rephrase session reset prompt to avoid Azure content filter (openclaw#43403)
  test(config): cover requiresOpenAiAnthropicToolPayload in compat schema fixture
  fix(agents): respect explicit user compat overrides for non-native openai-completions (openclaw#44432)
  Android: fix HttpURLConnection leak in TalkModeVoiceResolver (openclaw#43780)
  Docker: add OPENCLAW_TZ timezone support (openclaw#34119)
  fix(agents): avoid injecting memory file twice on case-insensitive mounts (openclaw#26054)
  ...
z-hao-wang pushed a commit to z-hao-wang/openclaw that referenced this pull request Mar 13, 2026
…aw#42583)

Merged via squash.

Prepared head SHA: e37f965
Co-authored-by: stim64045-spec <[email protected]>
Co-authored-by: altaywtf <[email protected]>
Reviewed-by: @altaywtf
hougangdev pushed a commit to hougangdev/clawdbot that referenced this pull request Mar 14, 2026
…aw#42583)

Merged via squash.

Prepared head SHA: e37f965
Co-authored-by: stim64045-spec <[email protected]>
Co-authored-by: altaywtf <[email protected]>
Reviewed-by: @altaywtf
ecochran76 pushed a commit to ecochran76/openclaw that referenced this pull request Mar 14, 2026
…aw#42583)

Merged via squash.

Prepared head SHA: e37f965
Co-authored-by: stim64045-spec <[email protected]>
Co-authored-by: altaywtf <[email protected]>
Reviewed-by: @altaywtf
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants