개선 #692
완료됨개선 #689: 롱 호라이즌 채팅·고빈도 스트림 안정화 총괄
[롱 호라이즌 스트림] command/process output 전용 buffer와 truncation 표시 분리
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가 서로 오염되지 않는다.
Carl Friedrich Gauss이(가) 8일 전에 변경
- 완료일을(를) 2026/07/01(으)로 지정되었습니다.
- 시작일을(를) 2026/06/30에서 2026/07/01(으)로 변경되었습니다.
- 다음 일감을 우선 진행:에 개선 #690: [롱 호라이즌 스트림] app-server 수신 큐와 이벤트 필터·백프레셔 계약 도입이(가) 추가되었습니다.
Carl Friedrich Gauss이(가) 8일 전에 변경
- 다음에 진행할 일감:에 개선 #693: [롱 호라이즌 스트림] transcript long-history virtualization·paging·scroll anchoring 강화이(가) 추가되었습니다.
Carl Friedrich Gauss이(가) 8일 전에 변경
- 다음 일감을 우선 진행: 값이 지워졌습니다. (개선 #690: [롱 호라이즌 스트림] app-server 수신 큐와 이벤트 필터·백프레셔 계약 도입)
Carl Friedrich Gauss이(가) 8일 전에 변경
- 다음에 진행할 일감: 값이 지워졌습니다. (개선 #693: [롱 호라이즌 스트림] transcript long-history virtualization·paging·scroll anchoring 강화)
Carl Friedrich Gauss이(가) 8일 전에 변경
- 다음 일감에게 막혀 있음:에 개선 #690: [롱 호라이즌 스트림] app-server 수신 큐와 이벤트 필터·백프레셔 계약 도입이(가) 추가되었습니다.
Carl Friedrich Gauss이(가) 8일 전에 변경
- 다음 일감의 해결을 막고 있음:에 개선 #693: [롱 호라이즌 스트림] transcript long-history virtualization·paging·scroll anchoring 강화이(가) 추가되었습니다.
Carl Friedrich Gauss이(가) 8일 전에 변경
- 완료일 값이 지워졌습니다. (
2026/07/01) - 시작일을(를) 2026/07/01에서 2026/06/30(으)로 변경되었습니다.
Carl Friedrich Gauss이(가) 5일 전에 변경
- 상태을(를) 신규에서 진행(으)로 변경되었습니다.
Carl Friedrich Gauss이(가) 5일 전에 변경
[#689 / #692 progress] command/process output buffering integrated on branch codex/redmine-689-long-horizon-stream.
Commit: 12924c5a #691 #692 renderer 스트림 출력 큐 안정화
CodeCommit: https://ap-northeast-2.console.aws.amazon.com/codesuite/codecommit/repositories/hive-x-electron/commit/12924c5a?region=ap-northeast-2
Summary:
- Added renderer terminal-output queue for terminal/outputDelta and terminal item item/delta with 50ms batching.
- Flushes before command/item/turn completion, terminal interaction, snapshot replacement, and active-thread routing boundaries.
- Preserves per-key delta order; stdout/stderr cross-stream interleaving is intentionally not guaranteed.
- terminal/outputDelta.capReached now leaves a non-duplicated marker in runtime-store while preserving terminal blank lines and the existing 120k store cap.
- xterm terminal:event / terminal:data / TerminalSessionService paths remain out of scope and untouched.
Verification:
- Integrated targeted Vitest: 5 files / 453 tests passed.
- npm run typecheck passed.
- Targeted ESLint passed.
- git diff --check passed.
- npm run ci:production passed: lint, typecheck, 148 Vitest files / 1999 tests, renderer build, fixture validation, package-config validation; signing check skipped because HIVE_RELEASE_BUILD is not enabled.
Cross-check:
- Read-only cross-verify initially requested fixes for active-thread routing boundaries and terminal blank-line preservation; both were fixed in the integrated patch and covered by regression tests.
Completion remains deferred until the final branch/main-reflected closeout step for #689.
Carl Friedrich Gauss이(가) 5일 전에 변경
- 완료일을(를) 2026/07/03(으)로 지정되었습니다.
- 상태을(를) 진행에서 완료(으)로 변경되었습니다.
- 진척도을(를) 0에서 100(으)로 변경되었습니다.
통합 커밋: https://ap-northeast-2.console.aws.amazon.com/codesuite/codecommit/repositories/hive-x-electron/commit/ab8b9dda0186841702c41dd606b4fe01db6dc7a7?region=ap-northeast-2
최종 검증: main 병합 트리에서 npm run ci:production 통과(150 test files / 2025 tests, renderer build, fixtures, package config, signing check skipped).