Skip to content

refactor(contract): replace santhosh-tekuri/jsonschema with google/jsonschema-go - #247

Closed
myhomeiot wants to merge 1 commit into
uvwt:mainfrom
myhomeiot:main
Closed

myhomeiot wants to merge 1 commit into
uvwt:mainfrom
myhomeiot:main

Conversation

@myhomeiot

Copy link
Copy Markdown
Contributor

Thanks for building such a great tool and ecosystem!

Noticed that modelcontextprotocol/go-sdk already pulls in google/jsonschema-go, and nexusdock uses it as well. Maintaining santhosh-tekuri/jsonschema/v6 alongside it is redundant and keeps golang.org/x/text in the dependency tree.

This PR replaces santhosh-tekuri with google/jsonschema-go:

  • Drops santhosh-tekuri/jsonschema/v6 and golang.org/x/text from go.mod (shaves ~640 KiB off the binary).
  • Simplifies internal/tool/contract/validator.go by removing the custom error-tree walker in favor of direct error reporting.
  • Updates output contract assertions in tests.

Tested with go test ./..., all tool input and output schema validations pass.

…onschema-go

- Deduplicate schema validation: align with modelcontextprotocol/go-sdk and nexusdock, both of which natively use google/jsonschema-go.
- Drop santhosh-tekuri/jsonschema/v6 and 12 transitive golang.org/x/text packages from the dependency tree (-640 KiB binary size).
- Simplify internal/tool/contract by removing obsolete error-tree helpers in favor of direct error reporting.

uvwt commented Oct 20, 2026

Copy link
Copy Markdown
Owner

Thanks for the contribution. This change has been superseded by #248, which keeps the same google/jsonschema-go dependency consolidation while preserving AgentDock's validation error contract and making the supported JSON Schema draft boundary explicit. The original implementation and authorship were retained in the merged work, so this PR can now be closed.

@uvwt uvwt closed this Oct 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants