Files
unraid-docker-manager/.planning/MILESTONES.md
T
Lucas Berger 903e73d616 feat: v1.3 Unraid Update Status Sync
Unraid GraphQL API foundation — connectivity, authentication, and
container ID format verified for native Unraid API integration.

Phase 14: Unraid API Access (2 plans, 4 tasks)
- Established Unraid GraphQL API connectivity via myunraid.net cloud relay
- Dual credential storage (.env.unraid-api + n8n env vars)
- Container ID format: {server_hash}:{container_hash} (128-char SHA256 pair)
- Complete API contract documented in ARCHITECTURE.md
- "unraid" test command added to Telegram bot

Phases 15-16 dropped (superseded by v1.4 Unraid API Native).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 07:47:31 -05:00

4.4 KiB

Project Milestones: Unraid Docker Manager

v1.2 Modularization & Polish (Shipped: 2026-02-08)

Delivered: Modular sub-workflow architecture with "Update All" functionality — 7 domain sub-workflows, bitmap-encoded batch selection, and comprehensive documentation.

Phases completed: 10-13 + 10.1, 10.2 (6 phases, 25 plans)

Key accomplishments:

  • Decomposed monolithic workflow into 7 domain sub-workflows (Update, Actions, Logs, Batch UI, Status, Confirmation, Matching) — 287 total nodes
  • Bitmap-encoded batch selection eliminating Telegram's 64-byte callback limit (supports 50+ containers)
  • "Update All :latest" via text command and inline keyboard with infrastructure container exclusion
  • Correlation ID tracking for request tracing across sub-workflow boundaries
  • Comprehensive documentation overhaul (README with architecture, configuration, troubleshooting)
  • 9 UAT bugs fixed during Update All verification including infrastructure self-destruction protection

Stats:

  • 96 files modified (+51,319/-4,862 lines)
  • 10,987 lines across 8 workflow JSON files
  • 6 phases, 25 plans, 153 commits
  • 4 days (2026-02-04 → 2026-02-08)

Git range: v1.1 → 0471565

Tech debt accepted: 4 non-blocking items (descoped logging features, 3 orphan nodes, legacy batch parsers, missing Phase 12 verification)

What's next: v2.0 with resource monitoring or proactive notifications.


v1.1 n8n Integration & Polish (Shipped: 2026-02-04)

Delivered: Inline keyboard UX and Docker security hardening — button-driven container control with filtered socket proxy.

Phases completed: 6-9 (11 plans total)

Key accomplishments:

  • n8n API access for programmatic workflow management
  • Docker socket proxy deployment removing direct socket exposure
  • Inline keyboard with container list, pagination, and action buttons
  • Batch operations with sequential execution and progress feedback
  • Confirmation dialogs for dangerous actions (stop, update)

Stats:

  • 38 files modified (+14,062/-4,239 lines)
  • 8,485 lines of JSON workflow
  • 4 phases, 11 plans
  • 2 days (2026-02-03 → 2026-02-04)

Git range: 7e85697fa7c603

What's next: v1.2 with workflow modularization, webhook fix, environment audit, and documentation.


v1.0 Docker Control via Telegram (Shipped: 2026-02-02)

Delivered: Telegram bot for managing Docker containers on Unraid — status, start, stop, restart, update, logs via keyword commands.

Phases completed: 1-5 (12 plans total)

Key accomplishments:

  • Telegram bot with keyword routing (no Claude API dependency)
  • Docker socket integration via n8n with curl
  • Container matching with exact-match priority
  • Update command with image pull, recreate, old image cleanup
  • Log viewing with configurable line counts
  • Single-user auth via Telegram user ID

Stats:

  • 2 files (n8n-workflow.json, README.md)
  • ~3,400 lines of JSON workflow + markdown
  • 5 phases, 12 plans
  • 5 days from start to ship (2026-01-28 → 2026-02-02)

Git range: Initial commit → e5c02f9


v1.3 Unraid Update Status Sync (Shipped: 2026-02-09)

Delivered: Unraid GraphQL API foundation — connectivity, authentication, and container ID format verified for native Unraid API integration.

Phases completed: 14 (1 phase, 2 plans) — Phases 15-16 dropped (superseded by v1.4 Unraid API Native)

Key accomplishments:

  • Established Unraid GraphQL API connectivity from n8n via myunraid.net cloud relay
  • Dual credential storage (.env.unraid-api + n8n env vars) mirroring existing patterns
  • Production-verified container ID format: {server_hash}:{container_hash} (128-char SHA256 pair)
  • Documented complete Unraid GraphQL API contract in ARCHITECTURE.md
  • Added "unraid" test command to Telegram bot for connectivity validation
  • Corrected schema documentation (isUpdateAvailable does not exist in Unraid 7.2)

Stats:

  • 23 files modified (+4,038/-2,213 lines)
  • 1 phase, 2 plans, 4 tasks
  • 19 commits
  • 1 day (2026-02-08)

Git range: v1.2 → e4bd653

Descope note: Original scope included Phases 15-16 (sync update status back to Unraid). These were dropped because v1.4 will replace the Docker socket proxy entirely with Unraid's GraphQL API — when Unraid IS the container management API, the badge sync problem solves itself.

Tech debt accepted: None — clean foundation for v1.4.

What's next: v1.4 Unraid API Native — replace Docker socket proxy with Unraid GraphQL API for all container operations.