وظایف
وظیفه (Task) عنوان، اولویت (LOW/MEDIUM/HIGH/URGENT)، مهلت اختیاری و ترتیب اختیاری دارد. نوشتنها CRUD جدا ندارند و از sync انجام میشوند.
تکمیل: isCompleted و completedAt دو فیل د مستقل ذخیرهشدهاند؛ کلاینت باید آنها را هماهنگ در patch بفرستد — تغییر یکی، خودکار دیگری را عوض نمیکند.
order (ترتیب نمایش): عدد صحیح signed Int32 در بازهٔ -2147483648..2147483647 و nullable است. در patch، فیلد غایب مقدار فعلی را حفظ و null آن را پاک میکند. مقدار خارج از محدوده، خطای همان آیتم sync است (invalid_item)، نه خطای 500 کل درخواست.
پیوندهای والد — هر سه اختیاری با یک معنای یکسان:
| حالت در patch | معنا |
|---|---|
| فیلد غایب | پیوند فعلی حفظ میشود |
null | پیوند قطع میشود |
| مقدار (uid) | اتصال به آن والدِ زندهٔ همان حساب |
این پیوندها: calendarUid، eventUid و parentTaskUid. قواعد وابستگی: والد را قبل از زیروظیفه بسازید؛ خودوالدی و چرخه در زنجیرهٔ والد با invalid_item رد میشود. حذف وظیفهای که زیروظیفه یا یادآور زنده دارد با has_live_dependents مسدود است؛ restore والد فقط وقتی میگذرد که والدِ باقیماندهاش هنوز زنده باشد (وگرنه parent_deleted).
وظیفه فیلد providerId ندارد.
مرجع فیلدها: packages/contracts/src/sync.ts؛ رابط کاربری: وب و اندروید.