Use Data instead of Struct for Episode
Immutable value object is a better fit.
Assisted-by: Claude Opus 4.6 via pi
diff --git a/lib/feed.rb b/lib/feed.rb
index 803922f..2619dbd 100644
--- a/lib/feed.rb
+++ b/lib/feed.rb
@@ -3,7 +3,7 @@ require "nokogiri"
module CookingIssues
# Parses a podcast RSS feed and returns episode data.
class Feed
- Episode = Struct.new(:number, :title, :published_at, :audio_url, keyword_init: true) do
+ Episode = Data.define(:number, :title, :published_at, :audio_url) do
def slug
formatted_number = format("%03d", number)
safe_title = title