프로젝트

일반

사용자정보

Actions

개선 #691

완료됨

개선 #689: 롱 호라이즌 채팅·고빈도 스트림 안정화 총괄

[롱 호라이즌 스트림] renderer 텍스트 delta 병합 큐와 순서 보존 적용

개선 #691: [롱 호라이즌 스트림] renderer 텍스트 delta 병합 큐와 순서 보존 적용

Carl Friedrich Gauss이(가) 8일 전에 추가함. 5일 전에 수정됨.

상태:
완료
우선순위:
보통
담당자:
범주:
-
시작일:
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 상한을 넘지 않도록 하면서 사용자가 필요한 대화 내용을 계속 열람할 수 있게 하는 것이다.

책임 경계:

  • assistant message, plan, reasoning text 등 사용자에게 보이는 텍스트 delta를 renderer state에 반영하는 큐를 담당한다.
  • command/process output 대량 로그 처리는 별도 하위 일감에서 다룬다.

구현 범위:

  • conversationId/turnId/itemId/target 단위로 delta를 병합하는 frame queue를 도입한다.
  • visible 상태에서는 requestAnimationFrame, background/비브라우저 상황에서는 bounded timeout fallback을 사용한다.
  • item/completed, turn/completed, error 같은 semantic event는 남은 delta가 먼저 flush된 뒤 적용되도록 drainBefore 계열 순서 보존을 둔다.
  • reducer/store 업데이트 횟수가 delta 개수에 선형으로 증가하지 않게 한다.

완료 조건:

  • 초당 수백~수천 delta 입력에서도 state commit 수가 프레임/시간 기준으로 제한된다.
  • 완료 이벤트가 텍스트 delta를 앞질러 최종 메시지가 깨지는 회귀가 없다.
  • agentMessage/plan/reasoningSummary/reasoningContent별 keying 테스트가 있다.

연결된 일감 2 (모두 완료2 건 완료)

다음 일감에게 막혀 있음: 개선 #690: [롱 호라이즌 스트림] app-server 수신 큐와 이벤트 필터·백프레셔 계약 도입완료정인 김2026/06/302026/07/03

Actions
다음 일감의 해결을 막고 있음: 개선 #693: [롱 호라이즌 스트림] transcript long-history virtualization·paging·scroll anchoring 강화완료Carl Friedrich Gauss2026/06/302026/07/03

Actions
Actions

내보내기 PDF Atom