프로젝트

일반

사용자정보

Actions

개선 #689

완료됨

롱 호라이즌 채팅·고빈도 스트림 안정화 총괄

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

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

상태:
완료
우선순위:
보통
담당자:
범주:
-
시작일:
2026/06/30
완료일:
2026/07/03
진척도:

100%

추정시간:
(합계: 0:00 시간)

설명

배경:

  • 수시간 이상 지속되는 롱 호라이즌 채팅과 고빈도 스트림에서 요청 입력 불가, 이전 작업 확인 곤란, 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 상한을 넘지 않도록 하면서 사용자가 필요한 대화 내용을 계속 열람할 수 있게 하는 것이다.

판단:

  • 단일 일감으로 처리하기에는 책임 경계가 넓다. transport/app-server, renderer state reducer, command output, transcript virtualization, performance gate/observability가 서로 다른 모듈과 실패 모드를 가진다.
  • 이 부모 일감은 아래 하위 일감들의 범위와 순서를 총괄한다.

하위 작업 경계:

  1. app-server/bridge 수신 큐와 이벤트 필터/백프레셔 계약
  2. renderer 텍스트 delta 병합 큐와 완료 이벤트 순서 보존
  3. command/process output 전용 buffer, cap, truncation 표시
  4. transcript long-history virtualization, paging, scroll anchoring
  5. 고빈도 스트림 성능 시나리오, 계측, 회귀 게이트

완료 조건:

  • 모든 하위 일감이 검증과 릴리스 증거를 갖고 완료된다.
  • 부모 종료 전, 각 하위 일감의 책임 경계가 중복 없이 구현되었는지 확인한다.
  • 최종 검증에서 긴 대화/고빈도 delta/대량 command output/이전 대화 스크롤이 모두 입력 응답성과 메모리 상한을 해치지 않음을 확인한다.

하위 일감 5 (모두 완료5 건 완료)

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

Actions
개선 #691: [롱 호라이즌 스트림] renderer 텍스트 delta 병합 큐와 순서 보존 적용완료정인 김2026/06/302026/07/03

Actions
개선 #692: [롱 호라이즌 스트림] command/process output 전용 buffer와 truncation 표시 분리완료정인 김2026/06/302026/07/03

Actions
개선 #693: [롱 호라이즌 스트림] transcript long-history virtualization·paging·scroll anchoring 강화완료Carl Friedrich Gauss2026/06/302026/07/03

Actions
개선 #694: [롱 호라이즌 스트림] 고빈도 스트림 성능 시나리오·계측·회귀 게이트 구축완료Carl Friedrich Gauss2026/06/302026/07/03

Actions

Carl Friedrich Gauss이(가) 7일 전에 변경 Actions #1

  • Subtask#690이(가) 추가되었습니다.

Carl Friedrich Gauss이(가) 7일 전에 변경 Actions #2

  • Subtask#691이(가) 추가되었습니다.

Carl Friedrich Gauss이(가) 7일 전에 변경 Actions #3

  • Subtask#692이(가) 추가되었습니다.

Carl Friedrich Gauss이(가) 7일 전에 변경 Actions #4

  • Subtask#693이(가) 추가되었습니다.

Carl Friedrich Gauss이(가) 7일 전에 변경 Actions #5

  • Subtask#694이(가) 추가되었습니다.

Carl Friedrich Gauss이(가) 7일 전에 변경 Actions #6

선후행 관계와 우선순위 정리:

  1. #690 -> #691, #692

    • #690에서 app-server/bridge의 정규화 이벤트 lane, queue/backpressure, overflow/filtered-delta 계약을 먼저 확정하고 커밋한다.
    • #691은 이 계약을 받아 renderer text delta 병합 큐에 연결한다.
    • #692는 같은 계약을 받아 command/process output 전용 buffer와 truncation 표시를 구현한다.
  2. #691 + #692 -> #693

    • #691의 state commit batching/완료 이벤트 순서 보존과 #692의 bounded output/windowed output 모델이 #693의 transcript virtualization, measured height, scroll anchoring 전제가 된다.
    • 따라서 #693은 #691/#692 커밋 이후 인수인계받아 진행한다.
  3. #693 -> #694

    • #694는 계측명/시나리오 골격은 초기에 report-only로 준비할 수 있지만, 완료 판단과 hard gate 연결은 #690-#693 구현 커밋을 모두 받은 뒤 진행한다.

실행 우선순위:

Carl Friedrich Gauss이(가) 7일 전에 변경 Actions #7

정정:

  • Redmine의 precedes 관계는 선후행 의미는 맞지만 날짜 자동 보정을 유발해, 실제 마감일이 아닌 날짜가 표시되었다.
  • 하위 일감 간 관계는 코드 인수인계/블로킹 의존성을 나타내도록 blocks 관계로 조정했다.
  • 날짜 필드는 생성 당시 기준인 start=2026-06-30, due date 없음으로 복원했다.

Carl Friedrich Gauss이(가) 4일 전에 변경 Actions #8

  • 상태을(를) 신규에서 진행(으)로 변경되었습니다.

멀티스레드 조정 시작: 하위 일감 #690-#694 범위와 dependency wave 확인. Wave 1은 #690 분석부터 진행합니다.

Carl Friedrich Gauss이(가) 4일 전에 변경 Actions #9

  • 상태을(를) 진행에서 완료(으)로 변경되었습니다.

하위 일감 #690-#694 main 반영 및 완료 처리 완료.

main 통합 커밋: https://ap-northeast-2.console.aws.amazon.com/codesuite/codecommit/repositories/hive-x-electron/commit/ab8b9dda0186841702c41dd606b4fe01db6dc7a7?region=ap-northeast-2
브랜치: codex/redmine-689-long-horizon-stream

반영 범위:

  • #690 app-server 수신 큐와 이벤트 필터/백프레셔 계약
  • #691 renderer text delta coalescing과 완료 이벤트 순서 보존
  • #692 command/process output batching, cap/truncation marker
  • #693 transcript long-history windowing, older-history reveal, scroll anchoring
  • #694 synthetic report-only performance scenario/gate와 budget artifact

최종 검증:

  • main 병합 트리에서 npm install 후 node --check scripts/long-horizon-performance-gate.mjs 통과
  • npm run ci:long-horizon-performance 통과, report-only artifact 생성
  • npm run ci:production 통과: lint, typecheck, 150 Vitest files / 2025 tests, renderer build, fixture validation, package-config validation, signing check skipped because HIVE_RELEASE_BUILD is not enabled
  • child commits ae85af0a, 12924c5a, b3662390, 7752fd4c 및 통합 커밋 ab8b9dda가 origin/main ancestry에 있음 확인

Carl Friedrich Gauss이(가) 4일 전에 변경 Actions #10

closeout 문서 갱신 commit도 main에 반영했습니다.

Closeout doc commit: https://ap-northeast-2.console.aws.amazon.com/codesuite/codecommit/repositories/hive-x-electron/commit/9ee0c8dd91ddc09554bbcb65bc340fbb6eab8922?region=ap-northeast-2

참고: 실제 checkout의 npm run ci:production은 기존 .claude/worktrees 포함으로 ESLint tsconfigRootDir 오류가 재현되어, 동일 closeout 문서 diff를 깨끗한 /private/tmp/hive-689-main-merge.yPy1Qk에서 검증했습니다. 해당 temp worktree 기준 npm run ci:production 통과: lint, typecheck, 150 test files / 2025 tests, renderer build, fixture validation, package-config validation, signing check skipped.

Carl Friedrich Gauss이(가) 4일 전에 변경 Actions #11

Actions

내보내기 PDF Atom