diff --git a/app/tags.js b/app/tags.js index 112e3d5..4668611 100644 --- a/app/tags.js +++ b/app/tags.js @@ -18,10 +18,12 @@ export function categorizeTags(tags, releaseTagNames) { const keep = new Set(releaseTagNames) return tags.map((tag) => { - if (isEmptyOrNull(tag.name)) { + // 防禦 null/非物件 tag 與非字串 name:一律歸為 skip,避免後續存取或比對時出錯。 + const name = tag?.name + if (typeof name !== 'string' || isEmptyOrNull(name)) { return { tag, action: 'skip' } } - if (keep.has(tag.name)) { + if (keep.has(name)) { return { tag, action: 'keep' } } return { tag, action: 'delete' }