Skip to content

Add tag-only handoff mode with deferred ARR follow-up#336

Open
tomerh2001 wants to merge 6 commits into
ManiMatter:devfrom
tomerh2001:feature/tag-only-handoff-deferred-arr-followup
Open

Add tag-only handoff mode with deferred ARR follow-up#336
tomerh2001 wants to merge 6 commits into
ManiMatter:devfrom
tomerh2001:feature/tag-only-handoff-deferred-arr-followup

Conversation

@tomerh2001

Copy link
Copy Markdown

Summary

Implements a configurable tag-only handoff workflow so Decluttarr can defer cleanup ownership to an external service (for example qbit_manage), while optionally triggering ARR follow-up only after external removal is detected.

What Changed

  • Added new ARR-removal job controls:
    • action_mode: remove | skip | tag_only
    • handoff_tag
    • deferred_arr_followup
    • followup_trigger (currently on_download_removed)
  • Extended JobDefaults and job-level parsing for the above fields.
  • Added env parsing support for job-default keys (ACTION_MODE, HANDOFF_TAG, DEFERRED_ARR_FOLLOWUP, FOLLOWUP_TRIGGER).
  • Implemented tag_only path in RemovalHandler:
    • Apply handoff tag to matching torrent.
    • If deferred_arr_followup: true, detect whether the download hash is gone from qBittorrent.
    • Trigger ARR queue removal/blocklist follow-up once external removal is detected.
  • Added config/docs updates in config/config_example.yaml and README.md.

Tests

  • Added new tests for:
    • tag-only handoff waiting behavior
    • deferred follow-up trigger after external removal
    • safe skip when tag handoff is unsupported
    • job defaults + job-level override parsing for new fields
    • env-loading for new job-default keys
  • Full suite run locally:
    • python3 -m pytest -q

Related

@ManiMatter

Copy link
Copy Markdown
Owner

@tomerh2001 Hi - I am not sure how this is from what the "Obsolete_Tag" already does.
https://github.com/ManiMatter/decluttarr#private_tracker_handling--public_tracker_handling

Could you please explain?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants