Skip to content

refactor: align course planning terminology - #14

Merged
Yuyu-1115 merged 2 commits into
mainfrom
refactor/naming
Aug 27, 2026
Merged

refactor: align course planning terminology#14
Yuyu-1115 merged 2 commits into
mainfrom
refactor/naming

Conversation

@Yuyu-1115

@Yuyu-1115 Yuyu-1115 commented Aug 27, 2026

Copy link
Copy Markdown
Member

Summary by CodeRabbit

  • Refactor
    • Renamed course selection screens and components to clearer course catalog and course planning terminology across Android and iOS.
    • Updated the course planning experience to use the unified planning state and views.
    • Renamed the timetable, catalog, loading, success, and error states for consistency.
    • Updated iOS navigation tabs and shared screen integrations to display the renamed course planning views.

@coderabbitai

coderabbitai Bot commented Aug 27, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

Next included review available in 51 minutes.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 35405f3e-1b9c-4312-bb31-b330fb01e864

📥 Commits

Reviewing files that changed from the base of the PR and between 64b61d2 and 62b011a.

📒 Files selected for processing (2)
  • androidApp/src/main/kotlin/org/mpc/presentation/CourseCatalogScreen.kt
  • shared/src/iosMain/kotlin/org/mpc/presentation/CourseCatalogViewBinding.kt

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 422d5357-e878-4b7c-871b-06262d08564f

📥 Commits

Reviewing files that changed from the base of the PR and between 3589057 and 64b61d2.

📒 Files selected for processing (23)
  • androidApp/src/main/kotlin/org/mpc/presentation/CourseCatalogScreen.kt
  • androidApp/src/main/kotlin/org/mpc/presentation/CourseDetailsScreen.kt
  • androidApp/src/main/kotlin/org/mpc/presentation/CoursePlanningScreen.kt
  • iosApp/iosApp/ContentView.swift
  • iosApp/iosApp/presentation/CourseCatalogView.swift
  • iosApp/iosApp/presentation/CoursePlanningTimetableView.swift
  • iosApp/iosApp/presentation/CoursePlanningView.swift
  • iosApp/iosApp/presentation/composeView/CourseCatalogComposeView.swift
  • iosApp/iosApp/presentation/composeView/CoursePlanningTimetableComposeView.swift
  • shared/src/commonMain/kotlin/org/mpc/presentation/viewModel/CoursePlanViewModel.kt
  • shared/src/commonMain/kotlin/org/mpc/presentation/views/coursePlanning/CoursePlanningTimetableFailureView.kt
  • shared/src/commonMain/kotlin/org/mpc/presentation/views/coursePlanning/CoursePlanningTimetableLoadingView.kt
  • shared/src/commonMain/kotlin/org/mpc/presentation/views/coursePlanning/CoursePlanningTimetableSuccessView.kt
  • shared/src/commonMain/kotlin/org/mpc/presentation/views/coursePlanning/CoursePlanningTimetableView.kt
  • shared/src/commonMain/kotlin/org/mpc/presentation/views/coursePlanning/CourseSearchResultFailureView.kt
  • shared/src/commonMain/kotlin/org/mpc/presentation/views/coursePlanning/CourseSearchResultLoadingView.kt
  • shared/src/commonMain/kotlin/org/mpc/presentation/views/coursePlanning/CourseSearchResultSuccessView.kt
  • shared/src/commonMain/kotlin/org/mpc/presentation/views/coursePlanning/CourseSearchResultView.kt
  • shared/src/commonMain/kotlin/org/mpc/presentation/views/coursePlanning/components/CourseCard.kt
  • shared/src/commonTest/kotlin/org/mpc/presentation/model/coursePlanning/CourseDraftModelTest.kt
  • shared/src/iosMain/kotlin/org/mpc/IosSharedHost.kt
  • shared/src/iosMain/kotlin/org/mpc/presentation/CourseCatalogViewBinding.kt
  • shared/src/iosMain/kotlin/org/mpc/presentation/CoursePlanningTimetableViewBinding.kt

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

The change renames course-selection presentation APIs to course-planning names across shared Kotlin, Android, and iOS code. It updates view-model types, packages, Compose bindings, SwiftUI views, and controller factories without changing screen behavior.

Changes

Course planning presentation rename

Layer / File(s) Summary
Shared presentation APIs
shared/src/commonMain/kotlin/org/mpc/presentation/viewModel/CoursePlanViewModel.kt, shared/src/commonMain/kotlin/org/mpc/presentation/views/coursePlanning/*, shared/src/commonMain/kotlin/org/mpc/presentation/views/coursePlanning/components/CourseCard.kt, shared/src/commonTest/kotlin/org/mpc/presentation/model/coursePlanning/CourseDraftModelTest.kt
The shared view model, timetable views, search-result views, course card, and test package use course-planning names and packages.
iOS shared bindings
shared/src/iosMain/kotlin/org/mpc/IosSharedHost.kt, shared/src/iosMain/kotlin/org/mpc/presentation/*Binding.kt
The iOS host and bindings use renamed catalog and planning timetable controllers, bindings, views, and view model types.
Platform presentation surfaces
androidApp/src/main/kotlin/org/mpc/presentation/*Screen.kt, iosApp/iosApp/ContentView.swift, iosApp/iosApp/presentation/*, iosApp/iosApp/presentation/composeView/*
Android and SwiftUI surfaces use the renamed course catalog, planning timetable, planning view, and plan view model APIs.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Merge Risk: 🔵 Low · up to 64b61

This change renames course-planning APIs and presentation types while preserving the existing in-app behavior, but callers outside this repository may still depend on the removed names. The PR is mergeable with explicit owner awareness that external consumers should be inventoried or given a compatibility migration path.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 16 functions across 23 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the pull request's main change: renaming course-selection entities to align with course-planning terminology across Android, iOS, and shared code.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 2
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🛠️ Fix failing CI checks 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch refactor/naming

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@Yuyu-1115
Yuyu-1115 merged commit 19a6079 into main Aug 27, 2026
5 of 6 checks passed
@Yuyu-1115
Yuyu-1115 deleted the refactor/naming branch August 28, 2026 16:20
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.

1 participant