Expand changelog entry with detailed implementation description

Added comprehensive breakdown of the Sandbox environment indicator feature
including all modified components (database, backend, frontend, CSS) with
specific technical details for better documentation and understanding.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Ivo Oskamp 2026-02-06 12:53:45 +01:00
parent 0bf1151f01
commit d08fbfecd4

View File

@ -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 `<head>` section
- Banner placed directly after `<body>` 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)