You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-**Real-time synchronization** between local and remote data
276
276
-**Runtime preparation flow** with official timer starts, early-start entry, and finish/lateness handling
277
277
-**Cache-coherent timed-preparation resume** using snapshot metadata and fingerprint invalidation
278
+
-**Automatic timer system** for schedule start notifications
278
279
279
280
📖 **Detailed Documentation**: For the canonical v2 state machine, sequence flows, cache coherence model, and verification matrix, see [Schedule Timer & Preparation Runtime Flow (v2)](./Schedule-Timer-System.md)
-**Synchronization strategy** for online/offline data consistency
291
292
-**Caching mechanisms** for improved performance
292
293
293
-
### 5. **Local Storage for Timed Preparation**
294
+
### 5. **Error Handling System**
295
+
296
+
-**Result pattern** for explicit, type-safe error handling
297
+
-**Structured failure hierarchy** across all layers (Core, Domain, Data)
298
+
-**Automatic logging** to Firebase Crashlytics in production
299
+
-**Environment-aware messaging**: detailed errors in debug, user-friendly messages in production
300
+
-**Layer-appropriate failures**: Domain failures contain no infrastructure details
301
+
302
+
📖 **Detailed Documentation**: For comprehensive information about the error handling system, see [Error Handling System](./Error-Handling-Result-System.md)
303
+
304
+
### 6. **Local Storage for Timed Preparation**
294
305
295
306
-`PreparationWithTimeLocalDataSource` persists `PreparationWithTimeEntity` per schedule using SharedPreferences.
296
307
- Intended for lightweight, per-schedule timer state (elapsed time, completion) that should survive app restarts.
@@ -357,6 +368,9 @@ dart run build_runner watch
357
368
- Always use **entities** in the domain layer
358
369
- Convert **models to entities** at repository boundaries
359
370
- Implement **proper error handling** throughout the layers
371
+
- Use **Result pattern** for all operations that can fail
372
+
373
+
📖 **Detailed Documentation**: For comprehensive information about error handling, see [Error Handling System](./Error-Handling-Result-System.md)
0 commit comments