# Butler v0.0.4

## Change Log

- Fixed Butler App browser compatibility for environments where
  `crypto.randomUUID` is unavailable. The web client now uses the shared app ID
  helper backed by the npm `uuid` package instead of crashing in older browser
  runtimes.
- Made the Telegram gateway opt-in by default. Fresh installs and installs that
  do not select Telegram no longer start Telegram polling or emit repeated
  missing-token logs, and disabling Telegram stops the runtime polling path.
- Added log following support for Butler CLI log commands. Human-mode log reads
  can now stream newly appended safe log lines with `--follow`.
- Added service health visibility to `butler status`. Human output and JSON
  status now include per-service health such as `butler-agent`, `gateway-app`,
  and other registered services.

## Validation

- `bun run check` passed after release preparation.
- `bun run release:gate` passed after release preparation.
- `bun run release:service:package --out dist/release/service --artifact-base-url
  https://github.com/Hexpy-Games/butler/releases/download/v0.0.4` rebuilt the
  service tarball, SHA256 file, service release manifest, and update manifest.
- `bun run release:app:package --out dist/release/app --artifact-base-url
  https://github.com/Hexpy-Games/butler/releases/download/v0.0.4` rebuilt the
  macOS app zip, Linux app tarball, SHA256 files, app release manifest, and app
  update manifest.
- Generated release SHA256 files were verified locally before upload.
- Published `v0.0.4` GitHub Release assets and manifests were verified after
  upload.
