Skip to content

v1.3.0

Choose a tag to compare

@zhangpanda zhangpanda released this 30 Apr 02:11
· 57 commits to main since this release

Bug Fix Release — 19 bugs resolved

Critical

  • gRPC adapter used input descriptor for response deserialization — all gRPC calls returned wrong/empty results

High (7)

  • Prompt handler called under RLock — deadlock risk
  • OpenAPI query params not URL-encoded; body fields always sent as strings
  • Self-referential structs caused infinite recursion in schema generator
  • []Struct slices generated wrong item schema
  • SetMaxConcurrentTasks orphaned in-flight tasks
  • AsyncToolFunc corrupted existing sync tools with matching base name

Medium (10)

  • notifyFn data race between notify() and Handler()
  • Completed async tasks never evicted (memory leak)
  • HTTP transport silently truncated oversized bodies
  • stdio transport append could mutate handler's returned slice
  • mcptest.Client panicked on nil returns / missing map keys
  • ToolFunc didn't validate function signature types
  • Handler returning (nil, nil) produced protocol-violating null result
  • watchDir goroutine leaked on shutdown
  • Deleted YAML files left zombie tools registered
  • provider.go HTTP client had no timeout

Low (1)

  • Multiple Handler() calls overwrote notification function

Full Changelog: v1.2.0...v1.3.0