Release: security and quality fixes #14
Loading…
Reference in a new issue
No description provided.
Delete branch "develop"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Promotes the security & quality fixes from develop to main.
Includes mobile PR #13 (merged): typed ApiResult envelope, robust auth, deep-link gating, secure password inputs, claim-shape alignment with new API contract.
7 underlying commits, +757 / -403 across 34 files. pnpm tsc --noEmit clean. No breaking schema changes (mobile app).
- Replace useRoute<any>() with typed useLocalSearchParams<{...}>() from expo-router - Migrate the fetch sites to res.ok/res.data shape - exercice-respiration: drop the throw on no-data; just return — toast already surfaced by apiFetch Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>- TrackerModal.deleteTracker: await + close modal + call onUpdate on success; only close on res.ok; toast is rendered via apiFetch on error - TrackerModal + tracker page: parse YYYY-MM-DD via dayjs(date).toDate() instead of new Date('YYYY-MM-DD'), which is interpreted as UTC midnight and can shift to the previous local day - RespirationExerciseCard: disabled={deleting} during delete, only refresh on res.ok - RespirationExerciseModal: bail on res.ok=false; setIsLoading(false) in finally - StressDiagnosticForm: type updateAnswer value as number|boolean; replace dead "occurences === undefined || null" check with a real constraint ("at least one positive answer") - Migrate remaining call sites (RespirationExerciseList, StressDiagnosticList, StressDiagnosticResult, EmotionSelect, diagnostic tab) to res.ok envelope Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>