diff --git a/frontend/src/components/index.ts b/frontend/src/components/index.ts
index d323e3f..3e7c358 100644
--- a/frontend/src/components/index.ts
+++ b/frontend/src/components/index.ts
@@ -1,5 +1,5 @@
 export { RaceCard } from './RaceCard';
-export { RunnerRow } from './HorseRow';
+export { RunnerRow } from './RunnerRow';
 export { BetTypeSelector } from './BetTypeSelector';
 export { TipCard } from './TipCard';
 export { ScheduleCard } from './ScheduleCard';
diff --git a/model.patch b/model.patch
index 7ff1175..e69de29 100644
--- a/model.patch
+++ b/model.patch
@@ -1,328 +0,0 @@
-diff --git a/frontend/app/tip-result.tsx b/frontend/app/tip-result.tsx
-index 594998b..aa5c12d 100644
---- a/frontend/app/tip-result.tsx
-+++ b/frontend/app/tip-result.tsx
-@@ -11,7 +11,7 @@ import {
- import { SafeAreaView } from 'react-native-safe-area-context';
- import { Ionicons } from '@expo/vector-icons';
- import { useRouter } from 'expo-router';
--import { TipCard, HorseRow } from '../src/components';
-+import { TipCard, RunnerRow } from '../src/components';
- import { saveTip } from '../src/services/api';
- import { useAppStore } from '../src/store/appStore';
- import { formatRaceTime, formatCountdown, formatDistance } from '../src/utils/formatters';
-@@ -140,20 +140,20 @@ export default function TipResultScreen() {
-           saved={saved}
-         />
- 
--        {/* Horses List */}
--        <View style={styles.horsesSection}>
--          <View style={styles.horsesSectionHeader}>
--            <Text style={styles.horsesSectionTitle}>All Runners</Text>
-+        {/* Runners List */}
-+        <View style={styles.runnersSection}>
-+          <View style={styles.runnersSectionHeader}>
-+            <Text style={styles.runnersSectionTitle}>All Runners</Text>
-             <View style={styles.gaugeHelp}>
-               <Ionicons name="help-circle-outline" size={16} color="#9ca3af" />
-               <Text style={styles.gaugeHelpText}>Model estimates, not guarantees</Text>
-             </View>
-           </View>
-           
--          {currentTip.horses
-+          {currentTip.runners
-             .sort((a, b) => b.win_probability - a.win_probability)
--            .map((horse) => (
--              <HorseRow key={horse.id} horse={horse} />
-+            .map((runner) => (
-+              <RunnerRow key={runner.id} runner={runner} />
-             ))}
-         </View>
-       </ScrollView>
-@@ -268,16 +268,16 @@ const styles = StyleSheet.create({
-     color: '#d1d5db',
-     marginHorizontal: 8,
-   },
--  horsesSection: {
-+  runnersSection: {
-     marginTop: 8,
-   },
--  horsesSectionHeader: {
-+  runnersSectionHeader: {
-     flexDirection: 'row',
-     justifyContent: 'space-between',
-     alignItems: 'center',
-     marginBottom: 14,
-   },
--  horsesSectionTitle: {
-+  runnersSectionTitle: {
-     fontSize: 18,
-     fontWeight: '700',
-     color: '#111827',
-diff --git a/frontend/src/components/HorseRow.tsx b/frontend/src/components/HorseRow.tsx
-index 3be1e48..a4e0522 100644
---- a/frontend/src/components/HorseRow.tsx
-+++ b/frontend/src/components/HorseRow.tsx
-@@ -1,30 +1,30 @@
- import React from 'react';
- import { View, Text, StyleSheet } from 'react-native';
- import { Ionicons } from '@expo/vector-icons';
--import { Horse } from '../types';
-+import { Runner } from '../types';
- 
--interface HorseRowProps {
--  horse: Horse;
-+interface RunnerRowProps {
-+  runner: Runner;
-   showDetails?: boolean;
- }
- 
--export const HorseRow: React.FC<HorseRowProps> = ({ horse, showDetails = true }) => {
-+export const RunnerRow: React.FC<RunnerRowProps> = ({ runner, showDetails = true }) => {
-   return (
-     <View style={styles.container}>
-       <View style={styles.header}>
-         <View style={styles.numberBadge}>
--          <Text style={styles.number}>{horse.number}</Text>
-+          <Text style={styles.number}>{runner.number}</Text>
-         </View>
-         <View style={styles.nameSection}>
--          <Text style={styles.name}>{horse.name}</Text>
-+          <Text style={styles.name}>{runner.name}</Text>
-           {showDetails && (
-             <Text style={styles.details}>
--              {horse.jockey} • {horse.trainer}
-+              {runner.rider} • {runner.trainer}
-             </Text>
-           )}
-         </View>
-         <View style={styles.badges}>
--          {horse.badges.slice(0, 2).map((badge, index) => (
-+          {runner.badges.slice(0, 2).map((badge, index) => (
-             <View key={index} style={styles.badge}>
-               <Text style={styles.badgeText}>{badge}</Text>
-             </View>
-@@ -40,11 +40,11 @@ export const HorseRow: React.FC<HorseRowProps> = ({ horse, showDetails = true })
-               style={[
-                 styles.gaugeFill, 
-                 styles.winGauge,
--                { width: `${Math.min(horse.win_probability, 100)}%` }
-+                { width: `${Math.min(runner.win_probability, 100)}%` }
-               ]} 
-             />
-           </View>
--          <Text style={styles.gaugeValue}>{horse.win_probability.toFixed(0)}%</Text>
-+          <Text style={styles.gaugeValue}>{runner.win_probability.toFixed(0)}%</Text>
-         </View>
-         
-         <View style={styles.gaugeContainer}>
-@@ -54,11 +54,11 @@ export const HorseRow: React.FC<HorseRowProps> = ({ horse, showDetails = true })
-               style={[
-                 styles.gaugeFill, 
-                 styles.placeGauge,
--                { width: `${Math.min(horse.place_probability, 100)}%` }
-+                { width: `${Math.min(runner.place_probability, 100)}%` }
-               ]} 
-             />
-           </View>
--          <Text style={styles.gaugeValue}>{horse.place_probability.toFixed(0)}%</Text>
-+          <Text style={styles.gaugeValue}>{runner.place_probability.toFixed(0)}%</Text>
-         </View>
-       </View>
-     </View>
-diff --git a/frontend/src/components/RaceCard.tsx b/frontend/src/components/RaceCard.tsx
-index f4ee4ca..eccbc54 100644
---- a/frontend/src/components/RaceCard.tsx
-+++ b/frontend/src/components/RaceCard.tsx
-@@ -64,8 +64,8 @@ export const RaceCard: React.FC<RaceCardProps> = ({
-       
-       <View style={styles.footer}>
-         <Text style={styles.time}>{formatRaceTime(race.start_time)}</Text>
--        {race.horse_count && (
--          <Text style={styles.horseCount}>{race.horse_count} runners</Text>
-+        {race.runner_count && (
-+          <Text style={styles.runnerCount}>{race.runner_count} runners</Text>
-         )}
-       </View>
-     </TouchableOpacity>
-@@ -151,7 +151,7 @@ const styles = StyleSheet.create({
-     fontWeight: '600',
-     color: '#111827',
-   },
--  horseCount: {
-+  runnerCount: {
-     fontSize: 13,
-     color: '#9ca3af',
-   },
-diff --git a/frontend/src/components/index.ts b/frontend/src/components/index.ts
-index 8931331..d323e3f 100644
---- a/frontend/src/components/index.ts
-+++ b/frontend/src/components/index.ts
-@@ -1,5 +1,5 @@
- export { RaceCard } from './RaceCard';
--export { HorseRow } from './HorseRow';
-+export { RunnerRow } from './HorseRow';
- export { BetTypeSelector } from './BetTypeSelector';
- export { TipCard } from './TipCard';
- export { ScheduleCard } from './ScheduleCard';
-diff --git a/frontend/src/types/index.ts b/frontend/src/types/index.ts
-index 3e8667b..edc466c 100644
---- a/frontend/src/types/index.ts
-+++ b/frontend/src/types/index.ts
-@@ -1,10 +1,10 @@
--export interface Horse {
-+export interface Runner {
-   id: string;
-   number: number;
-   name: string;
--  jockey: string;
-+  rider: string;  // Jockey for thoroughbred, Driver for harness, empty for greyhound
-   trainer: string;
--  weight: number;
-+  weight?: number;  // Only for horses
-   barrier: number;
-   form: string;
-   win_probability: number;
-@@ -14,6 +14,7 @@ export interface Horse {
- 
- export interface Race {
-   id: string;
-+  racing_type: 'thoroughbred' | 'harness' | 'greyhound';
-   track: string;
-   race_number: number;
-   start_time: string;
-@@ -21,8 +22,8 @@ export interface Race {
-   race_class: string;
-   conditions: string;
-   prize_money?: number;
--  horses?: Horse[];
--  horse_count?: number;
-+  runners?: Runner[];
-+  runner_count?: number;
- }
- 
- export interface TipReason {
-@@ -36,7 +37,7 @@ export interface Tip {
-   bet_type: string;
-   recommended_bet: string;
-   confidence: 'low' | 'medium' | 'high';
--  horses: Horse[];
-+  runners: Runner[];
-   reasons: TipReason[];
-   created_at: string;
-   race_info?: {
-diff --git a/model.patch b/model.patch
-index 744b2e3..17128c0 100644
---- a/model.patch
-+++ b/model.patch
-@@ -1,110 +0,0 @@
--diff --git a/test_result.md b/test_result.md
--index bae7ae3..91ac5d9 100644
----- a/test_result.md
--+++ b/test_result.md
--@@ -123,11 +123,14 @@ backend:
--     file: "/app/backend/server.py"
--     stuck_count: 0
--     priority: "high"
---    needs_retesting: true
--+    needs_retesting: false
--     status_history:
--       - working: true
--         agent: "main"
--         comment: "GET /api/races returns mock race data with filters"
--+      - working: true
--+        agent: "testing"
--+        comment: "✅ TESTED: GET /api/races working correctly. Returns 50 races with proper structure (id, track, race_number, start_time, distance, race_class, conditions, horse_count). Date and track filters working. Minor: Invalid race IDs return mock data instead of 404 (acceptable for MVP)."
-- 
--   - task: "Generate Tip API"
--     implemented: true
--@@ -135,11 +138,14 @@ backend:
--     file: "/app/backend/server.py"
--     stuck_count: 0
--     priority: "high"
---    needs_retesting: true
--+    needs_retesting: false
--     status_history:
--       - working: true
--         agent: "main"
--         comment: "POST /api/tips/generate creates tips with probabilities"
--+      - working: true
--+        agent: "testing"
--+        comment: "✅ TESTED: POST /api/tips/generate working perfectly. All bet types tested (best_bet, win, place, quinella, exacta, trifecta). Returns proper tip structure with id, race_id, bet_type, recommended_bet, confidence, horses with probabilities, and reasoning. Confidence levels calculated correctly."
-- 
--   - task: "Save/Get Tips API"
--     implemented: true
--@@ -147,11 +153,14 @@ backend:
--     file: "/app/backend/server.py"
--     stuck_count: 0
--     priority: "medium"
---    needs_retesting: true
--+    needs_retesting: false
--     status_history:
--       - working: true
--         agent: "main"
--         comment: "POST /api/tips/save and GET /api/tips/saved for tip persistence"
--+      - working: true
--+        agent: "testing"
--+        comment: "✅ TESTED: POST /api/tips/save and GET /api/tips/saved working correctly. Tips are properly saved to MongoDB with id, user_id, tip data, and saved_at timestamp. Retrieval returns saved tips in correct format. Data persistence confirmed."
-- 
--   - task: "Schedules CRUD API"
--     implemented: true
--@@ -159,11 +168,14 @@ backend:
--     file: "/app/backend/server.py"
--     stuck_count: 0
--     priority: "high"
---    needs_retesting: true
--+    needs_retesting: false
--     status_history:
--       - working: true
--         agent: "main"
--         comment: "POST/GET/DELETE /api/schedules for scheduled notifications"
--+      - working: true
--+        agent: "testing"
--+        comment: "✅ TESTED: Full CRUD operations working. POST /api/schedules creates schedules with proper structure (id, race_id, bet_type, minutes_before, channels, status, scheduled_time, race_info). GET /api/schedules retrieves active schedules. DELETE /api/schedules/{id} properly cancels schedules. Error handling works for invalid schedule IDs."
-- 
--   - task: "User Preferences API"
--     implemented: true
--@@ -171,11 +183,14 @@ backend:
--     file: "/app/backend/server.py"
--     stuck_count: 0
--     priority: "medium"
---    needs_retesting: true
--+    needs_retesting: false
--     status_history:
--       - working: true
--         agent: "main"
--         comment: "GET/PUT /api/user/preferences for user settings"
--+      - working: true
--+        agent: "testing"
--+        comment: "✅ TESTED: GET /api/user/preferences returns default preferences with all required fields (id, default_bet_type, default_lead_time, favorite_tracks, notification_channels, quiet_hours). PUT /api/user/preferences successfully updates preferences and persists changes. Upsert functionality working correctly."
-- 
-- frontend:
--   - task: "Tips Home Screen"
--@@ -277,18 +292,17 @@ frontend:
-- metadata:
--   created_by: "main_agent"
--   version: "1.0"
---  test_sequence: 1
--+  test_sequence: 2
--   run_ui: false
-- 
-- test_plan:
---  current_focus:
---    - "Generate Tip API"
---    - "Schedules CRUD API"
---    - "Save/Get Tips API"
--+  current_focus: []
--   stuck_tasks: []
--   test_all: false
--   test_priority: "high_first"
-- 
-- agent_communication:
--   - agent: "main"
---    message: "Horse Racing Tips MVP implemented with mock backend. All main flows working: Get Tip Now, Schedule Tip, View Races. Need backend API testing to verify endpoints."
--\ No newline at end of file
--+    message: "Horse Racing Tips MVP implemented with mock backend. All main flows working: Get Tip Now, Schedule Tip, View Races. Need backend API testing to verify endpoints."
--+  - agent: "testing"
--+    message: "Backend API testing completed. All major endpoints working correctly. Minor issues: 1) Race ID validation returns mock data instead of 404 for invalid IDs (acceptable for MVP with mock data), 2) Some MongoDB ObjectId serialization warnings in logs but not affecting functionality. All core features tested successfully including tip generation, schedules CRUD, user preferences, and data persistence."
--\ No newline at end of file
