Skip to content

Refactor settings into product domains#799

Draft
FuJacob wants to merge 1 commit into
codex/safe-decompositionfrom
codex/settings-domains
Draft

Refactor settings into product domains#799
FuJacob wants to merge 1 commit into
codex/safe-decompositionfrom
codex/settings-domains

Conversation

@FuJacob

@FuJacob FuJacob commented Jul 17, 2026

Copy link
Copy Markdown
Owner

Summary

Group Cotabby's durable suggestion settings into subsystem-owned domain values while preserving the existing SwiftUI properties, generation snapshot, and flat persistence keys. This gives future work cohesive settings boundaries without making a migration part of the refactor.

This is the third PR in the repository-organization stack and is based on #798.

Validation

  • swiftlint lint --strict — 0 violations.
  • xcodegen generate — succeeded and the generated project is committed.
  • xcodebuild -project Cotabby.xcodeproj -scheme Cotabby -destination 'platform=macOS' build-for-testing -derivedDataPath build/DerivedDataTEST BUILD SUCCEEDED.
  • Compatibility inventory — all 61 previous flat SuggestionSettingsData properties remain as bidirectional forwarding accessors.
  • After ad-hoc re-signing the local test host to avoid the repository's Team-ID mismatch, 87 settings domain/model/store tests passed with 0 failures on the final stacked branch.

Linked issues

None.

Risk / rollout notes

No UserDefaults or Keychain key changes are included. SuggestionSettingsSnapshot retains its existing shape and the observable model retains its individual @Published properties, so this should not alter persistence, observation timing, or generation behavior.

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