[English](../../../../updates/releases/v0.1.50-release-guide.md) | [한국어](./v0.1.50-release-guide.md)

# clisbot v0.1.50 릴리스 가이드

Date: 2026-04-28

## 이런 경우 읽으세요

- `0.1.43` 설치본을 운영 중이며 업데이트를 계획 중일 때
- Slack / Telegram group, Telegram topic, loop, streaming preview를 쓰고 있을 때
- route, auth, schedule, runtime config를 chat에서 agent에게 맡기는 흐름을 사용 중일 때

## TL;DR

이번 릴리스는 실제 group / topic 환경에서 `clisbot`을 더 안전하고 실용적으로 만듭니다. 공유 대화 공간 접근 규칙이 더 분명해졌고, config update는 자동화되며, scheduled loop와 durable queue control은 더 믿을 만해졌고, prompt context는 읽기 쉬워졌으며, startup / restart도 올바른 session에 더 엄격하게 맞춰집니다.

## 경로 고르기

### 개인 bot을 운영한다면

- 가장 중요하게 볼 것: `/queue`, 긴 run continuity 개선, trust-prompt recovery 개선, Telegram media attachment
- 업데이트 후 할 것: 일반 coding task 하나 실행, `/status`와 queued follow-up 하나 확인

### 공유 팀 bot의 owner라면

- 가장 중요하게 볼 것: 더 분명해진 `group:*` policy model, 더 안전한 route inheritance, 더 엄격한 thread / topic isolation
- 업데이트 후 할 것: 중요한 shared route를 확인하고, 실제 group / topic 대화 하나 검증

### 런타임 운영자라면

- 가장 중요하게 볼 것: 오래된 설치본에서의 direct upgrade, `clisbot queues`, 더 사실적인 `sessionId` 상태 노출, restart false-failure 허용
- 업데이트 후 할 것: `clisbot status`, `clisbot queues list`, targeted restart check 하나 실행

## 무엇이 바뀌었나

- 공유 group 접근 방식을 이해하기 쉬워졌습니다. 다인 대화 공간 진입 허용과 sender policy가 이제 분리됩니다.
- `0.1.43` config는 backup 후 자동으로 schema `0.1.50`로 업데이트됩니다.
- wall-clock loop의 timezone 처리와 first-prompt 신뢰성이 더 좋아졌습니다.
- `clisbot queues`와 chat `/queue`를 통해 same-session durable queue control이 생겼습니다.
- prompt에 compact sender / 채팅 맥락 정보가 normal, queue, steering, loop 경로 전반에 추가됐습니다.
- Telegram voice / audio 파일이 agent workspace attachment로 들어갑니다.
- Telegram topic과 streaming preview의 session isolation이 더 강해져, 다른 topic이나 오래된 pane 내용이 현재 답변처럼 렌더되지 않습니다.
- session continuity와 runner truth가 더 엄격해졌습니다. 애매한 resume이나 `/new` 실패 시 stored session id를 보존하고, 지연된 trust prompt도 prompt submission 전에 다시 받아 줍니다.

## 가장 체감되는 개선

### 일상적인 chat 사용자

- queued follow-up이 임시 우회가 아니라 실제 기능처럼 느껴짐
- agent가 sender / 채팅 맥락을 더 정확하게 해석
- Telegram 모바일 사용에서 `voice`, `audio`가 일반 workspace file처럼 들어와 더 유용함

### 공유 대화 공간 관리자라면

- group / topic 노출을 더 안전하게 이해하기 쉬움
- `group:*` 상속을 기대하는 exact route의 동작이 더 분명함
- 오래된 config shape도 수동 rewrite 없이 제자리에서 업그레이드 가능

### 디버깅 담당 운영자라면

- restart warning의 노이즈가 줄어듦
- stale resume이나 `/new` 문제 뒤에 session continuity가 몰래 드리프트할 가능성이 줄어듦
- upstream CLI 변화로 trust prompt가 다시 떠도 prompt submission 전에 더 의도적으로 처리됨

## 지금부터 무엇을 써야 하나

- Telegram topic route에는 `topic:<chatId>:<topicId>`를 쓰세요
- bot 하나의 기본 shared sender policy node로 `group:*`를 쓰세요
- exact group / topic route가 `group:*`를 상속해야 한다면 route-local `policy`를 생략하세요
- app-level timezone control에는 `clisbot timezone get|set|clear|doctor`를 쓰세요
- ad hoc follow-up reminder 대신 durable queue operation에는 `clisbot queues list|status|create|clear`를 쓰세요
- 민감한 config 변경 전에는 agent에게 `clisbot auth get-permissions --sender <principal> --agent <id> --json`을 먼저 실행하게 하세요

## 무엇을 지켜봐야 하나

- 기존 exact shared route에 뜻하지 않게 `policy: disabled`가 남아 있지 않은지
- calendar loop는 생성 시점 timezone을 고정하므로, 나중에 app timezone을 바꿔도 기존 loop가 움직이지 않아야 함
- Slack display enrichment는 Slack manifest guide에 적힌 lookup scope에 의존
- streaming fix는 prompt boundary에 엄격하므로, 오래된 pane 내용이나 다른 topic output이 새 답변에 섞여 보이면 보고
- update 중 restart가 stop-timeout warning을 찍더라도, status에서 worker가 이미 내려간 상태라면 현재 릴리스는 계속 정상 진행되어야 함

## 업데이트 / 롤아웃

- `0.1.50` 패키지 설치 또는 실행
- `clisbot` restart 후 automatic config update가 돌도록 둠
- `clisbot status`로 schema / runtime health 확인
- 중요한 Telegram topic route, Slack shared route 확인
- queue-heavy 작업 흐름이 있다면 `clisbot queues list`와 실제 queued prompt 하나 검증
- 업데이트 안정성이 확인될 때까지 `~/.clisbot/backups/`의 backup 보관

## 첫 점검으로 좋은 것

- 개인 Telegram bot: 일반 prompt 하나, `/queue ...` 하나, `/status` 하나
- 공유 Slack / Telegram 대화 공간: 대상 thread / topic에서 실제 메시지 하나 + route permission check 하나
- runtime 운영자: `clisbot restart` 하나, `clisbot runner list` 하나, `clisbot queues list` 하나

## 링크

- [릴리스 노트](../../releases/v0.1.50.md)
- [업데이트 가이드](../update-guide.md)
- [마이그레이션 인덱스](../../migrations/index.md)
- [변경 기록](../../../../../CHANGELOG.md)
