February 6th, 2026
Critical Fixes: Identity Standardization & Data Fetching Today involved a major refactor to align our API endpoints with the updated authentication middleware and fix a critical data fetching bug that was hiding commitments in the native app.🛠️ Major Backend Refactor
We standardized how User IDs are accessed across the backend to ensure consistency and security.Backend Changes (convex/tasks.ts)
- Standardized ID Access: Updated
deleteandupdatecommitment mutations to correctly accessuser._idfrom the authenticated context. - Strict Typing: Replaced legacy usage of
user.idanduser.subjectto match the strictDoc<"users">type definition injected by the auth middleware. - Consistency: Ensured consistent property access across the entire commitments API module.
📱 Frontend Fixes
Task List Regression (commits.tsx)
A regression was identified where the task list query was passing a hardcoded "user_id" string, causing the list to appear empty.
- Fixed Regression: Updated the query to use the actual authenticated user’s ID.
- Conditional Querying: Implemented proper session-based conditional querying. The
list.byAssigneequery now waits for a validsession.user.idbefore firing (using the “skip” pattern).