Skip to content

docs(claude): correct getDestinations() override guidance#174

Merged
cubehouse merged 1 commit intomainfrom
docs/claude-md-getdestinations-fix
May 9, 2026
Merged

docs(claude): correct getDestinations() override guidance#174
cubehouse merged 1 commit intomainfrom
docs/claude-md-getdestinations-fix

Conversation

@cubehouse
Copy link
Copy Markdown
Member

Summary

CLAUDE.md listed getDestinations() alongside getEntities(), getLiveData(), and getSchedules() under "Public API (DO NOT OVERRIDE)". That's wrong — only the latter three are marked @final in the base class:

  • Destination#getEntities()@final (line 785)
  • Destination#getLiveData()@final (line 855)
  • Destination#getSchedules()@final (line 942)
  • Destination#getDestinations() → returns [] by default, designed to be overridden

8+ existing park implementations override getDestinations() to provide the top-level DESTINATION entity (phantasialand, plopsa, fujiq, lotteworld, qiddiyacity, seaworld, toverland, parcsreunidos). The .claude/skills/implementing-parks.md guide already documents the correct pattern; only the top-level CLAUDE.md was misleading.

Discovered while reviewing #173 (Flamingo Land), which also overrides getDestinations().

Test plan

  • No code change — docs only
  • Verified base-class @final annotations on getEntities / getLiveData / getSchedules
  • Verified getDestinations() returns [] by default and is not marked @final

🤖 Generated with Claude Code

CLAUDE.md listed `getDestinations()` alongside `getEntities()`,
`getLiveData()`, and `getSchedules()` under "Public API (DO NOT
OVERRIDE)". That's wrong — only the latter three are marked `@final`
in the base class. `getDestinations()` is designed to be overridden
to provide the top-level DESTINATION entity, and 8+ existing parks
do exactly that (phantasialand, plopsa, fujiq, lotteworld,
qiddiyacity, seaworld, toverland, parcsreunidos).

The implementing-parks skill guide already has the correct pattern;
only the top-level CLAUDE.md was misleading.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 9, 2026 14:09
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the contributor documentation for Destination to correctly describe which public methods are final vs intended for subclass overrides, aligning CLAUDE.md with the actual src/destination.ts base-class behavior and existing park implementations.

Changes:

  • Corrects the “Public API (DO NOT OVERRIDE)” guidance to list only getEntities(), getLiveData(), and getSchedules() as @final.
  • Adds explicit guidance that getDestinations() is expected to be overridden to provide top-level DESTINATION entities (defaulting to []).

@cubehouse cubehouse merged commit c9e2e8a into main May 9, 2026
8 checks passed
@cubehouse cubehouse deleted the docs/claude-md-getdestinations-fix branch May 9, 2026 14:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants