Skip to content

Comments

Renamed files to kebab-case - core - services - part 2#18

Open
tomerqodo wants to merge 2 commits intocoderabbit_combined_20260121_qodo_grep_cursor_copilot_base_renamed_files_to_kebab-case_-_core_-_services__-_part_2_pr224from
coderabbit_combined_20260121_qodo_grep_cursor_copilot_head_renamed_files_to_kebab-case_-_core_-_services__-_part_2_pr224
Open

Renamed files to kebab-case - core - services - part 2#18
tomerqodo wants to merge 2 commits intocoderabbit_combined_20260121_qodo_grep_cursor_copilot_base_renamed_files_to_kebab-case_-_core_-_services__-_part_2_pr224from
coderabbit_combined_20260121_qodo_grep_cursor_copilot_head_renamed_files_to_kebab-case_-_core_-_services__-_part_2_pr224

Conversation

@tomerqodo
Copy link

@tomerqodo tomerqodo commented Jan 21, 2026

Benchmark PR from qodo-benchmark#224

Summary by CodeRabbit

  • Refactor
    • Standardized internal module naming conventions across the codebase to improve consistency and maintainability. No changes to user-facing functionality.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Jan 21, 2026

Walkthrough

Comprehensive refactoring updating module import paths across the Ghost codebase from PascalCase filenames (e.g., Users, EmailAnalyticsService) to kebab-case filenames (e.g., users, email-analytics-service). JSDoc type annotations updated to reflect new module paths. No functional logic changes introduced.

Changes

Cohort / File(s) Change Summary
API Endpoints
ghost/core/core/server/api/endpoints/authentication.js, users.js
Import paths updated from Usersusers and UsersServiceusers-service
Announcement Bar Service
ghost/core/core/server/services/announcement-bar-service/announcement-bar-settings.js, index.js
ghost/core/core/server/api/endpoints/utils/validators/input/settings.js
Module paths updated: AnnouncementBarSettingsannouncement-bar-settings, AnnouncementVisibilityValuesannouncement-visibility-values
ActivityPub & Identity Tokens
ghost/core/core/server/services/activitypub/activity-pub-service.ts
ghost/core/core/server/services/identity-tokens/identity-token-service-wrapper.js, index.js
Import paths: IdentityTokenServiceidentity-token-service, IdentityTokenServiceWrapperidentity-token-service-wrapper
Adapter Manager
ghost/core/core/server/services/adapter-manager/index.js
Import path: AdapterManageradapter-manager
Audience Feedback Service
ghost/core/core/server/services/audience-feedback/audience-feedback-controller.js, index.js
Multiple imports updated to kebab-case: AudienceFeedbackService, AudienceFeedbackController, Feedback, FeedbackRepository
Auth & Sessions
ghost/core/core/server/services/auth/session/express-session.js
Import path: SessionStoresession-store
Comments Service
ghost/core/core/server/services/comments/comments-controller.js, comments-service-emails.js, comments-service.js, index.js
JSDoc type references and imports updated: CommentsServicecomments-service, CommentsControllercomments-controller, CommentsServiceEmailscomments-service-emails
Custom Redirects & Media
ghost/core/core/server/services/custom-redirects/index.js
ghost/core/core/server/services/media-inliner/service.js
Import paths: DynamicRedirectManagerdynamic-redirect-manager, CustomRedirectsAPIcustom-redirects-api, ExternalMediaInlinerexternal-media-inliner
Donations Service
ghost/core/core/server/services/donations/donation-bookshelf-repository.ts, index.js
Import paths: DonationPaymentEventdonation-payment-event, DonationServiceWrapperdonation-service-wrapper
Email Analytics
ghost/core/core/server/services/email-analytics/*.js
Multiple imports updated: EmailAnalyticsServiceemail-analytics-service, EventProcessingResultevent-processing-result, MailgunClientmailgun-client, plus event and provider imports
Email Service & Suppression
ghost/core/core/server/services/email-service/EmailServiceWrapper.js
ghost/core/core/server/services/email-suppression-list/in-memory-email-suppression-list.js, mailgun-email-suppression-list.js, service.js
Import paths: MailgunClientmailgun-client, EmailSuppressionListemail-suppression-list, MailgunEmailSuppressionListmailgun-email-suppression-list
Explore Services
ghost/core/core/server/services/explore-ping/index.js, explore/index.js
Import paths: ExplorePingServiceexplore-ping-service, ExploreServiceexplore-service
Frontend Data & Settings
ghost/core/core/server/services/frontend-data-service/index.js
ghost/core/core/server/services/settings-helpers/index.js
ghost/core/core/server/services/settings/settings-service.js
Import paths: FrontendDataServicefront-end-data-service, SettingsHelperssettings-helpers, SettingsBREADServicesettings-bread-service
Invites & Mail
ghost/core/core/server/services/invites/index.js
ghost/core/core/server/services/mail/index.js
Import paths: Invitesinvites, EmailContentGeneratoremail-content-generator, GhostMailerghost-mailer
Member Attribution
ghost/core/core/server/services/member-attribution/README.md, attribution-builder.js, index.js, member-attribution-service.js, referrer-translator.js, url-translator.js
JSDoc and import paths updated: UrlTranslatorurl-translator, ReferrerTranslatorreferrer-translator, AttributionBuilderattribution-builder, UrlHistoryurl-history
Member Email & Events
ghost/core/core/server/services/member-welcome-emails/service.js
ghost/core/core/server/services/members-events/index.js, last-seen-at-updater.js
Import paths: MemberWelcomeEmailRenderermember-welcome-email-renderer, EventStorageevent-storage, LastSeenAtUpdaterlast-seen-at-updater, LastSeenAtCachelast-seen-at-cache
Members API & Services
ghost/core/core/server/services/members/api.js, service.js
ghost/core/core/server/services/members/importer/index.js
ghost/core/core/server/services/members/members-api/members-api.js, repositories/member-repository.js, services/member-bread-service.js
Multiple imports updated: SingleUseTokenProvidersingle-use-token-provider, MembersConfigProvidermembers-config-provider, MembersCSVImportermembers-csv-importer, PaymentsServicepayments-service, TokenServicetoken-service
Mentions & Newsletters
ghost/core/core/server/services/mentions-email-report/job.js, service.js
ghost/core/core/server/services/newsletters/index.js
Import paths: StartMentionEmailReportJobstart-mention-email-report-job, MentionEmailReportJobmention-email-report-job, NewslettersServicenewsletters-service
Notifications & Offers
ghost/core/core/server/services/notifications/index.js
ghost/core/core/server/services/offers/service.js
Import paths: Notificationsnotifications, DynamicRedirectManagerdynamic-redirect-manager
Outbox Service
ghost/core/core/server/services/outbox/index.js, jobs/outbox-job.js
ghost/core/core/server/services/members/members-api/repositories/member-repository.js
Import paths: StartOutboxProcessingEventstart-outbox-processing-event
Recommendations
ghost/core/core/server/services/recommendations/recommendation-enabler-service.js, service/in-memory-recommendation-repository.ts, service/recommendation-service.ts
JSDoc and import paths: SettingsBREADServicesettings-bread-service, InMemoryRepositoryin-memory-repository
Stats Services
ghost/core/core/server/services/stats/posts-stats-service.js, service.js, stats-service.js
Import paths updated: ReferrersStatsServicereferrers-stats-service, StatsServicestats-service, multiple internal service references updated to kebab-case
Stripe & Themes
ghost/core/core/server/services/stripe/services/webhook/CheckoutSessionEventService.js
ghost/core/core/server/services/themes/storage.js
Import paths: DonationPaymentEventdonation-payment-event, ThemeStoragetheme-storage
Update Check & Webhooks
ghost/core/core/server/services/update-check/index.js
ghost/core/core/server/services/webhooks/listen.js
Import paths: UpdateCheckServiceupdate-check-service, WebhookTriggerwebhook-trigger
Test Files: API & E2E
ghost/core/test/e2e-api/admin/settings.test.js, members/send-magic-link.test.js
ghost/core/test/e2e-browser/fixtures/ghost-test.js
Import paths updated: SingleUseTokenProvidersingle-use-token-provider, MailgunClientmailgun-client
Test Files: Integration
ghost/core/test/integration/services/email-service/email-event-storage.test.js
ghost/core/test/integration/services/mailgun-email-suppression-list.test.js
Import paths: MailgunClientmailgun-client
Test Files: Unit - Core Services
ghost/core/test/unit/server/services/activitypub/activity-pub-service.test.ts
ghost/core/test/unit/server/services/adapter-manager/adapter-manager.test.js
ghost/core/test/unit/server/services/announcement-bar/announcement-bar-settings.test.js
ghost/core/test/unit/server/services/audience-feedback/audience-feedback-service.test.js
ghost/core/test/unit/server/services/auth/session/store.test.js
Type imports and require paths updated to match kebab-case filenames
Test Files: Unit - Comments & Custom Redirects
ghost/core/test/unit/server/services/comments/comments-service-emails-renderer.test.js
ghost/core/test/unit/server/services/custom-redirects/api.test.js
Import paths updated to kebab-case
Test Files: Unit - Email Analytics
ghost/core/test/unit/server/services/email-analytics/email-analytics-provider-mailgun.test.js, email-analytics-service.test.js, event-processing-result.test.js
Multiple imports updated: EmailAnalyticsService, EventProcessingResult, EmailAnalyticsProviderMailgun
Test Files: Unit - Email Suppression & Explore
ghost/core/test/unit/server/services/email-suppression-list/email-suppression-list.test.js
ghost/core/test/unit/server/services/explore-ping/explore-ping-service.test.js
ghost/core/test/unit/server/services/frontend-data-service/frontend-data-service.test.js
ghost/core/test/unit/server/services/identity-tokens/identity-token-service.test.ts
Import paths updated to kebab-case
Test Files: Unit - Lib Services
ghost/core/test/unit/server/services/lib/dynamic-redirect-manager.test.js, email-content-generator.test.js, in-memory-repository.test.ts, mailgun-client.test.js
Import paths: DynamicRedirectManagerdynamic-redirect-manager, EmailContentGeneratoremail-content-generator, InMemoryRepositoryin-memory-repository
Test Files: Unit - Member Attribution
ghost/core/test/unit/server/services/member-attribution/attribution.test.js, history.test.js, outbound-link-tagger.test.js, referrer-translator.test.js, service.test.js, url-translator.test.js
Import paths updated: UrlHistoryurl-history, AttributionBuilderattribution-builder, OutboundLinkTaggeroutbound-link-tagger
Test Files: Unit - Member Services
ghost/core/test/unit/server/services/member-welcome-emails/member-welcome-email-renderer.test.js
ghost/core/test/unit/server/services/members-events/event-storage.test.js, last-seen-at-cache.test.js, last-seen-at-updater.test.js
Import paths updated to kebab-case
Test Files: Unit - Members API
ghost/core/test/unit/server/services/members/config.test.js, importer/index.test.js, importer/members-csv-importer-stripe-utils.test.js, importer/members-csv-importer.test.js
ghost/core/test/unit/server/services/members/members-api/controllers/member-controller.test.js, router-controller.test.js
ghost/core/test/unit/server/services/members/members-api/repositories/event-repository.test.js, member-repository.test.js, product-repository.test.js
ghost/core/test/unit/server/services/members/members-api/services/geolocation-service.test.js, members-bread-service.test.js, payments-service.test.js, token-service.test.js
Multiple import paths updated to kebab-case for all members-related modules
Test Files: Unit - Members Providers
ghost/core/test/unit/server/services/members/request-integrity-token-provider.test.js, single-use-token-provider.test.js
Import paths updated to kebab-case
Test Files: Unit - Mentions & Newsletters
ghost/core/test/unit/server/services/mentions-email-report/mention-email-report-job.test.js
ghost/core/test/unit/server/services/newsletters/service.test.js
Import paths updated to kebab-case
Test Files: Unit - Notifications & Outbox
ghost/core/test/unit/server/services/notifications/notifications.test.js
ghost/core/test/unit/server/services/outbox/index.test.js
Import paths updated to kebab-case
Test Files: Unit - Recommendations & Settings
ghost/core/test/unit/server/services/recommendations/service/recommendation-service.test.ts
ghost/core/test/unit/server/services/settings-helpers/settings-helpers.test.js
ghost/core/test/unit/server/services/settings/settings-bread-service.test.js
Import paths updated to kebab-case
Test Files: Unit - Stats
ghost/core/test/unit/server/services/stats/content.test.js, members.test.js, mrr.test.js, posts.test.js, referrers.test.js, stats.test.js, subscriptions.test.js
Multiple imports updated: ContentStatsServicecontent-stats-service, MembersStatsServicemembers-stats-service, MrrStatsServicemrr-stats-service
Test Files: Unit - Update Check & Webhooks
ghost/core/test/unit/server/services/update-check.test.js
ghost/core/test/unit/server/services/users/users-service.test.js
ghost/core/test/unit/server/services/verification-trigger.test.js
ghost/core/test/unit/server/services/webhooks/trigger.test.js
Import paths updated to kebab-case
Test Files: Unit - Media Inliner
ghost/core/test/unit/server/services/media-inliner/test/external-media-inliner.test.js
Import path: ExternalMediaInlinerexternal-media-inliner
Test Utils
ghost/core/test/utils/e2e-framework-mock-manager.js
Import path: MailgunClientmailgun-client

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Poem

🐰 A rabbit hops through files with glee,
From PascalCase to kebab spree!
One hundred-fifty paths now dance,
In lowercase with hyphenated romance.
No logic changed, just names so neat,
This refactor makes the codebase sweet! 🐇

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The pull request title accurately describes the primary change: a batch of file renames from PascalCase to kebab-case across core services (part 2 of a series).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

🧹 Recent nitpick comments
ghost/core/test/unit/server/services/members/members-api/repositories/product-repository.test.js (1)

5-5: Minor: Describe block name mismatch (pre-existing).

The describe block says 'MemberRepository' but this test file is for ProductRepository. Consider fixing this for clarity when you get a chance.

-describe('MemberRepository', function () {
+describe('ProductRepository', function () {
📜 Recent review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between fa06f0e and 828506b.

📒 Files selected for processing (198)
  • ghost/core/core/server/api/endpoints/authentication.js
  • ghost/core/core/server/api/endpoints/users.js
  • ghost/core/core/server/api/endpoints/utils/validators/input/settings.js
  • ghost/core/core/server/services/activitypub/activity-pub-service.ts
  • ghost/core/core/server/services/adapter-manager/adapter-manager.js
  • ghost/core/core/server/services/adapter-manager/index.js
  • ghost/core/core/server/services/announcement-bar-service/announcement-bar-settings.js
  • ghost/core/core/server/services/announcement-bar-service/announcement-visibility-values.js
  • ghost/core/core/server/services/announcement-bar-service/index.js
  • ghost/core/core/server/services/audience-feedback/audience-feedback-controller.js
  • ghost/core/core/server/services/audience-feedback/audience-feedback-service.js
  • ghost/core/core/server/services/audience-feedback/feedback-repository.js
  • ghost/core/core/server/services/audience-feedback/feedback.js
  • ghost/core/core/server/services/audience-feedback/index.js
  • ghost/core/core/server/services/auth/session/express-session.js
  • ghost/core/core/server/services/auth/session/session-store.js
  • ghost/core/core/server/services/comments/comments-controller.js
  • ghost/core/core/server/services/comments/comments-service-email-renderer.js
  • ghost/core/core/server/services/comments/comments-service-emails.js
  • ghost/core/core/server/services/comments/comments-service.js
  • ghost/core/core/server/services/comments/comments-stats-service.js
  • ghost/core/core/server/services/comments/index.js
  • ghost/core/core/server/services/custom-redirects/custom-redirects-api.js
  • ghost/core/core/server/services/custom-redirects/index.js
  • ghost/core/core/server/services/donations/donation-bookshelf-repository.ts
  • ghost/core/core/server/services/donations/donation-payment-event.ts
  • ghost/core/core/server/services/donations/donation-service-wrapper.js
  • ghost/core/core/server/services/donations/index.js
  • ghost/core/core/server/services/email-analytics/email-analytics-provider-mailgun.js
  • ghost/core/core/server/services/email-analytics/email-analytics-service-wrapper.js
  • ghost/core/core/server/services/email-analytics/email-analytics-service.js
  • ghost/core/core/server/services/email-analytics/event-processing-result.js
  • ghost/core/core/server/services/email-analytics/events/start-email-analytics-job-event.js
  • ghost/core/core/server/services/email-analytics/index.js
  • ghost/core/core/server/services/email-analytics/jobs/fetch-latest/index.js
  • ghost/core/core/server/services/email-service/EmailServiceWrapper.js
  • ghost/core/core/server/services/email-suppression-list/email-suppression-list.js
  • ghost/core/core/server/services/email-suppression-list/in-memory-email-suppression-list.js
  • ghost/core/core/server/services/email-suppression-list/mailgun-email-suppression-list.js
  • ghost/core/core/server/services/email-suppression-list/service.js
  • ghost/core/core/server/services/explore-ping/explore-ping-service.js
  • ghost/core/core/server/services/explore-ping/index.js
  • ghost/core/core/server/services/explore/explore-service.js
  • ghost/core/core/server/services/explore/index.js
  • ghost/core/core/server/services/frontend-data-service/front-end-data-service.js
  • ghost/core/core/server/services/frontend-data-service/index.js
  • ghost/core/core/server/services/identity-tokens/identity-token-service-wrapper.js
  • ghost/core/core/server/services/identity-tokens/identity-token-service.ts
  • ghost/core/core/server/services/identity-tokens/index.js
  • ghost/core/core/server/services/invites/index.js
  • ghost/core/core/server/services/invites/invites.js
  • ghost/core/core/server/services/lib/dynamic-redirect-manager.js
  • ghost/core/core/server/services/lib/email-content-generator.js
  • ghost/core/core/server/services/lib/in-memory-repository.ts
  • ghost/core/core/server/services/lib/mailgun-client.js
  • ghost/core/core/server/services/mail/ghost-mailer.js
  • ghost/core/core/server/services/mail/index.js
  • ghost/core/core/server/services/media-inliner/external-media-inliner.js
  • ghost/core/core/server/services/media-inliner/service.js
  • ghost/core/core/server/services/member-attribution/README.md
  • ghost/core/core/server/services/member-attribution/attribution-builder.js
  • ghost/core/core/server/services/member-attribution/index.js
  • ghost/core/core/server/services/member-attribution/member-attribution-service.js
  • ghost/core/core/server/services/member-attribution/outbound-link-tagger.js
  • ghost/core/core/server/services/member-attribution/referrer-translator.js
  • ghost/core/core/server/services/member-attribution/url-history.js
  • ghost/core/core/server/services/member-attribution/url-translator.js
  • ghost/core/core/server/services/member-welcome-emails/member-welcome-email-renderer.js
  • ghost/core/core/server/services/member-welcome-emails/service.js
  • ghost/core/core/server/services/members-events/event-storage.js
  • ghost/core/core/server/services/members-events/index.js
  • ghost/core/core/server/services/members-events/last-seen-at-cache.js
  • ghost/core/core/server/services/members-events/last-seen-at-updater.js
  • ghost/core/core/server/services/members/api.js
  • ghost/core/core/server/services/members/importer/index.js
  • ghost/core/core/server/services/members/importer/members-csv-importer-stripe-utils.js
  • ghost/core/core/server/services/members/importer/members-csv-importer.js
  • ghost/core/core/server/services/members/members-api/controllers/member-controller.js
  • ghost/core/core/server/services/members/members-api/controllers/router-controller.js
  • ghost/core/core/server/services/members/members-api/controllers/well-known-controller.js
  • ghost/core/core/server/services/members/members-api/members-api.js
  • ghost/core/core/server/services/members/members-api/repositories/event-repository.js
  • ghost/core/core/server/services/members/members-api/repositories/member-repository.js
  • ghost/core/core/server/services/members/members-api/repositories/product-repository.js
  • ghost/core/core/server/services/members/members-api/services/geolocation-service.js
  • ghost/core/core/server/services/members/members-api/services/member-bread-service.js
  • ghost/core/core/server/services/members/members-api/services/payments-service.js
  • ghost/core/core/server/services/members/members-api/services/token-service.js
  • ghost/core/core/server/services/members/members-config-provider.js
  • ghost/core/core/server/services/members/request-integrity-token-provider.js
  • ghost/core/core/server/services/members/service.js
  • ghost/core/core/server/services/members/single-use-token-provider.js
  • ghost/core/core/server/services/members/stats/members-stats.js
  • ghost/core/core/server/services/mentions-email-report/job.js
  • ghost/core/core/server/services/mentions-email-report/mention-email-report-job.js
  • ghost/core/core/server/services/mentions-email-report/service.js
  • ghost/core/core/server/services/mentions-email-report/start-mention-email-report-job.js
  • ghost/core/core/server/services/newsletters/index.js
  • ghost/core/core/server/services/newsletters/newsletters-service.js
  • ghost/core/core/server/services/notifications/index.js
  • ghost/core/core/server/services/notifications/notifications.js
  • ghost/core/core/server/services/offers/service.js
  • ghost/core/core/server/services/outbox/events/start-outbox-processing-event.js
  • ghost/core/core/server/services/outbox/index.js
  • ghost/core/core/server/services/outbox/jobs/outbox-job.js
  • ghost/core/core/server/services/recommendations/recommendation-enabler-service.js
  • ghost/core/core/server/services/recommendations/service/in-memory-recommendation-repository.ts
  • ghost/core/core/server/services/recommendations/service/recommendation-service.ts
  • ghost/core/core/server/services/settings-helpers/index.js
  • ghost/core/core/server/services/settings-helpers/settings-helpers.js
  • ghost/core/core/server/services/settings/settings-bread-service.js
  • ghost/core/core/server/services/settings/settings-service.js
  • ghost/core/core/server/services/staff/staff-service-emails.js
  • ghost/core/core/server/services/stats/content-stats-service.js
  • ghost/core/core/server/services/stats/members-stats-service.js
  • ghost/core/core/server/services/stats/mrr-stats-service.js
  • ghost/core/core/server/services/stats/posts-stats-service.js
  • ghost/core/core/server/services/stats/referrers-stats-service.js
  • ghost/core/core/server/services/stats/service.js
  • ghost/core/core/server/services/stats/stats-service.js
  • ghost/core/core/server/services/stats/subscription-stats-service.js
  • ghost/core/core/server/services/stripe/services/webhook/CheckoutSessionEventService.js
  • ghost/core/core/server/services/themes/storage.js
  • ghost/core/core/server/services/themes/theme-storage.js
  • ghost/core/core/server/services/update-check/index.js
  • ghost/core/core/server/services/update-check/update-check-service.js
  • ghost/core/core/server/services/users.js
  • ghost/core/core/server/services/verification-trigger.js
  • ghost/core/core/server/services/webhooks/listen.js
  • ghost/core/core/server/services/webhooks/webhook-trigger.js
  • ghost/core/test/e2e-api/admin/settings.test.js
  • ghost/core/test/e2e-api/members/send-magic-link.test.js
  • ghost/core/test/e2e-browser/fixtures/ghost-test.js
  • ghost/core/test/integration/services/email-service/email-event-storage.test.js
  • ghost/core/test/integration/services/mailgun-email-suppression-list.test.js
  • ghost/core/test/unit/server/services/activitypub/activity-pub-service.test.ts
  • ghost/core/test/unit/server/services/adapter-manager/adapter-manager.test.js
  • ghost/core/test/unit/server/services/announcement-bar/announcement-bar-settings.test.js
  • ghost/core/test/unit/server/services/audience-feedback/audience-feedback-service.test.js
  • ghost/core/test/unit/server/services/auth/session/store.test.js
  • ghost/core/test/unit/server/services/comments/comments-service-emails-renderer.test.js
  • ghost/core/test/unit/server/services/custom-redirects/api.test.js
  • ghost/core/test/unit/server/services/email-analytics/email-analytics-provider-mailgun.test.js
  • ghost/core/test/unit/server/services/email-analytics/email-analytics-service.test.js
  • ghost/core/test/unit/server/services/email-analytics/event-processing-result.test.js
  • ghost/core/test/unit/server/services/email-suppression-list/email-suppression-list.test.js
  • ghost/core/test/unit/server/services/explore-ping/explore-ping-service.test.js
  • ghost/core/test/unit/server/services/frontend-data-service/frontend-data-service.test.js
  • ghost/core/test/unit/server/services/identity-tokens/identity-token-service.test.ts
  • ghost/core/test/unit/server/services/lib/dynamic-redirect-manager.test.js
  • ghost/core/test/unit/server/services/lib/email-content-generator.test.js
  • ghost/core/test/unit/server/services/lib/in-memory-repository.test.ts
  • ghost/core/test/unit/server/services/lib/mailgun-client.test.js
  • ghost/core/test/unit/server/services/media-inliner/test/external-media-inliner.test.js
  • ghost/core/test/unit/server/services/member-attribution/attribution.test.js
  • ghost/core/test/unit/server/services/member-attribution/history.test.js
  • ghost/core/test/unit/server/services/member-attribution/outbound-link-tagger.test.js
  • ghost/core/test/unit/server/services/member-attribution/referrer-translator.test.js
  • ghost/core/test/unit/server/services/member-attribution/service.test.js
  • ghost/core/test/unit/server/services/member-attribution/url-translator.test.js
  • ghost/core/test/unit/server/services/member-welcome-emails/member-welcome-email-renderer.test.js
  • ghost/core/test/unit/server/services/members-events/event-storage.test.js
  • ghost/core/test/unit/server/services/members-events/last-seen-at-cache.test.js
  • ghost/core/test/unit/server/services/members-events/last-seen-at-updater.test.js
  • ghost/core/test/unit/server/services/members/config.test.js
  • ghost/core/test/unit/server/services/members/importer/index.test.js
  • ghost/core/test/unit/server/services/members/importer/members-csv-importer-stripe-utils.test.js
  • ghost/core/test/unit/server/services/members/importer/members-csv-importer.test.js
  • ghost/core/test/unit/server/services/members/members-api/controllers/member-controller.test.js
  • ghost/core/test/unit/server/services/members/members-api/controllers/router-controller.test.js
  • ghost/core/test/unit/server/services/members/members-api/repositories/event-repository.test.js
  • ghost/core/test/unit/server/services/members/members-api/repositories/member-repository.test.js
  • ghost/core/test/unit/server/services/members/members-api/repositories/product-repository.test.js
  • ghost/core/test/unit/server/services/members/members-api/services/geolocation-service.test.js
  • ghost/core/test/unit/server/services/members/members-api/services/members-bread-service.test.js
  • ghost/core/test/unit/server/services/members/members-api/services/payments-service.test.js
  • ghost/core/test/unit/server/services/members/members-api/services/token-service.test.js
  • ghost/core/test/unit/server/services/members/request-integrity-token-provider.test.js
  • ghost/core/test/unit/server/services/members/single-use-token-provider.test.js
  • ghost/core/test/unit/server/services/mentions-email-report/mention-email-report-job.test.js
  • ghost/core/test/unit/server/services/newsletters/service.test.js
  • ghost/core/test/unit/server/services/notifications/notifications.test.js
  • ghost/core/test/unit/server/services/outbox/index.test.js
  • ghost/core/test/unit/server/services/recommendations/service/recommendation-service.test.ts
  • ghost/core/test/unit/server/services/settings-helpers/settings-helpers.test.js
  • ghost/core/test/unit/server/services/settings/settings-bread-service.test.js
  • ghost/core/test/unit/server/services/stats/content.test.js
  • ghost/core/test/unit/server/services/stats/members.test.js
  • ghost/core/test/unit/server/services/stats/mrr.test.js
  • ghost/core/test/unit/server/services/stats/posts.test.js
  • ghost/core/test/unit/server/services/stats/referrers.test.js
  • ghost/core/test/unit/server/services/stats/stats.test.js
  • ghost/core/test/unit/server/services/stats/subscriptions.test.js
  • ghost/core/test/unit/server/services/update-check.test.js
  • ghost/core/test/unit/server/services/users/users-service.test.js
  • ghost/core/test/unit/server/services/verification-trigger.test.js
  • ghost/core/test/unit/server/services/webhooks/trigger.test.js
  • ghost/core/test/utils/e2e-framework-mock-manager.js
🧰 Additional context used
🧬 Code graph analysis (13)
ghost/core/core/server/services/members-events/index.js (2)
ghost/core/test/unit/server/services/members-events/event-storage.test.js (1)
  • EventStorage (5-5)
ghost/core/test/unit/server/services/members-events/last-seen-at-updater.test.js (1)
  • LastSeenAtUpdater (4-4)
ghost/core/core/server/services/email-service/EmailServiceWrapper.js (2)
ghost/core/core/server/services/email-suppression-list/service.js (1)
  • MailgunClient (5-5)
ghost/core/test/unit/server/services/lib/mailgun-client.test.js (1)
  • MailgunClient (6-6)
ghost/core/core/server/services/member-attribution/index.js (5)
ghost/core/test/unit/server/services/member-attribution/service.test.js (1)
  • MemberAttributionService (3-3)
ghost/core/test/unit/server/services/member-attribution/url-translator.test.js (1)
  • UrlTranslator (3-3)
ghost/core/test/unit/server/services/member-attribution/referrer-translator.test.js (1)
  • ReferrerTranslator (3-3)
ghost/core/test/unit/server/services/member-attribution/attribution.test.js (1)
  • AttributionBuilder (4-4)
ghost/core/test/unit/server/services/member-attribution/outbound-link-tagger.test.js (1)
  • OutboundLinkTagger (4-4)
ghost/core/core/server/services/settings-helpers/index.js (1)
ghost/core/test/unit/server/services/settings-helpers/settings-helpers.test.js (1)
  • SettingsHelpers (4-4)
ghost/core/core/server/services/outbox/index.js (5)
ghost/core/core/server/services/outbox/jobs/outbox-job.js (2)
  • StartOutboxProcessingEvent (2-2)
  • require (1-1)
ghost/core/test/unit/server/services/outbox/index.test.js (1)
  • StartOutboxProcessingEvent (4-4)
ghost/core/core/server/services/outbox/handlers/member-created.js (1)
  • require (1-1)
ghost/core/test/integration/jobs/process-outbox.test.js (2)
  • require (7-7)
  • require (11-11)
ghost/core/core/server/services/outbox/jobs/lib/process-outbox.js (2)
  • require (4-4)
  • require (5-5)
ghost/core/core/server/services/email-analytics/email-analytics-service-wrapper.js (2)
ghost/core/test/unit/server/services/email-analytics/email-analytics-service.test.js (1)
  • EmailAnalyticsService (6-6)
ghost/core/core/server/services/email-analytics/jobs/fetch-latest/index.js (1)
  • StartEmailAnalyticsJobEvent (2-2)
ghost/core/test/unit/server/services/outbox/index.test.js (2)
ghost/core/core/server/services/outbox/index.js (2)
  • StartOutboxProcessingEvent (3-3)
  • require (6-6)
ghost/core/core/server/services/outbox/jobs/outbox-job.js (2)
  • StartOutboxProcessingEvent (2-2)
  • require (1-1)
ghost/core/core/server/services/settings/settings-service.js (1)
ghost/core/test/e2e-api/admin/settings.test.js (2)
  • require (6-6)
  • SingleUseTokenProvider (4-4)
ghost/core/test/e2e-api/admin/settings.test.js (1)
ghost/core/core/server/services/settings/settings-service.js (2)
  • SingleUseTokenProvider (15-15)
  • require (13-13)
ghost/core/core/server/services/email-suppression-list/service.js (1)
ghost/core/test/unit/server/services/lib/mailgun-client.test.js (1)
  • MailgunClient (6-6)
ghost/core/test/unit/server/services/lib/mailgun-client.test.js (1)
ghost/core/core/server/services/email-suppression-list/service.js (1)
  • MailgunClient (5-5)
ghost/core/test/unit/server/services/settings-helpers/settings-helpers.test.js (1)
ghost/core/core/server/services/settings-helpers/index.js (1)
  • SettingsHelpers (4-4)
ghost/core/core/server/services/outbox/jobs/outbox-job.js (2)
ghost/core/core/server/services/outbox/index.js (2)
  • StartOutboxProcessingEvent (3-3)
  • require (6-6)
ghost/core/test/unit/server/services/outbox/index.test.js (1)
  • StartOutboxProcessingEvent (4-4)
🔇 Additional comments (148)
ghost/core/core/server/services/invites/index.js (1)

5-5: Casing update looks good.

The updated import path matches the renamed file and avoids case-sensitive resolution issues.

ghost/core/test/unit/server/services/members/members-api/services/token-service.test.js (1)

4-4: Import path update looks good.

Consistent with the kebab-case rename and should resolve correctly on case-sensitive filesystems.

ghost/core/test/unit/server/services/members/members-api/services/payments-service.test.js (1)

7-7: LGTM — updated import path matches kebab-case rename.

ghost/core/core/server/services/stripe/services/webhook/CheckoutSessionEventService.js (1)

65-65: Kebab‑case import update looks good.

The new path aligns with the rename and doesn’t affect the surrounding logic.

ghost/core/test/unit/server/services/members/members-api/repositories/event-repository.test.js (1)

3-3: Import rename looks good.

The kebab-case module path aligns with the file renaming objective and doesn’t change behavior.

ghost/core/test/unit/server/services/lib/email-content-generator.test.js (1)

4-4: Import path update aligns with renamed module.
Keeps the test in sync with the kebab-case filename.

ghost/core/core/server/services/member-welcome-emails/service.js (1)

10-10: LGTM: import path updated to kebab-case.

ghost/core/test/unit/server/services/member-welcome-emails/member-welcome-email-renderer.test.js (1)

19-19: LGTM: test import path updated to kebab-case.

ghost/core/core/server/services/explore/index.js (1)

1-1: LGTM — aligns with kebab-case rename.

ghost/core/test/unit/server/services/auth/session/store.test.js (1)

1-1: LGTM: import path normalized to kebab-case.
No behavioral impact in the test.

ghost/core/core/server/services/auth/session/express-session.js (1)

8-8: LGTM: import path normalized to kebab-case.
No functional changes.

ghost/core/test/unit/server/services/members/members-api/services/geolocation-service.test.js (1)

3-3: Import path update looks good.

Aligns with kebab-case rename and keeps test behavior unchanged.

ghost/core/test/unit/server/services/explore-ping/explore-ping-service.test.js (1)

3-3: Looks good—import path aligns with renamed module.

ghost/core/core/server/services/explore-ping/index.js (1)

1-1: LGTM—module path updated to kebab-case.

ghost/core/core/server/services/offers/service.js (1)

1-1: Import path normalization looks good.

Pure casing change to kebab-case; no behavioral impact expected.

ghost/core/test/unit/server/services/custom-redirects/api.test.js (1)

7-7: Test import path update is consistent.

Matches the kebab-case file naming update.

ghost/core/test/unit/server/services/lib/dynamic-redirect-manager.test.js (1)

2-2: Import path update is consistent.

Kebab-case path matches the renamed module.

ghost/core/core/server/services/custom-redirects/index.js (1)

4-5: Internal imports align with kebab-case rename.

No functional change; consistency update only.

ghost/core/core/server/services/recommendations/service/in-memory-recommendation-repository.ts (1)

3-3: Import path aligns with kebab-case rename.
No issues here.

ghost/core/core/server/services/recommendations/service/recommendation-service.ts (1)

2-2: Import path update looks correct.
Consistent with kebab-case module rename.

ghost/core/test/unit/server/services/recommendations/service/recommendation-service.test.ts (1)

3-3: Test import updated correctly.
No functional impact.

ghost/core/test/unit/server/services/lib/in-memory-repository.test.ts (1)

2-2: Import path change is consistent with rename.
All good.

ghost/core/test/unit/server/services/verification-trigger.test.js (1)

6-6: Import path update aligns with kebab-case rename.
Looks consistent with the file renaming strategy and keeps the test import in sync.

ghost/core/core/server/services/webhooks/listen.js (1)

3-3: LGTM!

The import path correctly updated to kebab-case (./webhook-trigger) while preserving the PascalCase variable name for the class. The usage throughout the file remains consistent.

ghost/core/test/unit/server/services/webhooks/trigger.test.js (1)

6-6: LGTM!

The import path correctly updated to kebab-case, consistent with the corresponding change in listen.js. The test file properly references the renamed module.

ghost/core/core/server/services/update-check/index.js (1)

13-13: LGTM!

The import path correctly updated to kebab-case (./update-check-service) while maintaining the PascalCase variable name for the class reference.

ghost/core/test/unit/server/services/update-check.test.js (1)

10-10: LGTM!

The test file import path is correctly updated to kebab-case, consistent with the production code change in index.js.

ghost/core/test/unit/server/services/members/members-api/repositories/product-repository.test.js (1)

3-3: LGTM!

The import path correctly updated to use kebab-case (product-repository), consistent with the file renaming convention applied across the codebase.

ghost/core/core/server/services/adapter-manager/index.js (1)

1-1: Import rename looks good.
Consistent with the kebab-case refactor and no behavior change.

ghost/core/test/unit/server/services/adapter-manager/adapter-manager.test.js (1)

3-3: Test import path alignment is correct.
Matches the kebab-case module rename.

ghost/core/test/unit/server/services/identity-tokens/identity-token-service.test.ts (1)

1-4: LGTM!

The import path update to kebab-case (identity-token-service) is consistent with the PR's renaming convention. The test file correctly imports and uses IdentityTokenService.

ghost/core/core/server/services/identity-tokens/identity-token-service-wrapper.js (1)

1-1: LGTM!

The require path update to ./identity-token-service aligns with the kebab-case naming convention.

ghost/core/core/server/services/activitypub/activity-pub-service.ts (1)

1-4: LGTM!

The import path update to ../identity-tokens/identity-token-service is consistent with the kebab-case naming convention. No functional changes to the service.

ghost/core/test/unit/server/services/activitypub/activity-pub-service.test.ts (1)

1-5: LGTM!

The type import path update to kebab-case (identity-token-service) is consistent with the PR's renaming convention. Test logic remains unchanged.

ghost/core/core/server/services/identity-tokens/index.js (1)

1-1: LGTM!

The require path update to ./identity-token-service-wrapper is consistent with the kebab-case naming convention.

ghost/core/test/unit/server/services/comments/comments-service-emails-renderer.test.js (1)

3-3: LGTM!

The import path correctly updated to kebab-case (comments-service-email-renderer), consistent with the module file naming convention.

ghost/core/core/server/services/comments/comments-service-emails.js (1)

4-4: LGTM!

The import path correctly updated to kebab-case (./comments-service-email-renderer), aligning with the file renaming convention.

ghost/core/core/server/services/comments/comments-service.js (1)

28-28: LGTM!

The dynamic require path correctly updated to kebab-case (./comments-service-emails), maintaining consistency with the module renaming convention.

ghost/core/core/server/services/comments/index.js (1)

3-5: LGTM!

All three import paths correctly updated to kebab-case:

  • ./comments-service
  • ./comments-controller
  • ./comments-stats-service

The module wiring logic remains unchanged.

ghost/core/core/server/services/comments/comments-controller.js (1)

20-21: LGTM!

JSDoc type import paths correctly updated to kebab-case (./comments-service, ./comments-stats-service), ensuring type resolution aligns with the renamed module files.

ghost/core/test/unit/server/services/members-events/event-storage.test.js (1)

5-5: LGTM!

The import path correctly updated to kebab-case (event-storage), consistent with the renamed module file and other import updates in the PR.

ghost/core/core/server/services/members-events/last-seen-at-updater.js (1)

6-6: LGTM!

The import path correctly updated to kebab-case (./last-seen-at-cache), consistent with the renamed module and other path updates across the PR.

ghost/core/test/unit/server/services/members-events/last-seen-at-updater.test.js (1)

4-4: LGTM!

The import path correctly updated to kebab-case (last-seen-at-updater), consistent with the renamed source module.

ghost/core/test/unit/server/services/members-events/last-seen-at-cache.test.js (1)

1-1: LGTM!

The import path correctly updated to kebab-case (last-seen-at-cache), consistent with the renamed source module and other import updates in the PR.

ghost/core/core/server/services/members-events/index.js (1)

16-18: LGTM!

All three internal module paths correctly updated to kebab-case:

  • ./event-storage
  • ./last-seen-at-updater
  • ./last-seen-at-cache

These changes are consistent with the corresponding test file updates and maintain proper module resolution.

ghost/core/test/unit/server/services/members/members-api/controllers/router-controller.test.js (1)

6-7: LGTM!

The import path update to kebab-case (router-controller) is correct. The @ts-ignore comment and PascalCase variable name for the class are appropriately preserved.

ghost/core/core/server/services/announcement-bar-service/announcement-bar-settings.js (1)

1-1: LGTM!

The import path correctly updated to kebab-case. The module usage throughout the class remains consistent.

ghost/core/test/unit/server/services/members/members-api/controllers/member-controller.test.js (1)

2-2: LGTM!

The import path update to kebab-case (member-controller) is correct and aligns with the file rename convention.

ghost/core/core/server/services/donations/donation-bookshelf-repository.ts (1)

1-1: LGTM!

The TypeScript import path correctly updated to kebab-case. The DonationPaymentEvent type import and its usages remain intact.

ghost/core/core/server/services/notifications/index.js (1)

2-2: LGTM!

The import path correctly updated to lowercase (./notifications). The service instantiation remains unchanged.

ghost/core/core/server/api/endpoints/utils/validators/input/settings.js (1)

5-5: LGTM!

The import path correctly updated to kebab-case (announcement-bar-settings). The AnnouncementBarSettings.VisibilityValues usages in the validation logic remain intact.

ghost/core/test/unit/server/services/notifications/notifications.test.js (1)

6-6: LGTM!

Import path correctly updated to lowercase to match the renamed module file.

ghost/core/core/server/services/donations/index.js (1)

1-1: LGTM!

Import path correctly updated to kebab-case to match the renamed module file.

ghost/core/core/server/services/staff/staff-service-emails.js (1)

266-266: LGTM!

JSDoc type annotation path correctly updated to kebab-case to match the renamed module file.

ghost/core/core/server/services/recommendations/recommendation-enabler-service.js (1)

2-2: LGTM!

JSDoc type annotation paths correctly updated to kebab-case for both the private field and constructor parameter.

Also applies to: 7-7

ghost/core/core/server/services/audience-feedback/audience-feedback-controller.js (2)

1-1: LGTM!

Import path correctly updated to lowercase to match the renamed module file.


77-78: Minor formatting change acknowledged.

The object property formatting appears consistent with the codebase style.

ghost/core/test/unit/server/services/announcement-bar/announcement-bar-settings.test.js (1)

2-2: LGTM!

Import path correctly updated to kebab-case to match the renamed module file.

ghost/core/core/server/services/settings-helpers/index.js (1)

4-4: LGTM: import path aligned with kebab-case rename.

ghost/core/test/unit/server/services/settings/settings-bread-service.test.js (1)

4-4: LGTM: test import updated to kebab-case module path.

ghost/core/test/unit/server/services/settings-helpers/settings-helpers.test.js (1)

4-4: LGTM: test import updated to renamed settings-helpers path.

ghost/core/test/unit/server/services/audience-feedback/audience-feedback-service.test.js (1)

2-2: LGTM: import path aligned with kebab-case rename.

ghost/core/test/unit/server/services/users/users-service.test.js (1)

4-4: LGTM: updated import path for users service.

ghost/core/core/server/services/announcement-bar-service/index.js (1)

2-2: LGTM: announcement bar settings import updated to kebab-case.

ghost/core/core/server/api/endpoints/users.js (1)

9-10: LGTM!

The import path update from ../../services/Users to ../../services/users correctly follows the kebab-case naming convention. The class variable naming (UsersService) appropriately remains PascalCase.

ghost/core/core/server/api/endpoints/authentication.js (1)

13-14: LGTM!

The import path update is consistent with the same change in users.js, ensuring both endpoints reference the Users service via the kebab-case path.

ghost/core/core/server/services/settings/settings-service.js (1)

12-15: LGTM!

The import path updates correctly follow the kebab-case convention. The single-use-token-provider path is consistent with the test file reference shown in the relevant code snippets.

ghost/core/core/server/services/audience-feedback/index.js (1)

4-7: LGTM!

All four import paths are correctly updated to kebab-case, with consistent naming: single-word modules become lowercase (feedback) and multi-word modules use hyphens (audience-feedback-service, feedback-repository).

ghost/core/core/server/services/stats/posts-stats-service.js (1)

6-6: LGTM!

The import path update from ./ReferrersStatsService to ./referrers-stats-service aligns with the kebab-case naming convention being adopted across the codebase.

ghost/core/test/unit/server/services/stats/members.test.js (1)

1-1: LGTM!

The import path update to members-stats-service is consistent with the project-wide kebab-case filename convention.

ghost/core/core/server/services/stats/stats-service.js (2)

1-6: LGTM!

All service imports have been consistently updated to kebab-case naming:

  • mrr-stats-service
  • members-stats-service
  • subscription-stats-service
  • referrers-stats-service
  • posts-stats-service
  • content-stats-service

81-82: JSDoc type references properly updated.

The type import paths in JSDoc annotations have been correctly updated to reference the new kebab-case module paths (e.g., import('./posts-stats-service').TopPostsOptions).

Also applies to: 97-97, 127-127, 151-151, 198-198, 258-258

ghost/core/core/server/services/stats/service.js (1)

13-13: LGTM!

The dynamic require path update from ./StatsService to ./stats-service maintains consistency with the kebab-case naming convention.

ghost/core/test/unit/server/services/stats/content.test.js (1)

3-3: LGTM!

The import path update to content-stats-service aligns with the project-wide kebab-case filename convention.

ghost/core/test/unit/server/services/stats/referrers.test.js (1)

4-4: LGTM!

The import path update to referrers-stats-service is consistent with the kebab-case filename convention being applied across the stats services.

ghost/core/test/unit/server/services/stats/mrr.test.js (1)

1-1: LGTM!

Import path correctly updated to kebab-case (mrr-stats-service). The variable name MrrStatsService appropriately remains in PascalCase as it represents a class.

ghost/core/test/unit/server/services/stats/stats.test.js (1)

1-1: LGTM!

Import path correctly updated to kebab-case (stats-service). Test logic remains intact.

ghost/core/test/unit/server/services/stats/subscriptions.test.js (1)

3-3: LGTM!

Import path correctly updated to kebab-case (subscription-stats-service). Test logic remains intact.

ghost/core/test/unit/server/services/stats/posts.test.js (1)

4-4: LGTM!

Import path correctly updated to kebab-case (posts-stats-service). The extensive test suite logic remains unchanged, with only minor whitespace/formatting normalization throughout the file.

ghost/core/core/server/services/themes/storage.js (1)

11-11: Import path updated to kebab-case—verify the file was renamed.

The import path change from './ThemeStorage' to './theme-storage' aligns with the project-wide kebab-case file naming convention. Confirm that theme-storage.js exists in the same directory and that the old ThemeStorage.js file has been removed.

ghost/core/test/unit/server/services/members/request-integrity-token-provider.test.js (1)

4-4: LGTM!

Import path correctly updated to kebab-case. The class reference remains unchanged, and the test logic is unaffected.

ghost/core/core/server/services/members/service.js (1)

6-6: LGTM!

All import paths correctly updated to kebab-case convention:

  • members-config-provider
  • stats/members-stats
  • verification-trigger
  • request-integrity-token-provider

Module references and service logic remain unchanged.

Also applies to: 8-8, 19-19, 22-22

ghost/core/test/unit/server/services/members/config.test.js (1)

4-4: LGTM!

Import path correctly updated to kebab-case, consistent with the corresponding change in service.js.

ghost/core/test/unit/server/services/members/importer/members-csv-importer-stripe-utils.test.js (1)

4-4: LGTM!

Import path correctly updated to kebab-case. Test suite logic is unaffected.

ghost/core/test/unit/server/services/members/importer/members-csv-importer.test.js (1)

9-9: LGTM!

Import path correctly updated to kebab-case. The comprehensive test suite remains intact.

ghost/core/test/unit/server/services/members/importer/index.test.js (1)

2-2: LGTM!

Import path correctly updated to kebab-case. The test assertion remains valid.

ghost/core/core/server/services/members/importer/index.js (2)

5-5: LGTM!

JSDoc typedef import path correctly updated to match the new module path, ensuring type resolution remains consistent.


1-2: Verify that the renamed module files exist in the importer directory.

The import paths have been updated to kebab-case format (lines 1-2), but confirmation is needed that members-csv-importer.js and members-csv-importer-stripe-utils.js exist in ghost/core/core/server/services/members/importer/.

ghost/core/test/unit/server/services/media-inliner/test/external-media-inliner.test.js (1)

8-8: LGTM! Test import path correctly updated to match renamed module.

The import path aligns with the kebab-case module naming convention while preserving the PascalCase variable name for the class reference.

ghost/core/core/server/services/media-inliner/service.js (1)

4-4: Import path correctly updated to kebab-case.

The module file has been renamed and the import path properly reflects the change. Variable naming convention (PascalCase for constructor) is maintained appropriately.

ghost/core/test/unit/server/services/frontend-data-service/frontend-data-service.test.js (1)

6-6: LGTM!

The require path is correctly updated to match the renamed module file. The test logic remains unchanged and will continue to function properly assuming the module file has been renamed accordingly.

ghost/core/core/server/services/members/api.js (1)

13-13: Kebab‑case import update looks good.
Aligns with the renamed module path; no behavior change expected.

ghost/core/core/server/services/email-suppression-list/mailgun-email-suppression-list.js (1)

1-1: Import path normalization is OK.
Consistent with kebab‑case filename refactor.

ghost/core/test/e2e-browser/fixtures/ghost-test.js (1)

11-11: Kebab‑case path update is consistent.
No functional impact expected.

ghost/core/test/unit/server/services/lib/mailgun-client.test.js (1)

6-6: Import path update looks correct.
Keeps the test aligned with the renamed module.

ghost/core/test/integration/services/email-service/email-event-storage.test.js (1)

4-4: Kebab‑case import update is consistent.
No behavior change expected.

ghost/core/core/server/services/email-service/EmailServiceWrapper.js (1)

28-28: Import path normalization looks good.
Matches the new kebab‑case filename.

ghost/core/test/utils/e2e-framework-mock-manager.js (1)

16-16: LGTM!

The import path correctly updated to kebab-case (mailgun-client), and the class reference variable appropriately remains PascalCase.

ghost/core/test/integration/services/mailgun-email-suppression-list.test.js (1)

6-6: LGTM!

Import path correctly updated to kebab-case, consistent with the e2e-framework-mock-manager.js change.

ghost/core/core/server/services/email-suppression-list/in-memory-email-suppression-list.js (1)

1-1: LGTM!

Import path correctly updated to kebab-case for the email-suppression-list module.

ghost/core/core/server/services/newsletters/index.js (1)

1-2: LGTM!

Both import paths correctly updated to kebab-case (newsletters-service.js and single-use-token-provider).

ghost/core/test/unit/server/services/newsletters/service.test.js (1)

12-12: LGTM!

Import path correctly updated to kebab-case, consistent with the newsletters/index.js change.

ghost/core/test/unit/server/services/email-suppression-list/email-suppression-list.test.js (1)

2-2: LGTM!

Import path correctly updated to kebab-case, consistent with other email-suppression-list module changes.

ghost/core/test/unit/server/services/members/single-use-token-provider.test.js (1)

4-4: Kebab-case import update looks correct.
No logic changes; this aligns with the rename.

ghost/core/test/unit/server/services/email-analytics/event-processing-result.test.js (1)

3-3: Import path rename is consistent with kebab-case.
No behavior changes detected.

ghost/core/core/server/services/email-analytics/jobs/fetch-latest/index.js (1)

2-2: Kebab-case event import aligns with rename.
No functional impact.

ghost/core/core/server/services/email-analytics/email-analytics-provider-mailgun.js (1)

1-1: Mailgun client import rename looks good.
Matches the kebab-case migration.

ghost/core/test/e2e-api/admin/settings.test.js (1)

4-4: Single-use token provider import updated correctly.
Consistent with kebab-case file naming.

ghost/core/core/server/services/email-analytics/email-analytics-service.js (1)

1-1: EventProcessingResult import updated to kebab-case.
Looks consistent with the rename sweep.

ghost/core/test/unit/server/services/email-analytics/email-analytics-service.test.js (1)

6-7: Import path update looks correct.

Kebab-case module names align with the rename and keep test wiring intact.

ghost/core/test/unit/server/services/email-analytics/email-analytics-provider-mailgun.test.js (1)

3-4: Import path update looks correct.

Kebab-case module names are consistent with the rename.

ghost/core/core/server/services/email-analytics/index.js (1)

1-1: Import path update looks correct.

The wrapper name change is consistent with the kebab-case rename.

ghost/core/test/e2e-api/members/send-magic-link.test.js (1)

879-879: Import path update looks correct.

Kebab-case module name matches the rename.

ghost/core/core/server/services/email-suppression-list/service.js (1)

5-6: Import path update looks correct.

Both Mailgun-related module names are consistent with the new kebab-case filenames.

ghost/core/core/server/services/email-analytics/email-analytics-service-wrapper.js (1)

11-16: Import path updates look correct.

All internal module paths now match kebab-case filenames, keeping wiring intact.

ghost/core/core/server/services/mail/index.js (1)

4-12: No action needed—the module files have been correctly renamed to kebab-case and the require paths resolve properly. Both email-content-generator.js and ghost-mailer.js exist at their respective locations with the correct paths.

ghost/core/core/server/services/mentions-email-report/service.js (2)

1-1: Import path update is consistent with kebab-case convention.

The change from ./MentionEmailReportJob to ./mention-email-report-job follows the codebase-wide naming convention refactor. The imported class is correctly used for type definitions and instantiation throughout the file.


143-143: Import path correctly updated to kebab-case naming convention.

The StartMentionEmailReportJob import using ./start-mention-email-report-job is consistent with the refactoring. The class is correctly used in both DomainEvents.subscribe() and .create() calls.

ghost/core/test/unit/server/services/mentions-email-report/mention-email-report-job.test.js (1)

2-2: Import path correctly updated to match renamed source file.

The test import path now uses the kebab-case filename convention, consistent with the source file rename. Test logic and mock implementations remain unchanged.

ghost/core/core/server/services/mentions-email-report/job.js (1)

2-2: Import path update is correct.

The import path change from ./StartMentionEmailReportJob to ./start-mention-email-report-job aligns with the kebab-case naming convention. The renamed file exports the StartMentionEmailReportJob class as expected.

ghost/core/core/server/services/members/members-api/repositories/member-repository.js (1)

12-12: Import path update looks correct.

Aligns with the renamed kebab-case module file.

ghost/core/test/unit/server/services/members/members-api/repositories/member-repository.test.js (1)

5-5: Test import path update is consistent.

Matches the renamed repository module.

ghost/core/core/server/services/members/members-api/services/member-bread-service.js (1)

33-33: JSDoc type path update is correct.

Keeps type reference aligned with renamed repository file.

ghost/core/test/unit/server/services/members/members-api/services/members-bread-service.test.js (1)

3-3: Test import path update looks good.

Consistent with the renamed service module.

ghost/core/core/server/services/members/members-api/members-api.js (1)

1-19: Import path normalization looks correct.

Kebab-case paths align with the file renames and keep wiring intact.

ghost/core/core/server/services/outbox/jobs/outbox-job.js (1)

2-36: Outbox event import update is correct.

Matches the renamed event module; no functional changes.

ghost/core/test/unit/server/services/outbox/index.test.js (1)

4-4: LGTM!

The import path change to kebab-case (start-outbox-processing-event) is consistent with the source files (ghost/core/core/server/services/outbox/index.js and ghost/core/core/server/services/outbox/jobs/outbox-job.js) which also use the same kebab-case path.

ghost/core/core/server/services/outbox/index.js (1)

3-3: LGTM!

The import path change to kebab-case (./events/start-outbox-processing-event) aligns with the test file and outbox-job.js, ensuring consistent module naming across the outbox service.

ghost/core/test/unit/server/services/member-attribution/outbound-link-tagger.test.js (1)

4-4: LGTM!

The import path correctly references the renamed kebab-case module outbound-link-tagger.

ghost/core/core/server/services/member-attribution/README.md (1)

43-63: LGTM!

Documentation correctly updated to reference the kebab-case filenames for all member-attribution components. The references align with the renamed source files across the service.

ghost/core/core/server/services/member-attribution/url-translator.js (1)

57-57: LGTM!

JSDoc type import correctly updated to reference the kebab-case module ./url-history.

ghost/core/core/server/services/member-attribution/referrer-translator.js (1)

35-35: LGTM!

JSDoc type import correctly updated to reference the kebab-case module ./url-history.

ghost/core/test/unit/server/services/member-attribution/referrer-translator.test.js (1)

3-3: LGTM!

The import path correctly references the renamed kebab-case module referrer-translator.

ghost/core/test/unit/server/services/member-attribution/history.test.js (1)

3-3: LGTM!

The import path correctly references the renamed kebab-case module url-history.

ghost/core/test/unit/server/services/member-attribution/url-translator.test.js (1)

3-3: Import path updated consistently.

Kebab-case module path matches the rename and keeps tests aligned.

ghost/core/test/unit/server/services/member-attribution/attribution.test.js (1)

3-4: Kebab-case imports look correct.

Test imports now align with the renamed modules.

ghost/core/test/unit/server/services/member-attribution/service.test.js (1)

3-3: Import path aligns with rename.

Looks good and consistent with the kebab-case migration.

ghost/core/core/server/services/member-attribution/index.js (1)

14-18: Dependency wiring updated cleanly.

Kebab-case requires match the renamed modules.

ghost/core/core/server/services/member-attribution/attribution-builder.js (3)

18-18: Private field type reference updated appropriately.

JSDoc now points to the renamed module.


136-139: Class field type annotations aligned with kebab-case paths.

Consistent with the file rename.


169-169: History type reference updated correctly.

JSDoc now reflects the kebab-case filename.

ghost/core/core/server/services/member-attribution/member-attribution-service.js (7)

1-1: Module import renamed consistently.

Matches the new kebab-case filename.


26-27: Return type JSDoc aligned with kebab-case module.

Looks good.


73-75: History param/return types updated correctly.

JSDoc now matches renamed files.


110-110: Event attribution return type updated appropriately.

Consistent with module rename.


142-142: Member attribution return type aligned.

JSDoc is consistent with kebab-case.


163-163: Subscription attribution return type updated.

No concerns.


183-185: FetchResource JSDoc updated consistently.

Type references now match renamed modules.

✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.


Comment @coderabbitai help to get the list of available commands and usage tips.

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