Repository navigation
Carry main fixes into redesign main (#746) - #614
Merged
Merged
Conversation
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes in the two commits carried from main into redesign/main:
- Astra habit deletion: The tool delegates to the existing delete command for subtree soft deletion, authorization and cache invalidation.
- Bulk habit creation: Child validation completes before any part of an item is staged for persistence.
- Reminder probe persistence: Relational saves increment the probe in the database alongside habit updates, with regression tests for stale writers and scheduler refresh.
GPT 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.

Change
Carries the next two main fixes into redesign/main for thomasluizon/orbit-tickets#746, using
git cherry-pick -xin the specified order.b953e5d3):DeleteHabitToolnow sendsDeleteHabitCommand, so Astra deletion uses the same soft delete and subtree behavior as the habit API.BulkCreateHabitsCommandvalidates children before persisting any part of an item. The accompanying metadata, command, tool, and scheduler tests are carried intests/Orbit.Application.Testsandtests/Orbit.Infrastructure.Tests.43d847ec):OrbitDbContextincrements the habit reminder probe in the database within the save transaction, preserving increments from stale concurrent writers. The persistence and scheduler tests cover the probe and candidate refresh.No commit was skipped. Neither picked diff includes an EF migration. The EF model check found no pending model changes. A build regenerated
src/Orbit.Api/openapi.jsonwithout changing it.Conflict resolution
Neither cherry-pick produced a conflict. Git automatically merged
src/Orbit.Infrastructure/Persistence/OrbitDbContext.csand mapped both commits' scheduler tests into the redesign branch'stests/Orbit.Infrastructure.Tests/Services/ReminderSchedulerCacheTests.cs. The resulting file retains the existing redesign cache tests and adds both main regression cases. No redesign contract or tool-step behavior was removed.Assumptions
ReminderSchedulerCacheTests.csname for the carried scheduler tests; rejected adding a secondSchedulerProjectionTests.csfile because Git mapped the changed test content into the existing suite.External interface evidence
The installed EF Core 10.0.12 XML API metadata confirms that
DatabaseFacade.CurrentTransactionreturns the context transaction or null,PropertyEntry.IsModifiedcontrols whether the property is updated on save, andIsRelationalreports whether the current provider is relational. The focused SQLite tests exercised those members through real EF Core calls. The scheduler test interceptor observed SQL throughDbCommand.CommandTextduring the same run.Test evidence
DeleteHabitToolTests,BulkCreateHabitsCommandHandlerTests,ReminderSchedulerCacheTests, andOrbitDbContextTests: exit 0, 161 passed.dotnet ef migrations has-pending-model-changes --project src/Orbit.Infrastructure --startup-project src/Orbit.Api --no-build: exit 0, no pending model changes.env -u LANG -u LC_ALL dotnet build Orbit.slnx --nologo -v quiet: exit 0, zero errors.env -u LANG -u LC_ALL dotnet test --nologo -v quiet: exit 0, 7,844 passed.env -u LANG LC_ALL=en_US.UTF-8 dotnet build Orbit.slnx --nologo -v quiet: exit 0, zero errors.env -u LANG LC_ALL=en_US.UTF-8 dotnet test --nologo -v quiet: exit 0, 7,844 passed.The red phase of the upstream regression tests was not run in this carry; the source and tests arrived together as existing main commits.