refactor: improve AI event handling and conflict display in chat

- AI fetches events on-demand via callbacks for better efficiency
- Add conflict detection with warning display when proposing overlapping events
- Improve event search and display in chat interface
- Load full chat history for display while limiting AI context
This commit is contained in:
2026-02-02 22:44:08 +01:00
parent 387bb2d1ee
commit 1092ff2648
19 changed files with 367 additions and 119 deletions

View File

@@ -10,6 +10,12 @@ export type EventAction = "create" | "update" | "delete";
export type RespondedAction = "confirm" | "reject";
export interface ConflictingEvent {
title: string;
startTime: Date;
endTime: Date;
}
export interface ProposedEventChange {
id: string; // Unique ID for each proposal
action: EventAction;
@@ -19,6 +25,7 @@ export interface ProposedEventChange {
respondedAction?: RespondedAction; // User's response to this specific proposal
deleteMode?: RecurringDeleteMode; // For recurring event deletion
occurrenceDate?: string; // ISO date string of specific occurrence for single/future delete
conflictingEvents?: ConflictingEvent[]; // Overlapping events for conflict warnings
}
export interface ChatMessage {