Change Log
ติดตามสถานะความเคลื่อนไหวล่าสุด (v5.5.66)
#dev Back to Home- Latest system optimizations and identity bridging.
- STABILITY: Enforced 'Split Shield' pattern globally across all modules (api.ts, usePlayerStore, Sidebar, Admin Modals)
- FIX: Resolved recurring 'g.split is not a function' TypeError on Remote page by hardening all string split operations
- RELIABILITY: Updated safeSplit utility with even stricter type checking and error boundaries
- VERSION: Synced build hash and versioning for deployment verification
- RELIABILITY: Implemented Lifetime Membership Shield to prevent automatic downgrades
- FIX: Unified membership schema across Admin and Omise payment systems
- PERFORMANCE: Upgraded Admin Search with Smart Query (Email/UID detection) to reduce reads
- DATA: Prevented membership data loss by migrating to dot-notation updates
- STABILITY: Implemented 'Split Shield' pattern across entire codebase
- FIX: Systematically replaced direct .split() with safeSplit to prevent TypeError Crashes
- RELIABILITY: Hardened Auth Store, Sidebar, User Service, and API Headers
- TV: Improved QR scanning reliability by hardening room parameter parsing
- FEATURE: Implemented Quota Guardian in firebase-admin.ts
- RELIABILITY: Added proactive Code 8 (Quota Exceeded) detection and reporting
- INTEGRATION: Automatic LINE Push notification to Admin on Firestore exhaustion
- MONITORING: Integrated handler into Sync Users, Cleanup, and Expiry Check APIs
- STABILITY: Optimized Firestore usage (Admin Users, Sidebar, TV Heartbeat)
- RELIABILITY: Migrated to CountFromServer and Pagination to reduce reads by 90%
- PERFORMANCE: Relaxed TV heartbeat frequency from 1s to 5s
- Feature: Implemented automatic userId filtering on the Payments page
- UX: Updated User Modal links to pre-filter order history by specific member
- Reliability: Added search state persistence for Admin orders dashboard
- Fix: Removed hardcoded v4.9.98 string from Admin User Modal
- Reliability: Unified VERSION_LABEL across the entire administrative interface
- Performance: Optimized pending order detection in user management
- Feature: Added Quick Approval widget in Admin User Modal
- UX: Enabled one-click package approval and LINE notification from the User List
- Integration: Automatically cleans up pending orders in Payments page when approved via User Modal
- Reliability: Reused existing paymentService.approvePayment for 100% notification parity
- Security: Disabled LINE Login to resolve production authentication issues
- Feature: Retained LINE Account Linking for billing and notifications
- Stability: Simplified /api/auth/line-token to focus on verification only
- Fix: Moved LINE identity sync logic to client-side for better reliability
- Reliability: Added support for file-based Firebase Admin credentials (serviceAccountKey.json)
- Fix: Improved private key parsing for shared hosting environments
- Stability: Resolved Invalid JWT Signature error on Plesk
- Feature: Enabled individual song playback and selection from Playlist Detail Modal
- UX: Added tactile feedback (active-scale) to playlist song items
- Reliability: Integrated robust addToQueue mapping for playlist items
- Revert: Removed 'Save to Playlist' from Sidebar and Queue as requested
- Fix: Improved Playlist Creation logic with data sanitization
- Reliability: Added loading state and duplicate prevention in playlist modal
- Bugfix: Resolved issue where Playlist Modal couldn't be reopened for the same song
- Logic: Added onClose propagation to sync state when clicking outside the modal
- FIX: Resolved ReferenceError/TypeError (g.split) on Remote page by correctly importing VERSION_LABEL
- STABILITY: Hardened room query parameter handling to prevent crashes when accessed without a room code
- SYNC: Verified cross-device version labeling for 100% UI consistency