Skip to content

rename all instance of meeting guide to meeting template in codebase#291

Open
karenunify wants to merge 11 commits intoberkmancenter:stagingfrom
karenunify:54-rename-guide-to-template-in-codebase
Open

rename all instance of meeting guide to meeting template in codebase#291
karenunify wants to merge 11 commits intoberkmancenter:stagingfrom
karenunify:54-rename-guide-to-template-in-codebase

Conversation

@karenunify
Copy link
Collaborator

What is in this PR?

This PR replaces all instances of "meetingGuide", "MeetingGuide", "meeting_guide" with "meetingTemplate", etc. stemming from a larger semantic renaming effort.

Changes in the codebase

It was discovered in the analytics code that the term "guide" was also sometimes used interchangeably with "template".

All functions, variables, file names, and directory names in the codebase that referenced and combination of "meetingGuide", "MeetingGuide", "meeting_guide" have been replaced with "meetingTemplate", etc.

Copy link

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

This PR performs a comprehensive semantic renaming throughout the codebase, replacing all instances of "meetingGuide", "MeetingGuide", and "meeting_guide" with "meetingTemplate" and its variants. The renaming affects function names, class names, variable names, file names, directory names, and import statements across both the client and Firebase functions codebases.

Changes:

  • Renamed all classes, functions, variables, and files from "meetingGuide" to "meetingTemplate" nomenclature
  • Updated all import statements to reference the new file paths
  • Regenerated all generated code files (.g.dart, .freezed.dart) with correct part declarations
  • Updated test files and mock classes to use the new naming

Reviewed changes

Copilot reviewed 70 out of 71 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
firebase/functions/test/util/live_meeting_test_utils.dart Updated import from meeting_guide.dart to meeting_template.dart
firebase/functions/test/events/live_meetings/*.dart Updated imports and test references to use meeting_template
firebase/functions/node/main.dart Updated import and registration of CheckAdvanceMeetingTemplate function
firebase/functions/lib/events/live_meetings/*.dart Renamed CheckAdvanceMeetingGuide class to CheckAdvanceMeetingTemplate and all related methods
data_models/lib/events/live_meetings/meeting_template.dart Updated part declarations to reference meeting_template instead of meeting_guide
data_models/lib/events/live_meetings/meeting_template.g.dart Regenerated with correct part declaration
data_models/lib/events/live_meetings/meeting_template.freezed.dart Regenerated with correct part declaration
data_models/lib/events/live_meetings/live_meeting.g.dart Contains unrelated timestamp handling changes alongside expected updates
data_models/lib/cloud_functions/requests.dart Renamed CheckAdvanceMeetingGuideRequest to CheckAdvanceMeetingTemplateRequest
data_models/lib/cloud_functions/requests.g.dart Regenerated with renamed request class
data_models/lib/cloud_functions/requests.freezed.dart Regenerated with renamed request class
client/test/mocked_classes.dart Updated imports to use meeting_template paths
client/test/mocked_classes.mocks.dart Regenerated mocks with renamed classes (e.g., MockFirestoreMeetingTemplateService)
client/test/lib/features/.../meeting_template_card_item_user_suggestions_presenter_test.dart Updated all test references to use meeting_template naming
client/test/lib/features/.../agenda_item_presenter_test.dart Updated mock variable names to use meeting_template naming
client/test/lib/features/.../agenda_item_helper_test.dart Updated mock variable names and test descriptions
client/lib/services.dart Updated service registration and getters for FirestoreMeetingTemplateService
client/lib/features/events/.../meeting_dialog.dart Updated provider creation to use MeetingTemplateCardStore
client/lib/features/events/.../live_meeting_mobile_page.dart Updated all references to MeetingTemplateCardStore and related components
client/lib/features/events/.../live_meeting_mobile_presenter.dart Updated field names and method calls to use meeting_template naming
client/lib/features/events/.../participant_widget.dart Updated Provider references to MeetingTemplateCardStore
client/lib/features/events/.../video_flutter_meeting.dart Updated all component references to use MeetingTemplateCard and related classes
client/lib/features/events/.../conference_room.dart Renamed meetingGuideCardModel field to meetingTemplateCardModel
client/lib/features/events/.../meeting_template/presentation/*.dart All presenter, view, and widget files renamed and updated
client/lib/features/events/.../meeting_template/data/*.dart All data models, services, and providers renamed and updated
client/lib/features/events/.../meeting_agenda/*.dart Updated references to MeetingTemplateCardStore
client/lib/features/events/.../meeting_guide/*.dart Old files deleted (contract and model files)
client/lib/features/events/.../cloud_functions_live_meeting_service.dart Updated method name to checkAdvanceMeetingTemplate
Comments suppressed due to low confidence (2)

client/lib/features/events/features/live_meeting/features/meeting_template/data/providers/meeting_template_card_store.dart:34

  • Comment references "meeting guide card" but should be updated to "meeting template card" for consistency with the renaming effort.
    client/lib/features/events/features/live_meeting/features/meeting_template/data/providers/meeting_template_card_store.dart:38
  • Comment references "meeting guide card" but should be updated to "meeting template card" for consistency with the renaming effort.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@epenn
Copy link
Contributor

epenn commented Feb 4, 2026

DMing with Karen to triage the warning + error that she's receiving during the build step. Unclear yet on whether this is just a permissions issue or an actual error that needs to be resolved.

@epenn
Copy link
Contributor

epenn commented Feb 10, 2026

Update from talking to Karen again — Turned out the issue was actually due to a GitHub Actions outage of all things, so this should be reviewable now. I'll be able to circle back to this in the next couple days.

@saihla saihla requested review from katherineqian and removed request for epenn and mikewillems February 12, 2026 18:33
@mikewillems mikewillems self-requested a review February 13, 2026 22:49
@mikewillems
Copy link
Collaborator

Reviewed this; all good in the code.

One caveat (GH actually caught this but was right): please update the comments in ...

  • client/lib/features/events/features/live_meeting/features/meeting_agenda/data/providers/meeting_agenda_provider.dart
  • client/lib/features/events/features/live_meeting/features/meeting_guide/data/providers/meeting_guide_card_store.dart

so that we keep clarity around the naming. Also, please go ahead and run a git merge origin/staging and re-push to pull in all the commits since. Other than that, great!

Copy link
Collaborator

@mikewillems mikewillems left a comment

Choose a reason for hiding this comment

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

Reviewed this; all good in the code.

One caveat (GH actually caught this but was right): please update the comments in ...

client/lib/features/events/features/live_meeting/features/meeting_agenda/data/providers/meeting_agenda_provider.dart
client/lib/features/events/features/live_meeting/features/meeting_guide/data/providers/meeting_guide_card_store.dart

so that we keep clarity around the naming. Also, please go ahead and run a git merge origin/staging and re-push to pull in all the commits since. Other than that, great!

Copy link

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

Copilot reviewed 75 out of 76 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@katherineqian
Copy link
Collaborator

Hey @mikewillems - is this good to go? Wanted to check in since you have a pending "request changes" review :)

@mikewillems
Copy link
Collaborator

mikewillems commented Feb 28, 2026

Reviewed this; all good in the code.

One caveat (GH actually caught this but was right): please update the comments in ...

client/lib/features/events/features/live_meeting/features/meeting_agenda/data/providers/meeting_agenda_provider.dart
client/lib/features/events/features/live_meeting/features/meeting_guide/data/providers/meeting_guide_card_store.dart

so that we keep clarity around the naming. Also, please go ahead and run a git merge origin/staging and re-push to pull in all the commits since. Other than that, great!

Please don't hate me, really sorry to nitpick and for not catching this before, but /features/events/features/live_meeting/features/meeting_guide/data/providers/meeting_guide_card_store.dart still uses the "guide" rather than "template" terminology a good bit, and is referenced in many other files for using 'GuideCard' functions / classes:

  • client/lib/features/events/features/live_meeting/data/providers/live_meeting_provider.dart
  • client/lib/features/events/features/live_meeting/data/services/firestore_live_meeting_service.dart
  • client/lib/features/events/features/live_meeting/features/meeting_template/data/providers/meeting_template_card_store.dart
  • client/lib/features/events/features/live_meeting/features/meeting_template/presentation/meeting_template_card_presenter.dart
  • client/lib/features/events/features/live_meeting/features/video/data/providers/conference_room.dart
  • client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart
  • client/test/mocked_classes.mocks.dart

@mikewillems
Copy link
Collaborator

mikewillems commented Feb 28, 2026

@karenunify In fact, I finally pulled down your branch, and expanding the search to include just "guide" (case insensitive), I see the language used in a ton more places. I used grep (and spent too long making this search because I'm a nerd and also couldn't figure out how to copy all the filename instances from the vscode search):
grep -nri "guide" --exclude-dir={node_modules,git,build,generated,.idea,bin,.git,.dart_tool,l10n,.github} . | cut -f1,2 -d: > .idea/guide_instances.txt

but you can just use the vscode search for case-insensitive instances of 'guide', and ignore the top level files in ./ and ./client, and the rest all seem to be instances of the old naming.

This seems to be the complete list of non-generated source files still using "guide" semantically instead of "template" (It could be a superset, but I looked not-carefully at all these and think I removed any that aren't using "guide" specifically to mean what we call "template"). Make sure to also build locally to regenerate the .arb (l10n) files and commit those too.

./data_models/lib/community/community.g.dart:77
./data_models/lib/community/community.dart:48
./firebase/functions/test/events/live_meetings/breakouts/check_advance_meeting_template_test.dart:83
./firebase/functions/test/events/live_meetings/breakouts/check_advance_meeting_template_test.dart:92
./firebase/functions/test/events/live_meetings/breakouts/check_advance_meeting_template_test.dart:112
./firebase/functions/test/events/live_meetings/breakouts/check_advance_meeting_template_test.dart:189
./firebase/functions/test/events/live_meetings/breakouts/check_advance_meeting_template_test.dart:198
./firebase/functions/lib/templates/on_template.dart:60
./client/test/lib/core/utils/extensions_test.dart:283
./client/test/lib/core/utils/extensions_test.dart:284
./client/test/lib/core/utils/extensions_test.dart:316
./client/test/lib/core/utils/extensions_test.dart:349
./client/test/lib/core/utils/extensions_test.dart:382
./client/test/lib/core/utils/extensions_test.dart:415
./client/test/lib/features/admin/presentation/overview_presenter_test.dart:91
./client/test/mocked_classes.mocks.dart:6134
./client/test/mocked_classes.mocks.dart:6135
./client/test/mocked_classes.mocks.dart:11243
./client/test/mocked_classes.mocks.dart:11244
./client/test/mocked_classes.mocks.dart:11415
./client/test/mocked_classes.mocks.dart:11418
./client/test/mocked_classes.mocks.dart:12392
./client/test/mocked_classes.mocks.dart:12393
./client/lib/core/utils/extensions.dart:193
./client/lib/core/utils/extensions.dart:211
./client/lib/core/utils/extensions.dart:226
./client/lib/core/utils/extensions.dart:241
./client/lib/core/utils/extensions.dart:256
./client/lib/core/widgets/navbar/nav_bar/nav_bar.dart:561
./client/lib/features/admin/presentation/overview_presenter.dart:57
./client/lib/features/admin/presentation/overview_presenter.dart:72
./client/lib/features/admin/presentation/views/overview_tab.dart:388
./client/lib/features/events/features/live_meeting/features/video/data/providers/conference_room.dart:155
./client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart:211
./client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart:212
./client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart:213
./client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart:216
./client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart:217
./client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart:223
./client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart:271
./client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart:283
./client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart:334
./client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart:345
./client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart:606
./client/lib/features/events/features/live_meeting/features/video/presentation/views/video_flutter_meeting.dart:611
./client/lib/features/events/features/live_meeting/features/video/presentation/views/need_help_dialog.dart:10
./client/lib/features/events/features/live_meeting/features/video/presentation/views/need_help_dialog.dart:107
./client/lib/features/events/features/live_meeting/features/video/presentation/views/need_help_dialog.dart:114
./client/lib/features/events/features/live_meeting/features/admin_panel/presentation/widgets/admin_panel.dart:577
./client/lib/features/events/features/live_meeting/features/meeting_template/data/providers/meeting_template_card_store.dart:91
./client/lib/features/events/features/live_meeting/features/meeting_template/data/providers/meeting_template_card_store.dart:210
./client/lib/features/events/features/live_meeting/features/meeting_template/presentation/meeting_template_card_presenter.dart:84
./client/lib/features/events/features/live_meeting/features/meeting_template/presentation/meeting_template_card_presenter.dart:85
./client/lib/features/events/features/live_meeting/data/providers/live_meeting_provider.dart:172
./client/lib/features/events/features/live_meeting/data/providers/live_meeting_provider.dart:294
./client/lib/features/events/features/live_meeting/data/providers/live_meeting_provider.dart:297
./client/lib/features/events/features/live_meeting/data/providers/live_meeting_provider.dart:490
./client/lib/features/events/features/live_meeting/data/providers/live_meeting_provider.dart:495
./client/lib/features/events/features/live_meeting/data/services/firestore_live_meeting_service.dart:454
./client/lib/features/events/features/live_meeting/presentation/live_meeting_mobile_presenter.dart:226
./client/lib/features/events/features/live_meeting/presentation/live_meeting_mobile_presenter.dart:232
./client/lib/features/events/features/live_meeting/presentation/views/meeting_dialog.dart:110
./client/lib/features/events/features/live_meeting/presentation/views/meeting_dialog.dart:134
./client/lib/features/events/features/live_meeting/presentation/views/live_meeting_mobile_page.dart:84
./client/lib/features/events/features/live_meeting/presentation/views/live_meeting_mobile_page.dart:87
./client/lib/features/events/features/live_meeting/presentation/views/live_meeting_mobile_page.dart:129
./client/lib/features/events/features/live_meeting/presentation/views/live_meeting_mobile_page.dart:202
./client/lib/features/events/features/live_meeting/presentation/views/live_meeting_mobile_page.dart:218
./client/lib/features/events/features/live_meeting/presentation/views/live_meeting_mobile_page.dart:219
./client/lib/features/events/features/live_meeting/presentation/views/live_meeting_mobile_page.dart:231
./client/lib/features/events/features/live_meeting/presentation/views/live_meeting_mobile_page.dart:566
./client/lib/features/events/features/live_meeting/presentation/views/live_meeting_mobile_page.dart:924
./client/lib/features/events/features/live_meeting/presentation/widgets/hostless_meeting_info.dart:149
./client/lib/features/events/features/live_meeting/presentation/widgets/hostless_meeting_info.dart:151
./client/lib/features/events/features/live_meeting/presentation/widgets/troubleshoot_av.dart:9
./client/lib/features/events/features/live_meeting/presentation/widgets/troubleshoot_av.dart:27
./client/lib/features/events/features/event_page/data/providers/event_permissions_provider.dart:37
./client/lib/features/events/features/event_page/presentation/event_tab_controller.dart:89
./client/lib/features/events/features/event_page/presentation/event_tab_controller.dart:130
./client/lib/features/events/features/event_page/presentation/views/event_page.dart:269
./client/lib/features/events/features/event_page/presentation/views/event_page.dart:327
./client/lib/features/events/features/event_page/presentation/views/event_page.dart:341
./client/lib/features/events/features/event_page/presentation/views/event_page.dart:353
./client/lib/features/events/features/event_page/presentation/views/event_page.dart:354
./client/lib/features/events/features/event_page/presentation/views/event_page.dart:382
./client/lib/features/events/features/event_page/presentation/views/event_page.dart:402
./client/lib/features/events/features/event_page/presentation/widgets/event_pop_up_menu_button.dart:12
./client/lib/features/events/features/event_page/presentation/widgets/event_pop_up_menu_button.dart:13
./client/lib/features/events/features/event_page/presentation/widgets/event_pop_up_menu_button.dart:44
./client/lib/features/events/features/event_page/presentation/widgets/event_pop_up_menu_button.dart:45
./client/lib/features/events/features/event_page/presentation/widgets/event_pop_up_menu_button.dart:46
./client/lib/features/events/features/event_page/presentation/widgets/event_pop_up_menu_button.dart:131
./client/lib/features/events/features/event_page/presentation/widgets/event_pop_up_menu_button.dart:132
./client/lib/features/events/features/event_page/presentation/widgets/event_pop_up_menu_button.dart:133
./client/lib/features/events/features/event_page/presentation/widgets/event_pop_up_menu_button.dart:150
./client/lib/features/events/features/event_page/presentation/widgets/event_pop_up_menu_button.dart:152
./client/lib/features/events/features/event_page/presentation/widgets/event_pop_up_menu_button.dart:153
./client/lib/features/events/features/event_page/presentation/widgets/event_info.dart:199
./client/lib/features/events/features/event_page/presentation/widgets/event_info.dart:228
./client/lib/features/events/features/event_page/presentation/widgets/event_info.dart:230
./client/lib/features/events/features/event_page/presentation/widgets/event_info.dart:302
./client/lib/features/events/features/event_page/presentation/widgets/event_info.dart:303
./client/lib/features/events/features/event_page/presentation/widgets/event_info.dart:305
./client/lib/features/events/features/event_page/presentation/widgets/event_info.dart:306
./client/lib/features/events/features/event_page/presentation/widgets/event_tabs.dart:17
./client/lib/features/events/features/event_page/presentation/widgets/event_tabs.dart:26
./client/lib/features/events/features/event_page/presentation/widgets/event_tabs.dart:38
./client/lib/features/events/features/event_page/presentation/widgets/event_tabs.dart:51
./client/lib/features/events/features/event_page/presentation/event_tabs_model.dart:23
./client/lib/features/events/features/event_page/presentation/event_tabs_model.dart:33
./client/lib/features/events/features/event_page/presentation/event_tabs_model.dart:83
./client/lib/features/events/features/event_page/presentation/event_tabs_model.dart:84
./client/lib/features/events/features/event_page/presentation/event_tabs_model.dart:87
./client/lib/features/events/features/event_page/presentation/event_tabs_model.dart:183
./client/lib/styles/app_asset.dart:7
./client/lib/styles/app_asset.dart:160
./client/lib/styles/app_asset.dart:161

@mikewillems mikewillems self-requested a review March 6, 2026 19:47
@katherineqian katherineqian removed their request for review March 6, 2026 21:27
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.

5 participants