{"releases":[{"filename":"merge-2025-11-29T1500.md","title":"Monthly Recurrence Re-enabled with RRULE Fixes","type":"Feature Release","sourceTarget":"TEST → PROD","timestamp":"2025-11-29T15:00:00Z","relatedItems":[{"ticket":"TIEMPO-250","description":"Phase 4 Complex Cases & Edge Handling - Monthly RRULE implementation"},{"ticket":"TIEMPO-180","description":"Calendar crashes with monthly recurring events (original fix, now fully enabled)"}],"description":"Re-enables monthly recurrence for events with comprehensive fixes for RRULE handling. Monthly events were previously disabled after TIEMPO-180 fixed a crash caused by case sensitivity issues. This release completes the work by fixing validation bugs and re-enabling the feature with proper safeguards. Key changes: - Fixed UNTIL validation regex to accept local time format (no Z suffix) - Fixed monthly BYDAY case sensitivity (uppercase for rrule.js compatibility) - Re-enabled monthly recurrence option in Create Event modal - Added Beta label to indicate feature is newly available - Removed debug console.log statements from WelcomeModal","status":"- Build: ✅ Passed\n- Data Risk: ✅ None (no existing monthly events in database)\n- Regression Risk: ✅ Low (weekly/daily unaffected)\n","impactedAreas":["Create Event Modal - Repeating tab","Event transformation for calendar display","RRULE parsing in transformEvents.js"],"userBenefits":["Organizers can now create monthly recurring events (2nd Saturday, Last Friday patterns)","Both COUNT and UNTIL end date modes work correctly","Cleaner console output (debug logs removed)"],"technicalEnhancements":["RFC 5545 compliant RRULE generation with uppercase day codes","Local time format for DST-aware recurring events","Validation accepts venue local time (no Z suffix required)"],"date":"2025-11-29"},{"filename":"merge-2025-10-18T0200.md","title":"🔄 Merge Summary – PROD – 2025-10-18T0200","type":"Major Release (v1.11.0 → v1.12.7)","sourceTarget":"TEST → PROD","timestamp":"2025-10-18T02:00:00Z","relatedItems":[{"ticket":"TIEMPO-318","description":"Visitor and User Login Tracking Investigation"},{"ticket":"TIEMPO-317","description":"Service Status System Improvements"},{"ticket":"TIEMPO-316","description":"Timezone Abbreviation Display Fixes"},{"ticket":"TIEMPO-314","description":"Login Tracking Timezone Data"},{"ticket":"TIEMPO-313","description":"Visitor Tracking Implementation"},{"ticket":"TIEMPO-312","description":"Map Center & Cloud Default Feature"},{"ticket":"TIEMPO-311","description":"Floating Map Icon Restoration"},{"ticket":null,"description":"Version: 1.12.7"}],"description":"Major feature release implementing comprehensive analytics tracking with multi-source geolocation, Azure Functions migration, enhanced service status monitoring, and Map Center/Cloud Default functionality. This release includes 8 incremental versions (v1.11.0 through v1.12.7) with 60+ commits focused on tracking infrastructure, Azure Functions integration, mobile fixes, and user experience improvements. **Headline Features:** - Multi-source geolocation tracking (Cloudflare, Google, IP API) with distance calculations - Login type distinction (auto-login vs manual login) - Visitor route and hostname tracking for analytics - Azure Functions migration for geo services - Service Status Modal with comprehensive health checks - Map Center & Cloud Default with backend integration - Security patches and mobile experience improvements ---","status":"- Build/Test: ✔ Passed\n- Conflicts: None\n- CRK Confidence: 78% (Medium-High)\n- Core Features Risk: 0% (No changes to calendar read/create/modify)\n- Post-Merge Action: Monitor tracking endpoints, API costs, performance metrics\n---\n","impactedAreas":["src/app/utils/trackingHelper.js (NEW) - Shared geolocation helper","src/app/calendar/layout.js - Visitor tracking enhancements","src/app/contexts/AuthContext.js - Login tracking with loginType","src/app/components/UI/SiteMenuBarUserDrawer.js - Logout tracking","src/app/hooks/useServiceHealth.js - Service status monitoring","src/app/components/DevTools/ServiceStatusModal.js (NEW) - Health check UI","src/app/components/Modals/misc/MapCenterModal.js - Map center management","src/app/contexts/GeoLocationContext.js - Geolocation state management","src/app/hooks/useGeoLocations.js - Geo IP endpoint migration","package.json - Version 1.11.0 → 1.12.7"],"userBenefits":["Visitor activity tracked with detailed route information (distinguish /calendar vs /calendar/boston)","Environment tracking (tangotiempo.com vs test.tangotiempo.com)","Login patterns analyzed (auto-login on page load vs manual button clicks)","Logout events now tracked for complete user journey","New Service Status Modal shows real-time health of all backend services","9 health check indicators (MongoDB, Firebase, Cloudflare, Google APIs, Azure Functions)","Distance comparison between geolocation providers validates data accuracy","Better visibility into system status for troubleshooting","Map Center can be set as personal default (Cloud Default) - TIEMPO-312","Floating map icon button restored for quick access - TIEMPO-311","Location preferences persist across sessions","Improved geolocation accuracy with multiple data sources","Fixed mobile blank screen issues with defensive auth checks","Corrected viewport meta tag for proper mobile rendering","Loading indicators now visible on mobile devices","Better responsive design throughout","Fixed 7 Dependabot vulnerabilities (1 critical, 1 high, 3 medium, 2 low)","Azure Functions localhost calls prevented in production","Improved error handling with graceful degradation","Timezone handling fixes for login tracking - TIEMPO-314"],"technicalEnhancements":["Created shared trackingHelper.js with parallel API fetching (Promise.allSettled)","Integrated Cloudflare API (IP, country, ray ID)","Integrated Google Geolocation API (lat/lng/accuracy)","Integrated IP API /api/geo/ip (full location data)","Haversine distance calculation between Google and IP API coordinates","Added loginType field ('auto' vs 'manual') to distinguish login sources","Visitor tracking captures pathname, hostname, and full URL","New /api/user/logout-track endpoint in Azure Functions","Graceful degradation: Failed APIs return null without breaking tracking","2-second timeouts on all API calls (non-blocking)","Migrated /api/geo/ip from Express backend to Azure Functions","Updated useGeoLocations.js to use NEXT_PUBLIC_AF_URL","Updated useServiceHealth.js endpoint references","Response format maintained for backward compatibility","Fixed React hydration error in Service Status Modal","Prevented infinite render loop in geolocation distance calculation","Added Cloudflare integration for IP detection","Distance comparison between geolocation sources","Replaced 3x3 service status grid with compact icon and modal - TIEMPO-317","Added Google Time Zone API health check","MongoDB endpoint updated to show live data instead of Mock Data","Removed temporary password warning from modal","Domain testing section with health checks","Improved error messages for REQUEST_DENIED API errors","Added LogIn and SignUp buttons to MapCenterModal","Better UX for unauthenticated users accessing map features","Implemented /api/user/login-track endpoint - TIEMPO-313","Fixed timezone data transmission - TIEMPO-314","Tracks timezone and timezoneOffset for local time analysis","Fire-and-forget pattern (non-blocking)","MongoDB health check migrated to Azure Functions","Removed Express backend dependency for health checks","Refactored to fetch user map center from Azure Functions on login","Added Google Reverse Geocoding as 9th health check","Enhanced Geo API health check with full ipapi.co data display","Google Geolocation API health check added to status matrix","Complete Map Center feature with backend integration","Session vs Cloud Default UI labels","Loading indicator improvements for mobile","Location preferences persistence","No Events alert with Map Center adjustment hint","Organizer invitation to contribute events","Venue delete functionality with permission checks","RegionalAdmin role venue menu access","Timezone abbreviation removal from all views - TIEMPO-316","Vercel production setup documentation","JIRA API v3 migration in automation scripts","Playbook documentation updates","Dual logging system: Azure Functions (tracking) + Express Backend (user activities)","Shared geolocation helper ensures consistency across tracking events","Promise.allSettled() pattern for partial API success","Fire-and-forget tracking prevents UI blocking","Default parameter pattern for loginType (safer backward compatibility)","Parallel API calls (2-3 seconds max with timeouts)","Non-blocking tracking (fire-and-forget)","Graceful degradation on API failures","Google API estimated usage: 36k requests/month (within free tier)","Logout UI delay 1-2 seconds (geolocation fetch blocks logout)","Google API key configuration unknown (may result in null values)","Backend schema compatibility unverified (new fields may not persist)","/api/user/logout-track endpoint might not exist in backend yet"],"date":"2025-10-18"},{"filename":"merge-2025-07-15T1003.md","title":"🔄 Merge Summary – PROD – 2025-07-15T1003","type":"Merge","sourceTarget":"TEST → PROD","timestamp":"2025-07-15T10:03:00 PST","relatedItems":[{"ticket":"TIEMPO-176","description":"Prevent cancellation of repeating events in edit mode"},{"ticket":"TIEMPO-182","description":"Create centralized dateTimeUtils module (created)"},{"ticket":"TIEMPO-183","description":"Event image upload to Azure Blob Storage (created)"}],"description":"Production deployment of v1.3.1 with critical timezone fixes and UI improvements. This release resolves timezone display issues that were causing events to appear on incorrect dates, adds category type-ahead search functionality, and improves validation for recurring events. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Monitor production for timezone display accuracy\n---\n","impactedAreas":["src/app/utils/transformEvents.js - UTC to local time conversion","src/app/components/Modals/CreateEvents/CreateEventDetailsBasic.js - Category autocomplete","src/app/components/Modals/CreateEvents/CreateEventDetailsRepeating.js - Date handling fixes","src/app/components/Modals/CreateEvents/CreateEventDetailModal.js - Form validation"],"userBenefits":["**Fixed**: Events now display on the correct date in all timezones","**New**: Category selection with type-ahead search for faster event creation","**Improved**: Better validation prevents invalid recurring event configurations","**Cleaner**: Reduced console logging for better performance"],"technicalEnhancements":["Implemented proper UTC to local time conversion algorithm","Fixed excluded dates to use local midnight preventing day shifts","Corrected RRULE UNTIL format to use local end-of-day","Enhanced Save button validation logic across all event tabs","Removed incomplete sendReminder feature","Improved code maintainability with better date handling patterns"],"date":"2025-07-15"},{"filename":"merge-2025-07-15T1313.md","title":"🔄 Merge Summary – PROD – 2025-07-15T13:13","type":"Promotion","sourceTarget":"TEST → PROD","timestamp":"2025-07-15T17:13:00Z","relatedItems":[{"ticket":"TIEMPO-180","description":"Fix recurring events issues and re-disable monthly recurrence"}],"description":"Promotion of version 1.3.3 to production, which re-disables monthly recurring events and adds clear warning messages to guide users. This release addresses stability concerns with monthly recurrence patterns while maintaining daily and weekly recurring event functionality. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Deploy to PROD environment and monitor recurring event creation\n---\n","impactedAreas":["Event creation modal (monthly recurrence disabled)","Recurring event validation (UPDATE button fix)","Warning messages for disabled features","Event transformation error handling","Version update to 1.3.3"],"userBenefits":["Clear communication about temporarily disabled monthly recurrence","Improved stability for daily and weekly recurring events","Better error handling prevents unexpected failures","UPDATE button now works consistently with SAVE button"],"technicalEnhancements":["Robust error handling for monthly recurring events","Consistent validation between SAVE and UPDATE operations","Warning UI component for feature status communication","Improved user guidance for alternative approaches"],"date":"2025-07-15"},{"filename":"merge-2025-07-15T1452.md","title":"Merge Event: TEST → PROD","type":"Merge","sourceTarget":"","timestamp":"","relatedItems":[],"description":"","status":"","impactedAreas":[],"userBenefits":[],"technicalEnhancements":[],"date":"2025-07-15"},{"filename":"merge-2025-07-15T2003.md","title":"Merge Event: TEST → PROD","type":"Merge","sourceTarget":"TEST → PROD","timestamp":"","relatedItems":[],"description":"","status":"","impactedAreas":[],"userBenefits":[],"technicalEnhancements":[],"date":"2025-07-15"},{"filename":"merge-2025-07-15T2041.md","title":"Merge Event: TEST → PROD","type":"Merge","sourceTarget":"TEST → PROD","timestamp":"","relatedItems":[],"description":"","status":"","impactedAreas":[],"userBenefits":[],"technicalEnhancements":[],"date":"2025-07-15"},{"filename":"merge-2025-07-15T2302.md","title":"🔄 Merge Summary – PROD – 2025-07-15T2302","type":"Merge","sourceTarget":"TEST → PROD","timestamp":"2025-07-15T23:02:00Z","relatedItems":[{"ticket":"TIEMPO-188","description":"iPhone requires double-tap to open calendar event details"},{"ticket":null,"description":"Version: 1.4.3"}],"description":"Emergency fix deployment to resolve critical usability issue on iPhone devices where users had to double-tap calendar events to open the detail modal. This was caused by touch event handlers for swipe navigation interfering with FullCalendar's built-in event click handling. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Monitor for any mobile device issues\n---\n","impactedAreas":["src/app/calendar/page.js (touch event handlers)","package.json (version bump to 1.4.3)"],"userBenefits":["Single-tap now properly opens calendar event details on iPhone/iOS devices","Improved mobile user experience","Swipe navigation still works but doesn't interfere with event interactions"],"technicalEnhancements":["Added checks in touch event handlers to skip processing when user taps on calendar events (.fc-event elements)","Touch handlers return early if the touch target is a calendar event","Allows FullCalendar's native click handling to work properly on mobile devices"],"date":"2025-07-15"},{"filename":"merge-2025-07-15T2328.md","title":"🔄 Merge Summary – PROD – 2025-07-15T2328","type":"Merge","sourceTarget":"TEST → PROD","timestamp":"2025-07-15T23:28:00Z","relatedItems":[{"ticket":"TIEMPO-189","description":"Event descriptions not displaying line breaks properly"},{"ticket":null,"description":"Version: 1.4.4"}],"description":"Bug fix deployment to resolve formatting issue where line breaks (carriage returns) in event descriptions were not displaying properly in the UI. Text was appearing as one continuous line instead of respecting the multi-line formatting entered by organizers. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Monitor event description displays\n---\n","impactedAreas":["src/app/components/Modals/ViewEvents/ViewEventDetailsBasic.js","package.json (version bump to 1.4.4)"],"userBenefits":["Event descriptions now properly display line breaks and paragraphs","Multi-line text formatting is preserved as entered by organizers","Improved readability for event descriptions with multiple paragraphs"],"technicalEnhancements":["Added conversion of newline characters (\\n) to HTML break tags (<br>) before sanitization","Ensures proper rendering of multi-line text in dangerouslySetInnerHTML contexts","Maintains security through DOMPurify sanitization after conversion"],"date":"2025-07-15"},{"filename":"merge-2025-07-14T0553.md","title":"🔄 Merge Summary – PROD – 2025-07-14T0553","type":"Merge","sourceTarget":"TEST → PROD","timestamp":"2025-07-14T05:53:00Z","relatedItems":[{"ticket":"TIEMPO-177","description":"**TIEMPO-177**: Fix recurring events displaying on wrong day due to timezone conversion"},{"ticket":null,"description":"**Version 1.1.2**: Exclude dates fix release"},{"ticket":null,"description":"**Bug Fix**: Exclude dates (exdate) implementation for recurring events"}],"description":"This production release promotes the critical exclude dates functionality for recurring events. The implementation uses FullCalendar's native exdate property with proper time matching to ensure excluded dates are correctly filtered from recurring event series. This fixes the long-standing issue where excluded dates were not properly hidden from the calendar display. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Monitor production for exclude dates functionality\n---\n","impactedAreas":["`src/app/utils/transformEvents.js` - Added exdate support with time matching","`src/app/calendar/page.js` - Removed CSS hiding hack, added recurring indicators","`src/app/components/Modals/CreateEvents/CreateEventDetailsRepeating.js` - Enhanced exclude dates UI","`package.json` - Version bumped to 1.1.2"],"userBenefits":["Recurring events now properly exclude specific dates from the series","More reliable calendar display without ghost events on excluded dates","Better timezone handling for recurring events","Enhanced recurring event management interface"],"technicalEnhancements":["Implemented proper FullCalendar exdate support with time matching","Replaced ineffective CSS display:none workaround with native filtering","Improved timezone handling by stripping Z suffix from UTC dates","Added visual indicators for recurring events (🔄 icon)","Better RRULE parsing and validation"],"date":"2025-07-14"},{"filename":"merge-2025-07-04T0533.md","title":"🔄 Merge Summary – PROD – 2025-07-04T05:33","type":"Production Release","sourceTarget":"TEST → PROD","timestamp":"2025-07-04T05:33:00Z","relatedItems":[{"ticket":"TIEMPO-170","description":"Enable RRULE Recurring Events"},{"ticket":null,"description":"Bug Fix: Dynamic version display in header"}],"description":"Production release 1.1.1 - Bug fix release that includes the RRULE recurring events feature and fixes the dynamic version display in the site header. The version now automatically updates from package.json instead of being hardcoded. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None (using force push due to divergent history)  \n- Post-Merge Action: Deploy to PROD environment\n---\n","impactedAreas":["Recurring event creation and display","Site header version display","Event transformation for RRULE support","View event details for recurring events"],"userBenefits":["Create recurring events (daily, weekly, monthly)","Automatic version updates in header","Clear display of recurrence patterns","Support for both RO and RA roles"],"technicalEnhancements":["Dynamic version reading from package.json","FullCalendar v6 RRULE compatibility","Enhanced recurring event display","Bug fixes for version display"],"date":"2025-07-04"},{"filename":"merge-2025-06-27T0139.md","title":"🔄 Merge Summary – PROD – 2025-06-27T0139","type":"Merge","sourceTarget":"TEST → PROD","timestamp":"2025-06-27T01:39:00Z","relatedItems":[{"ticket":"TIEMPO-149","description":"Event Creation Permissions and Field Mapping"},{"ticket":"TIEMPO-147","description":"Apple Sign-In User Name Capture"},{"ticket":"TIEMPO-146","description":"Release Notes Viewer Implementation"},{"ticket":"TIEMPO-145","description":"IP-Based Geolocation Removal"},{"ticket":"TIEMPO-144","description":"Authentication UI Updates"},{"ticket":"TIEMPO-141","description":"Migrated Organizer Status Page"},{"ticket":"TIEMPO-140","description":"About Page and Debug Menu Updates"}],"description":"This production deployment includes significant enhancements to authentication methods, event management permissions, and user interface improvements. Key features include Apple Sign-In integration, a new release notes viewer, improved migrated organizer management, and various bug fixes that enhance system stability and user experience. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Monitor Apple Sign-In adoption and gather user feedback\n---\n","impactedAreas":[],"userBenefits":["**Apple Sign-In (Beta)**: Users can now authenticate using their Apple ID for improved security and convenience","**Release Notes**: Easy access to application updates and new features directly within the app","**Improved Event Creation**: RegionalAdmins can now properly create events with correct field mappings","**Enhanced Organizer Management**: Better visibility and management of migrated organizers with mobile support","**Cleaner Authentication UI**: Removed beta warning from email login and updated Facebook status"],"technicalEnhancements":["**Field Name Consistency**: Fixed music_type field mapping in event creation to match API expectations","**Apple Sign-In Name Capture**: Properly captures user names during initial Apple authorization","**Repository Cleanup**: Removed unnecessary AI-Guild backup directories","**Error Handling**: Fixed runtime errors and improved error logging for debugging","**Mobile Responsiveness**: Enhanced MigratedOrganizer page with mobile-friendly layout","**Permission System**: Improved RegionalAdmin permissions for event management"],"date":"2025-06-27"},{"filename":"merge-2025-06-27T1819.md","title":"🔄 Merge Summary – PROD – 2025-06-27T1819","type":"Merge","sourceTarget":"origin/TEST → origin/PROD","timestamp":"2025-06-27T18:19:00Z","relatedItems":[{"ticket":"TIEMPO-156","description":"Fix email sign-up parameter mismatch causing auth/admin-restricted-operation error"}],"description":"This production deployment includes a critical bug fix for the email/password sign-up functionality. The fix resolves a parameter mismatch that was preventing new users from creating accounts using email/password authentication. Version bumped to 1.0.44. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Monitor production for successful email sign-ups\n---\n","impactedAreas":["`/src/app/auth/signup/page.js` - Fixed parameter passing in handleEmailSignUp function","`/package.json` - Version bumped to 1.0.44"],"userBenefits":["Email/password sign-up functionality restored","New users can successfully create accounts","Improved reliability of authentication system"],"technicalEnhancements":["Corrected function call to match AuthContext API signature","Resolved Firebase auth/admin-restricted-operation error","No breaking changes to existing functionality"],"date":"2025-06-27"},{"filename":"merge-2025-06-26T1903.md","title":"🔄 Merge Summary – PROD – 2025-06-26T1903","type":"Merge","sourceTarget":"TEST → PROD","timestamp":"2025-06-26T19:03:00-0400","relatedItems":[{"ticket":"TIEMPO-145","description":"Remove IP-based geolocation logic"},{"ticket":null,"description":"Apple Sign-In implementation (Beta)"},{"ticket":null,"description":"AI-Guild-backup cleanup from repository"}],"description":"This merge brings Apple Sign-In authentication to production, along with the removal of IP-based geolocation logic that was causing multiple fetchEvents calls. The IP geolocation has been simplified to always use Boston as the default location, preparing for future CloudFlare or Fastly-based location services. Additionally, removes large AI-Guild-backup directories that were accidentally committed to the repository. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Monitor Apple Sign-In in production\n---\n","impactedAreas":["src/app/contexts/GeoLocationContext.js","src/app/contexts/AuthContext.js","src/app/utils/firebase.js","src/app/auth/login/page.js","src/app/auth/signup/page.js","src/app/components/AppleIcon.js","docs/APPLE_SIGNIN_SETUP.md","Multiple AI-Guild-backup directories (removed)"],"userBenefits":["New Apple Sign-In option available (Beta)","More stable location detection without IP-based jumping","Improved authentication page design with logo-based buttons","Clear SIGN IN/SIGN UP distinction","Faster repository operations with backup files removed"],"technicalEnhancements":["Simplified GeoLocationContext from ~250 to ~50 lines","Removed axios dependency from GeoLocationContext","Added comprehensive Apple Sign-In error handling","Fixed Firebase/Apple Service ID configuration","Reduced repository size by removing backup directories"],"date":"2025-06-26"},{"filename":"merge-2025-06-20T1530.md","title":"🔄 Merge Summary – PROD – 2025-06-20T15:30","type":"Merge","sourceTarget":"TEST → PROD","timestamp":"2025-06-20T15:30:00Z","relatedItems":[{"ticket":"TIEMPO-132","description":"Add BETA warnings to Email and Facebook authentication"},{"ticket":"TIEMPO-125","description":"Fix editEvents - add shortTitle support"},{"ticket":"TIEMPO-126","description":"Improve validation UX"}],"description":"This merge brings critical authentication warnings and UI improvements to production. The BETA warnings for Email and Facebook authentication have been enhanced with red text styling for \"Don't Use\" to provide stronger visual deterrence during the beta testing phase. Additionally, includes fixes for event editing functionality and validation improvements. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Clean up Claude feature branches\n---\n","impactedAreas":["src/app/auth/login/page.js","src/app/auth/signup/page.js","src/app/components/Modals/CreateEvents/CreateEventDetailModal.js"],"userBenefits":["Clear visual warnings on beta authentication features with red \"Don't Use\" text","Improved event editing with shortTitle field support","Better form validation with disabled save button until all required fields are filled","Enhanced user experience with clearer required field indicators"],"technicalEnhancements":["Red color styling applied to \"Don't Use\" text in BETA warnings","Line breaks added to Facebook button text for better readability","Consistent BETA warning implementation across login and signup pages","Improved error handling in event editing modal"],"date":"2025-06-20"},{"filename":"merge-2025-06-18T1848.md","title":"🔄 Merge Summary – PROD – 2025-06-18T1848","type":"Production Release","sourceTarget":"TEST → PROD","timestamp":"2025-06-18T18:48:00Z","relatedItems":[{"ticket":"TIEMPO-126","description":"**TIEMPO-126**: Dialog box for user minimums on SAVE in create/edit Events"}],"description":"Production release of the event creation validation feature. This enhancement ensures event organizers provide all essential information when creating or editing events, improving data quality and user experience across the platform. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Monitor event creation success rates\n---\n","impactedAreas":["Event creation workflow","Event editing functionality","Form validation system"],"userBenefits":["**Guided Event Creation**: Clear indication of required fields prevents submission errors","**Better Event Quality**: All events will have complete information (title, dates, venue, description)","**Image Recommendations**: Gentle reminder to add images for better event visibility","**Improved UX**: No more confusion about why event creation fails"],"technicalEnhancements":["Client-side validation reduces server load","Consistent validation patterns for future form development","Reusable dialog component for other validation needs","Maintains backward compatibility with existing event data"],"date":"2025-06-18"},{"filename":"merge-2025-06-18T1859.md","title":"🔄 Merge Summary – PROD – 2025-06-18T1859","type":"Production Release","sourceTarget":"TEST → PROD","timestamp":"2025-06-18T18:59:00Z","relatedItems":[{"ticket":"TIEMPO-126","description":"**TIEMPO-126**: Complete validation enhancement for event creation"}],"description":"Production release of the complete event validation feature. This update ensures all events have complete information by requiring 7 essential fields and providing real-time feedback through an intelligently disabled Save button. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Monitor event creation completion rates\n---\n","impactedAreas":["Event creation workflow - Enhanced validation","Save button behavior - Dynamic enable/disable","Form field requirements - Added Category as required"],"userBenefits":["**Smarter Save Button**: Disabled until all 7 required fields are complete","**Complete Events**: Every event will have Title, Short Title, Dates, Category, Venue, and Description","**Clear Requirements**: Visual indicators (*) on all required fields","**No Guesswork**: Users know exactly what's needed before they can save","**Better Data Quality**: All events will have complete, searchable information"],"technicalEnhancements":["Real-time form validation prevents incomplete submissions","Required fields: Title, Short Title, Start/End Dates, Category, Venue, Description","Image remains optional but recommended","Validation dialog as fallback if button state is bypassed"],"date":"2025-06-18"},{"filename":"merge-2025-06-14T0611.md","title":"PROD Merge Event - 2025-06-14T0611","type":"Merge","sourceTarget":"","timestamp":"","relatedItems":[],"description":"","status":"","impactedAreas":[],"userBenefits":[],"technicalEnhancements":[],"date":"2025-06-14"},{"filename":"merge-2025-06-13T0540.md","title":"🔄 Merge Summary – PROD – 2025-06-13T0540","type":"Merge","sourceTarget":"TEST → PROD","timestamp":"2025-06-13T05:40:00-04:00","relatedItems":[],"description":"This merge promotes critical bug fixes from TEST to PROD, including: - Fixed infinite update loop that was preventing the calendar from loading - Resolved Regional Organizer event creation validation errors - Improved time formatting and display across the application - Added timezone warnings to manage user expectations - Enhanced mobile responsiveness throughout the application ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Monitor production deployment, verify all fixes are working\n---\n","impactedAreas":[],"userBenefits":[],"technicalEnhancements":[],"date":"2025-06-13"},{"filename":"merge-2025-06-13T1923.md","title":"Merge Event - TEST to PROD Promotion (v1.0.38)","type":"Merge","sourceTarget":"","timestamp":"","relatedItems":[],"description":"","status":"","impactedAreas":[],"userBenefits":[],"technicalEnhancements":[],"date":"2025-06-13"},{"filename":"merge-2025-06-12T1741.md","title":"🔄 Merge Summary – PROD – 2025-06-12T1741","type":"Merge","sourceTarget":"origin/TEST → origin/PROD","timestamp":"2025-06-12T17:41:00-04:00","relatedItems":[{"ticket":"TIEMPO-62","description":"**Issues:** TIEMPO-62"},{"ticket":null,"description":"**Features:** Self-Introspective Analysis Role, JIRA Tools Enhancement"},{"ticket":null,"description":"**Epic(s):** N/A"}],"description":"Production deployment of geo-diagnostic tools accessibility for system administrators, enhanced AI Guild capabilities with Self-Introspective Analysis role, and improved JIRA integration reliability. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: None required\n---\n","impactedAreas":["`src/app/components/UI/SidebarDrawer.js` - Geo-Diagnostics menu item","`public/AI-Guild/STARTUP/Roles.md` - Self-Introspective Analysis role","`public/AI-Guild/Scripts/jira-tools/jira-create-classified.sh` - JIRA script fixes"],"userBenefits":["System administrators have direct access to geo-diagnostic tools","Enhanced development workflow efficiency","Improved reliability of development tools"],"technicalEnhancements":["Production-ready role-based UI components","Extended AI Guild capabilities","Robust command-line tool integration"],"date":"2025-06-12"},{"filename":"merge-2025-06-12T2015.md","title":"🔄 Merge Summary – PROD – 2025-06-12T2015","type":"Merge","sourceTarget":"origin/TEST → origin/PROD","timestamp":"2025-06-12T20:15:00-04:00","relatedItems":[{"ticket":"TIEMPO-69","description":"**Issues:** TIEMPO-69"},{"ticket":null,"description":"**Features:** Mobile Responsiveness Enhancement"},{"ticket":null,"description":"**Epic(s):** N/A"}],"description":"Production deployment of mobile responsiveness fixes for administrative tools, ensuring system administrators can effectively use geo-diagnostic and debug features on mobile devices. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: None required\n---\n","impactedAreas":["Administrative tool mobile accessibility","Debug menu mobile interface","Geo-diagnostics page navigation"],"userBenefits":["Full mobile support for system administration tools","Improved accessibility for on-the-go diagnostics","Consistent user experience across all devices"],"technicalEnhancements":["Production-ready responsive components","Mobile-first navigation patterns","Optimized for all screen sizes"],"date":"2025-06-12"},{"filename":"merge-2025-06-11T1831.md","title":"🔄 Merge Summary – PROD – 2025-06-11T1831","type":"Merge","sourceTarget":"TEST → PROD","timestamp":"2025-06-11T18:31:00-04:00","relatedItems":[{"ticket":"TIEMPO-60","description":"**Issues:** TIEMPO-60 (Mobile Modal Headers Missing)"},{"ticket":null,"description":"**Features:** None"},{"ticket":null,"description":"**Epic(s):** None"}],"description":"This merge promotes the mobile-responsive modal header fixes from TEST to PRODUCTION. The fix ensures that modal headers, including the close button (X), are properly visible on mobile devices and not just in desktop browser responsive mode. ---","status":"- Build/Test: ✔ Passed  \n- Conflicts: None  \n- Post-Merge Action: Monitor production deployment via Vercel\n---\n","impactedAreas":["ViewEventDetailModal.js - Implemented mobile-responsive modal with ModalHeader component","ModalHeader.js - Reusable mobile-responsive header component for all modals","SystemAdminModal.js - Applied ModalHeader pattern","UserSettingsModal.js - Applied ModalHeader pattern","VenueModal.js - Applied ModalHeader pattern","FAQModal.js - Applied ModalHeader pattern","PrivacyPolicyModal.js - Applied ModalHeader pattern","CreateEventDetailModal.js - Applied ModalHeader pattern"],"userBenefits":["Mobile users can now properly close modal dialogs using the X button","Consistent modal header experience across all devices","Improved mobile usability for event viewing and editing","Better accessibility on iOS and Android devices"],"technicalEnhancements":["Implemented responsive ModalHeader component with Material-UI AppBar","Added mobile-specific viewport handling with safe area insets","Standardized modal styling across all modal components","Improved tab scrolling on mobile devices with scrollable tabs"],"date":"2025-06-11"},{"filename":"merge-2025-01-16-timezone-fix.md","title":"Production Merge - Timezone Fix","type":"Merge","sourceTarget":"","timestamp":"","relatedItems":[],"description":"","status":"","impactedAreas":[],"userBenefits":[],"technicalEnhancements":[],"date":"2025-01-16"}]}