Files
unraid-docker-manager/.planning/phases/08-inline-keyboard-infrastructure/08-CONTEXT.md
T
Lucas Berger 6679fb7cf4 docs(08): capture phase context
Phase 08: Inline Keyboard Infrastructure
- Implementation decisions documented
- Phase boundary established

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 11:32:08 -05:00

2.4 KiB

Phase 8: Inline Keyboard Infrastructure - Context

Gathered: 2026-02-03 Status: Ready for planning

## Phase Boundary

Users interact with containers via tappable buttons instead of typing commands. This phase adds inline keyboard buttons to the existing Telegram bot, creating a visual interface for container control. The core functionality (start, stop, restart, update, logs) remains the same — this changes HOW users invoke it.

## Implementation Decisions

Button layout & grouping

  • Icons only for button labels (▶️ ⏹️ 🔄 ⬆️) — compact, mobile-friendly
  • Container list is paginated (not all at once)
  • Each container shows: name + status (e.g., "plex — Running")
  • Update available indicator: use Unraid's native update detection if accessible (research needed)

Container selection

  • Two entry points: /status command AND a persistent menu button ("Containers")
  • Tap container name → submenu with status details + action buttons
  • Direct access supported: /status plex jumps straight to that container's submenu
  • Submenu shows container status info (state, details) plus action buttons

Confirmation flow

  • Confirmation required for: Stop and Update only (not restart)
  • Edit same message with "Stop plex? Yes / No" — keeps chat clean
  • Timeout after 30 seconds — reverts to original buttons if no response

Progress feedback

  • Quick actions (start/stop/restart): show final result only
  • Updates and batch operations: show progress (simple status, not detailed steps)
  • Format: "Updating plex..." → "plex updated "
  • After completion: show result + "Back to menu" button

Claude's Discretion

  • Button row arrangement (single row vs grouped)
  • Number of containers per page in list
  • "No" confirmation behavior (return to container buttons or list)
  • Error/failure handling approach
## Specific Ideas
  • Navigation pattern: List → tap name → submenu (status details + actions) → tap action → execute
  • Persistent menu button provides always-available access without typing
  • Direct container access (/status plex) preserves power-user shortcuts
## Deferred Ideas
  • Cached update status checking — only pursue if Unraid native detection isn't accessible
  • Detailed progress steps during updates — keep simple for now

Phase: 08-inline-keyboard-infrastructure Context gathered: 2026-02-03