roboomp
93f1019ead
fix(coding-agent): extended binary refusal to cover newline-less blobs
...
The streaming reader's NUL check only walked completed lines collected
from streamLinesFromFile, so a binary blob whose first newline lay past
the byte budget (videos, archives, packed JSON) left collectedLines
empty and slipped through to the firstLineExceedsLimit branch — which
emitted the decoded preview as text instead of the intended refusal.
Sniff firstLinePreview alongside collectedLines so the existing refusal
fires uniformly. Also added a regression test that uses a 256 KiB blob
with no 0x0A bytes to actually exercise the firstLineExceedsLimit
path — the previous 6-byte test fit in one collected line and never
covered the bug.
Fixes #3448
2026-06-25 07:58:20 +00:00
..
2026-06-14 07:54:04 +02:00
2026-05-31 04:03:05 +02:00
2026-06-19 17:38:07 +02:00
2026-06-19 04:45:08 +02:00
2026-06-22 17:10:49 +00:00
2026-06-19 07:51:27 +02:00
2026-06-07 02:23:18 +02:00
2026-06-06 16:00:31 +02:00
2026-06-08 19:03:55 +02:00
2026-06-22 04:45:17 +02:00
2026-05-16 07:02:24 +05:30
2026-06-12 02:33:49 +02:00
2026-06-08 19:03:55 +02:00
2026-06-21 06:39:14 +02:00
2026-06-10 14:37:58 -03:00
2026-06-13 17:35:56 +02:00
2026-06-13 17:35:56 +02:00
2026-06-13 17:35:56 +02:00
2026-06-10 23:17:00 +02:00
2026-05-01 18:54:21 +02:00
2026-06-21 18:10:10 +02:00
2026-06-08 19:03:55 +02:00
2026-06-10 01:27:17 +02:00
2026-06-22 06:11:28 +02:00
2026-06-10 07:23:29 +02:00
2026-06-15 10:46:45 +02:00
2026-06-19 07:57:15 +02:00
2026-06-23 00:59:58 +02:00
2026-06-23 00:59:58 +02:00
2026-06-23 00:59:58 +02:00
2026-06-23 00:59:58 +02:00
2026-06-23 01:46:45 +02:00
2026-06-23 00:59:58 +02:00
2026-06-18 19:11:22 +02:00
2026-06-09 04:51:17 +02:00
2026-06-18 19:11:22 +02:00
2026-05-27 15:03:12 +02:00
2026-06-04 00:59:59 +02:00
2026-06-08 19:03:55 +02:00
2026-06-10 14:34:25 -03:00
2026-06-10 01:28:04 +02:00
2026-06-19 17:38:07 +02:00
2026-06-15 15:43:48 +00:00
2026-06-18 21:32:38 -07:00
2026-06-19 08:19:55 +00:00
2026-06-16 21:32:39 +02:00
2026-06-23 08:18:29 +02:00
2026-06-14 08:47:01 +09:00
2026-06-14 08:47:01 +09:00
2026-06-19 03:50:00 +02:00
2026-05-25 17:21:53 +00:00
2026-01-31 05:22:07 +01:00
2026-06-01 18:04:05 +02:00
2026-06-15 11:48:55 +02:00
2026-06-21 02:17:54 +02:00
2026-06-10 07:26:02 +02:00
2026-05-27 15:03:12 +02:00
2026-06-11 21:24:30 +02:00
2026-06-19 04:35:18 +02:00
2026-05-26 07:28:42 +02:00
2026-06-04 01:35:39 +02:00
2026-06-18 21:32:38 -07:00
2026-06-04 02:45:30 +02:00
2026-05-27 15:03:12 +02:00
2026-06-08 05:40:04 +02:00
2026-06-25 07:58:20 +00:00
2026-06-17 17:20:09 +02:00
2026-06-08 02:04:59 +02:00
2026-06-19 17:17:04 +02:00
2026-06-18 21:32:38 -07:00
2026-05-17 01:47:24 +02:00
2026-06-09 04:51:17 +02:00
2026-06-19 17:54:37 +00:00
2026-06-08 19:03:55 +02:00
2026-06-19 07:51:27 +02:00
2026-06-10 00:21:12 +00:00
2026-06-25 03:54:15 +00:00
2026-05-26 23:26:15 -07:00
2026-06-19 07:51:27 +02:00
2026-06-18 21:32:38 -07:00
2026-06-08 19:03:55 +02:00
2026-05-26 01:54:09 -07:00
2026-06-20 07:55:09 +00:00
2026-06-10 02:17:35 +02:00
2026-06-12 02:33:49 +02:00
2026-06-19 04:35:18 +02:00
2026-06-19 16:16:37 +02:00
2026-06-11 16:07:38 +02:00
2026-06-10 17:54:47 +02:00
2026-06-23 00:54:54 +02:00
2026-06-18 21:32:38 -07:00
2026-06-09 04:51:17 +02:00
2026-06-22 17:59:17 +00:00
2026-06-09 04:51:17 +02:00
2026-06-12 02:33:47 +02:00
2026-06-09 05:44:35 +02:00
2026-06-14 15:11:04 +00:00
2026-06-09 04:51:17 +02:00
2026-06-15 13:44:44 +02:00
2026-06-08 19:03:55 +02:00
2026-06-08 02:04:59 +02:00