Skip to content

v2.7.0 — 매 실행 업데이트 확인 + llmux update

Choose a tag to compare

@Changroro Changroro released this 18 Aug 01:17
· 9 commits to main since this release
861f4a8

🐛 고친 것

새 릴리스가 나와도 하루 동안 안 보이던 문제. 시작 시 업데이트 확인 결과를 24시간 캐시하고 있어서, 캐시가 찍힌 뒤 나온 릴리스는 다음 날까지 알림이 뜨지 않았습니다. 캐시를 우회할 정식 수단도 없어 .runtime/version-check.json 을 손으로 지워야 했습니다.

이제 인터랙티브 실행마다 확인합니다. 캐시 파일은 조회에 실패했을 때만 쓰이고(15분 백오프), 오프라인 머신이 매번 네트워크 타임아웃을 물지 않게 합니다. 성공하면 즉시 지웁니다.

✨ 새 기능

llmux update

백오프를 무시하고 지금 확인하고, 필요하면 업데이트합니다.

llmux update --check          # "llmux is up to date (v2.7.0)."
llmux update --check --json   # {"state": "behind", "latest_tag": ..., "local_version": ...}
llmux update -y               # git pull + uv tool install, 확인 없이

상태를 알 수 없으면(오프라인·rate limit·git 체크아웃 아님·shallow clone) 이유를 말하고 exit 1. 깨끗한 main 이 아니면 이유를 밝히고 자동 업데이트를 거부합니다.

TUI 에서는 대시보드 U 키가 같은 일을 합니다.

🧹 내부

  • 릴리스 태그가 체크아웃의 pyproject.toml 버전과 같으면 거기서 최신으로 판정 — 평소 API 호출이 2회에서 1회로 줄었습니다. 다를 때만 커밋 ancestry 를 확인합니다(기존 로직 유지). HTTP 타임아웃 4s → 3s.
  • 판정을 resolve_status()UpdateStatus(behind/current/unknown) 로 분리하고, unknown 에 사유를 실었습니다.

Full changelog: v2.6.0...v2.7.0