Skip to content

v0.3.0-alpha — Phase 2: Full Feature Set

Pre-release
Pre-release

Choose a tag to compare

@mattferry mattferry released this 14 Feb 10:32
· 4 commits to main since this release

Phase 2 Release — 6 Major Features

Session Management (2A)

  • Side drawer with session list (swipe from left or tap hamburger menu)
  • Create, switch, delete, compact, and rename sessions
  • Sessions persisted locally via Room DB
  • Dynamic session key — no more hardcoded "android://companion"

Settings Editor (2B)

  • Dynamic config form generated from server JSON schema
  • Text, number, toggle, and select field types
  • Collapsible sections, search filtering
  • Save with optimistic concurrency, snackbar feedback

Chat Attachments (2C)

  • Camera capture and gallery photo picker
  • Image compression: resize to 1024px max edge, JPEG compress to <512KB
  • Attachment thumbnails in input bar and message bubbles
  • Base64-encoded attachments sent via gateway API

Log Viewer (2D)

  • Live log streaming from gateway (2s polling)
  • Color-coded by level: ERROR=red, WARN=yellow, DEBUG=dim
  • Filter chips (ALL/ERROR/WARN/INFO/DEBUG)
  • Auto-scroll with manual override, scroll-to-bottom FAB
  • Accessible from Settings → Diagnostics → View Logs

Push Notifications (2E)

  • Foreground service (BillBotService) with connectedDevice type
  • Three notification channels: chat (HIGH), alerts (DEFAULT), service (LOW)
  • Background chat notifications with 5s throttle
  • Health/shutdown alert notifications
  • Toggle in Settings → Notifications

Login/Auth (2F)

  • Expandable authentication section on connection screen
  • Three modes: Tailscale (default), Token, Password
  • Segmented button selector with mode-specific input fields
  • Auth params passed through WebSocket handshake
  • Scope-based feature gating from server response

Technical

  • Room DB: version 1→2 (sessions table)
  • 14 new files, 17 modified files, ~2500 lines changed
  • New dependency: lifecycle-process for ProcessLifecycleOwner
  • APK: 19MB debug build