diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md
index 4da39a97..04f8b792 100644
--- a/RELEASE_NOTES.md
+++ b/RELEASE_NOTES.md
@@ -1,6 +1,57 @@
# Feature Release
+### **(v0.229.060)**
+
+#### Bug Fixes
+
+* **Chat Page Top Navigation Left Sidebar Fix**
+ * Fixed positioning and layout issues when using top navigation mode where the chat page left-hand menu was overlapping with the top navigation bar.
+ * Created a new short sidebar template (`_sidebar_short_nav.html`) optimized for top navigation layout without brand/logo area.
+ * Modified chat page layout to hide built-in left pane when top nav is enabled, preventing redundant navigation elements.
+ * Implemented proper positioning calculations to account for top navigation bar height with and without classification banner.
+ * (Ref: `_sidebar_short_nav.html`, `base.html`, `chats.html`, conditional template inclusion, layout positioning fixes)
+
+### **(v0.229.058)**
+
+#### New Features
+
+* **Admin Left-Hand Navigation Enhancement**
+ * Introduced an innovative dual-navigation approach for admin settings, providing both traditional top-nav tabs and a modern left-hand hierarchical navigation system.
+ * **Key Features**: Conditional navigation that automatically detects layout preference, hierarchical structure with two-level navigation (tabs → sections), smart state management for active states and submenus.
+ * **Comprehensive Organization**: All admin tabs now include organized sub-sections with proper section targeting for enhanced navigation.
+ * **Benefits**: Matches conversation navigation patterns users already know, provides better organization for complex admin settings, enables bookmarkable deep links to specific sections.
+ * (Ref: `admin_settings.html`, `_sidebar_nav.html`, `admin_sidebar_nav.js`)
+
+* **Time-Based Logging Turnoff Feature**
+ * Provides administrators with automatic turnoff capabilities for debug logging and file process logging to manage costs and security risks.
+ * **Cost Management**: Prevents excessive logging costs by automatically disabling logging after specified time periods (minutes to weeks).
+ * **Risk Mitigation**: Reduces security risks by ensuring debug logging doesn't remain enabled indefinitely.
+ * **Configuration Options**: Supports time ranges from 1-120 minutes, 1-24 hours, 1-7 days, and 1-52 weeks for both debug logging and file processing logs.
+ * **Background Monitoring**: Daemon thread monitors and enforces timer expiration automatically.
+ * (Ref: `admin_settings.html`, `route_frontend_admin_settings.py`, `app.py`)
+
+* **Comprehensive Table Support Enhancement**
+ * Enhanced table rendering to support multiple input formats ensuring tables from AI agents or users are properly displayed as styled HTML tables.
+ * **Format Support**: Unicode box-drawing tables (┌─┬─┐ style), markdown tables wrapped in code blocks, pipe-separated values (PSV) in code blocks, standard markdown tables.
+ * **Processing Pipeline**: Implements preprocessing pipeline that detects and converts various table formats to standard markdown before parsing.
+ * **Bootstrap Integration**: All generated tables automatically receive Bootstrap styling with striped rows and responsive design.
+ * (Ref: `chat-messages.js`, table conversion functions, functional tests)
+
+* **Public Workspace Management Enhancement**
+ * Added "Go to Public Workspace" button to Public Workspace Management page for quick navigation from management to workspace usage.
+ * **User Experience**: One-click navigation from management page to public workspace, automatically sets workspace as active for the user.
+ * **Consistency**: Aligns with existing Group Workspace management functionality, provides consistent workflow between management and usage.
+ * (Ref: `manage_public_workspace.html`, `route_frontend_public_workspaces.py`)
+
+* **Multimedia Support Reorganization**
+ * Reorganized Multimedia Support section from "Other" tab to "Search and Extract" tab with comprehensive Azure AI Video Indexer configuration guide.
+ * **Enhanced Configuration**: Added detailed setup instructions modal with step-by-step account creation, API key acquisition guidelines, and troubleshooting section.
+ * **Improved Organization**: Groups related search and extraction capabilities together, maintains all existing multimedia settings and functionality.
+ * (Ref: `admin_settings.html`, `_video_indexer_info.html`)
+
+#### Bug Fixes
+
### **(v0.229.058)**
#### New Features
diff --git a/application/single_app/config.py b/application/single_app/config.py
index 72f941d2..27d68e05 100644
--- a/application/single_app/config.py
+++ b/application/single_app/config.py
@@ -88,7 +88,7 @@
EXECUTOR_TYPE = 'thread'
EXECUTOR_MAX_WORKERS = 30
SESSION_TYPE = 'filesystem'
-VERSION = "0.229.058"
+VERSION = "0.229.060"
SECRET_KEY = os.getenv('SECRET_KEY', 'dev-secret-key-change-in-production')
diff --git a/application/single_app/templates/_sidebar_short_nav.html b/application/single_app/templates/_sidebar_short_nav.html
new file mode 100644
index 00000000..251304d6
--- /dev/null
+++ b/application/single_app/templates/_sidebar_short_nav.html
@@ -0,0 +1,325 @@
+{# Sidebar Navigation Partial - Short version without brand/logo #}
+
+
+
+
+ {% if session.get('user') and session['user'].get('roles') and ('Admin' in session['user']['roles'] or 'User' in session['user']['roles']) %}
+
+ {% if app_settings.enable_content_safety %}
+ {% if (app_settings.require_member_of_safety_violation_admin and session.get('user') and 'SafetyViolationAdmin' in session['user']['roles']) or not app_settings.require_member_of_safety_violation_admin %}
+
+ {% endif %}
+ {% endif %}
+ {% if app_settings.enable_user_feedback %}
+ {% if (app_settings.require_member_of_feedback_admin and session.get('user') and 'FeedbackAdmin' in session['user']['roles']) or not app_settings.require_member_of_feedback_admin %}
+
+
+
\ No newline at end of file
diff --git a/application/single_app/templates/base.html b/application/single_app/templates/base.html
index a9f595f7..2696aa09 100644
--- a/application/single_app/templates/base.html
+++ b/application/single_app/templates/base.html
@@ -220,15 +220,21 @@
{% endif %}
+ {% set left_sidebar_enabled = false %}
{% set nav_layout = user_settings.get('settings', {}).get('navLayout') %}
{% if nav_layout == 'sidebar' or (not nav_layout and app_settings.enable_left_nav_default) %}
{% include "_sidebar_nav.html" %}
+ {% set left_sidebar_enabled = true %}
{% else %}
{% include "_top_nav.html" %}
+ {% if request.endpoint == 'chats' %}
+ {% include "_sidebar_short_nav.html" %}
+ {% set left_sidebar_enabled = true %}
+ {% endif %}
{% endif %}
-
+
{% block content %}{% endblock %}
diff --git a/application/single_app/templates/chats.html b/application/single_app/templates/chats.html
index d5e04252..c5201f09 100644
--- a/application/single_app/templates/chats.html
+++ b/application/single_app/templates/chats.html
@@ -9,31 +9,21 @@
/* Initial layout styles to prevent shifting when top nav is active */
{% set nav_layout = user_settings.get('settings', {}).get('navLayout') %}
{% if nav_layout != 'sidebar' and not (not nav_layout and app_settings.enable_left_nav_default) %}
- /* Clean docked layout styles */
- body.layout-docked #left-pane {
- position: fixed !important;
- top: {% if app_settings.classification_banner_enabled and app_settings.classification_banner_text %}106px{% else %}66px{% endif %} !important;
- left: 0 !important;
- width: 320px !important;
- height: calc(100vh - {% if app_settings.classification_banner_enabled and app_settings.classification_banner_text %}106px{% else %}66px{% endif %}) !important;
- z-index: 1031 !important;
- background: var(--bs-body-bg, white) !important;
- border-right: 1px solid var(--bs-border-color, #dee2e6) !important;
+ /* Top navigation layout - hide left pane and expand right pane (same as sidebar layout) */
+ #left-pane {
+ display: none !important;
}
- body.layout-docked #right-pane {
- margin-left: 320px !important;
- width: calc(100% - 320px) !important;
- height: calc(100vh - {% if app_settings.classification_banner_enabled and app_settings.classification_banner_text %}106px{% else %}66px{% endif %}) !important;
- position: relative !important;
- /* Center content horizontally */
+ #right-pane {
+ width: 100% !important;
+ height: 100% !important;
display: flex !important;
flex-direction: column !important;
align-items: center !important;
}
- /* Center and limit width of right pane content */
- body.layout-docked #right-pane > div {
+ /* Center and limit width of right pane content when using top nav */
+ #right-pane > div {
width: 100% !important;
max-width: 1000px !important;
}
diff --git a/docs/fixes/v0.229.060/CHAT_PAGE_TOP_NAV_LEFT_SIDEBAR_FIX.md b/docs/fixes/v0.229.060/CHAT_PAGE_TOP_NAV_LEFT_SIDEBAR_FIX.md
new file mode 100644
index 00000000..7b1807dc
--- /dev/null
+++ b/docs/fixes/v0.229.060/CHAT_PAGE_TOP_NAV_LEFT_SIDEBAR_FIX.md
@@ -0,0 +1,90 @@
+# Chat Page Top Navigation Left Sidebar Fix
+
+**Fixed in version:** 0.229.060
+
+## Issue Description
+
+When using the top navigation layout, the chat page left-hand menu was not positioned correctly and was overlapping with the top navigation bar. Users experienced layout issues where:
+
+- The existing left sidebar from the chat page was being docked/positioned incorrectly
+- The sidebar would overlap with the top navigation, creating visual conflicts
+- The layout was inconsistent between sidebar navigation mode and top navigation mode
+
+## Root Cause Analysis
+
+The issue stemmed from the chat page (`chats.html`) having its own built-in left pane (`#left-pane`) that was designed for a split-view layout. When top navigation was enabled, this built-in left pane would:
+
+1. Be positioned as a fixed sidebar that overlapped with the top navigation
+2. Create redundant navigation since both the top nav sidebar and the chat page left pane were visible
+3. Not properly account for the top navigation bar height in its positioning
+
+Additionally, there was no short version of the main sidebar that would be appropriate for the top navigation layout.
+
+## Technical Details
+
+### Files Modified
+
+1. **`application/single_app/templates/_sidebar_short_nav.html`** (new file)
+ - Created a short version of the main sidebar without the brand/logo area
+ - Positioned below the top navigation bar with proper offset calculations
+ - Removed unnecessary sections (Workspaces, External Links) to keep it minimal
+ - Removed sidebar toggle functionality as it's not needed in top nav mode
+
+2. **`application/single_app/templates/base.html`**
+ - Added conditional logic to include `_sidebar_short_nav.html` when top nav is active and on the chats page
+ - Implemented `left_sidebar_enabled` flag to control main content padding
+ - Ensured proper template inclusion hierarchy
+
+3. **`application/single_app/templates/chats.html`**
+ - Modified CSS logic to hide the built-in `#left-pane` when top nav is enabled
+ - Simplified layout to use full-width `#right-pane` when top nav is active
+ - Removed complex docked positioning logic that was causing conflicts
+
+### Code Changes Summary
+
+- **Short Sidebar Creation**: Copied `_sidebar_nav.html` and removed brand/logo block, Workspaces section, External Links section, and sidebar toggle button
+- **Conditional Inclusion**: Added logic in `base.html` to show short sidebar only when `request.endpoint == 'chats'` and nav layout is top
+- **Layout Simplification**: Changed `chats.html` to hide `#left-pane` and expand `#right-pane` to full width when top nav is used
+- **Positioning Fix**: Set short sidebar `top` position to account for top nav height (58px normal, 102px with classification banner)
+
+## Testing Approach
+
+The fix was validated by:
+
+1. Switching between sidebar navigation and top navigation modes
+2. Verifying the short sidebar appears only on the chat page when top nav is enabled
+3. Confirming proper positioning below the top navigation bar
+4. Testing with and without classification banner enabled
+5. Ensuring existing sidebar JavaScript functionality works with the short sidebar
+6. Verifying conversations list and user account sections display correctly
+
+## User Experience Improvements
+
+- **Consistent Layout**: Top navigation mode now provides a clean, non-overlapping layout
+- **Appropriate Sidebar**: Short sidebar shows only relevant navigation for chat functionality
+- **Proper Positioning**: Sidebar sits correctly below the top navigation without visual conflicts
+- **Maintained Functionality**: All existing sidebar features (conversations, user menu) continue to work
+- **Responsive Design**: Layout adapts properly to different screen sizes
+
+## Impact Analysis
+
+- **No Breaking Changes**: Existing sidebar navigation mode remains unchanged
+- **Improved UX**: Top navigation mode now provides proper left sidebar positioning
+- **Performance**: Minimal impact as only conditional template inclusion was added
+- **Compatibility**: All existing JavaScript and CSS functionality preserved
+
+## Validation
+
+This fix ensures that:
+- When using sidebar navigation: full sidebar with brand/logo displays normally
+- When using top navigation: short sidebar without brand/logo displays on chat page only
+- Built-in chat page left pane is hidden to prevent layout conflicts
+- Proper spacing and positioning relative to top navigation bar
+- All sidebar functionality (conversations, toggles, user menu) continues to work
+
+## Related Files
+
+- `application/single_app/templates/_sidebar_short_nav.html` - New short sidebar template
+- `application/single_app/templates/base.html` - Template inclusion logic
+- `application/single_app/templates/chats.html` - Layout CSS updates
+- `application/single_app/config.py` - Version increment to 0.229.061
\ No newline at end of file
diff --git a/application/single_app/route_backend_public_workspaces.py b/route_backend_public_workspaces.py
similarity index 100%
rename from application/single_app/route_backend_public_workspaces.py
rename to route_backend_public_workspaces.py