-
Notifications
You must be signed in to change notification settings - Fork 1
feat: add tags to meeting mock data for indexer search #8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Add tags field to all meeting-related NATS publish steps to match the MeetingIndexerMessage structure used by the meeting service. Tags are used by the indexer for search functionality. Added tags to: - v1_meeting (scheduled meeting) - v1_meeting_registrant (meeting participants) - v1_past_meeting (past meeting occurrences) - v1_past_meeting_participant (past meeting attendees) - v1_past_meeting_recording (meeting recordings) - v1_past_meeting_transcript (meeting transcripts) - v1_past_meeting_summary (AI summaries) Each entity includes both plain UIDs for broad text search and prefixed tags (e.g., meeting_uid:, project_uid:) for field-specific searching. Signed-off-by: Asitha de Silva <[email protected]>
There was a problem hiding this 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 enhances meeting mock data by adding comprehensive tags fields to all meeting-related NATS publish steps, enabling search functionality in the indexer/OpenSearch. The tags include both plain UIDs for broad text search and prefixed tags (e.g., meeting_uid:, project_uid:) for field-specific searching.
Key changes:
- Added tags to 7 entity types: Meeting, Registrant, Past Meeting, Recording, Transcript, Summary, and Participant
- Introduced new variables (
registrant_id,registrant_username,summary_id,participant_id,guest_participant_id) to ensure consistent ID usage across data and tags - Implemented conditional tag inclusion for optional fields like username
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review for a chance to win a $100 gift card. Take the survey.
- Set scheduled meeting start_time to a future date (next occurrence) rather than a historical date - Change recurrence field types from strings to integers: repeat_interval, type, monthly_week, monthly_week_day Signed-off-by: Asitha de Silva <[email protected]>
| transcript_access: public | ||
| start_time: "{{ meeting_start_time.isoformat() }}Z" | ||
| # Use the NEXT (future) meeting time for the scheduled meeting | ||
| start_time: "{{ next_meeting_start_time.isoformat() }}Z" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this one I don't understand, it doesn't match the source database. The example data I was looking at (in Dynamo DB) is a meeting that was created on September 25 (2025), with a start_time of October 7th. The most recent past meeting was on November 4th. I synced the data on November 5th ... but the "start_time" of the meeting object was still October 7th. The data will only push into the index when it's written (or changed), so I have to expect that our "start time" will in fact fall back into the past.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Correct, the occurrences field should have the start time of the occurrences, the start_time field is not the start time of the next occurrence. I suspect Asitha used this change because the occurrences field isn't passed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jordane is correct -- we needed to be able to test recurring meetings that still have future occurrences, but since it's not returning the occurrences field, I had to update the start time of the main object instead.
- Add now_utc() Jinja2 helper for datetime arithmetic - Use future date for scheduled meeting start time - Update meeting settings (visibility, restricted, early_join_time) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Signed-off-by: Asitha de Silva <[email protected]>
Signed-off-by: Asitha de Silva <[email protected]>
Signed-off-by: Asitha de Silva <[email protected]>
playbooks/v1_meetings/umbrella_board_meeting/board_meeting.yaml
Outdated
Show resolved
Hide resolved
playbooks/v1_meetings/umbrella_board_meeting/board_meeting.yaml
Outdated
Show resolved
Hide resolved
playbooks/v1_meetings/umbrella_board_meeting/board_meeting.yaml
Outdated
Show resolved
Hide resolved
playbooks/v1_meetings/umbrella_board_meeting/board_meeting.yaml
Outdated
Show resolved
Hide resolved
Remove redundant tags to align with v1-sync-helper: - Remove title tag from v1_meeting, v1_past_meeting, v1_past_meeting_summary - Remove first_name and last_name tags from v1_meeting_registrant and v1_past_meeting_participant Note: The start_time field fix (using meeting_start_time instead of undefined next_meeting_start_time) is included temporarily. A separate PR will be opened to properly calculate meeting occurrences. Signed-off-by: Asitha de Silva <[email protected]>
Summary
tagsfield to all meeting-related NATS publish steps to match theMeetingIndexerMessagestructure used by the meeting servicemeeting_uid:,project_uid:) for field-specific searchinglfx-v1-sync-helperproduction behaviorEntities updated:
lfx.index.v1_meetinglfx.index.v1_meeting_registrantlfx.index.v1_past_meetinglfx.index.v1_past_meeting_participantlfx.index.v1_past_meeting_recordinglfx.index.v1_past_meeting_transcriptlfx.index.v1_past_meeting_summaryNotes
start_timefix is included temporarily (usingmeeting_start_timeinstead of undefinednext_meeting_start_time). A separate PR will properly calculate meeting occurrences.title,first_name, andlast_nametags to align with v1-sync-helper