Actions
개선 #692
완료됨개선 #689: 롱 호라이즌 채팅·고빈도 스트림 안정화 총괄
[롱 호라이즌 스트림] command/process output 전용 buffer와 truncation 표시 분리
개선 #692:
[롱 호라이즌 스트림] command/process output 전용 buffer와 truncation 표시 분리
시작일:
2026/06/30
완료일:
2026/07/03
진척도:
100%
추정시간:
설명
배경:
- 수시간 이상 지속되는 롱 호라이즌 채팅과 고빈도 스트림에서 요청 입력 불가, 이전 작업 확인 곤란, CPU/메모리 상승 위험을 줄이기 위한 안정화 작업이다.
- Codex app reverse-engineering에서 확인한 힌트: raw delta opt-out, incoming line queue와 overflow fail-safe, requestAnimationFrame 기반 text delta coalescing, 50ms command output batching, output cap/truncation marker, owner/follower patch+revision sync, turn-level virtualization과 scroll anchoring.
- 목표는 오래된 대화를 잘라내는 것이 아니라, 메모리/CPU 상한을 넘지 않도록 하면서 사용자가 필요한 대화 내용을 계속 열람할 수 있게 하는 것이다.
책임 경계:
- commandExecution/outputDelta, process stdout/stderr, terminal interaction처럼 대량 출력이 발생하는 stream lane을 담당한다.
- 일반 assistant 텍스트 delta 큐와 transcript virtualization 구현은 이 일감 범위가 아니다.
구현 범위:
- command/process output을 일반 chat text append와 분리해 전용 batch queue 또는 ring buffer로 관리한다.
- per-stream cap, dropped/truncated byte/line count, capReached/truncated marker를 사용자와 진단 로그에 드러낸다.
- 최종 command item은 전체 누적 문자열 대신 bounded aggregatedOutput 또는 windowed output view를 사용한다.
- cap 도달 시 입력/앱이 멈추지 않고 명확한 truncation 표시를 유지한다.
완료 조건:
- 대량 stdout/stderr를 모사해 UI state 크기가 상한을 넘지 않음을 검증한다.
- truncation marker와 최근 출력 보존 정책이 테스트된다.
- terminal interaction 기록과 command output buffer가 서로 오염되지 않는다.
Actions