[MINOR] syncStatus optioneel in type maar verplicht in database #10

Open
opened 2026-08-05 21:11:35 +02:00 by eddy · 0 comments
Owner

Probleem

src/types.ts:14 declareert syncStatus?: string (optioneel), maar de database schema (src/database/db.ts:17) definieert syncStatus TEXT NOT NULL DEFAULT 'pending'. De kolom is dus altijd gevuld — syncStatus is nooit daadwerkelijk undefined voor persisted records.

Dit is een kleine type-inconsistentie. In getPendingRecords() (db.ts:114) wordt syncStatus gebruikt zonder null-check, wat aangeeft dat het in de praktijk altijd aanwezig is.

Oplossing

Maak syncStatus verplicht in het type:

type Measurement = {
  ...
- syncStatus?: string;
+ syncStatus: string;
  deletedAt?: string;
}

deletedAt blijft optioneel — die is pas gezet bij een soft delete.

## Probleem `src/types.ts:14` declareert `syncStatus?: string` (optioneel), maar de database schema (`src/database/db.ts:17`) definieert `syncStatus TEXT NOT NULL DEFAULT 'pending'`. De kolom is dus altijd gevuld — `syncStatus` is nooit daadwerkelijk `undefined` voor persisted records. Dit is een kleine type-inconsistentie. In `getPendingRecords()` (db.ts:114) wordt `syncStatus` gebruikt zonder null-check, wat aangeeft dat het in de praktijk altijd aanwezig is. ## Oplossing Maak `syncStatus` verplicht in het type: ```diff type Measurement = { ... - syncStatus?: string; + syncStatus: string; deletedAt?: string; } ``` `deletedAt` blijft optioneel — die is pas gezet bij een soft delete.
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
eddy/weegschaal-app#10
No description provided.