Files
haos-hacs-immich-album-watcher/plans
alexei.dolgolyov e6ff0a423a
All checks were successful
Validate / Hassfest (push) Successful in 3s
Phase 10: Telegram bot commands + Phase 11: Snackbar notifications
Phase 10 — Telegram Bot Commands:
- Add commands_config JSON field to TelegramBot model (enabled cmds,
  default count, response mode, rate limits, locale)
- Create command handler with 14 commands: /status, /albums, /events,
  /summary, /latest, /memory, /random, /search, /find, /person,
  /place, /favorites, /people, /help
- Add search_smart, search_metadata, search_by_person, get_random,
  download_asset, get_asset_thumbnail to ImmichClient
- Auto-register commands with Telegram setMyCommands API (EN+RU)
- Rate limiting per chat per command category
- Media mode: download thumbnails and send as photos to Telegram
- Webhook handler routes /commands before falling through to AI chat
- Frontend: expandable Commands section per bot with checkboxes,
  count/mode/locale settings, rate limit inputs, sync button

Phase 11 — Snackbar Notifications:
- Create snackbar store (snackbar.svelte.ts) with $state rune
- Create Snackbar component with fly/fade transitions, typed colors
- Mount globally in +layout.svelte
- Replace all alert() calls with typed snackbar notifications
- Add success snacks to all CRUD operations across all pages
- 4 types: success (3s), error (5s), info (3s), warning (4s)
- Max 3 visible, auto-dismiss, manual dismiss via X button

Both: Add ~30 i18n keys (EN+RU) for commands UI and snack messages.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 21:39:05 +03:00
..

Plans

This folder contains the primary architecture plan and phase-specific subplans for the Immich Watcher project restructuring.

Structure

  • primary-plan.md -- Master plan with architecture decisions and phase overview
  • phase-1-core-library.md -- Extract shared core library
  • phase-2-haos-refactor.md -- Wire core into HAOS integration
  • phase-3-server-backend.md -- Build standalone FastAPI server
  • phase-4-frontend.md -- Build SvelteKit web UI
  • phase-5-haos-server-sync.md -- Optional HAOS-Server integration

Tracking

Each plan uses checkbox tracking:

  • [ ] -- Not started
  • [x] -- Completed
  • [~] -- In progress
  • [-] -- Skipped/deferred

Phase subplans are created when work on that phase begins (not all upfront).