fix(seaworld): merge same-name shows within a park into one entity - #605
Merged
Merged
Conversation
The feed publishes some shows more than once under the same name, with
nothing to tell the copies apart (same category and subtype, no tag, no
coordinates): SeaWorld Orlando lists "Sea Lions: Flippers, Facts & Fun"
twice, one copy carrying the day's showtimes and the other none, and
Sesame Place San Diego lists most character meets several times ("Meet
Abby Cadabby" x6). Each copy became its own entity, so guests saw a row
of identical entries, most of them with no schedule.
mapShowAliases() extends the ASL fold: within one park, every copy but
the lowest id maps to the lowest id (stable for as long as the copies
exist), and ASL listings map to that canonical id. The copies' showtimes
merge into the canonical show, de-duplicated by start/end/type; a copy's
closure row is ignored rather than shutting a show its twin lists
performances for. Grouping is per park, never across parks.
Live before/after across the seven SeaWorld family destinations: 802 ->
716 entities, 86 copies folded into a surviving same-name show in the
same park (78 Sesame Place character meets), no ids added, no names
changed.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The SeaWorld/Sesame Place feed publishes some shows more than once under the same name, and nothing tells the copies apart: same category and subtype, no tag, no coordinates. Examples:
Each copy became its own entity, so guests saw a row of identical entries, most with no schedule.
Fix
mapShowAliases()extends the existing ASL fold (mapAslShowsToBasestays, as a wrapper):Verification
Live before/after across the seven SeaWorld family destinations: 802 → 716 entities. The 86 removed ids are each folded into a surviving same-name show in the same park, checked per item: 78 Sesame Place character meets (61 San Diego, 17 Philadelphia), 4 SeaWorld San Antonio, 3 SeaWorld San Diego, 1 SeaWorld Orlando. No ids are added and no names change. No show name is shared across parks within any multi-park destination today.
New tests with the real shapes:
Removing the duplicate skip fails the entity test. 135 pass.
tscis clean for src and tests.Caching
The alias map is computed from the cached park detail on each build. No cached value changes shape, so no
cacheVersionbump.🤖 Generated with Claude Code