Skip to content

MyAnonaSuite Python migration beta - #2

Open
Plungis wants to merge 82 commits into
mainfrom
agent/python-migration-beta
Open

MyAnonaSuite Python migration beta#2
Plungis wants to merge 82 commits into
mainfrom
agent/python-migration-beta

Conversation

@Plungis

@Plungis Plungis commented Jul 28, 2026

Copy link
Copy Markdown
Owner

Summary

  • replace the application runtime with Python 3.11+ while preserving the mlm-python command and existing config/data compatibility
  • establish MyAnonaSuite as the shared terminal-style shell with independently maintained HeavyMLM, ABSidekick, and MAM-Spender modules
  • port HeavyMLM search, filtering, autograbbers, list tracking, downloads, qBittorrent reconciliation, organization, duplicate cleanup, diagnostics, requests, and scheduling
  • include the required tid argument on every MaM torrent download and use MaM's documented ?tid=...&fl wedge contract
  • incorporate MAM-Spender Web Edition and ABSidekick as isolated, maintainable modules with their own settings and navigation
  • add reviewer-controlled ABS metadata searches directly to every Review Desk item
  • protect the public request portal with a shared requester username/password stored as salted PBKDF2-SHA256
  • show live organizer progress with current/total, organized, already-existing, downloading, skipped, and error counters
  • ship a Python-only Docker image, Compose setup, installable wheel/sdist, and Linux/Windows CI

ABS Review Desk search

Reviewers can expand Search for another match on any queued ABS item, edit the title and optional author, switch among all supported Audiobookshelf metadata providers, and request up to 30 results. Repeated searches are merged and deduplicated with the newest results first. Every manual result is labeled with its provider and rescored against the canonical Audiobookshelf item before display.

Manual searching is read-only. Selecting a result still requires the existing explicit approval confirmation, and approval uses the established Review Desk metadata/tag/cover write path.

Collection rollback

The beta 29 collection-torrent experiment remains completely removed because real torrent layouts cannot be classified reliably enough without risking incorrect book splits. HeavyMLM retains one-torrent/one-library-item behavior. Existing beta 29 collection folders remain untouched for manual review.

Validation

  • 89 Python tests pass
  • Ruff formatting and lint checks pass
  • JavaScript syntax validation passes with Node
  • wheel build and isolated wheel install/import smoke tests pass on Windows
  • wheel SHA-256: 85E2A620D9F207E085B232C19B6116BC640DFD605065BBF4971686C23D06D6BC
  • GitHub Actions exercises Python 3.11 and 3.13 on Linux and Windows plus the Docker build

Beta notes

This remains a review beta. Existing mlm-python commands, TOML configuration, and data paths are unchanged. ABSidekick runs in dry-run mode by default, and MAM-Spender automation remains paused until explicitly started.

@Plungis Plungis changed the title Python migration beta: lossless DB import and downloader Python-only MLM migration beta Jul 28, 2026
@Plungis
Plungis marked this pull request as ready for review July 28, 2026 22:53
Plungis added 30 commits August 13, 2026 16:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant