146 lines
4.0 KiB
Markdown
146 lines
4.0 KiB
Markdown
# Shot Table View Feature - Summary
|
|
|
|
## Overview
|
|
Created comprehensive specification for implementing a shot table view with task status display, similar to the existing asset table functionality.
|
|
|
|
## Documents Created/Updated
|
|
|
|
### 1. New Spec Document
|
|
**File**: `.kiro/specs/vfx-project-management/shot-table-view-spec.md`
|
|
|
|
Complete specification including:
|
|
- 5 detailed user stories with acceptance criteria
|
|
- Data model definitions
|
|
- Backend API changes
|
|
- Frontend component designs
|
|
- UI/UX specifications
|
|
- Implementation plan (5 phases)
|
|
- Testing strategy
|
|
- Success criteria
|
|
- Future enhancements
|
|
|
|
### 2. Updated Design Document
|
|
**File**: `.kiro/specs/vfx-project-management/design.md`
|
|
|
|
Added new section: **Shot Table with Task Status Display**
|
|
- Task status columns for shot task types
|
|
- Column visibility controls
|
|
- Status filtering and sorting
|
|
- Episode and frame range display
|
|
- Custom task type support
|
|
- Matches asset table design patterns
|
|
|
|
### 3. Updated Tasks Document
|
|
**File**: `.kiro/specs/vfx-project-management/tasks.md`
|
|
|
|
Added **Task 20: Shot table view with task status display**
|
|
|
|
5 subtasks:
|
|
- 20.1: Enhance backend shot list endpoint with task status
|
|
- 20.2: Create shot table view component
|
|
- 20.3: Implement column visibility control for shots
|
|
- 20.4: Add task status filtering and sorting
|
|
- 20.5: Integrate shot table with project shots view
|
|
|
|
## Key Features
|
|
|
|
### Backend Enhancements
|
|
- Enhanced `ShotListResponse` with `task_status` dict and `task_details` list
|
|
- Task status filtering parameter
|
|
- Efficient query to include all task information
|
|
|
|
### Frontend Components
|
|
- **ShotsTableView.vue**: Main table component
|
|
- **ColumnVisibilityControl**: Reusable column toggle (adapt from assets)
|
|
- **TaskStatusFilter**: Reusable status filter (adapt from assets)
|
|
- **TaskStatusBadge**: Consistent status display
|
|
|
|
### User Capabilities
|
|
1. View shots in table format with task status columns
|
|
2. Show/hide specific columns
|
|
3. Filter shots by task status
|
|
4. Sort by any column
|
|
5. Click shot to view details
|
|
6. Session persistence for preferences
|
|
|
|
## Design Principles
|
|
|
|
### Consistency
|
|
- Matches asset table design and behavior
|
|
- Reuses existing components where possible
|
|
- Consistent 130px badge width
|
|
- Same color coding for status
|
|
|
|
### Usability
|
|
- Quick visual assessment of shot progress
|
|
- Customizable view for different workflows
|
|
- Efficient filtering and sorting
|
|
- Seamless integration with existing UI
|
|
|
|
### Performance
|
|
- Efficient backend queries
|
|
- Session storage for preferences
|
|
- Optimized rendering for 100+ shots
|
|
- Horizontal scroll for many columns
|
|
|
|
## Implementation Approach
|
|
|
|
### Phase 1: Backend (Task 20.1)
|
|
Enhance the shots endpoint to return task status information
|
|
|
|
### Phase 2: Table Component (Task 20.2)
|
|
Build the core table view with all columns
|
|
|
|
### Phase 3: Column Controls (Task 20.3)
|
|
Add column visibility management
|
|
|
|
### Phase 4: Filtering & Sorting (Task 20.4)
|
|
Implement status filtering and column sorting
|
|
|
|
### Phase 5: Integration (Task 20.5)
|
|
Wire everything together in the shots view
|
|
|
|
## Next Steps
|
|
|
|
1. Review the spec document for completeness
|
|
2. Prioritize task 20 in the implementation backlog
|
|
3. Begin with task 20.1 (backend enhancement)
|
|
4. Iterate through subtasks sequentially
|
|
5. Test each phase before moving to the next
|
|
|
|
## Benefits
|
|
|
|
### For Coordinators
|
|
- Quick overview of shot production status
|
|
- Easy identification of bottlenecks
|
|
- Efficient progress tracking
|
|
|
|
### For Directors
|
|
- Clear view of shots ready for review
|
|
- Filter by status to prioritize reviews
|
|
- Track overall production progress
|
|
|
|
### For Artists
|
|
- See which shots need attention
|
|
- Understand production priorities
|
|
- Track their assigned shots
|
|
|
|
## Technical Notes
|
|
|
|
- Reuses patterns from asset table implementation
|
|
- Leverages existing task status infrastructure
|
|
- Compatible with custom task types
|
|
- Maintains backward compatibility
|
|
- No breaking changes to existing functionality
|
|
|
|
## Estimated Effort
|
|
|
|
- Backend: 4-6 hours
|
|
- Frontend Table: 6-8 hours
|
|
- Column Controls: 2-3 hours
|
|
- Filtering/Sorting: 3-4 hours
|
|
- Integration: 2-3 hours
|
|
- Testing: 3-4 hours
|
|
|
|
**Total**: ~20-28 hours of development time
|