diff --git a/VEZA_INTEGRATION_PERFECTION_TODOLIST_TEMPLATE.json b/VEZA_INTEGRATION_PERFECTION_TODOLIST_TEMPLATE.json index b24bce599..18f7c65eb 100644 --- a/VEZA_INTEGRATION_PERFECTION_TODOLIST_TEMPLATE.json +++ b/VEZA_INTEGRATION_PERFECTION_TODOLIST_TEMPLATE.json @@ -239,7 +239,8 @@ "description": "Même problème que User.id - Track.id doit être string (UUID) partout.", "priority": "P1", "priority_rank": 5, - "status": "todo", + "status": "completed", + "completed_at": "2025-01-27T12:45:00Z", "estimated_hours": 1.5, "side": "frontend_only", "files_to_modify": [ @@ -1086,13 +1087,13 @@ }, "progress_tracking": { "total_tasks": 32, - "completed": 4, + "completed": 5, "in_progress": 0, - "todo": 28, + "todo": 27, "blocked": 0, - "completion_percentage": 12, - "last_updated": "2025-01-27T12:30:00Z", + "completion_percentage": 16, + "last_updated": "2025-01-27T12:45:00Z", "estimated_completion_date": null, - "estimated_hours_remaining": 41 + "estimated_hours_remaining": 39.5 } } diff --git a/apps/web/src/features/tracks/types/track.ts b/apps/web/src/features/tracks/types/track.ts index b0dde3f93..ea480b5c7 100644 --- a/apps/web/src/features/tracks/types/track.ts +++ b/apps/web/src/features/tracks/types/track.ts @@ -6,7 +6,9 @@ export type TrackStatus = 'uploading' | 'processing' | 'completed' | 'failed'; export interface Track { + // UUID from backend - always string id: string; + // UUID from backend - always string creator_id: string; file_id?: string; title: string; diff --git a/apps/web/src/schemas/apiSchemas.ts b/apps/web/src/schemas/apiSchemas.ts index 55a2c6fd8..744e521b0 100644 --- a/apps/web/src/schemas/apiSchemas.ts +++ b/apps/web/src/schemas/apiSchemas.ts @@ -86,9 +86,13 @@ export type Conversation = z.infer; /** * Track schema */ +/** + * Track schema + * INT-TYPE-002: Track.id is UUID (string) from backend - always string + */ export const trackSchema = z.object({ - id: uuidSchema, - creator_id: uuidSchema, + id: uuidSchema, // UUID from backend - always string + creator_id: uuidSchema, // UUID from backend - always string file_id: uuidSchema.optional().nullable(), title: z.string().min(1), artist: z.string().min(1), diff --git a/apps/web/src/types/api.ts b/apps/web/src/types/api.ts index 6dda01b1b..51a939037 100644 --- a/apps/web/src/types/api.ts +++ b/apps/web/src/types/api.ts @@ -51,7 +51,9 @@ export interface Conversation { } export interface Track { + // UUID from backend - always string id: string; + // UUID from backend - always string creator_id: string; // Backend uses creator_id (not artist_id) file_id?: string; // nullable UUID title: string; diff --git a/apps/web/src/types/index.ts b/apps/web/src/types/index.ts index 5d23deff8..bcb2bd16e 100644 --- a/apps/web/src/types/index.ts +++ b/apps/web/src/types/index.ts @@ -74,6 +74,7 @@ export interface Conversation { } export interface Track { + // UUID from backend - always string id: string; title: string; artist: string;