diff --git a/DESIGN.md b/DESIGN.md index 457278a..09e4f0e 100644 --- a/DESIGN.md +++ b/DESIGN.md @@ -77,7 +77,8 @@ Policy required_audio rule set, see §5.2 dub_blacklist [pt-BR] hdr_rules see §5.3 - size_bands per resolution: floor, target, penalty curve + size_bands per resolution: floor, target, penalty curve, + all per episode (§5.5) resolution_pref [2160p, 1080p] source_weights small tiebreaker @@ -284,6 +285,28 @@ remux scores badly but stays eligible, so it is picked when it is the only option. The floor matters — unbounded "smaller is better" selects a 3 GB 4K encode that looks like mud. +**A band describes one episode.** For a movie the question never arises — one +release is one film. For TV a release may carry a single episode, several, or a +whole season, and the shipped TV numbers are episode numbers: a 1080p target of +2 GiB is what one episode should weigh, not a ten-episode pack. So a release is +measured by its size divided by the number of episodes it covers, and that +per-episode figure is what both the target penalty and the floor are compared +against. A 20 GiB pack of ten episodes is scored as 2 GiB and sits at target, +not ten times above it. + +The floor takes the same figure. It is a hard reject rather than a penalty, so +comparing a pack's total against an episode-sized floor lets every pack through +untested — wrong in the opposite direction from the target penalty. The floor +exists to keep a 3 GB 4K encode out, and a pack of ten such encodes has to fail +it just as plainly. + +**An unknown episode count is one episode.** A release matched before its +season's episodes have been revealed by a metadata refresh has nothing to divide +by, and the rule does not guess a number: the divisor is 1 and the release is +measured by its full size. That is the behaviour today, and it makes a pack look +oversized rather than undersized — it fails toward rejecting a good pack rather +than grabbing a bad one, and the next search after a refresh has the real count. + Source tier (`Remux > BluRay > WEB-DL > WEBRip > HDTV`) survives as a small tiebreaker. Seeders are log-scaled and small: enough to complete, past that it does not matter. Telesync, CAM and screener are **hard filters**, not low