Skip to content

Carry main fixes into redesign main (#746) - #718

Merged
thomasluizon merged 1 commit into
redesign/mainfrom
chore/ticket-746-carry-mutation-shards
Oct 15, 2026
Merged

thomasluizon merged 1 commit into
redesign/mainfrom
chore/ticket-746-carry-mutation-shards

Conversation

@thomasluizon

Copy link
Copy Markdown
Owner

Carries main commit 2a0fd442486ff1052043e0f92c3d75f85ffce62b from orbit-api#717, "fix: shard nightly domain mutation testing", into redesign/main with git cherry-pick -x.

Cherry-pick commit: 0eda20eca6387a4761dfc4bfa9ad3337175b7d64.

Only .github/workflows/mutation.yml changes. Scheduled and dispatched domain mutation runs use the domain-habit-freeze and domain-user-invariants shards, with each mutation glob passed through its own --mutate option. Together they cover the existing four-file domain configuration. The cherry-pick applied without conflicts and preserves the redesign branch's pull request targets and base-relative mutation checks. No commits were skipped.

Validation:

  • git cherry-pick -x 2a0fd442486ff1052043e0f92c3d75f85ffce62b: exit 0.
  • actionlint .github/workflows/mutation.yml: exit 0.
  • dotnet build: exit 0, zero errors and 18 warnings.
  • git diff HEAD^ HEAD --check: exit 0.
  • Tests were not run, as directed by the final work order for this workflow-only carry.

Refs thomasluizon/orbit-tickets#746
Refs thomasluizon/orbit-tickets#1376

* fix: shard nightly domain mutation testing

* fix: pass each mutation glob as a separate option

(cherry picked from commit 2a0fd44)

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

✅ No new issues found.

Reviewed changes: Reviewed the mutation-workflow cherry-pick into redesign/main, including event-specific selection, shell arguments, failure propagation, and artifact naming.

  • Domain shards: Scheduled and manual runs split the existing four-file domain scope across two distinct jobs without omissions or overlap.
  • Argument handling: Each selected file receives its own quoted --mutate option; application and infrastructure retain their configured scope, and Stryker failures propagate.
  • PR preservation: Pull requests retain their three project jobs, base-relative mutation checks, and existing names; nightly artifact names distinguish the domain shards.

Validation included local Bash checks for argument construction and failure propagation, configuration comparison, and the Stryker interface evidence in #717. Full mutation runs and hosted-runner timing were not rerun during this review.

Pullfrog  | View workflow run | Using gpt-6.1-sol | 𝕏

@sonarqubecloud

Copy link
Copy Markdown

@thomasluizon
thomasluizon merged commit 5797717 into redesign/main Oct 15, 2026
26 checks passed
@thomasluizon
thomasluizon deleted the chore/ticket-746-carry-mutation-shards branch October 15, 2026 15:55
thomasluizon added a commit that referenced this pull request Oct 19, 2026
…, slip contract and the Supabase sign-in removal (#768)

* Stop Stripe and Play renewals when account deletion is confirmed (#746)

* fix: stop subscription renewal when account deletion is confirmed

* fix: restrict renewal restoration to an unexpired paid period

* fix: keep free account deletion independent of billing services

* fix: bound billing cancellation delays during account erasure

* fix: preserve renewal intent during deletion reconciliation

(cherry picked from commit 85d8824)

* docs: name Render web services in version floor preconditions (#755)

(cherry picked from commit 21615aa)

* fix(infra): use Render for production database connections (#754)

(cherry picked from commit e2909b6)

* test(habits): cover end date reactivation allowance through handler (#759)

(cherry picked from commit 16203d9)

* test(mcp): verify Pro access for OAuth and API keys (#760)

(cherry picked from commit 0a90f67)

* Cover calendar auto-sync scheduling and import reconciliation (ORB-199) (#761)

* test(calendar): cover auto-sync scheduler eligibility and batching

* test(calendar): cover import suggestion reconciliation filters

* test(calendar): isolate free plan eligibility from expiry

(cherry picked from commit 664c756)

* Clarify controller action cross-references in the agent catalog (#762)

(cherry picked from commit d9cda52)

* refactor(calendar): share legacy match key for sync and suggestions (#763)

(cherry picked from commit 8e754c4)

* Contract habit log slip classification schema (#718) (#764)

(cherry picked from commit b0d3ff4)

* fix(calendar): gate recurring event reconciliation (#765)

(cherry picked from commit c900dba)

* Gate rolling schema contractions behind deployment barriers (#766)

* feat: require deployment barriers for rolling schema contractions

* fix: keep quoted SQL comment markers from hiding contractions

* test: record the deployed habit log contract barrier

* ci: run the rolling contract gate only when its inputs change

The gate builds the infrastructure test project, which costs minutes on every
pull request. It now runs only when a migration, the barrier file or the gate
itself changes; the step before it already reads the same diff.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix: require barriers for unclassified ALTER TABLE actions

* test: isolate barrier unit coverage from checkout history

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
(cherry picked from commit 626c525)

* fix: require a session claim on access tokens (#767)

(cherry picked from commit 517ed1b)

* Deprecate legacy Google auth routes (#1528, part 1) (#753)

* Deprecate legacy Google auth routes for #1528

* Explain deprecated Google auth routes and annotate legacy tests

(cherry picked from commit 21f810f)

* Remove deleted Supabase sign-in path (#1528) (#752)

* Remove deleted Supabase sign-in path (#1528)

* Remove unused access-token validation catalog entries (#1528)

(cherry picked from commit 141a4a2)

* fix: bind carried schema barrier to the deployed redesign

Record the observed staging deployment and its drained predecessors without changing the migration gate. Regenerate the tracked gating matrix for the combined source. Refs thomasluizon/orbit-tickets#746.

* fix: retain deletion cancellation ownership across provider retries (#770)

* fix: persist deletion cancellation ownership before provider updates

* test: cover deletion intent commit and account changes

* fix: identify deletion-owned Stripe cancellations

Reconcile provider metadata before restoring renewal or retaining ownership, reject open cancellation transactions, and log skipped erasure rechecks.

Refs thomasluizon/orbit-tickets#1547

(cherry picked from commit a7d1cf2)

* test: drop the deprecation assertions the legacy Google route removal supersedes

The base merge brought #769's assertions that POST /api/Auth/google and
POST /api/Auth/operations/google stay available and deprecated. This carry
removes both routes (main's #1528 part 2), so those assertions no longer
have a subject.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
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