Repository navigation
feat(chat): add habit rows and calendar event metadata (#1476) - #726
Merged
Merged
Conversation
|
There was a problem hiding this comment.
✅ No new issues found within the required Critical/High review scope.
Reviewed changes Reviewed all five changed files, the chat context and persistence paths, and the web/mobile consumer schemas and day-summary renderers.
- Day-summary rows: Adds optional habit rows and a full row count, reusing the existing habit-list builder and done-status capability while limiting the response to 20 rows.
- Calendar metadata: Adds optional event IDs and source calendar names without changing existing event ordering, timestamps, or the ten-event limit.
- Contract compatibility: Preserves existing response fields and appends nullable optional metadata; existing consumers do not require these additions.
- Verification: All 178 focused builder and chat-handler tests passed. The optional cross-model check was unavailable because
codexis not installed.
gpt-6.1-sol | 𝕏
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.




Closes thomasluizon/orbit-tickets#1476.
Day summary blocks now carry up to 20 habit rows plus the full row count. Calendar block events now carry their Google event id and source calendar name so the consumer can render actions in place.
StatusCards.csappends optional nullable response fields and caps day rows at 20. Calendar ordering and its 10-event cap stay intact.ProcessUserChatCommand.csbuilds day rows withHabitListCardBuilder.Buildfromcontext.TodayHabitsandcontext.TodayFacts, using the same done-status capability as the habit list block. Existing summary counts keep their calculation.src/Orbit.Api/openapi.jsonis regenerated.The calendar tool payload, prompts, tool schemas, and write paths are unchanged. The added metadata reads the repository's existing
CalendarEventItem.IdandCalendarEventItem.CalendarNameproperties; no external response fields are added to the implementation. This response-only change adds no user input or domain mutation requiring new validation rules.Assumptions
BuildDaycallers that omit rows receive an empty list andTotalRows = 0, rather than requiring changes to callers outside this feature. The chat response path always supplies the shared habit-list rows.Test evidence
dotnet build Orbit.slnx: passed with 0 errors.dotnet test tests/Orbit.Application.Tests --no-build --filter 'FullyQualifiedName~StatusCardBuilderTests|FullyQualifiedName~ProcessUserChatCommandHandlerTests': 178 passed, 0 failed.dotnet test: 9,456 passed, 0 failed, 0 skipped across analyzer (32), domain (661), application (5,464), and infrastructure (3,299) projects.git diff --exit-code -- src/Orbit.Api/openapi.json: passed after regeneration during the full suite.