# clisbot v0.1.52

Released: 2026-05-06

`v0.1.52` is the public release after `v0.1.51`.

## Summary

`v0.1.52` is a small stable release focused on operator truthfulness in two places that were still too easy to misread after `v0.1.51`:

- shared-route setup guidance now says clearly that `routes add ...` uses the agent currently assigned to that bot by default, while `routes set-agent ...` is only an override
- stale short `startupDelayMs` overrides from older configs are now pruned more aggressively, so upgraded installs can actually inherit the newer 60-second startup default instead of silently staying pinned to older shorter windows

## Operator Impact

- Required action: none.
- Behavior users should notice:
  - Slack and Telegram route guidance is less confusing when onboarding a shared surface.
  - Some current-schema installs may now rewrite persisted config on load if stale short startup-delay overrides are still present.
- Compatibility notes: package version updates to `0.1.52`, but the config schema stays at `0.1.50`.
- Known risks: if someone intentionally kept a short startup-delay override below 30 seconds, `v0.1.52` now treats that as stale and removes it.

## Functional Changes

### Channels

#### Changed

- Clarified Slack and Telegram unrouted shared-surface guidance so `routes add ...` is presented as the required first step and `routes set-agent ...` is presented as an optional per-route override.
- Updated the matching operator docs so the same route mental model is consistent across user guides, runtime guidance, and chat-surface guidance.

### Configuration

#### Changed

- Current-schema config cleanup now prunes stale short `startupDelayMs` values not only from shared runner defaults, but also from CLI-family runner overrides and per-agent runner overrides.
- Persisted config pruning now uses one shared stale-startup-delay rule instead of several redundant helper variants.

## Non-Functional Changes

### Stability

#### Fixed

- Reduced the chance that upgraded installs keep behaving like pre-`v0.1.51` startup defaults because old short startup-delay pins were still lingering in persisted config.

### DX

#### Changed

- Clarified queue-workflow docs so Slack queue examples keep `--thread-id` when work starts from a thread, and Telegram queue examples keep `--topic-id` when work starts from a topic.

## Update Notes

- Update path: any version before `0.1.52` -> `0.1.52`
- Manual action: none
- Risk level: low
- Automatic config update: yes for installs before `0.1.50`; `v0.1.52` itself does not add a new schema migration, but may still rewrite current-schema configs when stale short startup-delay overrides are detected
- Breaking change: no

## Pre-Release History

- None. `v0.1.52` shipped directly as a stable follow-up to `v0.1.51`.

## Validation

- `bun test test/config.test.ts`
- `bun test test/slack-feedback.test.ts`
- `bun test test/runtime-summary.test.ts`
- `bun test test/telegram-service.test.ts`
- `bunx tsc --noEmit`
- `bun run build`

## Links

- Feature docs: [docs/features/channels/README.md](../features/channels/README.md)
- Update guide: [docs/updates/update-guide.md](../updates/update-guide.md)
- Migration: [docs/migrations/index.md](../migrations/index.md)
- Operator brief: [docs/updates/releases/v0.1.52-release-guide.md](../updates/releases/v0.1.52-release-guide.md)
