Skip to content
Back to Changelog

Automated changelog | Sep 26 - Oct 3 | 56 hours, 6 working days

Oct 2, 2025 v0.9.12

Automated changelog | Sep 26 - Oct 3 | 56 hours, 6 working days

Generated: January 3, 2025

🚀 Overview

This release contains major architectural improvements across both Flutter and API components, with significant focus on enhanced authentication, robust CineSync transaction system, improved shot list management, and comprehensive database schema updates.


📱 Flutter Application Changes

🔐 Authentication System Refactoring

  • TokenRefreshService Removal: Eliminated dedicated token refresh service in favor of simplified HTTP interceptor approach
  • ApiClient Simplification: Streamlined authentication logic within HTTP client interceptors, reducing complexity and improving reliability
  • Automatic Token Handling: Enhanced automatic token refresh and request retry mechanisms for seamless user experience

🌐 Navigation Service Implementation

  • Centralized Navigation: Introduced NavigationService for consistent routing across the application
  • Dynamic Route Management: Replaced hardcoded GoRouter navigation calls with service-based navigation methods
  • Enhanced User Experience: Improved navigation between script editor, shot lists, and focus views with proper state management

🎬 Shot List Management Enhancements

  • Store Architecture Migration: Transitioned from repository pattern to store-based architecture for better state management
  • Production Day Management: Comprehensive updates to ProductionDayUpdateResult with detailed transaction tracking
  • Deletion Utilities: Enhanced ShotListDeletionUtils with proper production day synchronization and linear list updates
  • Reordering Improvements: Advanced shot list reordering with transaction data capture and conflict resolution
  • Bootstrap Population: Improved initial data loading with proper production list population from linear shot lists

📝 Script Editor Integration

  • Fountain Type Conversion: Enhanced script display widget with proper conversion between fountain type strings and ScenePartType enums
  • Scene Navigation: Improved auto-scroll functionality with fresh key generation for scene headings after content changes
  • Script Content Detection: Better script content validation and display toggle based on actual content presence

🎨 UI/UX Improvements

  • Text Input Enhancements: Replaced CupertinoPicker with TextFormField across dialogs for better keyboard navigation and user control
  • Arrow Key Navigation: Implemented sophisticated arrow key handling with proper timer management for continuous scrolling
  • Color System: Added comprehensive shot list color support with cellColorsIds and rowColorId tracking
  • Theme Consistency: Enhanced theme application across overlays and edit components

🔧 Services and Utilities

  • Shot Editing Service: New dedicated service for shot property updates with proper debouncing and validation
  • Custom Column Support: Enhanced custom column editing with dedicated service integration
  • Mock Data Generation: Improved test data utilities with proper store integration
  • Logging Standardization: Enforced use of centralized Log class throughout the codebase with proper tagging

📊 Data Management

  • Store Integration: Comprehensive migration from repositories to stores for scenes, shots, banners, and shot list items
  • Field Helper Usage: Consistent use of Field helper for database updates with proper type safety
  • Production List Optimization: Enhanced production list operations with targeted day updates and efficient sequence management
  • Linear List Synchronization: Improved synchronization between linear and production shot lists with proper parent-child relationships

🔧 API Backend Changes

🗄️ Database Schema Evolution

  • Entity ID Management: Migrated from auto-generated UUIDs to client-provided UUIDs in BaseEntity for better offline support
  • Shot Entity Expansion: Added comprehensive shot fields including aspectRatio, estimatedTime, sound, vfx, customColumnValues, isHidrated, and cellColorsIds
  • Soft Delete Implementation: Implemented consistent soft delete pattern across all entities for better data preservation
  • Foreign Key Optimization: Added deferred foreign key constraints for ShotListItem parent relationships to support CineSync batch operations

🔄 CineSync Transaction System

  • Raw SQL Operations: Implemented raw SQL for ShotListItem operations to respect deferred constraints during bulk transactions
  • Batch Processing: Enhanced delta service with proper validation for cross-entity operations and referential integrity
  • Document Validation: Added comprehensive validation for ScriptNode creation and updates with proper document existence checks
  • Constraint Management: Improved constraint handling for complex transaction scenarios with proper rollback capabilities

�� GraphQL API Enhancements

  • Input Type Updates: Enhanced all GraphQL input types with client-provided ID fields for better offline synchronization
  • Field Coverage: Added complete field coverage for shots including new properties for advanced shot management
  • Color Support: Integrated color system support with rowColorId and cellColorsIds throughout the schema
  • JSON Field Support: Added GraphQLJSON support for complex data structures in shot and scene entities

🔧 Service Layer Improvements

  • Soft Delete Consistency: Implemented soft delete across all services (BannerService, SceneService, ShotService, etc.)
  • Bootstrap Optimization: Enhanced project bootstrap endpoint to include all entities (scenes, shots, banners, shot list items) for complete state loading
  • Payload Size Management: Increased payload limits to 20MB for handling large GraphQL operations and preventing HTTP 413 errors
  • Service Dependencies: Improved service injection and module organization for better maintainability

🛠️ Infrastructure Updates

  • Migration Management: Added comprehensive database migrations for schema evolution with proper rollback support
  • Development Optimization: Enhanced GraphQL schema file generation with environment-specific behavior
  • Database Configuration: Improved connection pooling and migration execution strategies
  • Performance Tuning: Optimized query execution and constraint handling for better system performance

🔐 Data Integrity

  • Referential Integrity: Enhanced foreign key management with deferred constraints for complex transaction scenarios
  • Cascade Operations: Improved cascade delete behavior with proper soft delete implementation
  • Validation Layers: Added comprehensive validation at service and GraphQL resolver levels
  • Error Handling: Enhanced error messages and proper exception handling for better debugging and user experience

🎯 Key Architectural Improvements

Offline-First Enhancement

  • Client-provided UUIDs enable robust offline operation with guaranteed unique identifiers
  • Enhanced CineSync system handles complex transaction scenarios with proper conflict resolution
  • Improved bootstrap loading provides complete project state for offline-first functionality

Performance Optimization

  • Store-based architecture reduces unnecessary re-renders and improves state management efficiency
  • Targeted production day updates minimize database operations and improve user interface responsiveness
  • Enhanced sequence management with fractional indexing provides smooth drag-and-drop operations

Development Experience

  • Centralized logging with proper tagging improves debugging capabilities
  • Comprehensive error handling and validation provides better development feedback
  • Enhanced mock data generation supports robust testing and development workflows

User Experience

  • Improved navigation flow with proper state preservation and context management
  • Enhanced input controls with better keyboard navigation and accessibility
  • Comprehensive color system provides visual organization and customization options

🔍 Technical Impact Summary

This release represents a significant architectural evolution focused on:

  • Robustness: Enhanced error handling, validation, and transaction management
  • Performance: Optimized data flows, reduced redundancy, and improved state management
  • Maintainability: Cleaner architecture with proper separation of concerns and consistent patterns
  • User Experience: Improved workflows, better visual feedback, and enhanced accessibility
  • Offline Capability: Stronger foundation for offline-first operation with robust synchronization

The changes establish a solid foundation for continued development while significantly improving the reliability and performance of the CineLog application across both client and server components.

Authentication

Log in or sign up

Verify your email to manage your workspaces and subscriptions.