17 KiB
Missing Features TODO List
Overview
Based on the comprehensive analysis of the legacy Paradox system, this document outlines all features present in the original system but missing from the current FastAPI implementation. Items are prioritized by business impact and implementation complexity.
HIGH PRIORITY - Core Business Features
🔴 1. Document Assembly System
Legacy Feature: Sophisticated legal document generation with WordPerfect integration
Current Status: ✅ COMPLETED
Required Components:
1.1 Document Template Management
- Create
DocumentTemplatemodel- Template name, description, file path
- Category/area of law classification
- Status (active/inactive)
- Version tracking
- Template upload and storage system
- Template preview capabilities
- Template search and filtering
1.2 Template Keyword/Index System
- Create
TemplateKeywordmodel for searchable tags - Keyword management interface
- Advanced template search by keywords
- Template categorization system
1.3 Data Merge Engine
- Variable extraction from current data context
- Merge field mapping system
- Template variable substitution engine
- Support for multiple output formats (PDF, DOCX)
1.4 Form Selection Interface
- Multi-template selection UI
- Template preview and description display
- Batch document generation (planned for future iteration)
- Generated document management (planned for future iteration)
API Endpoints Needed:
POST /api/templates/upload
GET /api/templates/search
POST /api/templates/{id}/merge
GET /api/templates/{id}/preview
POST /api/documents/generate-batch
1.5 Storage and Upload (DOCX/PDF)
- Accept
.docx(mergeable) and.pdf(static/stampable) uploads - Store originals in object storage (S3/MinIO) with server-side encryption
- Persist metadata: filename, MIME type, byte size, checksum (SHA-256), uploader, created_at
- Virus scan and file-type sniffing (MIME > extension) (security enhancement for future)
- Max size and extension allowlist validation
- Optional tenant-aware storage prefixing (by environment/firm)
1.6 Template Versioning
- Create
DocumentTemplateandDocumentTemplateVersionmodelsDocumentTemplate: name, description, category, active, current_version_idDocumentTemplateVersion: template_id, semantic version, storage_path, mime_type, checksum, changelog, created_by, created_at, is_approved
- Upload new versions without breaking existing merges
- Ability to pin a version for a batch/job
- Approval workflow for promoting a draft version to current
1.7 Merge Engine (uses FormVariable/ReportVariable)
- Variable syntax:
{{ variable_identifier }}inside.docxtemplates - Resolution order (short-circuit on first hit):
- Explicit context passed by API (e.g., file_no, customer, logged_in_user)
FormVariableby identifier → resolve via a safe, predefined repository function mapped fromqueryReportVariableby identifier → same safe resolution- Built-ins/utilities (dates, formatting helpers)
- Missing variable strategies: leave token, empty string, or raise warning (configurable)
- Rendering engine: restricted Jinja2-like context with
docxtplfor.docx - Output formats:
.docx(native) and.pdf(convert via headless LibreOffice) (PDF conversion for future iteration) - Robust error reporting: unresolved variables list, stack traces (server logs), user-friendly message
- Auditing: record variables resolved and their sources (context vs
FormVariable/ReportVariable)
1.8 Batch Generation
- Async queue jobs for batch merges (Celery/RQ) with progress tracking (future iteration)
- Idempotency keys to avoid duplicate batches (future iteration)
- Per-item success/failure reporting; partial retry support (future iteration)
- Output bundling: store each generated document; optional ZIP download of the set (future iteration)
- Throttling and concurrency limits (future iteration)
- Audit trail: who initiated, when, template/version used, filters applied (future iteration)
1.9 UI for Templates, Keywords, Previews
- Templates list/detail with version history and diff of changelog
- Upload new version UI with changelog and approval checkbox
- Keyword/tag management (create/read/update/delete) and filter by tags/category
- Variable inspector: show
{{ }}tokens discovered in the template and their resolution source - Preview with sample data (single-record merge); show unresolved variables warning
- Batch generation wizard: choose template/version, select scope (files/customers), review count and estimated time, run asynchronously (future iteration)
1.10 Additional API Endpoints
✅ GET /api/templates/{id}
✅ PUT /api/templates/{id}
✅ POST /api/templates/{id}/versions # upload new version
✅ GET /api/templates/{id}/versions # list versions
✅ PUT /api/templates/{id}/versions/{vid} # approve/pin version
✅ GET /api/templates/{id}/variables # introspect template tokens
✅ POST /api/templates/{id}/preview # preview merge with sample/context
⏳ POST /api/documents/jobs # start batch job (future iteration)
⏳ GET /api/documents/jobs/{job_id} # job status/progress (future iteration)
⏳ GET /api/documents/jobs/{job_id}/result # download bundle (ZIP) (future iteration)
✅ POST /api/templates/{id}/keywords # add/remove keywords
1.11 Acceptance Criteria
- Upload
.docxtemplate, add keywords, create v1.0.0, preview succeeds with sample data - Merge uses
FormVariable/ReportVariablewhen identifiers match tokens - Generate a batch of N files into PDFs; job completes with progress and downloadable ZIP (future iteration)
- Version pinning respected; publishing new version does not alter prior batch outcomes
- All actions logged with user and timestamp; unresolved variables surfaced in UI
🔴 2. QDRO (Pension Division) Module
Legacy Feature: Specialized module for Qualified Domestic Relations Orders
Current Status: ✅ COMPLETED
Required Components:
2.1 QDRO Data Model
- Create
QDROmodel- File number reference
- Version tracking
- Plan information (name, type, administrator)
- Participant details (employee, spouse/ex-spouse)
- Division methodology (percentage, dollar amount, etc.)
- Effective dates and conditions
- Plan information database
- QDRO version management
2.2 QDRO-Specific Forms
- QDRO data entry interface
- Plan information management
- Participant role management
- Division calculation tools
2.3 QDRO Document Generation
- QDRO-specific templates
- Integration with document assembly system
- Version control for QDRO revisions
- Court approval tracking
API Endpoints Needed:
✅ POST /api/qdros
✅ GET /api/qdros/{file_no}
✅ PUT /api/qdros/{id}
✅ POST /api/qdros/{id}/generate-document
✅ GET /api/qdros/{id}/versions
✅ POST /api/plan-info
🔴 3. Advanced Billing & Statement Generation
Legacy Feature: Automated billing statement generation with trust account management
Current Status: 🟡 IN PROGRESS (basic transactions exist, working on statement generation)
Missing Components:
3.1 Statement Generation Engine
- Create billing statement templates
- Automated statement generation by file/client
- Customizable statement footers by file status
- Statement preview and approval workflow
- Batch statement generation
3.2 Enhanced Trust Account Management
- Extend trust account transaction types
- Trust account balance tracking per file
- IOLTA compliance reporting
- Trust-to-fee transfer automation
- Trust account reconciliation tools
3.3 Billing Workflow Management
- Billed/unbilled transaction status tracking
- Bulk billing status updates
- Statement approval and locking
- Payment application workflow
- Account aging reports
3.4 Advanced Financial Reports
- Account balance summaries by employee
- Account aging reports
- Trust account activity reports
- Revenue reports by area of law
- Time utilization reports
API Endpoints Needed:
POST /api/billing/statements/generate
GET /api/billing/statements/{file_no}
POST /api/billing/statements/batch
PUT /api/financial/transactions/bulk-bill
GET /api/reports/trust-account
GET /api/reports/account-aging
MEDIUM PRIORITY - Productivity Features
🟡 4. Integrated Time Tracking
Legacy Feature: Built-in timer with start/stop functionality
Current Status: ❌ Not implemented
Required Components:
4.1 Timer System
- Real-time timer with start/stop/pause
- Timer state persistence across sessions
- Multiple concurrent timers by file/task
- Timer integration with transaction entry
4.2 Time Entry Automation
- Auto-populate time entries from timer
- Default rate assignment by employee
- Automatic quantity calculation
- Timer history and reporting
Frontend Components:
TimerWidget
├── Timer display (HH:MM:SS)
├── Start/Stop/Pause controls
├── File/task selection
└── Quick time entry creation
API Endpoints Needed:
POST /api/timers/start
POST /api/timers/{id}/stop
GET /api/timers/active
POST /api/timers/{id}/create-entry
🟡 5. Enhanced File Management
Legacy Feature: Advanced file operations and status management
Current Status: ⚠️ Basic file management exists
Missing Components:
5.1 File Closure Automation
- Automatic file closure workflow
- Outstanding balance payment entry creation
- File closure validation and confirmations
- File reopening capabilities
5.2 File Status Workflow
- Enhanced file status definitions
- Status-based business rule enforcement
- Automatic status transitions
- Status history tracking
5.3 File Organization
- Archive file management
- Bulk file status updates
- File transfer between attorneys
- File merge capabilities
API Endpoints Needed:
POST /api/files/{id}/close
POST /api/files/{id}/reopen
POST /api/files/bulk-status-update
POST /api/files/{id}/transfer
🟡 6. Advanced Printer Management
Legacy Feature: Sophisticated printer configuration and report formatting
Current Status: ❌ Not implemented
Required Components:
6.1 Printer Configuration
- Printer setup database
- Escape sequence management
- Default printer selection
- Report-specific printer settings
6.2 Report Output Management
- Multiple output destinations (printer/screen/file)
- Print preview functionality
- Batch printing capabilities
- Print queue management
Note: Modern web applications typically rely on browser printing, but for a legal office, direct printer control might still be valuable.
LOW PRIORITY - Nice-to-Have Features
🟢 7. Calendar/Appointment System
Legacy Feature: Calendar management with appointment archival
Current Status: ❌ Not implemented
Required Components:
7.1 Calendar Management
- Create
CalendarandAppointmentmodels - Calendar views (day/week/month)
- Appointment scheduling and management
- Conflict detection and resolution
7.2 Integration Features
- File-related appointment linking
- Court date tracking
- Deadline management
- Automatic archival of old appointments
🟢 8. Enhanced Lookup Table Management
Legacy Feature: Comprehensive lookup table administration
Current Status: ⚠️ Basic lookup management exists
Missing Components:
8.1 Advanced Lookup Management
- Dynamic lookup table creation
- Lookup table relationships
- Import/export of lookup data
- Lookup table versioning
8.2 Business Rule Configuration
- Configurable validation rules
- Dynamic field requirements
- Custom calculation formulas
- Workflow automation rules
🟢 9. Enhanced Search Capabilities
Legacy Feature: Complex multi-criteria search dialogs
Current Status: ✅ Good search exists, but could be enhanced
Potential Improvements:
9.1 Advanced Search Features
- Saved search templates
- Complex boolean search operators
- Search history and favorites
- Export search results to various formats
9.2 Search Performance
- Search result caching
- Async search for large datasets
- Search analytics and optimization
- Full-text search across documents
SYSTEM ARCHITECTURE IMPROVEMENTS
🔵 10. Workflow Engine
Legacy Feature: Implicit workflow through business rules
Current Status: ❌ Not implemented
Potential Implementation:
10.1 Workflow Definition
- Create workflow definition system
- State machine implementation
- Conditional workflow paths
- Workflow versioning
10.2 Process Automation
- Automatic task assignment
- Email notifications and reminders
- Document generation triggers
- Status update automation
🔵 11. Audit and Compliance
Legacy Feature: Basic data integrity checks
Current Status: ⚠️ Basic audit logging exists
Enhanced Features:
11.1 Comprehensive Audit Trail
- Detailed change tracking
- User action logging
- Data access monitoring
- Compliance reporting
11.2 Legal Compliance
- Client confidentiality controls
- Data retention policies
- Bar association compliance reporting
- Trust account regulatory compliance
🔵 12. Integration Platform
Legacy Feature: WordPerfect and DOS integration
Current Status: ❌ No external integrations
Modern Integrations:
12.1 Office Suite Integration
- Microsoft Office integration
- Google Workspace integration
- PDF generation and manipulation
- Email integration (Outlook/Gmail)
12.2 Legal Software Integration
- Court filing systems
- Legal research platforms (Westlaw/Lexis)
- Accounting software integration
- Case management platforms
IMPLEMENTATION ROADMAP
Phase 1: Core Business Features (3-6 months)
- Document Assembly System
- QDRO Module
- Advanced Billing & Statement Generation
Phase 2: Productivity Features (2-4 months)
- Integrated Time Tracking
- Enhanced File Management
- Advanced Printer Management
Phase 3: System Enhancements (2-3 months)
- Calendar/Appointment System
- Enhanced Lookup Management
- Workflow Engine
Phase 4: Integration and Compliance (1-2 months)
- Audit and Compliance
- Integration Platform
- Performance Optimization
TECHNICAL CONSIDERATIONS
Database Schema Changes Required
- New tables:
document_templates,template_keywords,qdros,plan_info,timers,workflows - Extended tables: Enhanced
financial_transactions,files,customers - Audit tables: Comprehensive change tracking
API Architecture Extensions
- Document generation microservice
- Timer/time tracking service
- Workflow engine service
- Notification service
Frontend Architecture
- Document preview components
- Timer widgets
- Advanced form builders
- Report generation interfaces
Infrastructure Requirements
- Document storage (S3/MinIO)
- Background job processing (Celery/RQ)
- Real-time updates (WebSocket)
- Print server integration (if required)
SUCCESS METRICS
Business Impact
- Reduction in document preparation time
- Improved billing accuracy and speed
- Enhanced client service delivery
- Compliance with legal practice standards
Technical Performance
- Document generation time < 5 seconds
- Search response time < 500ms
- 99.9% system uptime
- Zero data loss incidents
User Adoption
- 100% user migration from legacy system
- Reduced training time for new users
- Positive user satisfaction scores
- Increased productivity metrics
ESTIMATED EFFORT
Development Time (Person-Months)
- High Priority Features: 8-12 months
- Medium Priority Features: 4-6 months
- Low Priority Features: 3-4 months
- System Architecture: 2-3 months
Total Estimated Effort: 17-25 person-months
Team Recommendations
- 1 Full-stack Developer (lead)
- 1 Backend Developer (APIs/database)
- 1 Frontend Developer (UI/UX)
- 1 DevOps Engineer (part-time)
- 1 Legal Domain Expert (consultant)
This TODO list should be regularly updated as features are implemented and new requirements are discovered.