Set different retention times for each snapshot task within replication task

Problem/Justification
(What is the problem you are trying to solve with this feature/improvement or why should it be considered?)

Since my backup pool has more storage then my main pool and I want to keep a longer history on my backup, I want to set different retention times for different snapshot tasks within one replication task.
Creating different replication tasks for each snapshot task would mean to replicate the base data multiple times since the referenced base from the snapshots differ.

Currently you can only set a longer retention time for all snapshots within a specific replication task. The current settings would result in keeping daily snapshots for 6 month (if set retention time to “Custom: 6 month”).

Example:
Snapshot schedule main pool:

  • Daily - Kept for 7 days
  • Weekly - Kept for 4 Weeks
  • Monthly - Kept for 3 Months

Desired retention time backup pool:

  • Daily - Kept for 2 months
  • Weekly - Kept for 3 months
  • Monthly - Kept for 12 months

Impact
(How is this feature going to impact all TrueNAS users? What are the benefits and advantages? Are there disadvantages?)

All user could have the possibility to use a longer retention time on replication targets for specific snapshots if their main pool is smaller or just want to have a longer storage period on the backup target for a some sort of archive. But I don’t see any downsides from a user perspective to have an additional (more granular) option to manage my snapshots on a replication task.

User Story
(Please give a short description on how you envision some user taking advantage of this feature, what are the steps a user will follow to accomplish it)

When creating an replication task there is currently the option to set a “Custom” retention time, I expect that this option would also hold options to set different retention times for each snapshot task if multiple snapshot tasks are selected within one replication task.

Curious to see how this could play out with zettarepl…
(Quite possibly this request being closed because it cannot be implemented with the current tools.)