From 5507525ee48de1d0572ed3d67500604b0f4dd39f Mon Sep 17 00:00:00 2001 From: rcourtman Date: Thu, 15 Jan 2026 21:26:39 +0000 Subject: [PATCH] fix: resolve TypeScript errors in AISettings and UnifiedAgents - Add control_level and protected_guests to AISettings interface - Add control_level and protected_guests to AISettingsUpdateRequest - Fix type error in filteredRows by casting filterType as UnifiedAgentType - Make formatRelativeTime and formatAbsoluteTime accept undefined --- frontend-modern/src/components/Settings/UnifiedAgents.tsx | 2 +- frontend-modern/src/types/ai.ts | 8 ++++++++ frontend-modern/src/utils/format.ts | 4 ++-- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/frontend-modern/src/components/Settings/UnifiedAgents.tsx b/frontend-modern/src/components/Settings/UnifiedAgents.tsx index fc5f126ad..a6afb2695 100644 --- a/frontend-modern/src/components/Settings/UnifiedAgents.tsx +++ b/frontend-modern/src/components/Settings/UnifiedAgents.tsx @@ -658,7 +658,7 @@ export const UnifiedAgents: Component = () => { const filteredRows = createMemo(() => { const query = filterSearch().trim().toLowerCase(); return unifiedRows().filter(row => { - if (filterType() !== 'all' && !row.types.includes(filterType())) { + if (filterType() !== 'all' && !row.types.includes(filterType() as UnifiedAgentType)) { return false; } if (filterStatus() !== 'all' && row.status !== filterStatus()) { diff --git a/frontend-modern/src/types/ai.ts b/frontend-modern/src/types/ai.ts index 5edeeadf4..915337125 100644 --- a/frontend-modern/src/types/ai.ts +++ b/frontend-modern/src/types/ai.ts @@ -46,6 +46,10 @@ export interface AISettings { // Request timeout (in seconds) - for slow Ollama hardware request_timeout_seconds?: number; + + // Infrastructure control settings + control_level?: 'read_only' | 'suggest' | 'controlled' | 'autonomous'; + protected_guests?: string[]; } export interface AISettingsUpdateRequest { @@ -85,6 +89,10 @@ export interface AISettingsUpdateRequest { // Request timeout (in seconds) - for slow Ollama hardware request_timeout_seconds?: number; + + // Infrastructure control settings + control_level?: 'read_only' | 'suggest' | 'controlled' | 'autonomous'; + protected_guests?: string[]; } diff --git a/frontend-modern/src/utils/format.ts b/frontend-modern/src/utils/format.ts index 45e4f1b7f..d8f9f6b67 100644 --- a/frontend-modern/src/utils/format.ts +++ b/frontend-modern/src/utils/format.ts @@ -46,7 +46,7 @@ export function formatUptime(seconds: number, condensed = false): string { } } -export function formatAbsoluteTime(timestamp: number): string { +export function formatAbsoluteTime(timestamp: number | undefined): string { if (!timestamp) return ''; const date = new Date(timestamp); @@ -73,7 +73,7 @@ export function formatAbsoluteTime(timestamp: number): string { return `${day} ${month} ${hours}:${minutes}`; } -export function formatRelativeTime(timestamp: number): string { +export function formatRelativeTime(timestamp: number | undefined): string { if (!timestamp) return ''; const now = Date.now();