fix(kiro): validate terminal streams before emitting output

Validate AWS EventStream framing, header bounds, CRCs, error frames,
and terminal stop metadata before exposing Kiro output. Classify stop
reasons into dispositions (complete / retryable / terminal_incomplete /
refusal) and retry once when the stream ends with a malformed tool call,
ellipsis-only output, or a short future-action sentence.

Fail closed: propagate streaming failures as error SSE (502) instead of
collapsing them into a successful stop, so incomplete responses no longer
leak as final answers.

Detect the observed evidence-prefixed trailing progress final without
broadening the Chinese heuristic to completed findings.
This commit is contained in:
Edison42
2026-07-20 10:55:33 +07:00
committed by decolua
parent 9ba8f37486
commit 7c7fae3955
5 changed files with 1912 additions and 429 deletions
+1031 -422
View File
File diff suppressed because it is too large Load Diff