diff --git a/docs/changelog-claude.md b/docs/changelog-claude.md index 94532fa..e5e85b2 100644 --- a/docs/changelog-claude.md +++ b/docs/changelog-claude.md @@ -6,11 +6,27 @@ This file documents all changes made to this project via Claude Code. ### Added - Added Sandbox/Development environment indicator feature: - - New setting in Settings > General > Environment to mark environment as Sandbox/Development - - Visual "SANDBOX" banner displayed diagonally in top-left corner when enabled - - Banner is non-interactive (pointer-events: none) so elements behind it remain clickable - - Setting defaults to OFF for production safety - - Database migration added for automatic schema update on deployment + - **Database Model**: Added `is_sandbox_environment` boolean column to `SystemSettings` model (defaults to `False` for production safety) + - **Database Migration**: Created `migrate_system_settings_sandbox_environment()` function for automatic schema update on deployment (idempotent, safe to run multiple times) + - **Backend Routes**: + - Extended `routes_settings.py` to process the new checkbox setting in the General tab + - Updated `routes_shared.py` context processor to inject `system_settings` into all template contexts + - **Settings UI**: + - Added new "Environment" card in Settings > General (placed after Navigation section) + - Toggle switch with clear English description: "Mark this as a Sandbox/Development environment" + - Help text explains visual banner behavior + - **CSS Styling**: + - Created `sandbox.css` with diagonal red banner styling + - Position: top-left corner, rotated 45 degrees + - Color: Bootstrap danger red (#dc3545) with white text + - Z-index: 9999 (always on top) + - `pointer-events: none` - banner itself is non-interactive, elements behind it remain clickable + - Box-shadow for depth effect + - **Base Template**: + - Banner conditionally displayed only when setting is enabled + - CSS include added to `` section + - Banner placed directly after `` tag, before navbar + - The banner displays "SANDBOX" in uppercase with letter-spacing for clear visibility across all pages ### Changed - Renamed "Refresh" button to "Search" in Link existing Autotask ticket modal for better clarity (the button performs a search operation)