Prober: an inspection per candidate; no inner name that is the release's name
A release can have several candidates of a kind (two RAR sets): keyed by
(release, kind) both landed in one upsert ("ON CONFLICT DO UPDATE
command cannot affect row a second time"), and the batch was lost.
release_inspections is keyed by candidate now; the first run's results
are cleared and probed again. A random-named file's yEnc name is often
its random name: an inner name equal to the release's name is dropped.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
8bd6d6aa5f
commit
738402aefa
4 files changed
+53
-22
No files matched your search
@@ -116,9 +116,12 @@ test.group('probe / innerName', () => {
|
||||
test("the archive's largest entry, else par2's largest non-packaging file, else a lone file's yEnc name", ({ assert }) => {
|
||||
const archive = { yencName: 'a.rar', size: 1, type: 'rar5' as const, names: ['Show.S01E01/show.s01e01.mkv'] }
|
||||
const par2 = { yencName: 'a.par2', size: 1, type: 'par2' as const, names: ['abc.part01.rar', 'Show.S01E01.1080p.mkv'] }
|
||||
assert.equal(innerName({ archive, par2 }), 'show.s01e01.mkv')
|
||||
assert.equal(innerName({ par2 }), 'Show.S01E01.1080p.mkv')
|
||||
assert.equal(innerName({ par2: { ...par2, names: ['abc.part01.rar', 'abc.par2'] } }), null)
|
||||
assert.equal(innerName({ lone: { yencName: 'Real.Name.mkv', size: 1, type: 'matroska' } }), 'Real.Name.mkv')
|
||||
assert.equal(innerName([{ kind: 'par2', result: par2 }, { kind: 'archive', result: archive }]), 'show.s01e01.mkv')
|
||||
assert.equal(innerName([{ kind: 'par2', result: par2 }]), 'Show.S01E01.1080p.mkv')
|
||||
assert.equal(innerName([{ kind: 'par2', result: { ...par2, names: ['abc.part01.rar', 'abc.par2'] } }]), null)
|
||||
const lone = { kind: 'lone', result: { yencName: 'Real.Name.mkv', size: 1, type: 'matroska' as const } }
|
||||
assert.equal(innerName([lone], 'k3j4h5'), 'Real.Name.mkv')
|
||||
// A random-named file whose yEnc name is its random name says nothing new.
|
||||
assert.isNull(innerName([lone], 'real.name.mkv'))
|
||||
})
|
||||
})
|
||||
Reference in new issue
Block a user