From 470a8a8208a64953a7cea4bdb794f4b48e5d56bf Mon Sep 17 00:00:00 2001 From: Alexey Martemyanov Date: Fri, 25 Sep 2026 18:37:47 +0600 Subject: [PATCH] [2026-09-25] eagle: work/tech-design/coredata-code-defined-models.md --- work/tech-design/coredata-code-defined-models.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/work/tech-design/coredata-code-defined-models.md b/work/tech-design/coredata-code-defined-models.md index aba6f818..2377bd9d 100644 --- a/work/tech-design/coredata-code-defined-models.md +++ b/work/tech-design/coredata-code-defined-models.md @@ -42,7 +42,7 @@ Existing stores are unaffected: Core Data matches a store to a model by schema h Steps (one PR each): -1. `Persistence` support + PrivacyStats and BrowsingHistory. *(PR ready.)* +1. `Persistence` support + PrivacyStats and BrowsingHistory. 2. Bookmarks + SyncMetadata. 3. Stores combining several models: HTTPSUpgrade, RemoteMessaging, AppRatingPrompt.[2] 4. macOS app models: History, Downloads, legacy Bookmark. @@ -57,10 +57,10 @@ Each step is revertible: the on-disk format doesn't change. [2] A combined store needs the old versions of all its models, so they're converted together. Alternatives: -- Remove only the generated classes: `momc` is still needed. +- Remove only the generated dynamic CoreData property accessors: `momc` is still needed and compiled as a separate Swift Build System Plugin step. - Commit precompiled `.momd` files: binary artifacts that can drift from the source. -Trade-off: we lose Xcode's visual model editor. +Trade-off: we lose Xcode's visual model editor (but we get standardized, structured, great&shiny code definitions!) ## Testing @@ -75,5 +75,5 @@ Trade-off: we lose Xcode's visual model editor. - **Security** — No change. - **Site Breakage** — N/A. - **Experimentation** — N/A. The schema can't be feature-flagged; rollback is a revert. -- **Operational** — Package builds no longer need Xcode. Migration failures are reported through the existing store-loading errors. +- **Operational** — Package builds no longer need Xcode‘s momd compiler. Migration failures are reported through the existing store-loading errors. - **Localization / Internationalization** — N/A.