Fail loudly on missing episode number
Every item in the HRN feed has one, so silent skipping hid nothing
useful.

Assisted-by: Claude Opus 4.6 via pi
change qkzpzvttyntwmrtxqwvmrpkmvruonlyr
commit f1c201c4aa2bb9dce7297435d336abeb51ffa0ef
author Alpha Chen <alpha@kejadlen.dev>
date
parent kzpyxqkn
diff --git a/lib/feed.rb b/lib/feed.rb
index 3cab50e..a8b30e6 100644
--- a/lib/feed.rb
+++ b/lib/feed.rb
@@ -3,11 +3,8 @@ require "nokogiri"
 module CookingIssues
   Episode = Data.define(:number, :title, :published_at, :audio_url) do
     def self.parse(item)
-      number = item.at_xpath("itunes:episode")&.text&.to_i
-      return nil unless number && number > 0
-
       new(
-        number: number,
+        number: item.at_xpath("itunes:episode").text.to_i,
         title: item.at_xpath("title").text,
         published_at: item.at_xpath("pubDate").text,
         audio_url: item.at_xpath("enclosure")["url"]
@@ -29,7 +26,7 @@ module CookingIssues
   module Feed
     def self.parse(path)
       doc = Nokogiri::XML(File.read(path))
-      doc.xpath("//item").filter_map { |item| Episode.parse(item) }
+      doc.xpath("//item").map { |item| Episode.parse(item) }
     end
   end
 end