Merge pull request #2420 from lahuman/docs/tool-escape-semantics

docs(tool): use provider-agnostic JSON escaping guidance
This commit is contained in:
Mauro
2026-04-09 20:50:06 +02:00
committed by GitHub
3 changed files with 23 additions and 7 deletions
+16
View File
@@ -254,6 +254,22 @@ func TestDecodeToolCallArguments_ObjectJSON(t *testing.T) {
}
}
func TestDecodeToolCallArguments_ObjectJSON_NewlineEscape(t *testing.T) {
raw := json.RawMessage(`{"content":"line1\nline2"}`)
args := DecodeToolCallArguments(raw, "write_file")
if args["content"] != "line1\nline2" {
t.Errorf("content = %q, want newline-expanded string", args["content"])
}
}
func TestDecodeToolCallArguments_ObjectJSON_LiteralBackslashN(t *testing.T) {
raw := json.RawMessage(`{"content":"line1\\nline2"}`)
args := DecodeToolCallArguments(raw, "write_file")
if args["content"] != `line1\nline2` {
t.Errorf("content = %q, want literal backslash-n", args["content"])
}
}
func TestDecodeToolCallArguments_StringJSON(t *testing.T) {
raw := json.RawMessage(`"{\"city\":\"SF\"}"`)
args := DecodeToolCallArguments(raw, "test")