liuhao1024
040742d06b
fix(memory): truncate oversized mem0 sync messages at the source
...
sync_turn() sent the whole turn to backend.add() untruncated. OSS
embedding models with small context windows (Ollama bge-small-zh-v1.5:
512 tokens) reject the request with HTTP 500, and hosted APIs answer
INPUT_TOKEN_LIMIT_EXCEEDED — in both cases _try() only logs, silently
dropping the turn's memory extraction after long conversations.
Cap each synced message at its last sentence boundary within 450 chars
before ingestion: short turns pass through unchanged, long turns keep a
coherent statement for fact extraction. This replaces the previous
retry-on-error approach, which could not match Ollama's HTTP 500 shape.
Salvaged from #37427 with the test suite trimmed to the one invariant
(oversized turn still reaches a small-context backend, short text
untouched, no breaker failure).
Refs #37421 #106235
Co-authored-by: szicely <140148567+szicely@users.noreply.github.com >
2026-09-09 10:55:02 -07:00
..
2026-09-07 04:46:04 -07:00
2026-09-03 15:50:55 -07:00
2026-09-09 10:47:49 -07:00
2026-09-06 07:19:21 -07:00
2026-09-08 13:39:17 -07:00
2026-09-03 13:22:51 -07:00
2026-09-09 09:20:20 -07:00
2026-09-03 14:21:52 -07:00
2026-09-03 17:28:02 -07:00
2026-09-07 22:47:33 +05:30
2026-09-03 23:55:56 -07:00
2026-09-09 10:43:58 -07:00
2026-09-09 10:54:34 -07:00
2026-09-09 10:05:59 -07:00
2026-09-07 08:12:23 -07:00
2026-09-07 10:24:17 +02:00
2026-09-04 00:53:42 -07:00
2026-09-03 13:38:36 -07:00
2026-09-03 13:29:35 -07:00
2026-09-09 10:55:02 -07:00
2026-09-07 06:06:46 -07:00
2026-09-03 13:38:36 -07:00
2026-09-09 09:51:31 -07:00
2026-09-09 04:15:27 -07:00
2026-09-02 10:33:43 -07:00
2026-09-08 13:39:01 -07:00
2026-09-09 09:19:57 -07:00
2026-09-09 09:45:13 -07:00
2026-09-09 04:15:27 -07:00
2026-09-09 02:35:41 -07:00
2026-09-09 04:38:01 -07:00
2026-09-09 09:19:54 -07:00
2026-09-03 13:28:22 -07:00
2026-09-07 22:47:33 +05:30
2026-09-02 19:20:44 -07:00
2026-09-03 14:21:52 -07:00
2026-09-02 13:29:46 -07:00
2026-09-06 22:45:31 +05:30
2026-09-03 13:29:55 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 13:46:50 -07:00
2026-09-03 13:28:22 -07:00
2026-09-02 19:53:29 -07:00
2026-09-07 06:09:56 -07:00
2026-09-08 17:13:48 -07:00
2026-09-08 17:13:48 -07:00
2026-09-06 07:19:21 -07:00
2026-09-05 02:31:06 -07:00
2026-09-03 13:12:50 -07:00
2026-09-02 15:03:42 -07:00
2026-09-03 13:46:50 -07:00
2026-09-03 05:03:04 +05:30
2026-09-02 15:03:42 -07:00
2026-09-03 13:46:50 -07:00
2026-09-08 02:27:24 +05:30
2026-09-03 02:06:56 +05:30
2026-09-02 15:03:42 -07:00
2026-09-03 16:35:01 -07:00
2026-09-09 18:26:15 +05:30
2026-09-09 10:52:21 -07:00
2026-09-03 13:16:47 -07:00
2026-09-02 17:26:25 -04:00
2026-09-09 18:26:15 +05:30
2026-09-03 13:46:50 -07:00
2026-09-03 15:07:39 -07:00
2026-09-09 09:19:54 -07:00
2026-09-02 17:07:24 -07:00
2026-09-03 13:46:50 -07:00
2026-09-03 13:48:49 -07:00
2026-09-05 12:21:21 +05:30
2026-09-03 13:28:22 -07:00
2026-09-03 17:45:53 -07:00
2026-09-04 04:56:11 -07:00
2026-09-04 01:28:31 -07:00
2026-09-04 20:24:24 -04:00
2026-09-04 20:24:24 -04:00
2026-09-03 19:33:28 -07:00
2026-09-03 14:21:52 -07:00
2026-09-03 13:46:50 -07:00
2026-09-03 14:21:52 -07:00
2026-09-07 06:04:23 -07:00
2026-09-03 13:46:50 -07:00
2026-09-02 07:26:52 -07:00
2026-09-03 13:46:50 -07:00
2026-09-09 18:26:15 +05:30
2026-09-03 13:46:50 -07:00
2026-09-03 13:46:50 -07:00
2026-09-03 13:46:50 -07:00
2026-09-03 13:46:50 -07:00
2026-09-03 13:46:50 -07:00
2026-09-03 13:46:50 -07:00
2026-09-09 09:19:57 -07:00
2026-09-03 16:35:01 -07:00
2026-09-03 13:46:50 -07:00
2026-09-05 12:21:21 +05:30
2026-09-05 17:00:18 -07:00
2026-09-09 02:35:41 -07:00
2026-09-03 14:21:52 -07:00
2026-09-03 14:21:52 -07:00
2026-09-07 08:23:08 -07:00
2026-09-03 13:12:50 -07:00
2026-09-03 13:12:50 -07:00
2026-09-03 13:12:50 -07:00
2026-09-09 18:25:11 +05:30