{"id":"text-line-diff","version":"1.0.0","description":"Diff two texts as line records, preserving each line terminator.","supported_operations":["text line diff","line record text diff","diff texts by lines"],"unsupported_operations":["fuzzy matching","patience/histogram diff","unicode normalization","locale-aware line breaking","binary patches","git diff --git headers","filesystem access"],"semantics":["left and right are split with splitRecords: only CRLF, LF, and CR terminate lines.","Record equality is text plus eol; the same characters with CRLF versus LF are different lines.","Empty text yields no records; a missing final newline is stored as eol \"\".","U+2028, U+2029, and U+FEFF stay inside line text and are not terminators.","The Myers SES uses recordEqual; when D-paths tie, the library prefers delete from the left.","Hunks come from hunksFromSes. context defaults to 3, may be 0, and is at most 16.","Hunk op values are {text, eol} objects. identical is true iff there are no change ops.","lines_left and lines_right are the record counts of left and right.","Unknown input fields are rejected. Prototype-like line texts such as \"__proto__\" are ordinary strings."],"limits":{"max_text_bytes":262144,"max_line_count":4096,"max_line_bytes":16384,"max_context":16,"max_hunks":1024,"max_output_bytes":1048576},"pricing":{"status":"unpriced","charge_usd":null},"input_schema":{"type":"object","additionalProperties":false,"required":["left","right"],"properties":{"left":{"type":"string","maxLength":262144},"right":{"type":"string","maxLength":262144},"context":{"type":"integer","minimum":0,"maximum":16}}},"output_schema":{"type":"object","additionalProperties":false,"required":["hunks","identical","lines_left","lines_right"],"properties":{"hunks":{"type":"array","maxItems":1024,"items":{"type":"object","additionalProperties":false,"required":["old_start","old_count","new_start","new_count","ops"],"properties":{"old_start":{"type":"integer","minimum":0},"old_count":{"type":"integer","minimum":0},"new_start":{"type":"integer","minimum":0},"new_count":{"type":"integer","minimum":0},"ops":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["op","value"],"properties":{"op":{"type":"string","enum":["keep","delete","insert"]},"value":{"type":"object","additionalProperties":false,"required":["text","eol"],"properties":{"text":{"type":"string"},"eol":{"type":"string","enum":["","\n","\r","\r\n"]}}}}}}}}},"identical":{"type":"boolean"},"lines_left":{"type":"integer","minimum":0},"lines_right":{"type":"integer","minimum":0}}},"examples":[{"input":{"left":"a\nb\n","right":"a\nc\n","context":0},"output":{"hunks":[{"old_start":1,"old_count":1,"new_start":1,"new_count":1,"ops":[{"op":"delete","value":{"text":"b","eol":"\n"}},{"op":"insert","value":{"text":"c","eol":"\n"}}]}],"identical":false,"lines_left":2,"lines_right":2}}],"execute_url":"/v1/tools/text-line-diff/versions/1.0.0/execute"}