Skip to content

v0.16.4

Choose a tag to compare

@moreih29 moreih29 released this 24 Apr 01:15
· 15 commits to main since this release
fb024fc

핵심 변경

새 사용자 입력으로 세션이 Running 상태에 진입할 때 cmux 사이드바 로그 패널이 자동 초기화된다. 이전까지 과거 턴의 [nexus] [error] MessageAbortedError 같은 stale 에러 엔트리가 계속 남아 "아직 에러 상태인가?" 혼동을 일으키던 UX를 해소. 사용자는 더 이상 cmux clear-log를 수동 실행할 필요 없음.

최종 사용자 영향

  • session.status busy가 root 세션의 idle→running 전이로 fire될 때, cmux clear-log가 기존 set-status Running 앞서 호출된다.
  • 한 턴 내 연속 busy(관측상 ~4회/턴)는 내부 sessionRunning: Set<string>으로 dedup되어 clear-log가 턴당 1회만 실행된다.
  • session.error (abort 포함)도 turn-end로 취급되어 그 다음 busy에서 clear-log 트리거 — MessageAbortedError 이후 재입력 시 자동 청소.
  • permission.replied는 의도적으로 turn-end에서 제외 (mid-turn 재개이므로 현재 턴 로그 보존).

의도된 트레이드오프

cmux clear-log CLI는 --source 필터를 지원하지 않는다. 즉 호출 시 해당 workspace 내 모든 source(다른 cmux 플러그인 포함)의 로그가 함께 지워진다. 다른 workspace는 영향 없음. 사용자가 원래 명시한 "정상 상태로 돌아왔을 때 에러가 사라지는 것" UX를 충족시키기 위한 의식적 선택이며, .nexus/memory/empirical-cmux-log-turn-reset.md에 근거와 anti-patterns 기록.

opt-out

OPENCODE_NEXUS_CMUX=0 또는 CMUX_WORKSPACE_ID 미설정 시 cmux 호출 자체가 일어나지 않음(clear-log 포함). 기존 동작과 동일.

install / CLI UX 영향

없음. config surface·hook signature·CLI argv 전부 불변.

Breaking change

없음. 기존 설치본에서 opencode-nexus install 또는 글로벌 업데이트 후 OpenCode 재시작만 하면 반영된다.

검증

  • bun run check PASS
  • bun run test:e2e PASS — 기존 cmux-a~s 시나리오 + 신규 cmux-t/u/v/w 4개 모두 통과
  • npm pack --dry-run — 27 files, 0.16.4, 74.3 kB
  • 임시 prefix 글로벌 설치 후 MCP handshake PASS (serverInfo: nexus-core 0.20.0 수신)
  • 임시 디렉터리 install → uninstall --force 후 opencode.json / .opencode/ 모두 정상 제거

신규 e2e 회귀 시나리오

  • cmux-t: error → busy → clear-log + Running set-status
  • cmux-u: 연속 busy 5회 → clear-log 정확히 1회 (dedup)
  • cmux-v: MessageAbortedError abort → busy → clear-log (abort도 turn-end)
  • cmux-w: 비활성 모드 및 non-root 세션에서 clear-log 미호출 (negative regression)

관련 문서 / 메모리

  • CHANGELOG.md [0.16.4]
  • .nexus/context/releasing.md §5-5-1/§5-5-2 신규 bullet
  • .nexus/memory/empirical-cmux-log-turn-reset.md (신규)
  • .nexus/memory/empirical-cmux-pill-clear-paths.md (cross-reference 추가)