diff --git a/packages/meta-sort-core/src/config/RenamingRule.ts b/packages/meta-sort-core/src/config/RenamingRule.ts index 5b92c13..2303f85 100644 --- a/packages/meta-sort-core/src/config/RenamingRule.ts +++ b/packages/meta-sort-core/src/config/RenamingRule.ts @@ -27,7 +27,8 @@ export function renamingRule(metamesh: Local, filepath?: string): string | null } // The display name — never the `titles/*` name set, which has no preferred member (METADATA_KEYS.md §3). - const title = metamesh.title || metamesh.originalTitle; + // `parsedTitle` is filename-parser's guess (claims model, D12): last resort. + const title = metamesh.title || metamesh.originalTitle || (metamesh as { parsedTitle?: string }).parsedTitle; if (!title) { if (metamesh.fileType !== "torrent") { //don't warn for torrent files because they don't always have a title (eg representing a folder of files) diff --git a/packages/meta-sort-core/src/logic/MetadataFormatRegistry.ts b/packages/meta-sort-core/src/logic/MetadataFormatRegistry.ts index 182c5ef..ce7e80c 100644 --- a/packages/meta-sort-core/src/logic/MetadataFormatRegistry.ts +++ b/packages/meta-sort-core/src/logic/MetadataFormatRegistry.ts @@ -87,7 +87,8 @@ export class JellyfinFormatHandler implements IMetadataFormatHandler { // Title: the display name. `titles/*` is an unordered name set with no // preferred member, so it is never the NFO title (METADATA_KEYS.md §3). - const title = metadata.title || metadata.originalTitle; + // `parsedTitle` is filename-parser's guess (claims model, D12): last resort. + const title = metadata.title || metadata.originalTitle || (metadata as { parsedTitle?: string }).parsedTitle; if (title) jellyfinFields.title = title; // IDs