Update roadmap with UI fix progress and current issues
This commit is contained in:
181
ROADMAP.md
181
ROADMAP.md
@@ -88,6 +88,7 @@
|
|||||||
- [x] Database migration for litter_id
|
- [x] Database migration for litter_id
|
||||||
- [x] Enhanced API endpoints
|
- [x] Enhanced API endpoints
|
||||||
- [x] Dual parent selection mode (litter/manual)
|
- [x] Dual parent selection mode (litter/manual)
|
||||||
|
- [x] UI fix for proper layout and error handling
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -192,100 +193,156 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 🎉 Latest Release: v0.3.0 - Litter Management & Pedigree Visualization
|
## 🎉 Latest Release: v0.3.1 - UI Fixes & Error Handling
|
||||||
|
|
||||||
### What's New in This Release
|
### What's New in This Release
|
||||||
|
|
||||||
#### Litter Management System
|
#### Bug Fixes
|
||||||
- ✅ Fixed "no such column: sire" error when adding puppies
|
- ✅ Fixed blank screen issue when opening Add Dog modal
|
||||||
- ✅ Database migration adds `litter_id` column to dogs table
|
- ✅ Fixed overlapping radio buttons and dropdown in Parent Information section
|
||||||
- ✅ New LitterForm component for creating/editing litters
|
- ✅ Added graceful error handling for API failures
|
||||||
- ✅ Enhanced litter API with puppy linking endpoints
|
- ✅ Improved layout with proper spacing and visual hierarchy
|
||||||
- ✅ Dual parent selection mode in DogForm:
|
- ✅ Fixed typo: `useManualParents` variable name
|
||||||
- Link to existing litter (auto-populates parents)
|
|
||||||
- Manual parent selection (traditional method)
|
|
||||||
- ✅ Auto-creation of parent relationships when linking to litter
|
|
||||||
|
|
||||||
#### Interactive Pedigree Visualization
|
#### UI Improvements
|
||||||
- ✅ Beautiful tree visualization using React-D3-Tree
|
- ✅ Enhanced parent selection section with subtle indigo background
|
||||||
- ✅ Shows 5 generations of ancestry
|
- ✅ Properly sized radio buttons (16px) for better clickability
|
||||||
- ✅ Color-coded nodes: Blue for males, Pink for females
|
- ✅ Horizontal radio button layout with proper flex spacing
|
||||||
- ✅ Interactive controls:
|
- ✅ Checkmark feedback when litter is selected
|
||||||
- Zoom in/out buttons
|
- ✅ Conditional rendering based on litters availability
|
||||||
- Reset view
|
- ✅ Fallback to manual parent selection when litters API fails
|
||||||
- Mouse wheel zoom
|
|
||||||
- Click and drag to pan
|
|
||||||
- ✅ Node information display:
|
|
||||||
- Dog name
|
|
||||||
- Registration number
|
|
||||||
- Birth year
|
|
||||||
- Sex indicator (♂/♀)
|
|
||||||
- ✅ Leverages existing COI calculator backend
|
|
||||||
- ✅ Horizontal tree layout for better readability
|
|
||||||
|
|
||||||
### Migration Instructions
|
#### Technical Changes
|
||||||
|
- ✅ Added `littersAvailable` state flag
|
||||||
|
- ✅ Wrapped API calls in try-catch blocks with fallbacks
|
||||||
|
- ✅ Set empty arrays as defaults to prevent undefined errors
|
||||||
|
- ✅ Added `name` attribute to radio buttons for proper grouping
|
||||||
|
|
||||||
1. Pull the feature branch:
|
### Migration Instructions (if not already done)
|
||||||
|
|
||||||
|
1. Run database migration:
|
||||||
```bash
|
```bash
|
||||||
git checkout feature/litter-management-and-pedigree
|
docker exec breedr node server/db/migrate_litter_id.js
|
||||||
```
|
```
|
||||||
|
OR if running locally:
|
||||||
2. Run database migration:
|
|
||||||
```bash
|
```bash
|
||||||
node server/db/migrate_litter_id.js
|
node server/db/migrate_litter_id.js
|
||||||
```
|
```
|
||||||
|
|
||||||
3. Install new dependencies:
|
2. Pull latest changes:
|
||||||
```bash
|
```bash
|
||||||
cd client && npm install
|
git pull origin fix/dog-form-litter-ui
|
||||||
```
|
```
|
||||||
|
|
||||||
4. Restart the server:
|
3. Restart the application:
|
||||||
|
```bash
|
||||||
|
docker-compose restart
|
||||||
|
```
|
||||||
|
OR
|
||||||
```bash
|
```bash
|
||||||
npm run dev
|
npm run dev
|
||||||
```
|
```
|
||||||
|
|
||||||
### Documentation
|
|
||||||
|
|
||||||
See [FEATURE_IMPLEMENTATION.md](./FEATURE_IMPLEMENTATION.md) for:
|
|
||||||
- Detailed technical documentation
|
|
||||||
- Architecture decisions
|
|
||||||
- Usage examples
|
|
||||||
- API changes
|
|
||||||
- Testing checklist
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Current Sprint Focus
|
## Current Sprint Focus
|
||||||
|
|
||||||
### Next Up (Priority)
|
### Next Up (Priority)
|
||||||
1. **Trial Pairing Tool**
|
|
||||||
- Create pairing form
|
|
||||||
- Display COI calculation
|
|
||||||
- Show common ancestors
|
|
||||||
- Add recommendation system
|
|
||||||
|
|
||||||
2. **Heat Cycle Management**
|
#### Option 1: Trial Pairing Simulator (Recommended) 🏆
|
||||||
- Add/edit heat cycles
|
**Complexity:** Medium | **Impact:** High | **User Value:** Excellent
|
||||||
- Track progesterone levels
|
|
||||||
- Calendar view
|
|
||||||
- Breeding date suggestions
|
|
||||||
|
|
||||||
3. **Enhanced Litter Features**
|
**Why this is recommended:**
|
||||||
- Puppy batch addition
|
- Leverages existing COI calculator backend
|
||||||
- Photo gallery per litter
|
- Provides immediate breeding decision support
|
||||||
- Whelping countdown
|
- High value feature for breeders
|
||||||
- Expected vs actual puppy count tracking
|
- Relatively quick to implement
|
||||||
|
|
||||||
|
**Tasks:**
|
||||||
|
- Create PairingSimulator component
|
||||||
|
- Add sire/dam selection dropdowns
|
||||||
|
- Display COI calculation results
|
||||||
|
- Show common ancestors table
|
||||||
|
- Add genetic risk assessment
|
||||||
|
- Color-coded recommendations (green/yellow/red)
|
||||||
|
|
||||||
|
**Estimated Time:** 4-6 hours
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
#### Option 2: Heat Cycle Management
|
||||||
|
**Complexity:** Medium-High | **Impact:** Medium | **User Value:** Good
|
||||||
|
|
||||||
|
**Why consider this:**
|
||||||
|
- Natural extension of litter management
|
||||||
|
- Helps with breeding planning
|
||||||
|
- Provides calendar functionality
|
||||||
|
|
||||||
|
**Tasks:**
|
||||||
|
- Create HeatCycleForm component
|
||||||
|
- Add calendar view with heat cycle tracking
|
||||||
|
- Track progesterone levels
|
||||||
|
- Implement breeding date suggestions
|
||||||
|
- Whelping date calculator
|
||||||
|
|
||||||
|
**Estimated Time:** 6-8 hours
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
#### Option 3: Enhanced Litter Features
|
||||||
|
**Complexity:** Low-Medium | **Impact:** Medium | **User Value:** Good
|
||||||
|
|
||||||
|
**Why consider this:**
|
||||||
|
- Polish existing litter functionality
|
||||||
|
- Improves user workflow
|
||||||
|
- Quick wins
|
||||||
|
|
||||||
|
**Tasks:**
|
||||||
|
- Puppy batch addition (add multiple puppies at once)
|
||||||
|
- Photo gallery per litter
|
||||||
|
- Whelping countdown timer
|
||||||
|
- Expected vs actual puppy count tracking
|
||||||
|
- Litter statistics dashboard
|
||||||
|
|
||||||
|
**Estimated Time:** 3-5 hours
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
#### Option 4: Health Records System
|
||||||
|
**Complexity:** Medium | **Impact:** High | **User Value:** Excellent
|
||||||
|
|
||||||
|
**Why consider this:**
|
||||||
|
- Important for breeding decisions
|
||||||
|
- Vaccination tracking is valuable
|
||||||
|
- Document management adds utility
|
||||||
|
|
||||||
|
**Tasks:**
|
||||||
|
- Create HealthRecordForm component
|
||||||
|
- Add vaccination tracking with expiry alerts
|
||||||
|
- Medical history timeline view
|
||||||
|
- PDF/image document uploads
|
||||||
|
- Health clearance status badges
|
||||||
|
|
||||||
|
**Estimated Time:** 6-8 hours
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
### Testing Needed
|
### Testing Needed
|
||||||
- [x] Add/edit dog forms with litter selection
|
- [x] Add/edit dog forms with litter selection
|
||||||
- [x] Database migration execution
|
- [x] Database migration execution
|
||||||
- [x] Pedigree tree rendering
|
- [x] Pedigree tree rendering
|
||||||
- [x] Zoom/pan controls
|
- [x] Zoom/pan controls
|
||||||
|
- [x] UI layout fixes
|
||||||
|
- [x] Error handling for API failures
|
||||||
- [ ] Trial pairing simulator
|
- [ ] Trial pairing simulator
|
||||||
- [ ] Heat cycle tracking
|
- [ ] Heat cycle tracking
|
||||||
|
- [ ] Enhanced litter features
|
||||||
|
- [ ] Health records
|
||||||
|
|
||||||
### Known Issues
|
### Known Issues
|
||||||
|
- ✅ Fixed: Blank screen when opening Add Dog modal
|
||||||
|
- ✅ Fixed: Overlapping UI elements in parent selection
|
||||||
|
- ✅ Fixed: Missing error handling for litters API
|
||||||
- None currently
|
- None currently
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -300,7 +357,13 @@ See [FEATURE_IMPLEMENTATION.md](./FEATURE_IMPLEMENTATION.md) for:
|
|||||||
|
|
||||||
## Version History
|
## Version History
|
||||||
|
|
||||||
- **v0.3.0** (Current) - Litter Management & Interactive Pedigree
|
- **v0.3.1** (Current - March 9, 2026) - UI Fixes & Error Handling
|
||||||
|
- Fixed blank screen issue on Add Dog modal
|
||||||
|
- Improved parent selection layout
|
||||||
|
- Added comprehensive error handling
|
||||||
|
- Enhanced visual design with proper spacing
|
||||||
|
|
||||||
|
- **v0.3.0** - Litter Management & Interactive Pedigree
|
||||||
- Added litter_id to dogs table
|
- Added litter_id to dogs table
|
||||||
- Implemented LitterForm component
|
- Implemented LitterForm component
|
||||||
- Created PedigreeView with React-D3-Tree
|
- Created PedigreeView with React-D3-Tree
|
||||||
|
|||||||
Reference in New Issue
Block a user