# Project Semantic Map

> Compressed view for AI Context. Generated automatically.

- 📦 **check_test_data** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for check_test_data.py
  - 🏗️ Layer: Unknown
  - ƒ **check_file** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.reports.report_service** (`Module`)
  - 📝 Aggregate, normalize, filter, and paginate task reports for unified list/detail API use cases.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: List responses are deterministic and include applied filter echo metadata.
  - 🔗 DEPENDS_ON -> `backend.src.core.task_manager.manager.TaskManager`
  - 🔗 DEPENDS_ON -> `backend.src.models.report`
  - 🔗 DEPENDS_ON -> `backend.src.services.reports.normalizer`
  - ℂ **ReportsService** (`Class`)
    - 📝 Service layer for list/detail report retrieval and normalization.
    - 🔒 Invariant: Service methods are read-only over task history source.
    - ƒ **__init__** (`Function`)
      - 📝 Initialize service with TaskManager dependency.
      - 🔒 Invariant: Constructor performs no task mutations.
    - ƒ **_load_normalized_reports** (`Function`)
      - 📝 Build normalized reports from all available tasks.
      - 🔒 Invariant: Every returned item is a TaskReport.
    - ƒ **_to_utc_datetime** (`Function`)
      - 📝 Normalize naive/aware datetime values to UTC-aware datetime for safe comparisons.
      - 🔒 Invariant: Naive datetimes are interpreted as UTC to preserve deterministic ordering/filtering.
    - ƒ **_datetime_sort_key** (`Function`)
      - 📝 Produce stable numeric sort key for report timestamps.
      - 🔒 Invariant: Mixed naive/aware datetimes never raise TypeError.
    - ƒ **_matches_query** (`Function`)
      - 📝 Apply query filtering to a report.
      - 🔒 Invariant: Filter evaluation is side-effect free.
    - ƒ **_sort_reports** (`Function`)
      - 📝 Sort reports deterministically according to query settings.
      - 🔒 Invariant: Sorting criteria are deterministic for equal input.
    - ƒ **list_reports** (`Function`)
      - 📝 Return filtered, sorted, paginated report collection.
    - ƒ **get_report_detail** (`Function`)
      - 📝 Return one normalized report with timeline/diagnostics/next actions.
  - ƒ **print_entity** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **test_analyze** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for test_analyze.py
  - 🏗️ Layer: Unknown
  - ƒ **print_issues** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **generate_semantic_map** (`Module`)
  - 📝 Scans the codebase to generate a Semantic Map, Module Map, and Compliance Report based on the System Standard.
  - 🏗️ Layer: DevOps/Tooling
  - 🔒 Invariant: All DEF anchors must have matching closing anchors; TIER determines validation strictness.
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Mock init for self-containment.
  - ƒ **__enter__** (`Function`) `[TRIVIAL]`
    - 📝 Mock enter.
  - ƒ **__exit__** (`Function`) `[TRIVIAL]`
    - 📝 Mock exit.
  - ℂ **Tier** (`Class`) `[TRIVIAL]`
    - 📝 Enumeration of semantic tiers defining validation strictness.
  - ℂ **Severity** (`Class`) `[TRIVIAL]`
    - 📝 Severity levels for compliance issues.
  - ℂ **ComplianceIssue** (`Class`) `[TRIVIAL]`
    - 📝 Represents a single compliance issue with severity.
  - ℂ **SemanticEntity** (`Class`) `[CRITICAL]`
    - 📝 Represents a code entity (Module, Function, Component) found during parsing.
    - 🔒 Invariant: start_line is always set; end_line is set upon closure; tier defaults to STANDARD.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes a new SemanticEntity instance.
    - ƒ **get_tier** (`Function`)
      - 📝 Returns the tier of the entity, defaulting to STANDARD.
    - ƒ **to_dict** (`Function`)
      - 📝 Serializes the entity to a dictionary for JSON output.
    - ƒ **validate** (`Function`) `[CRITICAL]`
      - 📝 Checks for semantic compliance based on TIER requirements.
    - ƒ **get_score** (`Function`)
      - 📝 Calculates a compliance score (0.0 to 1.0) based on tier requirements.
  - ƒ **get_patterns** (`Function`)
    - 📝 Returns regex patterns for a specific language.
  - ƒ **extract_svelte_props** (`Function`)
    - 📝 Extracts props from Svelte component script section.
  - ƒ **extract_svelte_events** (`Function`)
    - 📝 Extracts dispatched events from Svelte component.
  - ƒ **extract_data_flow** (`Function`)
    - 📝 Extracts store subscriptions and data flow from Svelte component.
  - ƒ **parse_file** (`Function`) `[CRITICAL]`
    - 📝 Parses a single file to extract semantic entities with tier awareness and enhanced Svelte analysis.
    - 🔒 Invariant: Every opened anchor must have a matching closing anchor for valid compliance.
  - ℂ **SemanticMapGenerator** (`Class`) `[CRITICAL]`
    - 📝 Orchestrates the mapping process with tier-based validation.
    - 🔒 Invariant: All entities are validated according to their TIER requirements.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the generator with a root directory.
    - ƒ **_load_gitignore** (`Function`)
      - 📝 Loads patterns from .gitignore file.
    - ƒ **_is_ignored** (`Function`)
      - 📝 Checks if a path should be ignored based on .gitignore or hardcoded defaults.
    - ƒ **run** (`Function`) `[CRITICAL]`
      - 📝 Main execution flow.
      - 🔗 CALLS -> `_walk_and_parse`
      - 🔗 CALLS -> `_generate_artifacts`
    - ƒ **_walk_and_parse** (`Function`) `[CRITICAL]`
      - 📝 Recursively walks directories and triggers parsing.
    - ƒ **_process_file_results** (`Function`)
      - 📝 Validates entities and calculates file scores with tier awareness.
      - ƒ **validate_recursive** (`Function`)
        - 📝 Calculate score and determine module's max tier for weighted global score
    - ƒ **_generate_artifacts** (`Function`) `[CRITICAL]`
      - 📝 Writes output files with tier-based compliance data.
    - ƒ **_generate_report** (`Function`) `[CRITICAL]`
      - 📝 Generates the Markdown compliance report with severity levels.
    - ƒ **_collect_issues** (`Function`)
      - 📝 Helper to collect issues for a specific file from the entity tree.
    - ƒ **_generate_compressed_map** (`Function`) `[CRITICAL]`
      - 📝 Generates the token-optimized project map with enhanced Svelte details.
    - ƒ **_write_entity_md** (`Function`) `[CRITICAL]`
      - 📝 Recursive helper to write entity tree to Markdown with tier badges and enhanced details.
    - ƒ **_generate_module_map** (`Function`) `[CRITICAL]`
      - 📝 Generates a module-centric map grouping entities by directory structure.
      - ƒ **_get_module_path** (`Function`)
        - 📝 Extracts the module path from a file path.
      - ƒ **_collect_all_entities** (`Function`)
        - 📝 Flattens entity tree for easier grouping.
  - ƒ **to_dict** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **DashboardTypes** (`Module`) `[TRIVIAL]`
  - 📝 TypeScript interfaces for Dashboard entities
  - 🏗️ Layer: Domain
- 🧩 **Counter** (`Component`) `[TRIVIAL]`
  - 📝 Simple counter demo component
  - 🏗️ Layer: UI
  - ➡️ WRITES_TO `state`
- 📦 **stores_module** (`Module`)
  - 📝 Global state management using Svelte stores.
  - 🏗️ Layer: UI-State
  - 📦 **plugins** (`Data`)
    - 📝 Store for the list of available plugins.
  - 📦 **tasks** (`Data`)
    - 📝 Store for the list of tasks.
  - 📦 **selectedPlugin** (`Data`)
    - 📝 Store for the currently selected plugin.
  - 📦 **selectedTask** (`Data`)
    - 📝 Store for the currently selected task.
  - 📦 **currentPage** (`Data`)
    - 📝 Store for the current page.
  - 📦 **taskLogs** (`Data`)
    - 📝 Store for the logs of the currently selected task.
  - ƒ **fetchPlugins** (`Function`)
    - 📝 Fetches plugins from the API and updates the plugins store.
  - ƒ **fetchTasks** (`Function`)
    - 📝 Fetches tasks from the API and updates the tasks store.
- 📦 **toasts_module** (`Module`)
  - 📝 Manages toast notifications using a Svelte writable store.
  - 🏗️ Layer: UI-State
  - 📦 **toasts** (`Data`)
    - 📝 Writable store containing the list of active toasts.
  - ƒ **addToast** (`Function`)
    - 📝 Adds a new toast message.
  - ƒ **removeToast** (`Function`)
    - 📝 Removes a toast message by ID.
  - ƒ **buildToastKey** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **shouldSkipDuplicateToast** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **api_module** (`Module`)
  - 📝 Handles all communication with the backend API.
  - 🏗️ Layer: Infra-API
  - ƒ **buildApiError** (`Function`)
    - 📝 Creates a normalized Error object for failed API responses.
  - ƒ **notifyApiError** (`Function`)
    - 📝 Shows toast for API errors with explicit handling of critical statuses.
  - ƒ **shouldSuppressApiErrorToast** (`Function`)
    - 📝 Avoid noisy toasts for expected non-critical API failures.
  - ƒ **getWsUrl** (`Function`)
    - 📝 Returns the WebSocket URL for a specific task, with fallback logic.
  - ƒ **getAuthHeaders** (`Function`)
    - 📝 Returns headers with Authorization if token exists.
  - ƒ **fetchApi** (`Function`)
    - 📝 Generic GET request wrapper.
  - ƒ **fetchApiBlob** (`Function`)
    - 📝 Generic GET wrapper for binary payloads.
  - ƒ **postApi** (`Function`)
    - 📝 Generic POST request wrapper.
  - ƒ **requestApi** (`Function`)
    - 📝 Generic request wrapper.
  - 📦 **api** (`Data`)
    - 📝 API client object with specific methods.
- 📦 **Utils** (`Module`) `[TRIVIAL]`
  - 📝 General utility functions (class merging)
  - 🏗️ Layer: Infra
  - ƒ **cn** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🗄️ **authStore** (`Store`) `[CRITICAL]`
  - 📝 Manages the global authentication state on the frontend.
  - 🏗️ Layer: Feature
  - 🔗 BINDS_TO -> `Navbar, ProtectedRoute`
  - 📦 **AuthState** (`Interface`) `[CRITICAL]`
    - 📝 Defines the structure of the authentication state.
  - ƒ **createAuthStore** (`Function`) `[CRITICAL]`
    - 📝 Creates and configures the auth store with helper methods.
    - ƒ **setToken** (`Function`) `[CRITICAL]`
      - 📝 Updates the store with a new JWT token.
    - ƒ **setUser** (`Function`) `[CRITICAL]`
      - 📝 Sets the current user profile data.
    - ƒ **logout** (`Function`) `[CRITICAL]`
      - 📝 Clears authentication state and storage.
    - ƒ **setLoading** (`Function`) `[CRITICAL]`
      - 📝 Updates the loading state.
- 📦 **Debounce** (`Module`) `[TRIVIAL]`
  - 📝 Debounce utility for limiting function execution rate
  - 🏗️ Layer: Infra
  - ƒ **debounce** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🗄️ **assistantChat** (`Store`)
  - 📝 Control assistant chat panel visibility and active conversation binding.
  - 🏗️ Layer: UI
  - 🔒 Invariant: conversationId persists while panel toggles unless explicitly reset.
  - 🔗 BINDS_TO -> `AssistantChatPanel`
  - ƒ **toggleAssistantChat** (`Function`)
    - 📝 Toggle assistant panel visibility.
  - ƒ **openAssistantChat** (`Function`)
    - 📝 Open assistant panel.
  - ƒ **closeAssistantChat** (`Function`)
    - 📝 Close assistant panel.
  - ƒ **setAssistantConversationId** (`Function`)
    - 📝 Bind current conversation id in UI state.
- 🗄️ **taskDrawer** (`Store`) `[CRITICAL]`
  - 📝 Manage Task Drawer visibility and resource-to-task mapping
  - 🏗️ Layer: UI
  - 🔒 Invariant: resourceTaskMap always reflects current task associations
- 📦 **taskDrawer** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/lib/stores/taskDrawer.js
  - 🏗️ Layer: Unknown
  - ƒ **openDrawerForTask** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **openDrawer** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **closeDrawer** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **updateResourceTask** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getTaskForResource** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🗄️ **sidebar** (`Store`)
  - 📝 Manage sidebar visibility and navigation state
  - 🏗️ Layer: UI
  - 🔒 Invariant: isExpanded state is always synced with localStorage
- 📦 **sidebar** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/lib/stores/sidebar.js
  - 🏗️ Layer: Unknown
  - ƒ **toggleSidebar** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **setActiveItem** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **setMobileOpen** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **closeMobile** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **toggleMobileSidebar** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🗄️ **environmentContext** (`Store`)
  - 📝 Global selected environment context for navigation and safety cues.
  - 🏗️ Layer: UI-State
- 📦 **environmentContext** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/lib/stores/environmentContext.js
  - 🏗️ Layer: Unknown
  - ƒ **getStoredSelectedEnvId** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **persistSelectedEnvId** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **hasAuthToken** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **resolveSelectedEnvId** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **applySelectedEnvId** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **refreshEnvironmentContext** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **initializeEnvironmentContext** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **setSelectedEnvironment** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🗄️ **activity** (`Store`)
  - 📝 Track active task count for navbar indicator
  - 🏗️ Layer: UI
  - 🔗 DEPENDS_ON -> `WebSocket connection, taskDrawer store`
- 📦 **frontend.src.lib.stores.__tests__.test_sidebar** (`Module`)
  - 📝 Unit tests for sidebar store
  - 🏗️ Layer: UI
- 📦 **frontend.src.lib.stores.__tests__.sidebar** (`Module`)
  - 📝 Unit tests for sidebar store
  - 🏗️ Layer: Domain (Tests)
  - 🔒 Invariant: Sidebar store transitions must be deterministic across desktop/mobile toggles.
  - ƒ **test_sidebar_initial_state** (`Function`)
    - 📝 Verify initial sidebar store values when no persisted state is available.
  - ƒ **test_toggleSidebar** (`Function`)
    - 📝 Verify desktop sidebar expansion toggles deterministically.
  - ƒ **test_setActiveItem** (`Function`)
  - ƒ **test_mobile_functions** (`Function`)
- 📦 **frontend.src.lib.stores.__tests__.test_activity** (`Module`)
  - 📝 Unit tests for activity store
  - 🏗️ Layer: UI
  - 🔗 DEPENDS_ON -> `frontend.src.lib.stores.taskDrawer`
- 📦 **setupTests** (`Module`)
  - 📝 Global test setup with mocks for SvelteKit modules
  - 🏗️ Layer: UI
- 📦 **frontend.src.lib.stores.__tests__.test_taskDrawer** (`Module`)
  - 📝 Unit tests for task drawer store
  - 🏗️ Layer: UI
  - 🔒 Invariant: Store state transitions remain deterministic for open/close and task-status mapping.
- 📦 **frontend.src.lib.stores.__tests__.assistantChat** (`Module`)
  - 📝 Validate assistant chat store visibility and conversation binding transitions.
  - 🏗️ Layer: UI Tests
  - 🔒 Invariant: Each test starts from default closed state.
  - 🔗 DEPENDS_ON -> `assistantChatStore`
  - ƒ **assistantChatStore_tests** (`Function`)
    - 📝 Group store unit scenarios for assistant panel behavior.
- 📦 **navigation** (`Mock`)
  - 📝 Mock for $app/navigation in tests
- 📦 **stores** (`Mock`)
  - 📝 Mock for $app/stores in tests
- 📦 **environment** (`Mock`)
  - 📝 Mock for $app/environment in tests
- 📦 **mock_env_public** (`Module`)
  - 📝 Mock for $env/static/public SvelteKit module in vitest
  - 🏗️ Layer: UI (Tests)
- 📦 **frontend.src.lib.api.reports** (`Module`) `[CRITICAL]`
  - 📝 Wrapper-based reports API client for list/detail retrieval without direct native fetch usage.
  - 🏗️ Layer: Infra
  - 🔒 Invariant: Uses existing api wrapper methods and returns structured errors for UI-state mapping.
  - 🔗 DEPENDS_ON -> `[DEF:api_module]`
  - ƒ **buildReportQueryString** (`Function`)
    - 📝 Build query string for reports list endpoint from filter options.
  - ƒ **normalizeApiError** (`Function`)
    - 📝 Convert unknown API exceptions into deterministic UI-consumable error objects.
  - ƒ **getReports** (`Function`)
    - 📝 Fetch unified report list using existing request wrapper.
  - ƒ **getReportDetail** (`Function`)
    - 📝 Fetch one report detail by report_id.
- 📦 **frontend.src.lib.api.assistant** (`Module`)
  - 📝 API client wrapper for assistant chat, confirmation actions, and history retrieval.
  - 🏗️ Layer: Infra-API
  - 🔒 Invariant: All assistant requests must use requestApi wrapper (no native fetch).
  - 🔗 DEPENDS_ON -> `frontend.src.lib.api.api_module`
  - ƒ **sendAssistantMessage** (`Function`)
    - 📝 Send a user message to assistant orchestrator endpoint.
  - ƒ **confirmAssistantOperation** (`Function`)
    - 📝 Confirm a pending risky assistant operation.
  - ƒ **cancelAssistantOperation** (`Function`)
    - 📝 Cancel a pending risky assistant operation.
  - ƒ **getAssistantHistory** (`Function`)
    - 📝 Retrieve paginated assistant conversation history.
  - ƒ **getAssistantConversations** (`Function`)
    - 📝 Retrieve paginated conversation list for assistant sidebar/history switcher.
  - ƒ **deleteAssistantConversation** (`Function`)
    - 📝 Soft-delete or hard-delete a conversation.
- 📦 **frontend.src.lib.api.__tests__.reports_api** (`Module`)
  - 📝 Unit tests for reports API client functions: query string building, error normalization, and fetch wrappers.
  - 🏗️ Layer: Infra (Tests)
  - 🔒 Invariant: Pure functions produce deterministic output. Async wrappers propagate structured errors.
  - ℂ **TestBuildReportQueryString** (`Class`)
    - 📝 Validate query string construction from filter options.
  - ℂ **TestNormalizeApiError** (`Class`)
    - 📝 Validate error normalization for UI-state mapping.
  - ℂ **TestGetReportsAsync** (`Class`)
    - 📝 Validate getReports and getReportDetail with mocked api.fetchApi.
- 🧩 **Select** (`Component`) `[TRIVIAL]`
  - 📝 Standardized dropdown selection component.
  - 🏗️ Layer: Atom
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `bindable`
  - ➡️ WRITES_TO `props`
- 📦 **ui** (`Module`) `[TRIVIAL]`
  - 📝 Central export point for standardized UI components.
  - 🏗️ Layer: Atom
  - 🔒 Invariant: All components exported here must follow Semantic Protocol.
- 🧩 **PageHeader** (`Component`) `[TRIVIAL]`
  - 📝 Standardized page header with title and action area.
  - 🏗️ Layer: Atom
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `props`
- 🧩 **Card** (`Component`) `[TRIVIAL]`
  - 📝 Standardized container with padding and elevation.
  - 🏗️ Layer: Atom
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `props`
- 🧩 **Button** (`Component`) `[TRIVIAL]`
  - 📝 Define component interface and default values (Svelte 5 Runes).
  - 🏗️ Layer: Atom
  - 🔒 Invariant: Supports accessible labels and keyboard navigation.
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `props`
- 🧩 **Input** (`Component`) `[TRIVIAL]`
  - 📝 Standardized text input component with label and error handling.
  - 🏗️ Layer: Atom
  - 🔒 Invariant: Consistent spacing and focus states.
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `bindable`
  - ➡️ WRITES_TO `props`
- 🧩 **LanguageSwitcher** (`Component`) `[TRIVIAL]`
  - 📝 Dropdown component to switch between supported languages.
  - 🏗️ Layer: Atom
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `locale`
- 📦 **i18n** (`Module`)
  - 📝 Determines the starting locale.
  - 🏗️ Layer: Infra
  - 🔒 Invariant: Persistence is handled via LocalStorage.
  - 🔗 DEPENDS_ON -> `locales/ru.json`
  - 🔗 DEPENDS_ON -> `locales/en.json`
  - 🗄️ **locale** (`Store`)
    - 📝 Holds the current active locale string.
  - 🗄️ **t** (`Store`)
    - 📝 Derived store providing the translation dictionary.
  - ƒ **_** (`Function`)
    - 📝 Get translation by key path.
- 🧩 **AssistantChatPanel** (`Component`)
  - 📝 Slide-out assistant chat panel for natural language command execution and task tracking.
  - 🏗️ Layer: UI
  - 🔒 Invariant: Risky operations are executed only through explicit confirm action.
  - ⬅️ READS_FROM `app`
  - ⬅️ READS_FROM `lib`
  - ⬅️ READS_FROM `assistantChatStore`
  - ƒ **loadHistory** (`Function`)
    - 📝 Load current conversation history when panel becomes visible.
  - ƒ **loadConversations** (`Function`)
    - 📝 Load paginated conversation summaries for quick switching UI.
  - ƒ **removeConversation** (`Function`)
    - 📝 Removes a conversation from the list and deletes it from the backend.
  - ƒ **loadOlderMessages** (`Function`)
    - 📝 Lazy-load older messages for active conversation when user scrolls to top.
  - ƒ **appendLocalUserMessage** (`Function`)
    - 📝 Add optimistic local user message before backend response.
  - ƒ **appendAssistantResponse** (`Function`)
    - 📝 Normalize and append assistant response payload to chat list.
  - ƒ **handleSend** (`Function`)
    - 📝 Submit user command to assistant orchestration API.
  - ƒ **selectConversation** (`Function`)
    - 📝 Switch active chat context to selected conversation item.
  - ƒ **startNewConversation** (`Function`)
    - 📝 Create local empty chat context that will be persisted on first message.
  - ƒ **handleAction** (`Function`)
    - 📝 Execute assistant action button behavior (open task/reports, confirm, cancel).
  - ƒ **handleKeydown** (`Function`)
    - 📝 Submit command by Enter while preserving multiline input with Shift+Enter.
  - ƒ **stateClass** (`Function`)
    - 📝 Map assistant state to visual badge style class.
  - ƒ **handleHistoryScroll** (`Function`)
    - 📝 Trigger lazy history fetch when user scroll reaches top boundary.
- 📦 **AssistantChatPanel** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/lib/components/assistant/AssistantChatPanel.svelte
  - 🏗️ Layer: Unknown
  - ƒ **buildConversationTitle** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **setConversationFilter** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **formatConversationTime** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadLlmStatus** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **frontend.src.lib.components.assistant.__tests__.assistant_chat_integration** (`Module`)
  - 📝 Contract-level integration checks for assistant chat panel implementation and localization wiring.
  - 🏗️ Layer: UI Tests
  - 🔒 Invariant: Critical assistant UX states and action hooks remain present in component source.
  - ƒ **readJson** (`Function`)
    - 📝 Read and parse JSON fixture file from disk.
  - ƒ **assistant_chat_contract_tests** (`Function`)
    - 📝 Validate assistant chat component contract and locale integration without DOM runtime dependency.
- 🧩 **ReportCard** (`Component`)
  - 📝 Render one report with explicit textual type label and profile-driven visual variant.
  - 🏗️ Layer: UI
  - 🔒 Invariant: Unknown task type always uses fallback profile.
  - ⚡ Events: select
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `derived`
- 📦 **ReportCard** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/lib/components/reports/ReportCard.svelte
  - 🏗️ Layer: Unknown
  - ƒ **getStatusClass** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getStatusLabel** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **formatDate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **onSelect** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **ReportsList** (`Component`)
  - 📝 Render unified list of normalized reports with canonical minimum fields.
  - 🏗️ Layer: UI
  - 🔒 Invariant: Every rendered row shows task_type label, status, summary, and updated_at.
  - ➡️ WRITES_TO `props`
- 📦 **ReportsList** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/lib/components/reports/ReportsList.svelte
  - 🏗️ Layer: Unknown
  - ƒ **handleSelect** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **frontend.src.lib.components.reports.reportTypeProfiles** (`Module`) `[CRITICAL]`
  - 📝 Deterministic mapping from report task_type to visual profile with one fallback.
  - 🏗️ Layer: UI
  - 🔒 Invariant: Unknown type always resolves to fallback profile.
  - 🔗 DEPENDS_ON -> `frontend/src/lib/i18n/index.ts`
  - ƒ **getReportTypeProfile** (`Function`)
    - 📝 Resolve visual profile by task type with guaranteed fallback.
- 🧩 **ReportDetailPanel** (`Component`)
  - 📝 Display detailed report context with diagnostics and actionable recovery guidance.
  - 🏗️ Layer: UI
  - 🔒 Invariant: Failed/partial reports surface actionable hints when available.
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `props`
  - ⬅️ READS_FROM `t`
- 📦 **ReportDetailPanel** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/lib/components/reports/ReportDetailPanel.svelte
  - 🏗️ Layer: Unknown
  - ƒ **notProvided** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **formatDate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **frontend.src.lib.components.reports.__tests__.reports_filter_performance** (`Module`)
  - 📝 Guard test for report filter responsiveness on moderate in-memory dataset.
  - 🏗️ Layer: UI (Tests)
  - ƒ **applyFilters** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **makeDataset** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **frontend.src.lib.components.reports.__tests__.reports_page.integration** (`Module`)
  - 📝 Integration-style checks for unified mixed-type reports rendering expectations.
  - 🏗️ Layer: UI (Tests)
  - 🔒 Invariant: Mixed fixture includes all supported report types in one list.
  - ƒ **collectVisibleTypeLabels** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **frontend.src.lib.components.reports.__tests__.report_type_profiles** (`Module`)
  - 📝 Validate report type profile mapping and unknown fallback behavior.
  - 🏗️ Layer: UI (Tests)
  - 🔒 Invariant: Unknown task_type always resolves to the fallback profile.
- 📦 **frontend.src.lib.components.reports.__tests__.reports_list.ux** (`Module`)
  - 📝 Test ReportsList component iteration and event forwarding.
  - 🏗️ Layer: UI
- 📦 **frontend.src.lib.components.reports.__tests__.report_card.ux** (`Module`)
  - 📝 Test UX states and transitions for ReportCard component
  - 🏗️ Layer: UI
  - 🔒 Invariant: Each test asserts at least one observable UX contract outcome.
- 📦 **frontend.src.lib.components.reports.__tests__.report_detail.ux** (`Module`)
  - 📝 Test UX states and recovery for ReportDetailPanel component
  - 🏗️ Layer: UI
  - 🔒 Invariant: Detail UX tests keep placeholder-safe rendering and recovery visibility verifiable.
- 📦 **frontend.src.lib.components.reports.__tests__.report_detail.integration** (`Module`)
  - 📝 Validate detail-panel behavior for failed reports and recovery guidance visibility.
  - 🏗️ Layer: UI (Tests)
  - 🔒 Invariant: Failed report detail exposes actionable next actions when available.
  - ƒ **buildFailedDetailFixture** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **reports.fixtures** (`Module`)
  - 📝 Shared frontend fixtures for unified reports states.
  - 🏗️ Layer: UI
- 🧩 **Sidebar** (`Component`)
  - 📝 Persistent left sidebar with resource categories navigation
  - 🏗️ Layer: UI
  - 🔒 Invariant: Always shows active category and item
  - ⬅️ READS_FROM `app`
  - ⬅️ READS_FROM `lib`
  - ⬅️ READS_FROM `t`
- 📦 **Sidebar** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/lib/components/layout/Sidebar.svelte
  - 🏗️ Layer: Unknown
  - ƒ **buildCategories** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleItemClick** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleCategoryToggle** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSubItemClick** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleToggleClick** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleOverlayClick** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **TopNavbar** (`Component`)
  - 📝 Unified top navigation bar with Logo, Search, Activity, and User menu
  - 🏗️ Layer: UI
  - 🔒 Invariant: Always visible on non-login pages
  - ⚡ Events: activityClick
  - ⬅️ READS_FROM `app`
  - ⬅️ READS_FROM `lib`
  - ⬅️ READS_FROM `sidebarStore`
- 📦 **TopNavbar** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/lib/components/layout/TopNavbar.svelte
  - 🏗️ Layer: Unknown
  - ƒ **toggleUserMenu** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **closeUserMenu** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleLogout** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleActivityClick** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleAssistantClick** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSearchFocus** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **clearSearchState** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleDocumentClick** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleHamburgerClick** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleGlobalEnvironmentChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **buildSearchResultSections** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **triggerSearch** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSearchInput** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **openSearchResult** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSearchKeydown** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **Breadcrumbs** (`Component`)
  - 📝 Display page hierarchy navigation
  - 🏗️ Layer: UI
  - 🔒 Invariant: Always shows current page path
  - ⬅️ READS_FROM `app`
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `props`
- 📦 **Breadcrumbs** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/lib/components/layout/Breadcrumbs.svelte
  - 🏗️ Layer: Unknown
  - ƒ **getBreadcrumbs** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **formatBreadcrumbLabel** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getCrumbMeta** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **TaskDrawer** (`Component`)
  - 📝 Global task drawer for monitoring background operations
  - 🏗️ Layer: UI
  - 🔒 Invariant: Drawer shows logs for active task or remains closed
  - ⬅️ READS_FROM `lib`
  - ⬅️ READS_FROM `taskDrawerStore`
  - ➡️ WRITES_TO `taskDrawerStore`
  - ƒ **disconnectWebSocket** (`Function`)
    - 📝 Disconnects the active WebSocket connection
  - ƒ **loadRecentTasks** (`Function`)
    - 📝 Load recent tasks for list mode display
  - ƒ **selectTask** (`Function`)
    - 📝 Select a task from list to view details
  - ƒ **goBackToList** (`Function`)
    - 📝 Return to task list view from task details
- 📦 **TaskDrawer** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/lib/components/layout/TaskDrawer.svelte
  - 🏗️ Layer: Unknown
  - ƒ **handleClose** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **goToReportsPage** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleGlobalKeydown** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **normalizeTaskId** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **isTaskFinished** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **resolveLlmValidationStatus** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **llmValidationBadgeClass** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **stopTaskDetailsPolling** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadEnvironmentOptions** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **resolveEnvironmentName** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **resolveEnvironmentId** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **normalizeSupersetBaseUrl** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **resolveSupersetDashboardUrl** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadActiveTaskDetails** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **extractPrimaryDashboardId** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **buildTaskSummary** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleOpenDashboardDeepLink** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleShowDiff** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleOpenLlmReport** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **connectWebSocket** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **test_breadcrumbs.svelte** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/lib/components/layout/__tests__/test_breadcrumbs.svelte.js
  - 🏗️ Layer: Unknown
  - ƒ **getBreadcrumbs** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **formatBreadcrumbLabel** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **ErrorPage** (`Page`)
  - 📝 Global error page displaying HTTP status and messages
  - 🏗️ Layer: UI
- 📦 **RootLayoutConfig** (`Module`) `[TRIVIAL]`
  - 📝 Root layout configuration (SPA mode)
  - 🏗️ Layer: Infra
- 📦 **HomePage** (`Page`) `[CRITICAL]`
  - 📝 Redirect to Dashboard Hub as per UX requirements
  - 🏗️ Layer: UI
  - 🔒 Invariant: Always redirects to /dashboards
- ƒ **load** (`Function`)
  - 📝 Loads initial plugin data for the dashboard.
- 📦 **layout** (`Module`)
  - 📝 Bind global layout shell and conditional login/full-app rendering.
  - 🏗️ Layer: UI
  - 🔒 Invariant: Login route bypasses shell; all other routes are wrapped by ProtectedRoute.
- 📦 **DatasetHub** (`Page`)
  - 📝 Dataset Hub - Dedicated hub for datasets with mapping progress
  - 🏗️ Layer: UI
  - 🔒 Invariant: Always shows datasets for the active environment from context store
- 📦 **+page** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/routes/datasets/+page.svelte
  - 🏗️ Layer: Unknown
  - ƒ **loadDatasets** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSearch** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handlePageChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handlePageSizeChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **updateSelectionState** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleCheckboxChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSelectAll** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSelectVisible** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleAction** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleBulkMapColumns** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleBulkGenerateDocs** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleTaskStatusClick** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getTaskStatusIcon** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getMappingProgressClass** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **DatasetDetail** (`Page`)
  - 📝 Dataset Detail View - Shows detailed dataset information with columns, SQL, and linked dashboards
  - 🏗️ Layer: UI
  - 🔒 Invariant: Always shows dataset details when loaded
- 📦 **+page** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/routes/datasets/[id]/+page.svelte
  - 🏗️ Layer: Unknown
  - ƒ **loadDatasetDetail** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **navigateToDashboard** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **goBack** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getColumnTypeClass** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getMappingProgress** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **UnifiedReportsPage** (`Component`) `[CRITICAL]`
  - 📝 Unified reports page with filtering and resilient UX states for mixed task types.
  - 🏗️ Layer: UI
  - 🔒 Invariant: List state remains deterministic for active filter set.
  - ⬅️ READS_FROM `lib`
  - ⬅️ READS_FROM `t`
  - ➡️ WRITES_TO `t`
- 📦 **+page** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/routes/reports/+page.svelte
  - 🏗️ Layer: Unknown
  - ƒ **buildQuery** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadReports** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **hasActiveFilters** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **clearFilters** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **onFilterChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **onSelectReport** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **+page** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/routes/reports/llm/[taskId]/+page.svelte
  - 🏗️ Layer: Unknown
  - ƒ **formatDate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **formatMs** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getDashboardCheckResult** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getCheckResultClasses** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadReport** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **backToReports** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **openTaskDetails** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **cleanupScreenshotBlobUrls** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadScreenshotBlobUrls** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **openScreenshot** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **LoginPage** (`Component`)
  - 📝 Provides the user interface for local and ADFS authentication.
  - 🏗️ Layer: UI
  - 🔒 Invariant: Shows both local login form and ADFS SSO button.
  - ⬅️ READS_FROM `app`
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `t`
  - ƒ **handleLogin** (`Function`)
    - 📝 Submits the local login form to the backend.
  - ƒ **handleADFSLogin** (`Function`)
    - 📝 Redirects the user to the ADFS login endpoint.
- 📦 **StorageIndexPage** (`Page`) `[TRIVIAL]`
  - 📝 Redirect to the backups page as the default storage view.
  - 🏗️ Layer: Page
  - 🔒 Invariant: Always redirects to /storage/backups.
- 📦 **StorageReposPage** (`Page`)
  - ƒ **fetchEnvironments** (`Function`)
    - 📝 Fetches the list of available environments.
  - ƒ **fetchDashboards** (`Function`)
    - 📝 Fetches dashboards for a specific environment.
- 📦 **DashboardHub** (`Page`)
  - 📝 Dashboard Hub - Central hub for managing dashboards with Git status and task actions
  - 🏗️ Layer: UI
  - 🔒 Invariant: Always shows dashboards for the active environment from context store
  - ƒ **DashboardHub.normalizeTaskStatus** (`Function`)
    - 📝 Normalize raw task status to stable lowercase token for UI.
  - ƒ **DashboardHub.normalizeValidationStatus** (`Function`)
    - 📝 Normalize validation status to pass/fail/warn/unknown.
  - ƒ **DashboardHub.getValidationBadgeClass** (`Function`)
    - 📝 Map validation level to badge class tuple.
  - ƒ **DashboardHub.getValidationLabel** (`Function`)
    - 📝 Map normalized validation level to compact UI label.
  - ƒ **DashboardHub.normalizeOwners** (`Function`)
    - 📝 Normalize owners payload to unique non-empty display labels.
  - ƒ **DashboardHub.loadDashboards** (`Function`)
    - 📝 Load full dashboard dataset for current environment and hydrate grid projection.
  - ƒ **DashboardHub.formatDate** (`Function`)
    - 📝 Convert ISO timestamp to locale date string.
  - ƒ **DashboardHub.getGitSummaryLabel** (`Function`)
    - 📝 Compute stable text label for git state column.
  - ƒ **DashboardHub.getLlmSummaryLabel** (`Function`)
    - 📝 Compute normalized LLM validation summary label.
  - ƒ **DashboardHub.getColumnCellValue** (`Function`)
    - 📝 Resolve comparable/filterable display value for any grid column.
  - ƒ **DashboardHub.getFilterOptions** (`Function`)
    - 📝 Build unique sorted value list for a column filter dropdown.
  - ƒ **DashboardHub.getVisibleFilterOptions** (`Function`)
    - 📝 Apply in-dropdown search over full filter options.
  - ƒ **DashboardHub.toggleFilterDropdown** (`Function`)
    - 📝 Toggle active column filter popover.
  - ƒ **DashboardHub.toggleFilterValue** (`Function`)
    - 📝 Add/remove specific filter value and reapply projection.
  - ƒ **DashboardHub.clearColumnFilter** (`Function`)
    - 📝 Reset selected values for one column.
  - ƒ **DashboardHub.selectAllColumnFilterValues** (`Function`)
    - 📝 Select all currently visible values in filter popover.
  - ƒ **DashboardHub.updateColumnFilterSearch** (`Function`)
    - 📝 Update local search token for one filter popover.
  - ƒ **DashboardHub.hasColumnFilter** (`Function`)
    - 📝 Determine if column has active selected values.
  - ƒ **DashboardHub.doesDashboardPassColumnFilters** (`Function`)
    - 📝 Evaluate dashboard row against all active column filters.
  - ƒ **DashboardHub.getSortValue** (`Function`)
    - 📝 Compute stable comparable sort key for chosen column.
  - ƒ **DashboardHub.handleSort** (`Function`)
    - 📝 Toggle or switch sort order and reapply grid projection.
  - ƒ **DashboardHub.getSortIndicator** (`Function`)
    - 📝 Return visual indicator for active/inactive sort header.
  - ƒ **DashboardHub.applyGridTransforms** (`Function`)
    - 📝 Apply search + column filters + sort + pagination to grid data.
- 📦 **+page** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/routes/dashboards/+page.svelte
  - 🏗️ Layer: Unknown
  - ƒ **handleDocumentClick** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **normalizeTaskStatus** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **normalizeValidationStatus** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getValidationBadgeClass** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getValidationLabel** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **normalizeOwners** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadDashboards** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSearch** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handlePageChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handlePageSizeChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **updateSelectionState** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleCheckboxChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSelectAll** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSelectVisible** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **formatDate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getGitSummaryLabel** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getLlmSummaryLabel** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getColumnCellValue** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getFilterOptions** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getVisibleFilterOptions** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **toggleFilterDropdown** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **toggleFilterValue** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **clearColumnFilter** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **selectAllColumnFilterValues** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **updateColumnFilterSearch** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **hasColumnFilter** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **doesDashboardPassColumnFilters** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getSortValue** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSort** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getSortIndicator** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **applyGridTransforms** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **toggleActionDropdown** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **closeActionDropdown** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleAction** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleValidate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleTargetEnvChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadDatabases** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleMappingUpdate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadDbMappings** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **calculateDryRun** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleBulkMigrate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleBulkBackup** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleTaskStatusClick** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **navigateToDashboardDetail** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getStatusBadgeClass** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **isGitBusy** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **setGitBusy** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **ensureGitConfigs** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **updateDashboardGitState** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **normalizeRepositoryStatusPayload** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **fetchDashboardGitStatusesBatch** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **refreshDashboardGitState** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **hydrateVisibleGitStatusesBatch** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleGitInit** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleGitSync** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleGitCommit** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleGitPull** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleGitPush** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getTaskStatusIcon** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getPaginationRange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **DashboardDetail** (`Page`)
  - 📝 Dashboard Detail View - Overview of charts and datasets linked to a dashboard
  - 🏗️ Layer: UI
  - 🔒 Invariant: Shows dashboard metadata, charts, and datasets for selected environment
- 📦 **+page** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/routes/dashboards/[id]/+page.svelte
  - 🏗️ Layer: Unknown
  - ƒ **loadDashboardPage** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadDashboardDetail** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadTaskHistory** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **releaseThumbnailUrl** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadThumbnail** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **runBackupTask** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **runLlmValidationTask** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **openLlmReport** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **toTaskTypeLabel** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getTaskStatusClasses** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getValidationStatus** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getValidationStatusClasses** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **goBack** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **openDataset** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **formatDate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadLlmStatus** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **hasGitRepository** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **resolveGitSyncState** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **allChangedFiles** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **countChangedByAnyPath** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getGitStatusMeta** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadGitStatus** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadGitDiffPreview** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **runGitSyncAndOpenCommit** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **runGitPull** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **runGitPush** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleBranchChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **AdminRolesPage** (`Component`)
  - 📝 UI for managing system roles and their permissions.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Only accessible by users with Admin role.
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `t`
  - ⬅️ READS_FROM `t`
  - ƒ **loadData** (`Function`)
    - 📝 Fetches roles and available permissions.
  - ƒ **openCreateModal** (`Function`)
    - 📝 Initializes state for creating a new role.
  - ƒ **openEditModal** (`Function`)
    - 📝 Initializes state for editing an existing role.
  - ƒ **handleSaveRole** (`Function`)
    - 📝 Submits role data (create or update).
  - ƒ **handleDeleteRole** (`Function`)
    - 📝 Deletes a role after confirmation.
- 🧩 **AdminUsersPage** (`Component`)
  - 📝 UI for managing system users and their roles.
  - 🏗️ Layer: Feature
  - 🔒 Invariant: Only accessible by users with "admin:users" permission.
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `t`
  - ⬅️ READS_FROM `t`
  - ƒ **loadData** (`Function`)
    - 📝 Fetches users and roles from the backend.
  - ƒ **openCreateModal** (`Function`)
    - 📝 Prepares the form for creating a new user.
  - ƒ **openEditModal** (`Function`)
    - 📝 Prepares the form for editing an existing user.
  - ƒ **handleSaveUser** (`Function`)
    - 📝 Submits user data to the backend (create or update).
  - ƒ **handleDeleteUser** (`Function`)
    - 📝 Deletes a user after confirmation.
- 🧩 **AdminSettingsPage** (`Component`)
  - 📝 UI for configuring Active Directory Group to local Role mappings for ADFS SSO and logging settings.
  - 🏗️ Layer: Feature
  - 🔒 Invariant: Only accessible by users with "admin:settings" permission.
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `t`
  - ⬅️ READS_FROM `t`
  - ƒ **loadData** (`Function`)
    - 📝 Fetches AD mappings and roles from the backend to populate the UI.
  - ƒ **handleCreateMapping** (`Function`)
    - 📝 Submits a new AD Group to Role mapping to the backend.
  - ƒ **loadLoggingConfig** (`Function`)
    - 📝 Fetches current logging configuration from the backend.
  - ƒ **saveLoggingConfig** (`Function`)
    - 📝 Saves logging configuration to the backend.
- 🧩 **LLMSettingsPage** (`Component`)
  - 📝 Admin settings page for LLM provider configuration.
  - 🏗️ Layer: UI
  - ⬅️ READS_FROM `t`
  - ➡️ WRITES_TO `t`
- 📦 **+page** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/routes/admin/settings/llm/+page.svelte
  - 🏗️ Layer: Unknown
  - ƒ **isMultimodalModel** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getProviderById** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **fetchProviders** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **saveSettings** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **MigrationDashboard** (`Component`) `[CRITICAL]`
  - 📝 Main dashboard for configuring and starting migrations.
  - 🏗️ Layer: Page
  - 🔒 Invariant: Migration cannot start without source and target environments.
  - ⬅️ READS_FROM `lib`
  - ⬅️ READS_FROM `selectedTask`
  - ➡️ WRITES_TO `selectedTask`
  - ƒ **fetchEnvironments** (`Function`) `[CRITICAL]`
    - 📝 Fetches the list of environments from the API.
  - ƒ **fetchDashboards** (`Function`) `[CRITICAL]`
    - 📝 Fetches dashboards for the selected source environment.
  - ƒ **fetchDatabases** (`Function`) `[CRITICAL]`
    - 📝 Fetches databases from both environments and gets suggestions.
  - ƒ **handleMappingUpdate** (`Function`) `[CRITICAL]`
    - 📝 Saves a mapping to the backend.
  - ƒ **handleViewLogs** (`Function`) `[CRITICAL]`
    - 📝 Opens the log viewer for a specific task.
  - ƒ **handlePasswordPrompt** (`Function`) `[CRITICAL]`
    - 📝 Reactive logic to show password prompt when a task is awaiting input.
  - ƒ **handleResumeMigration** (`Function`) `[CRITICAL]`
    - 📝 Resumes a migration task with provided passwords.
  - ƒ **startMigration** (`Function`) `[CRITICAL]`
    - 📝 Starts the migration process.
  - ƒ **startDryRun** (`Function`) `[CRITICAL]`
    - 📝 Builds pre-flight diff and risk summary without applying migration.
  - 🧩 **DashboardSelectionSection** (`Component`) `[CRITICAL]`
- 🧩 **MappingManagement** (`Component`) `[CRITICAL]`
  - 📝 Page for managing database mappings between environments.
  - 🏗️ Layer: Page
  - 🔒 Invariant: Mappings are saved to the backend for persistence.
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `t`
  - ⬅️ READS_FROM `t`
  - ƒ **fetchEnvironments** (`Function`) `[CRITICAL]`
    - 📝 Fetches the list of environments.
  - ƒ **fetchDatabases** (`Function`) `[CRITICAL]`
    - 📝 Fetches databases from both environments and gets suggestions.
  - ƒ **handleUpdate** (`Function`) `[CRITICAL]`
    - 📝 Saves a mapping to the backend.
- 🧩 **StoragePage** (`Component`)
  - 📝 Main page for unified file storage management.
  - 🏗️ Layer: UI
  - 🔒 Invariant: Always displays a unified storage view without category tabs.
  - ⬅️ READS_FROM `app`
  - ⬅️ READS_FROM `t`
  - ➡️ WRITES_TO `page`
  - ƒ **loadFiles** (`Function`)
    - 📝 Fetches the list of files from the server.
  - ƒ **handleDelete** (`Function`)
    - 📝 Handles the file deletion process.
  - ƒ **handleNavigate** (`Function`)
    - 📝 Updates the current path and reloads files when navigating into a directory.
  - ƒ **navigateUp** (`Function`)
    - 📝 Navigates one level up in the directory structure.
  - ƒ **updateUploadCategory** (`Function`)
    - 📝 Keeps upload category aligned with the currently viewed top-level folder.
- 🧩 **MapperPage** (`Component`) `[TRIVIAL]`
  - 📝 Page for the dataset column mapper tool.
  - 🏗️ Layer: UI
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `t`
- 🧩 **DebugPage** (`Component`) `[TRIVIAL]`
  - 📝 Page for system diagnostics and debugging.
  - 🏗️ Layer: UI
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `t`
- 📦 **SettingsPage** (`Page`) `[CRITICAL]`
  - 📝 Consolidated Settings Page - All settings in one place with tabbed navigation
  - 🏗️ Layer: UI
  - 🔒 Invariant: Always shows tabbed interface with all settings categories
- 📦 **+page** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/routes/settings/+page.svelte
  - 🏗️ Layer: Unknown
  - ƒ **normalizeTab** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **readTabFromUrl** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **writeTabToUrl** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadSettings** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **normalizeLlmSettings** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **isMultimodalModel** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **getProviderById** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **isDashboardValidationBindingValid** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleTabChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadMigrationSettings** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **loadMappingsPage** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **onMappingsSearchInput** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **onMappingsFilterChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **goToMappingsPage** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **saveMigrationSettings** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **triggerSyncNow** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSave** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleTestEnv** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **editEnv** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **resetEnvForm** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleAddOrUpdateEnv** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleDeleteEnv** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **resolveEnvStage** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **normalizeSupersetBaseUrl** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- ƒ **load** (`Function`)
  - 📝 Loads application settings and environment list.
- 🧩 **ConnectionsSettingsPage** (`Component`)
  - 📝 Page for managing database connection configurations.
  - 🏗️ Layer: UI
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `t`
  - ƒ **handleSuccess** (`Function`)
    - 📝 Refreshes the connection list after a successful creation.
- 🧩 **GitSettingsPage** (`Component`)
  - 📝 Manage Git server configurations for dashboard versioning.
  - 🏗️ Layer: Page
  - 🔒 Invariant: All configurations must be validated via connection test.
  - ⬅️ READS_FROM `lib`
  - ⬅️ READS_FROM `t`
  - ➡️ WRITES_TO `t`
  - ƒ **loadConfigs** (`Function`)
    - 📝 Fetches existing git configurations.
  - ƒ **handleTest** (`Function`)
    - 📝 Tests connection to a git server with current form data.
  - ƒ **handleSave** (`Function`)
    - 📝 Saves a new git configuration.
  - ƒ **handleDelete** (`Function`)
    - 📝 Deletes a git configuration by ID.
  - ƒ **loadGiteaRepos** (`Function`)
    - 📝 Loads repositories from selected Gitea config.
  - ƒ **handleCreateGiteaRepo** (`Function`)
    - 📝 Creates new repository on selected Gitea server.
  - ƒ **handleDeleteGiteaRepo** (`Function`)
    - 📝 Deletes repository from selected Gitea server.
- 🧩 **GitDashboardPage** (`Component`)
  - 📝 Dashboard management page for Git integration.
  - 🏗️ Layer: Page
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `environmentContextStore`
  - ⬅️ READS_FROM `environmentContextStore`
  - ƒ **fetchEnvironments** (`Function`)
    - 📝 Fetches the list of deployment environments from the API.
  - ƒ **fetchDashboards** (`Function`)
    - 📝 Fetches dashboards for a specific environment.
- 🧩 **Dashboard** (`Component`)
  - 📝 Displays the list of available plugins and allows selecting one.
  - 🏗️ Layer: UI
  - ⬅️ READS_FROM `plugins`
  - ƒ **onMount** (`Function`)
    - 📝 Fetch plugins when the component mounts.
  - ƒ **selectPlugin** (`Function`)
    - 📝 Selects a plugin to display its form.
- 🧩 **Settings** (`Component`)
  - 📝 The main settings page for the application, allowing management of environments and global settings.
  - 🏗️ Layer: UI
  - 🔒 Invariant: Settings changes must be saved to the backend.
  - ⬅️ READS_FROM `t`
  - ➡️ WRITES_TO `t`
  - ƒ **loadSettings** (`Function`)
    - 📝 Loads settings from the backend.
  - ƒ **handleSaveGlobal** (`Function`)
    - 📝 Saves global settings to the backend.
  - ƒ **handleAddOrUpdateEnv** (`Function`)
    - 📝 Adds or updates an environment.
  - ƒ **handleDeleteEnv** (`Function`)
    - 📝 Deletes an environment.
  - ƒ **handleTestEnv** (`Function`)
    - 📝 Tests the connection to an environment.
  - ƒ **editEnv** (`Function`)
    - 📝 Sets the form to edit an existing environment.
  - ƒ **resetEnvForm** (`Function`)
    - 📝 Resets the environment form.
- ƒ **getConnections** (`Function`)
  - 📝 Fetch a list of saved connections.
- ƒ **createConnection** (`Function`)
  - 📝 Create a new connection configuration.
- ƒ **deleteConnection** (`Function`)
  - 📝 Delete a connection configuration.
- 📦 **GitServiceClient** (`Module`)
  - 📝 API client for Git operations, managing the communication between frontend and backend.
  - 🏗️ Layer: Service
  - 📦 **gitService** (`Action`)
    - 📝 Promotes changes between branches via MR or direct merge.
  - ƒ **buildDashboardRepoEndpoint** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- ƒ **runTask** (`Function`)
  - 📝 Start a new task for a given plugin.
- ƒ **getTaskStatus** (`Function`)
  - 📝 Fetch details for a specific task (to poll status or get result).
- 📦 **adminService** (`Module`)
  - 📝 Service for Admin-related API calls (User and Role management).
  - 🏗️ Layer: Service
  - 🔒 Invariant: All requests must include valid Admin JWT token (handled by api client).
  - 🔗 DEPENDS_ON -> `frontend.src.lib.api`
  - ƒ **getUsers** (`Function`)
    - 📝 Fetches all registered users from the backend.
  - ƒ **createUser** (`Function`)
    - 📝 Creates a new local user.
  - ƒ **getRoles** (`Function`)
    - 📝 Fetches all available system roles.
  - ƒ **getADGroupMappings** (`Function`)
    - 📝 Fetches mappings between AD groups and local roles.
  - ƒ **createADGroupMapping** (`Function`)
    - 📝 Creates or updates an AD group to Role mapping.
  - ƒ **updateUser** (`Function`)
    - 📝 Updates an existing user.
  - ƒ **deleteUser** (`Function`)
    - 📝 Deletes a user.
  - ƒ **createRole** (`Function`)
    - 📝 Creates a new role.
  - ƒ **updateRole** (`Function`)
    - 📝 Updates an existing role.
  - ƒ **deleteRole** (`Function`)
    - 📝 Deletes a role.
  - ƒ **getPermissions** (`Function`)
    - 📝 Fetches all available permissions.
  - ƒ **getLoggingConfig** (`Function`)
    - 📝 Fetches current logging configuration.
  - ƒ **updateLoggingConfig** (`Function`)
    - 📝 Updates logging configuration.
- ƒ **getTasks** (`Function`)
  - 📝 Fetch a list of tasks with pagination and optional status filter.
- ƒ **getTask** (`Function`)
  - 📝 Fetch details for a specific task.
- ƒ **getTaskLogs** (`Function`)
  - 📝 Fetch logs for a specific task.
- ƒ **resumeTask** (`Function`)
  - 📝 Resume a task that is awaiting input (e.g., passwords).
- ƒ **resolveTask** (`Function`)
  - 📝 Resolve a task that is awaiting mapping.
- ƒ **clearTasks** (`Function`)
  - 📝 Clear tasks based on status.
- 📦 **storageService** (`Module`)
  - 📝 Frontend API client for file storage management.
  - 🏗️ Layer: Service
  - ƒ **getStorageAuthHeaders** (`Function`)
    - 📝 Returns headers with Authorization for storage API calls.
  - ƒ **listFiles** (`Function`)
    - 📝 Fetches the list of files for a given category and subpath.
  - ƒ **uploadFile** (`Function`)
    - 📝 Uploads a file to the storage system.
  - ƒ **deleteFile** (`Function`)
    - 📝 Deletes a file or directory from storage.
  - ƒ **downloadFileUrl** (`Function`)
    - 📝 Returns the URL for downloading a file.
- 🧩 **DashboardGrid** (`Component`)
  - 📝 Displays a grid of dashboards with selection and pagination.
  - 🏗️ Layer: Component
  - 🔒 Invariant: Selected IDs must be a subset of available dashboards.
  - ⚡ Events: selectionChanged
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
  - ➡️ WRITES_TO `derived`
  - ƒ **handleSort** (`Function`)
    - 📝 Toggles sort direction or changes sort column.
  - ƒ **handleSelectionChange** (`Function`)
    - 📝 Handles individual checkbox changes.
  - ƒ **handleSelectAll** (`Function`)
    - 📝 Handles select all checkbox.
  - ƒ **goToPage** (`Function`)
    - 📝 Changes current page.
  - ƒ **getRepositoryStatusToken** (`Function`)
    - 📝 Returns normalized repository status token for a dashboard.
  - ƒ **isRepositoryReady** (`Function`)
    - 📝 Determines whether git actions can run for a dashboard.
  - ƒ **invalidateRepositoryStatuses** (`Function`)
    - 📝 Marks dashboard statuses as loading so they are refetched.
  - ƒ **resolveRepositoryStatusToken** (`Function`)
    - 📝 Converts git status payload into a stable UI status token.
  - ƒ **loadRepositoryStatuses** (`Function`)
    - 📝 Hydrates repository status map for dashboards in repository mode.
  - ƒ **runBulkGitAction** (`Function`)
    - 📝 Executes git action for selected dashboards with limited parallelism.
  - ƒ **handleBulkSync** (`Function`)
  - ƒ **handleBulkCommit** (`Function`)
  - ƒ **handleBulkPull** (`Function`)
  - ƒ **handleBulkPush** (`Function`)
  - ƒ **handleManageSelected** (`Function`)
    - 📝 Opens Git manager for exactly one selected dashboard.
  - ƒ **getSortStatusValue** (`Function`)
    - 📝 Returns sort value for status column based on mode.
  - ƒ **getStatusLabel** (`Function`)
    - 📝 Returns localized label for status column.
  - ƒ **getStatusBadgeClass** (`Function`)
    - 📝 Returns badge style for status column.
- 🧩 **PasswordPrompt** (`Component`)
  - 📝 A modal component to prompt the user for database passwords when a migration task is paused.
  - 🏗️ Layer: UI
  - ⚡ Events: cancel, resume
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
  - ⬅️ READS_FROM `effect`
  - ƒ **handleSubmit** (`Function`)
    - 📝 Validates and dispatches the passwords to resume the task.
  - ƒ **handleCancel** (`Function`)
    - 📝 Cancels the password prompt.
- 🧩 **MappingTable** (`Component`)
  - 📝 Displays and allows editing of database mappings.
  - 🏗️ Layer: Feature
  - 🔒 Invariant: Each source database can be mapped to one target database.
  - ⚡ Events: update
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `t`
  - ƒ **updateMapping** (`Function`)
    - 📝 Updates a mapping for a specific source database.
  - ƒ **getSuggestion** (`Function`)
    - 📝 Finds a suggestion for a source database.
- 🧩 **TaskLogViewer** (`Component`)
  - 📝 Displays detailed logs for a specific task inline or in a modal using TaskLogPanel.
  - 🏗️ Layer: UI
  - 🔒 Invariant: Real-time logs are always appended without duplicates.
  - ⚡ Events: close
  - ➡️ WRITES_TO `bindable`
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
  - 📦 **handleRealTimeLogs** (`Action`)
    - 📝 Sync real-time logs to the current log list
  - ƒ **fetchLogs** (`Function`)
    - 📝 Fetches logs for a given task ID
  - ƒ **handleFilterChange** (`Function`)
    - 📝 Updates filter conditions for the log viewer
  - ƒ **handleRefresh** (`Function`)
    - 📝 Refreshes the logs by polling the API
  - 🧩 **showInline** (`Component`)
    - 📝 Shows inline logs -->
    - 🏗️ Layer: UI -->
  - 🧩 **showModal** (`Component`)
    - 📝 Shows modal logs -->
    - 🏗️ Layer: UI -->
- 🧩 **Footer** (`Component`) `[TRIVIAL]`
  - 📝 Displays the application footer with copyright information.
  - 🏗️ Layer: UI
- 🧩 **MissingMappingModal** (`Component`)
  - 📝 Prompts the user to provide a database mapping when one is missing during migration.
  - 🏗️ Layer: Feature
  - 🔒 Invariant: Modal blocks migration progress until resolved or cancelled.
  - ⚡ Events: cancel, resolve
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
  - ƒ **resolve** (`Function`)
    - 📝 Dispatches the resolution event with the selected mapping.
  - ƒ **cancel** (`Function`)
    - 📝 Cancels the mapping resolution modal.
- 🧩 **DashboardGrid** (`Component`)
  - 📝 Displays a grid of dashboards with selection and pagination.
  - 🏗️ Layer: Component
  - 🔒 Invariant: Selected IDs must be a subset of available dashboards.
  - ⚡ Events: selectionChanged
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
  - ➡️ WRITES_TO `derived`
  - ƒ **handleValidate** (`Function`)
    - 📝 Triggers dashboard validation task.
  - ƒ **handleSort** (`Function`)
    - 📝 Toggles sort direction or changes sort column.
  - ƒ **handleSelectionChange** (`Function`)
    - 📝 Handles individual checkbox changes.
  - ƒ **handleSelectAll** (`Function`)
    - 📝 Handles select all checkbox.
  - ƒ **goToPage** (`Function`)
    - 📝 Changes current page.
  - ƒ **openGit** (`Function`)
    - 📝 Opens the Git management modal for a dashboard.
- 🧩 **Navbar** (`Component`)
  - 📝 Main navigation bar for the application.
  - 🏗️ Layer: UI
  - ⬅️ READS_FROM `app`
  - ⬅️ READS_FROM `lib`
  - ➡️ WRITES_TO `page`
- 📦 **Navbar** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/components/Navbar.svelte
  - 🏗️ Layer: Unknown
  - ƒ **handleLogout** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **TaskHistory** (`Component`)
  - 📝 Displays a list of recent tasks with their status and allows selecting them for viewing logs.
  - 🏗️ Layer: UI
  - ⬅️ READS_FROM `selectedTask`
  - ➡️ WRITES_TO `selectedTask`
  - ⬅️ READS_FROM `t`
  - ƒ **fetchTasks** (`Function`)
    - 📝 Fetches the list of recent tasks from the API.
  - ƒ **clearTasks** (`Function`)
    - 📝 Clears tasks from the history, optionally filtered by status.
  - ƒ **selectTask** (`Function`)
    - 📝 Selects a task and fetches its full details.
  - ƒ **getStatusColor** (`Function`)
    - 📝 Returns the CSS color class for a given task status.
  - ƒ **onMount** (`Function`)
    - 📝 Initializes the component by fetching tasks and starting polling.
  - ƒ **onDestroy** (`Function`)
    - 📝 Cleans up the polling interval when the component is destroyed.
- 🧩 **Toast** (`Component`) `[TRIVIAL]`
  - 📝 Displays transient notifications (toasts) in the bottom-right corner.
  - 🏗️ Layer: UI
  - ⬅️ READS_FROM `toasts`
- 🧩 **TaskRunner** (`Component`)
  - 📝 Connects to a WebSocket to display real-time logs for a running task with filtering support.
  - 🏗️ Layer: UI
  - ⬅️ READS_FROM `t`
  - ⬅️ READS_FROM `selectedTask`
  - ➡️ WRITES_TO `t`
  - ƒ **connect** (`Function`)
    - 📝 Establishes WebSocket connection with exponential backoff and filter parameters.
  - ƒ **handleFilterChange** (`Function`)
    - 📝 Handles filter changes and reconnects WebSocket with new parameters.
  - ƒ **fetchTargetDatabases** (`Function`)
    - 📝 Fetches available databases from target environment for mapping.
  - ƒ **handleMappingResolve** (`Function`)
    - 📝 Resolves missing database mapping and continues migration.
  - ƒ **handlePasswordResume** (`Function`)
    - 📝 Submits passwords and resumes paused migration task.
  - ƒ **startDataTimeout** (`Function`)
    - 📝 Starts timeout timer to detect idle connection.
  - ƒ **resetDataTimeout** (`Function`)
    - 📝 Resets data timeout timer when new data arrives.
  - ƒ **onMount** (`Function`)
    - 📝 Initializes WebSocket connection when component mounts.
  - ƒ **onDestroy** (`Function`)
- 🧩 **TaskList** (`Component`)
  - 📝 Displays a list of tasks with their status and execution details.
  - 🏗️ Layer: Component
  - ⚡ Events: select
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `t`
  - ⬅️ READS_FROM `t`
  - ƒ **getStatusColor** (`Function`)
    - 📝 Returns the CSS color class for a given task status.
  - ƒ **formatTime** (`Function`)
    - 📝 Formats a date string using date-fns.
  - ƒ **handleTaskClick** (`Function`)
    - 📝 Dispatches a select event when a task is clicked.
- 🧩 **DynamicForm** (`Component`)
  - 📝 Generates a form dynamically based on a JSON schema.
  - 🏗️ Layer: UI
  - ⚡ Events: submit
  - ➡️ WRITES_TO `props`
  - ƒ **handleSubmit** (`Function`)
    - 📝 Dispatches the submit event with the form data.
  - ƒ **initializeForm** (`Function`)
    - 📝 Initialize form data with default values from the schema.
- 🧩 **EnvSelector** (`Component`)
  - 📝 Provides a UI component for selecting source and target environments.
  - 🏗️ Layer: Feature
  - 🔒 Invariant: Source and target environments must be selectable from the list of configured environments.
  - ⚡ Events: change
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `t`
  - ƒ **handleSelect** (`Function`)
    - 📝 Dispatches the selection change event.
- 🧩 **ProtectedRoute** (`Component`) `[TRIVIAL]`
  - 📝 Wraps content to ensure only authenticated users can access it.
  - 🏗️ Layer: Component
  - 🔒 Invariant: Redirects to /login if user is not authenticated.
  - ⬅️ READS_FROM `app`
  - ⬅️ READS_FROM `auth`
- 🧩 **TaskLogPanel** (`Component`)
  - 📝 Combines log filtering and display into a single cohesive dark-themed panel.
  - 🏗️ Layer: UI
  - 🔒 Invariant: Must always display logs in chronological order and respect auto-scroll preference.
  - ⚡ Events: filterChange
  - ➡️ WRITES_TO `bindable`
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
- 📦 **TaskLogPanel** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/components/tasks/TaskLogPanel.svelte
  - 🏗️ Layer: Unknown
  - ƒ **filterLogs** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleFilterChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **scrollToBottom** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **toggleAutoScroll** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **LogFilterBar** (`Component`)
  - 📝 Compact filter toolbar for logs — level, source, and text search in a single dense row.
  - 🏗️ Layer: UI
  - ➡️ WRITES_TO `bindable`
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `derived`
- 📦 **LogFilterBar** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/components/tasks/LogFilterBar.svelte
  - 🏗️ Layer: Unknown
  - ƒ **handleLevelChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSourceChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSearchChange** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **clearFilters** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **LogEntryRow** (`Component`)
  - 📝 Renders a single log entry with stacked layout optimized for narrow drawer panels.
  - 🏗️ Layer: UI
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `derived`
  - ƒ **formatTime** (`Function`)
    - 📝 Format ISO timestamp to HH:MM:SS */
- 📦 **TaskResultPanel** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/components/tasks/TaskResultPanel.svelte
  - 🏗️ Layer: Unknown
  - ƒ **statusColor** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **frontend.src.components.__tests__.task_log_viewer** (`Module`)
  - 📝 Unit tests for TaskLogViewer component by mounting it and observing the DOM.
  - 🏗️ Layer: UI (Tests)
  - 🔒 Invariant: Duplicate logs are never appended. Polling only active for in-progress tasks.
- 🧩 **FileList** (`Component`)
  - 📝 Displays a table of files with metadata and actions.
  - 🏗️ Layer: UI
  - ⚡ Events: delete, navigate
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `t`
  - ⬅️ READS_FROM `t`
  - ƒ **isDirectory** (`Function`)
    - 📝 Checks if a file object represents a directory.
  - ƒ **formatSize** (`Function`)
    - 📝 Formats file size in bytes into a human-readable string.
  - ƒ **formatDate** (`Function`)
    - 📝 Formats an ISO date string into a localized readable format.
- 🧩 **FileUpload** (`Component`)
  - 📝 Provides a form for uploading files to a specific category.
  - 🏗️ Layer: UI
  - ⚡ Events: uploaded
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
  - ⬅️ READS_FROM `t`
  - ƒ **handleUpload** (`Function`)
    - 📝 Handles the file upload process.
  - ƒ **handleDrop** (`Function`)
    - 📝 Handles the file drop event for drag-and-drop.
- 🧩 **ConnectionForm** (`Component`)
  - 📝 UI component for creating a new database connection configuration.
  - 🏗️ Layer: UI
  - ⚡ Events: success
  - ⬅️ READS_FROM `t`
  - ➡️ WRITES_TO `t`
  - ƒ **handleSubmit** (`Function`)
    - 📝 Submits the connection form to the backend.
  - ƒ **resetForm** (`Function`)
    - 📝 Resets the connection form fields to their default values.
- 🧩 **ConnectionList** (`Component`)
  - 📝 UI component for listing and deleting saved database connection configurations.
  - 🏗️ Layer: UI
  - ⬅️ READS_FROM `t`
  - ➡️ WRITES_TO `t`
  - ƒ **fetchConnections** (`Function`)
    - 📝 Fetches the list of connections from the backend.
  - ƒ **handleDelete** (`Function`)
    - 📝 Deletes a connection configuration.
- 🧩 **MapperTool** (`Component`)
  - 📝 UI component for mapping dataset column verbose names using the MapperPlugin.
  - 🏗️ Layer: UI
  - ⬅️ READS_FROM `t`
  - ➡️ WRITES_TO `t`
  - ƒ **fetchData** (`Function`)
    - 📝 Fetches environments and saved connections.
  - ƒ **handleRunMapper** (`Function`)
    - 📝 Triggers the MapperPlugin task.
  - ƒ **handleGenerateDocs** (`Function`)
    - 📝 Triggers the LLM Documentation task.
- 📦 **MapperTool** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/components/tools/MapperTool.svelte
  - 🏗️ Layer: Unknown
  - ƒ **handleApplyDoc** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **DebugTool** (`Component`)
  - 📝 UI component for system diagnostics and debugging API responses.
  - 🏗️ Layer: UI
  - ⬅️ READS_FROM `t`
  - ➡️ WRITES_TO `t`
  - ƒ **fetchEnvironments** (`Function`)
    - 📝 Fetches available environments.
  - ƒ **handleRunDebug** (`Function`)
    - 📝 Triggers the debug task.
  - ƒ **startPolling** (`Function`)
    - 📝 Polls for task completion.
- 🧩 **CommitHistory** (`Component`)
  - 📝 Displays the commit history for a specific dashboard.
  - 🏗️ Layer: Component
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
  - ⬅️ READS_FROM `t`
  - ƒ **onMount** (`Function`)
    - 📝 Load history when component is mounted.
  - ƒ **loadHistory** (`Function`)
    - 📝 Fetch commit history from the backend.
- 🧩 **DeploymentModal** (`Component`)
  - 📝 Modal for deploying a dashboard to a target environment.
  - 🏗️ Layer: Component
  - 🔒 Invariant: Cannot deploy without a selected environment.
  - ⚡ Events: deploy
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
  - ➡️ WRITES_TO `derived`
  - 📦 **loadStatus** (`Watcher`)
  - ƒ **normalizeEnvStage** (`Function`)
    - 📝 Normalize environment stage with legacy production fallback.
  - ƒ **resolveEnvUrl** (`Function`)
    - 📝 Resolve environment URL from consolidated or git-specific payload shape.
  - ƒ **loadEnvironments** (`Function`)
    - 📝 Fetch available environments from API.
  - ƒ **handleDeploy** (`Function`)
    - 📝 Trigger deployment to selected environment.
- 🧩 **ConflictResolver** (`Component`)
  - 📝 UI for resolving merge conflicts (Keep Mine / Keep Theirs).
  - 🏗️ Layer: Component
  - 🔒 Invariant: User must resolve all conflicts before saving.
  - ⚡ Events: resolve
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
  - ƒ **resolve** (`Function`)
    - 📝 Set resolution strategy for a file.
  - ƒ **handleSave** (`Function`)
    - 📝 Validate and submit resolutions.
- 🧩 **CommitModal** (`Component`)
  - 📝 Модальное окно для создания коммита с просмотром изменений (diff).
  - 🏗️ Layer: Component
  - ⚡ Events: commit
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
  - ⬅️ READS_FROM `t`
  - ƒ **handleGenerateMessage** (`Function`)
    - 📝 Generates a commit message using LLM.
  - ƒ **loadStatus** (`Function`)
    - 📝 Загружает текущий статус репозитория и diff.
  - ƒ **handleCommit** (`Function`)
    - 📝 Создает коммит с указанным сообщением.
- 🧩 **BranchSelector** (`Component`)
  - 📝 UI для выбора и создания веток Git.
  - 🏗️ Layer: Component
  - ⚡ Events: change
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
  - ⬅️ READS_FROM `t`
  - ƒ **onMount** (`Function`)
    - 📝 Load branches when component is mounted.
  - ƒ **loadBranches** (`Function`)
    - 📝 Загружает список веток для дашборда.
  - ƒ **handleSelect** (`Function`)
    - 📝 Handles branch selection from dropdown.
  - ƒ **handleCheckout** (`Function`)
    - 📝 Переключает текущую ветку.
  - ƒ **handleCreate** (`Function`)
    - 📝 Создает новую ветку.
- 🧩 **GitManager** (`Component`)
  - 📝 Центральный UI управления Git с фокусом на рабочий поток аналитика (commit -> promote -> deploy).
  - 🏗️ Layer: Component
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `state`
  - ➡️ WRITES_TO `derived`
  - ƒ **normalizeEnvStage** (`Function`)
    - 📝 Normalize environment stage with legacy fallback.
  - ƒ **stageBadgeClass** (`Function`)
    - 📝 Return visual class for environment stage badges.
  - ƒ **resolveCurrentEnvironmentId** (`Function`)
    - 📝 Resolve active environment id for current dashboard session.
  - ƒ **applyGitflowStageDefaults** (`Function`)
    - 📝 Apply GitFlow defaults by current environment stage.
  - ƒ **loadCurrentEnvironmentStage** (`Function`)
    - 📝 Detect current environment stage and bind GitFlow defaults.
  - ƒ **isNumericDashboardRef** (`Function`)
    - 📝 Checks whether current dashboard reference is numeric ID.
  - ƒ **checkStatus** (`Function`)
    - 📝 Verify repository initialization for dashboard slug.
  - ƒ **loadWorkspace** (`Function`)
    - 📝 Load current git status and combined diff for workspace tab.
  - ƒ **handleSync** (`Function`)
    - 📝 Sync latest dashboard config from Superset to git workspace.
  - ƒ **handleGenerateMessage** (`Function`)
    - 📝 Generate commit message from diff using LLM.
  - ƒ **handleCommit** (`Function`)
    - 📝 Commit current workspace changes with provided message.
  - ƒ **handlePull** (`Function`)
    - 📝 Pull remote changes for current branch.
  - ƒ **handlePush** (`Function`)
    - 📝 Push local commits to remote repository.
  - ƒ **handlePromote** (`Function`)
    - 📝 Promote branch to the next stage via MR or unsafe direct mode.
  - ƒ **openDeployModal** (`Function`)
    - 📝 Open deploy modal with extra confirmation for PROD context.
  - ƒ **getSelectedConfig** (`Function`)
    - 📝 Return currently selected git server config.
  - ƒ **resolveDefaultConfig** (`Function`)
    - 📝 Resolve default git config for current session.
  - ƒ **buildSuggestedRepoName** (`Function`)
    - 📝 Build deterministic repository name from dashboard title/id.
  - ƒ **handleCreateRemoteRepo** (`Function`)
    - 📝 Create remote repository on selected Git provider.
  - ƒ **handleInit** (`Function`)
    - 📝 Initialize git repository for dashboard.
  - ƒ **closeModal** (`Function`)
    - 📝 Close git manager modal.
  - ƒ **handleBackdropClick** (`Function`)
    - 📝 Close modal on backdrop click.
- 🧩 **DocPreview** (`Component`)
  - 📝 UI component for previewing generated dataset documentation before saving.
  - 🏗️ Layer: UI
  - ➡️ WRITES_TO `props`
  - ➡️ WRITES_TO `derived`
  - ➡️ WRITES_TO `state`
- 📦 **DocPreview** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/components/llm/DocPreview.svelte
  - 🏗️ Layer: Unknown
  - ƒ **handleSave** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 🧩 **ProviderConfig** (`Component`) `[CRITICAL]`
  - 📝 UI form for managing LLM provider configurations.
  - 🏗️ Layer: UI
  - 📥 Props: providers: any, onSave: any
  - ➡️ WRITES_TO `t`
  - ⬅️ READS_FROM `t`
- 📦 **ProviderConfig** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/components/llm/ProviderConfig.svelte
  - 🏗️ Layer: Unknown
  - ƒ **isMultimodalModel** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **resetForm** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleEdit** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **testConnection** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **handleSubmit** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **toggleActive** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **ValidationReport** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for frontend/src/components/llm/ValidationReport.svelte
  - 🏗️ Layer: Unknown
  - ƒ **getStatusColor** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **frontend.src.components.llm.__tests__.provider_config_integration** (`Module`)
  - 📝 Protect edit-button interaction contract in LLM provider settings UI.
  - 🏗️ Layer: UI Tests
  - 🔒 Invariant: Edit action keeps explicit click handler and opens normalized edit form.
  - ƒ **provider_config_edit_contract_tests** (`Function`)
    - 📝 Validate edit button handler wiring and normalized edit form state mapping.
- 📦 **test_auth_debug** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/test_auth_debug.py
  - 🏗️ Layer: Unknown
  - ƒ **main** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.delete_running_tasks** (`Module`)
  - 📝 Script to delete tasks with RUNNING status from the database.
  - 🏗️ Layer: Utility
  - ƒ **delete_running_tasks** (`Function`)
    - 📝 Delete all tasks with RUNNING status from the database.
- 📦 **AppModule** (`Module`) `[CRITICAL]`
  - 📝 The main entry point for the FastAPI application. It initializes the app, configures CORS, sets up dependencies, includes API routers, and defines the WebSocket endpoint for log streaming.
  - 🏗️ Layer: UI (API)
  - 🔒 Invariant: All WebSocket connections must be properly cleaned up on disconnect.
  - 📦 **App** (`Global`)
    - 📝 The global FastAPI application instance.
  - ƒ **startup_event** (`Function`)
    - 📝 Handles application startup tasks, such as starting the scheduler.
  - ƒ **shutdown_event** (`Function`)
    - 📝 Handles application shutdown tasks, such as stopping the scheduler.
  - ƒ **network_error_handler** (`Function`)
    - 📝 Global exception handler for NetworkError.
  - ƒ **log_requests** (`Function`)
    - 📝 Middleware to log incoming HTTP requests and their response status.
  - 📦 **api.include_routers** (`Action`)
    - 📝 Registers all API routers with the FastAPI application.
    - 🏗️ Layer: API
  - ƒ **websocket_endpoint** (`Function`) `[CRITICAL]`
    - 📝 Provides a WebSocket endpoint for real-time log streaming of a task with server-side filtering.
  - 📦 **StaticFiles** (`Mount`)
    - 📝 Mounts the frontend build directory to serve static assets.
    - ƒ **serve_spa** (`Function`)
      - 📝 Serves the SPA frontend for any path not matched by API routes.
    - ƒ **read_root** (`Function`)
      - 📝 A simple root endpoint to confirm that the API is running when frontend is missing.
  - ƒ **matches_filters** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **Dependencies** (`Module`)
  - 📝 Manages creation and provision of shared application dependencies, such as PluginLoader and TaskManager, to avoid circular imports.
  - 🏗️ Layer: Core
  - ƒ **get_config_manager** (`Function`)
    - 📝 Dependency injector for ConfigManager.
  - ƒ **get_plugin_loader** (`Function`)
    - 📝 Dependency injector for PluginLoader.
  - ƒ **get_task_manager** (`Function`)
    - 📝 Dependency injector for TaskManager.
  - ƒ **get_scheduler_service** (`Function`)
    - 📝 Dependency injector for SchedulerService.
  - ƒ **get_resource_service** (`Function`)
    - 📝 Dependency injector for ResourceService.
  - ƒ **get_mapping_service** (`Function`)
    - 📝 Dependency injector for MappingService.
  - ƒ **get_clean_release_repository** (`Function`)
    - 📝 Dependency injector for CleanReleaseRepository.
  - 📦 **oauth2_scheme** (`Variable`)
    - 📝 OAuth2 password bearer scheme for token extraction.
  - ƒ **get_current_user** (`Function`)
    - 📝 Dependency for retrieving currently authenticated user from a JWT.
  - ƒ **has_permission** (`Function`)
    - 📝 Dependency for checking if the current user has a specific permission.
  - ƒ **permission_checker** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.scripts.seed_superset_load_test** (`Module`)
  - 📝 Creates randomized load-test data in Superset by cloning chart configurations and creating dashboards in target environments.
  - 🏗️ Layer: Scripts
  - 🔒 Invariant: Created chart and dashboard names are globally unique for one script run.
  - ƒ **_parse_args** (`Function`)
    - 📝 Parses CLI arguments for load-test data generation.
  - ƒ **_extract_result_payload** (`Function`)
    - 📝 Normalizes Superset API payloads that may be wrapped in `result`.
  - ƒ **_extract_created_id** (`Function`)
    - 📝 Extracts object ID from create/update API response.
  - ƒ **_generate_unique_name** (`Function`)
    - 📝 Generates globally unique random names for charts/dashboards.
  - ƒ **_resolve_target_envs** (`Function`)
    - 📝 Resolves requested environment IDs from configuration.
  - ƒ **_build_chart_template_pool** (`Function`)
    - 📝 Builds a pool of source chart templates to clone in one environment.
  - ƒ **seed_superset_load_data** (`Function`)
    - 📝 Creates dashboards and cloned charts for load testing across target environments.
  - ƒ **main** (`Function`)
    - 📝 CLI entrypoint for Superset load-test data seeding.
- 📦 **test_dataset_dashboard_relations** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/src/scripts/test_dataset_dashboard_relations.py
  - 🏗️ Layer: Unknown
  - ƒ **test_dashboard_dataset_relations** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.scripts.clean_release_tui** (`Module`)
  - 📝 Provide clean release TUI entrypoint placeholder for phased implementation.
  - 🏗️ Layer: UI
  - 🔒 Invariant: Entry point is executable and does not mutate release data in placeholder mode.
  - 🔗 BINDS_TO -> `specs/023-clean-repo-enterprise/ux_reference.md`
  - ƒ **main** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.scripts.migrate_sqlite_to_postgres** (`Module`)
  - 📝 Migrates legacy config and task history from SQLite/file storage to PostgreSQL.
  - 🏗️ Layer: Scripts
  - 🔒 Invariant: Script is idempotent for task_records and app_configurations.
  - 📦 **Constants** (`Section`)
  - ƒ **_json_load_if_needed** (`Function`)
    - 📝 Parses JSON-like values from SQLite TEXT/JSON columns to Python objects.
  - ƒ **_find_legacy_config_path** (`Function`)
    - 📝 Resolves the existing legacy config.json path from candidates.
  - ƒ **_connect_sqlite** (`Function`)
    - 📝 Opens a SQLite connection with row factory.
  - ƒ **_ensure_target_schema** (`Function`)
    - 📝 Ensures required PostgreSQL tables exist before migration.
  - ƒ **_migrate_config** (`Function`)
    - 📝 Migrates legacy config.json into app_configurations(global).
  - ƒ **_migrate_tasks_and_logs** (`Function`)
    - 📝 Migrates task_records and task_logs from SQLite into PostgreSQL.
  - ƒ **run_migration** (`Function`)
    - 📝 Orchestrates migration from SQLite/file to PostgreSQL.
  - ƒ **main** (`Function`)
    - 📝 CLI entrypoint.
- 📦 **backend.src.scripts.seed_permissions** (`Module`)
  - 📝 Populates the auth database with initial system permissions.
  - 🏗️ Layer: Scripts
  - 🔒 Invariant: Safe to run multiple times (idempotent).
  - 📦 **INITIAL_PERMISSIONS** (`Constant`)
  - ƒ **seed_permissions** (`Function`)
    - 📝 Inserts missing permissions into the database.
- 📦 **backend.src.scripts.init_auth_db** (`Module`) `[CRITICAL]`
  - 📝 Initializes the auth database and creates the necessary tables.
  - 🏗️ Layer: Scripts
  - 🔒 Invariant: Safe to run multiple times (idempotent).
  - 🔗 CALLS -> `backend.src.core.database.init_db`
  - ƒ **run_init** (`Function`) `[CRITICAL]`
    - 📝 Main entry point for the initialization script.
- 📦 **backend.src.scripts.create_admin** (`Module`)
  - 📝 CLI tool for creating the initial admin user.
  - 🏗️ Layer: Scripts
  - 🔒 Invariant: Admin user must have the "Admin" role.
  - ƒ **create_admin** (`Function`)
    - 📝 Creates an admin user and necessary roles/permissions.
- 📦 **backend.src.schemas.auth** (`Module`) `[CRITICAL]`
  - 📝 Pydantic schemas for authentication requests and responses.
  - 🏗️ Layer: API
  - 🔒 Invariant: Sensitive fields like password must not be included in response schemas.
  - 🔗 DEPENDS_ON -> `pydantic`
  - ℂ **Token** (`Class`) `[TRIVIAL]`
    - 📝 Represents a JWT access token response.
  - ℂ **TokenData** (`Class`) `[TRIVIAL]`
    - 📝 Represents the data encoded in a JWT token.
  - ℂ **PermissionSchema** (`Class`) `[TRIVIAL]`
    - 📝 Represents a permission in API responses.
  - ℂ **RoleSchema** (`Class`) `[CRITICAL]`
    - 📝 Represents a role in API responses.
  - ℂ **RoleCreate** (`Class`) `[CRITICAL]`
    - 📝 Schema for creating a new role.
  - ℂ **RoleUpdate** (`Class`) `[CRITICAL]`
    - 📝 Schema for updating an existing role.
  - ℂ **ADGroupMappingSchema** (`Class`) `[CRITICAL]`
    - 📝 Represents an AD Group to Role mapping in API responses.
  - ℂ **ADGroupMappingCreate** (`Class`) `[CRITICAL]`
    - 📝 Schema for creating an AD Group mapping.
  - ℂ **UserBase** (`Class`) `[CRITICAL]`
    - 📝 Base schema for user data.
  - ℂ **UserCreate** (`Class`) `[CRITICAL]`
    - 📝 Schema for creating a new user.
  - ℂ **UserUpdate** (`Class`) `[CRITICAL]`
    - 📝 Schema for updating an existing user.
  - ℂ **User** (`Class`) `[CRITICAL]`
    - 📝 Schema for user data in API responses.
- 📦 **backend.src.core.superset_client** (`Module`)
  - 📝 Предоставляет высокоуровневый клиент для взаимодействия с Superset REST API, инкапсулируя логику запросов, обработку ошибок и пагинацию.
  - 🏗️ Layer: Core
  - 🔒 Invariant: All network operations must use the internal APIClient instance.
  - ℂ **SupersetClient** (`Class`)
    - 📝 Класс-обёртка над Superset REST API, предоставляющий методы для работы с дашбордами и датасетами.
    - ƒ **__init__** (`Function`)
      - 📝 Инициализирует клиент, проверяет конфигурацию и создает сетевой клиент.
    - ƒ **authenticate** (`Function`)
      - 📝 Authenticates the client using the configured credentials.
    - ƒ **headers** (`Function`)
      - 📝 Возвращает базовые HTTP-заголовки, используемые сетевым клиентом.
    - ƒ **get_dashboards** (`Function`)
      - 📝 Получает полный список дашбордов, автоматически обрабатывая пагинацию.
    - ƒ **get_dashboards_page** (`Function`)
      - 📝 Fetches a single dashboards page from Superset without iterating all pages.
    - ƒ **get_dashboards_summary** (`Function`)
      - 📝 Fetches dashboard metadata optimized for the grid.
    - ƒ **get_dashboards_summary_page** (`Function`)
      - 📝 Fetches one page of dashboard metadata optimized for the grid.
    - ƒ **_extract_owner_labels** (`Function`)
      - 📝 Normalize dashboard owners payload to stable display labels.
    - ƒ **_extract_user_display** (`Function`)
      - 📝 Normalize user payload to a stable display name.
    - ƒ **_sanitize_user_text** (`Function`)
      - 📝 Convert scalar value to non-empty user-facing text.
    - ƒ **get_dashboard** (`Function`)
      - 📝 Fetches a single dashboard by ID.
    - ƒ **get_chart** (`Function`)
      - 📝 Fetches a single chart by ID.
    - ƒ **get_dashboard_detail** (`Function`)
      - 📝 Fetches detailed dashboard information including related charts and datasets.
    - ƒ **get_charts** (`Function`)
      - 📝 Fetches all charts with pagination support.
    - ƒ **_extract_chart_ids_from_layout** (`Function`)
      - 📝 Traverses dashboard layout metadata and extracts chart IDs from common keys.
    - ƒ **export_dashboard** (`Function`)
      - 📝 Экспортирует дашборд в виде ZIP-архива.
    - ƒ **import_dashboard** (`Function`)
      - 📝 Импортирует дашборд из ZIP-файла.
    - ƒ **delete_dashboard** (`Function`)
      - 📝 Удаляет дашборд по его ID или slug.
    - ƒ **get_datasets** (`Function`)
      - 📝 Получает полный список датасетов, автоматически обрабатывая пагинацию.
    - ƒ **get_datasets_summary** (`Function`)
      - 📝 Fetches dataset metadata optimized for the Dataset Hub grid.
    - ƒ **get_dataset_detail** (`Function`)
      - 📝 Fetches detailed dataset information including columns and linked dashboards
      - 🔗 CALLS -> `self.get_dataset`
      - 🔗 CALLS -> `self.network.request (for related_objects)`
    - ƒ **get_dataset** (`Function`)
      - 📝 Получает информацию о конкретном датасете по его ID.
    - ƒ **update_dataset** (`Function`)
      - 📝 Обновляет данные датасета по его ID.
    - ƒ **get_databases** (`Function`)
      - 📝 Получает полный список баз данных.
    - ƒ **get_database** (`Function`)
      - 📝 Получает информацию о конкретной базе данных по её ID.
    - ƒ **get_databases_summary** (`Function`)
      - 📝 Fetch a summary of databases including uuid, name, and engine.
    - ƒ **get_database_by_uuid** (`Function`)
      - 📝 Find a database by its UUID.
    - ƒ **_resolve_target_id_for_delete** (`Function`)
      - 📝 Resolves a dashboard ID from either an ID or a slug.
    - ƒ **_do_import** (`Function`)
      - 📝 Performs the actual multipart upload for import.
    - ƒ **_validate_export_response** (`Function`)
      - 📝 Validates that the export response is a non-empty ZIP archive.
    - ƒ **_resolve_export_filename** (`Function`)
      - 📝 Determines the filename for an exported dashboard.
    - ƒ **_validate_query_params** (`Function`)
      - 📝 Ensures query parameters have default page and page_size.
    - ƒ **_fetch_total_object_count** (`Function`)
      - 📝 Fetches the total number of items for a given endpoint.
    - ƒ **_fetch_all_pages** (`Function`)
      - 📝 Iterates through all pages to collect all data items.
    - ƒ **_validate_import_file** (`Function`)
      - 📝 Validates that the file to be imported is a valid ZIP with metadata.yaml.
    - ƒ **get_all_resources** (`Function`)
      - 📝 Fetches all resources of a given type with id, uuid, and name columns.
  - ƒ **extract_dataset_id_from_form_data** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **walk** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **as_bool** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **ConfigManagerModule** (`Module`) `[CRITICAL]`
  - 📝 Manages application configuration persisted in database with one-time migration from JSON.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Configuration must always be valid according to AppConfig model.
  - 🔗 DEPENDS_ON -> `ConfigModels`
  - 🔗 DEPENDS_ON -> `AppConfigRecord`
  - 🔗 CALLS -> `logger`
  - ℂ **ConfigManager** (`Class`) `[CRITICAL]`
    - 📝 A class to handle application configuration persistence and management.
    - ƒ **__init__** (`Function`) `[CRITICAL]`
      - 📝 Initializes the ConfigManager.
    - ƒ **_default_config** (`Function`) `[CRITICAL]`
      - 📝 Returns default application configuration.
    - ƒ **_load_from_legacy_file** (`Function`) `[CRITICAL]`
      - 📝 Loads legacy configuration from config.json for migration fallback.
    - ƒ **_get_record** (`Function`) `[CRITICAL]`
      - 📝 Loads config record from DB.
    - ƒ **_load_config** (`Function`) `[CRITICAL]`
      - 📝 Loads the configuration from DB or performs one-time migration from JSON file.
    - ƒ **_save_config_to_db** (`Function`) `[CRITICAL]`
      - 📝 Saves the provided configuration object to DB.
    - ƒ **save** (`Function`) `[CRITICAL]`
      - 📝 Saves the current configuration state to DB.
    - ƒ **get_config** (`Function`) `[CRITICAL]`
      - 📝 Returns the current configuration.
    - ƒ **update_global_settings** (`Function`) `[CRITICAL]`
      - 📝 Updates the global settings and persists the change.
    - ƒ **validate_path** (`Function`) `[CRITICAL]`
      - 📝 Validates if a path exists and is writable.
    - ƒ **get_environments** (`Function`) `[CRITICAL]`
      - 📝 Returns the list of configured environments.
    - ƒ **has_environments** (`Function`) `[CRITICAL]`
      - 📝 Checks if at least one environment is configured.
    - ƒ **get_environment** (`Function`) `[CRITICAL]`
      - 📝 Returns a single environment by ID.
    - ƒ **add_environment** (`Function`) `[CRITICAL]`
      - 📝 Adds a new environment to the configuration.
    - ƒ **update_environment** (`Function`) `[CRITICAL]`
      - 📝 Updates an existing environment.
    - ƒ **delete_environment** (`Function`) `[CRITICAL]`
      - 📝 Deletes an environment by ID.
- 📦 **SchedulerModule** (`Module`)
  - 📝 Manages scheduled tasks using APScheduler.
  - 🏗️ Layer: Core
  - ℂ **SchedulerService** (`Class`)
    - 📝 Provides a service to manage scheduled backup tasks.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the scheduler service with task and config managers.
    - ƒ **start** (`Function`)
      - 📝 Starts the background scheduler and loads initial schedules.
    - ƒ **stop** (`Function`)
      - 📝 Stops the background scheduler.
    - ƒ **load_schedules** (`Function`)
      - 📝 Loads backup schedules from configuration and registers them.
    - ƒ **add_backup_job** (`Function`)
      - 📝 Adds a scheduled backup job for an environment.
    - ƒ **_trigger_backup** (`Function`)
      - 📝 Triggered by the scheduler to start a backup task.
- 📦 **ConfigModels** (`Module`) `[CRITICAL]`
  - 📝 Defines the data models for application configuration using Pydantic.
  - 🏗️ Layer: Core
  - 📦 **Schedule** (`DataClass`) `[CRITICAL]`
    - 📝 Represents a backup schedule configuration.
  - 📦 **Environment** (`DataClass`) `[CRITICAL]`
    - 📝 Represents a Superset environment configuration.
  - 📦 **LoggingConfig** (`DataClass`) `[CRITICAL]`
    - 📝 Defines the configuration for the application's logging system.
  - 📦 **GlobalSettings** (`DataClass`) `[CRITICAL]`
    - 📝 Represents global application settings.
  - 📦 **AppConfig** (`DataClass`) `[CRITICAL]`
    - 📝 The root configuration model containing all application settings.
- 📦 **backend.src.core.database** (`Module`) `[CRITICAL]`
  - 📝 Configures database connection and session management (PostgreSQL-first).
  - 🏗️ Layer: Core
  - 🔒 Invariant: A single engine instance is used for the entire application.
  - 🔗 DEPENDS_ON -> `sqlalchemy`
  - 🔗 DEPENDS_ON -> `backend.src.models.mapping`
  - 🔗 DEPENDS_ON -> `backend.src.core.auth.config`
  - 📦 **BASE_DIR** (`Variable`) `[CRITICAL]`
    - 📝 Base directory for the backend.
  - 📦 **DATABASE_URL** (`Constant`) `[CRITICAL]`
    - 📝 URL for the main application database.
  - 📦 **TASKS_DATABASE_URL** (`Constant`) `[CRITICAL]`
    - 📝 URL for the tasks execution database.
  - 📦 **AUTH_DATABASE_URL** (`Constant`) `[CRITICAL]`
    - 📝 URL for the authentication database.
  - 📦 **engine** (`Variable`) `[CRITICAL]`
    - 📝 SQLAlchemy engine for mappings database.
  - 📦 **tasks_engine** (`Variable`) `[CRITICAL]`
    - 📝 SQLAlchemy engine for tasks database.
  - 📦 **auth_engine** (`Variable`) `[CRITICAL]`
    - 📝 SQLAlchemy engine for authentication database.
  - ℂ **SessionLocal** (`Class`) `[TRIVIAL]`
    - 📝 A session factory for the main mappings database.
  - ℂ **TasksSessionLocal** (`Class`) `[TRIVIAL]`
    - 📝 A session factory for the tasks execution database.
  - ℂ **AuthSessionLocal** (`Class`) `[TRIVIAL]`
    - 📝 A session factory for the authentication database.
  - ƒ **init_db** (`Function`) `[CRITICAL]`
    - 📝 Initializes the database by creating all tables.
  - ƒ **get_db** (`Function`) `[CRITICAL]`
    - 📝 Dependency for getting a database session.
  - ƒ **get_tasks_db** (`Function`) `[CRITICAL]`
    - 📝 Dependency for getting a tasks database session.
  - ƒ **get_auth_db** (`Function`) `[CRITICAL]`
    - 📝 Dependency for getting an authentication database session.
  - ƒ **_build_engine** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **LoggerModule** (`Module`)
  - 📝 Configures the application's logging system, including a custom handler for buffering logs and streaming them over WebSockets.
  - 🏗️ Layer: Core
  - ℂ **BeliefFormatter** (`Class`)
    - 📝 Custom logging formatter that adds belief state prefixes to log messages.
    - ƒ **format** (`Function`)
      - 📝 Formats the log record, adding belief state context if available.
  - ℂ **LogEntry** (`Class`)
    - 📝 A Pydantic model representing a single, structured log entry. This is a re-definition for consistency, as it's also defined in task_manager.py.
  - ƒ **belief_scope** (`Function`)
    - 📝 Context manager for structured Belief State logging.
  - ƒ **configure_logger** (`Function`)
    - 📝 Configures the logger with the provided logging settings.
  - ƒ **get_task_log_level** (`Function`)
    - 📝 Returns the current task log level filter.
  - ƒ **should_log_task_level** (`Function`)
    - 📝 Checks if a log level should be recorded based on task_log_level setting.
  - ℂ **WebSocketLogHandler** (`Class`)
    - 📝 A custom logging handler that captures log records into a buffer. It is designed to be extended for real-time log streaming over WebSockets.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the handler with a fixed-capacity buffer.
    - ƒ **emit** (`Function`)
      - 📝 Captures a log record, formats it, and stores it in the buffer.
    - ƒ **get_recent_logs** (`Function`)
      - 📝 Returns a list of recent log entries from the buffer.
  - 📦 **Logger** (`Global`)
    - 📝 The global logger instance for the application, configured with both a console handler and the custom WebSocket handler.
    - ƒ **believed** (`Function`)
      - 📝 A decorator that wraps a function in a belief scope.
      - ƒ **decorator** (`Function`)
        - 📝 Internal decorator for belief scope.
    - ƒ **explore** (`Function`)
      - 📝 Logs an EXPLORE message (Van der Waals force) for searching, alternatives, and hypotheses.
    - ƒ **reason** (`Function`)
      - 📝 Logs a REASON message (Covalent bond) for strict deduction and core logic.
    - ƒ **reflect** (`Function`)
      - 📝 Logs a REFLECT message (Hydrogen bond) for self-check and structural validation.
- ℂ **PluginLoader** (`Class`)
  - 📝 Scans a specified directory for Python modules, dynamically loads them, and registers any classes that are valid implementations of the PluginBase interface.
  - 🏗️ Layer: Core
  - ƒ **__init__** (`Function`)
    - 📝 Initializes the PluginLoader with a directory to scan.
  - ƒ **_load_plugins** (`Function`)
    - 📝 Scans the plugin directory and loads all valid plugins.
  - ƒ **_load_module** (`Function`)
    - 📝 Loads a single Python module and discovers PluginBase implementations.
  - ƒ **_register_plugin** (`Function`)
    - 📝 Registers a PluginBase instance and its configuration.
  - ƒ **get_plugin** (`Function`)
    - 📝 Retrieves a loaded plugin instance by its ID.
  - ƒ **get_all_plugin_configs** (`Function`)
    - 📝 Returns a list of all registered plugin configurations.
  - ƒ **has_plugin** (`Function`)
    - 📝 Checks if a plugin with the given ID is registered.
- 📦 **backend.src.core.migration_engine** (`Module`) `[CRITICAL]`
  - 📝 Handles the interception and transformation of Superset asset ZIP archives.
  - 🏗️ Layer: Core
  - 🔒 Invariant: ZIP structure must be preserved after transformation.
  - 🔗 DEPENDS_ON -> `PyYAML`
  - ℂ **MigrationEngine** (`Class`) `[CRITICAL]`
    - 📝 Engine for transforming Superset export ZIPs.
    - ƒ **__init__** (`Function`) `[CRITICAL]`
      - 📝 Initializes the migration engine with optional ID mapping service.
    - ƒ **transform_zip** (`Function`) `[CRITICAL]`
      - 📝 Extracts ZIP, replaces database UUIDs in YAMLs, patches cross-filters, and re-packages.
    - ƒ **_transform_yaml** (`Function`) `[CRITICAL]`
      - 📝 Replaces database_uuid in a single YAML file.
    - ƒ **_extract_chart_uuids_from_archive** (`Function`) `[CRITICAL]`
      - 📝 Scans the unpacked ZIP to map local exported integer IDs back to their UUIDs.
    - ƒ **_patch_dashboard_metadata** (`Function`) `[CRITICAL]`
      - 📝 Replaces integer IDs in json_metadata.
- ℂ **PluginBase** (`Class`)
  - 📝 Defines the abstract base class that all plugins must implement to be recognized by the system. It enforces a common structure for plugin metadata and execution.
  - 🏗️ Layer: Core
  - 🔒 Invariant: All plugins MUST inherit from this class.
  - ƒ **id** (`Function`)
    - 📝 Returns the unique identifier for the plugin.
  - ƒ **name** (`Function`)
    - 📝 Returns the human-readable name of the plugin.
  - ƒ **description** (`Function`)
    - 📝 Returns a brief description of the plugin.
  - ƒ **version** (`Function`)
    - 📝 Returns the version of the plugin.
  - ƒ **required_permission** (`Function`)
    - 📝 Returns the required permission string to execute this plugin.
  - ƒ **ui_route** (`Function`)
    - 📝 Returns the frontend route for the plugin's UI, if applicable.
  - ƒ **get_schema** (`Function`)
    - 📝 Returns the JSON schema for the plugin's input parameters.
  - ƒ **execute** (`Function`)
    - 📝 Executes the plugin's core logic.
- ℂ **PluginConfig** (`Class`)
  - 📝 A Pydantic model used to represent the validated configuration and metadata of a loaded plugin. This object is what gets exposed to the API layer.
  - 🏗️ Layer: Core
- 📦 **backend.src.core.mapping_service** (`Module`) `[CRITICAL]`
  - 📝 Service for tracking and synchronizing Superset Resource IDs (UUID <-> Integer ID)
  - 🏗️ Layer: Core
  - 🔒 Invariant: sync_environment must handle remote API failures gracefully.
  - 🔗 DEPENDS_ON -> `backend.src.models.mapping (ResourceMapping, ResourceType)`
  - 🔗 DEPENDS_ON -> `backend.src.core.logger`
  - ℂ **IdMappingService** (`Class`) `[CRITICAL]`
    - 📝 Service handling the cataloging and retrieval of remote Superset Integer IDs.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the mapping service.
    - ƒ **start_scheduler** (`Function`)
      - 📝 Starts the background scheduler with a given cron string.
    - ƒ **sync_environment** (`Function`)
      - 📝 Fully synchronizes mapping for a specific environment.
    - ƒ **get_remote_id** (`Function`)
      - 📝 Retrieves the remote integer ID for a given universal UUID.
    - ƒ **get_remote_ids_batch** (`Function`)
      - 📝 Retrieves remote integer IDs for a list of universal UUIDs efficiently.
  - ƒ **sync_all** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.core.auth.config** (`Module`) `[CRITICAL]`
  - 📝 Centralized configuration for authentication and authorization.
  - 🏗️ Layer: Core
  - 🔒 Invariant: All sensitive configuration must have defaults or be loaded from environment.
  - 🔗 DEPENDS_ON -> `pydantic`
  - ℂ **AuthConfig** (`Class`) `[CRITICAL]`
    - 📝 Holds authentication-related settings.
  - 📦 **auth_config** (`Variable`) `[CRITICAL]`
    - 📝 Singleton instance of AuthConfig.
- 📦 **backend.src.core.auth.jwt** (`Module`) `[CRITICAL]`
  - 📝 JWT token generation and validation logic.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Tokens must include expiration time and user identifier.
  - 🔗 DEPENDS_ON -> `jose`
  - ƒ **create_access_token** (`Function`) `[CRITICAL]`
    - 📝 Generates a new JWT access token.
  - ƒ **decode_token** (`Function`) `[CRITICAL]`
    - 📝 Decodes and validates a JWT token.
- 📦 **backend.src.core.auth.oauth** (`Module`) `[CRITICAL]`
  - 📝 ADFS OIDC configuration and client using Authlib.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Must use secure OIDC flows.
  - 🔗 DEPENDS_ON -> `authlib`
  - 📦 **oauth** (`Variable`) `[CRITICAL]`
    - 📝 Global Authlib OAuth registry.
  - ƒ **register_adfs** (`Function`) `[CRITICAL]`
    - 📝 Registers the ADFS OIDC client.
  - ƒ **is_adfs_configured** (`Function`) `[CRITICAL]`
    - 📝 Checks if ADFS is properly configured.
- 📦 **backend.src.core.auth.logger** (`Module`) `[CRITICAL]`
  - 📝 Audit logging for security-related events.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Must not log sensitive data like passwords or full tokens.
  - ƒ **log_security_event** (`Function`) `[CRITICAL]`
    - 📝 Logs a security-related event for audit trails.
- 📦 **backend.src.core.auth.security** (`Module`) `[CRITICAL]`
  - 📝 Utility for password hashing and verification using Passlib.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Uses bcrypt for hashing with standard work factor.
  - 🔗 DEPENDS_ON -> `passlib`
  - ƒ **verify_password** (`Function`) `[CRITICAL]`
    - 📝 Verifies a plain password against a hashed password.
  - ƒ **get_password_hash** (`Function`) `[CRITICAL]`
    - 📝 Generates a bcrypt hash for a plain password.
- 📦 **backend.src.core.auth.repository** (`Module`) `[CRITICAL]`
  - 📝 Data access layer for authentication-related entities.
  - 🏗️ Layer: Core
  - 🔒 Invariant: All database operations must be performed within a session.
  - 🔗 DEPENDS_ON -> `sqlalchemy`
  - ℂ **AuthRepository** (`Class`) `[CRITICAL]`
    - 📝 Encapsulates database operations for authentication.
    - ƒ **__init__** (`Function`) `[CRITICAL]`
      - 📝 Initializes the repository with a database session.
    - ƒ **get_user_by_username** (`Function`) `[CRITICAL]`
      - 📝 Retrieves a user by their username.
    - ƒ **get_user_by_id** (`Function`) `[CRITICAL]`
      - 📝 Retrieves a user by their unique ID.
    - ƒ **get_role_by_name** (`Function`) `[CRITICAL]`
      - 📝 Retrieves a role by its name.
    - ƒ **update_last_login** (`Function`) `[CRITICAL]`
      - 📝 Updates the last_login timestamp for a user.
    - ƒ **get_role_by_id** (`Function`) `[CRITICAL]`
      - 📝 Retrieves a role by its unique ID.
    - ƒ **get_permission_by_id** (`Function`) `[CRITICAL]`
      - 📝 Retrieves a permission by its unique ID.
    - ƒ **get_permission_by_resource_action** (`Function`) `[CRITICAL]`
      - 📝 Retrieves a permission by resource and action.
    - ƒ **list_permissions** (`Function`) `[CRITICAL]`
      - 📝 Lists all available permissions.
- 📦 **test_auth** (`Module`)
  - 📝 Unit tests for authentication module
  - 🏗️ Layer: Domain
  - ƒ **db_session** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **auth_service** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **auth_repo** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_create_user** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_authenticate_user** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_create_session** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_role_permission_association** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_user_role_association** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_ad_group_mapping** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_authenticate_user_updates_last_login** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_authenticate_inactive_user** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_verify_password_empty_hash** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_provision_adfs_user_new** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_provision_adfs_user_existing** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.core.utils.fileio** (`Module`)
  - 📝 Предоставляет набор утилит для управления файловыми операциями, включая работу с временными файлами, архивами ZIP, файлами YAML и очистку директорий.
  - 🏗️ Layer: Infra
  - 🔗 DEPENDS_ON -> `backend.src.core.logger`
  - 🔗 DEPENDS_ON -> `pyyaml`
  - ℂ **InvalidZipFormatError** (`Class`)
    - 📝 Exception raised when a file is not a valid ZIP archive.
  - ƒ **create_temp_file** (`Function`)
    - 📝 Контекстный менеджер для создания временного файла или директории с гарантированным удалением.
  - ƒ **remove_empty_directories** (`Function`)
    - 📝 Рекурсивно удаляет все пустые поддиректории, начиная с указанного пути.
  - ƒ **read_dashboard_from_disk** (`Function`)
    - 📝 Читает бинарное содержимое файла с диска.
  - ƒ **calculate_crc32** (`Function`)
    - 📝 Вычисляет контрольную сумму CRC32 для файла.
  - 📦 **RetentionPolicy** (`DataClass`)
    - 📝 Определяет политику хранения для архивов (ежедневные, еженедельные, ежемесячные).
  - ƒ **archive_exports** (`Function`)
    - 📝 Управляет архивом экспортированных файлов, применяя политику хранения и дедупликацию.
    - 🔗 CALLS -> `apply_retention_policy`
    - 🔗 CALLS -> `calculate_crc32`
  - ƒ **apply_retention_policy** (`Function`)
    - 📝 (Helper) Применяет политику хранения к списку файлов, возвращая те, что нужно сохранить.
  - ƒ **save_and_unpack_dashboard** (`Function`)
    - 📝 Сохраняет бинарное содержимое ZIP-архива на диск и опционально распаковывает его.
  - ƒ **update_yamls** (`Function`)
    - 📝 Обновляет конфигурации в YAML-файлах, заменяя значения или применяя regex.
    - 🔗 CALLS -> `_update_yaml_file`
  - ƒ **_update_yaml_file** (`Function`)
    - 📝 (Helper) Обновляет один YAML файл.
    - ƒ **replacer** (`Function`)
      - 📝 Функция замены, сохраняющая кавычки если они были.
  - ƒ **create_dashboard_export** (`Function`)
    - 📝 Создает ZIP-архив из указанных исходных путей.
  - ƒ **sanitize_filename** (`Function`)
    - 📝 Очищает строку от символов, недопустимых в именах файлов.
  - ƒ **get_filename_from_headers** (`Function`)
    - 📝 Извлекает имя файла из HTTP заголовка 'Content-Disposition'.
  - ƒ **consolidate_archive_folders** (`Function`)
    - 📝 Консолидирует директории архивов на основе общего слага в имени.
- 📦 **backend.core.utils.network** (`Module`)
  - 📝 Инкапсулирует низкоуровневую HTTP-логику для взаимодействия с Superset API, включая аутентификацию, управление сессией, retry-логику и обработку ошибок.
  - 🏗️ Layer: Infra
  - 🔗 DEPENDS_ON -> `backend.src.core.logger`
  - 🔗 DEPENDS_ON -> `requests`
  - ℂ **SupersetAPIError** (`Class`)
    - 📝 Base exception for all Superset API related errors.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the exception with a message and context.
  - ℂ **AuthenticationError** (`Class`)
    - 📝 Exception raised when authentication fails.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the authentication error.
  - ℂ **PermissionDeniedError** (`Class`)
    - 📝 Exception raised when access is denied.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the permission denied error.
  - ℂ **DashboardNotFoundError** (`Class`)
    - 📝 Exception raised when a dashboard cannot be found.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the not found error with resource ID.
  - ℂ **NetworkError** (`Class`)
    - 📝 Exception raised when a network level error occurs.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the network error.
  - ℂ **APIClient** (`Class`)
    - 📝 Инкапсулирует HTTP-логику для работы с API, включая сессии, аутентификацию, и обработку запросов.
    - ƒ **__init__** (`Function`)
      - 📝 Инициализирует API клиент с конфигурацией, сессией и логгером.
    - ƒ **_init_session** (`Function`)
      - 📝 Создает и настраивает `requests.Session` с retry-логикой.
    - ƒ **_normalize_base_url** (`Function`)
      - 📝 Normalize Superset environment URL to base host/path without trailing slash and /api/v1 suffix.
    - ƒ **_build_api_url** (`Function`)
      - 📝 Build absolute Superset API URL for endpoint using canonical /api/v1 base.
    - ƒ **authenticate** (`Function`)
      - 📝 Выполняет аутентификацию в Superset API и получает access и CSRF токены.
    - ƒ **headers** (`Function`)
      - 📝 Возвращает HTTP-заголовки для аутентифицированных запросов.
    - ƒ **request** (`Function`)
      - 📝 Выполняет универсальный HTTP-запрос к API.
    - ƒ **_handle_http_error** (`Function`)
      - 📝 (Helper) Преобразует HTTP ошибки в кастомные исключения.
    - ƒ **_handle_network_error** (`Function`)
      - 📝 (Helper) Преобразует сетевые ошибки в `NetworkError`.
    - ƒ **upload_file** (`Function`)
      - 📝 Загружает файл на сервер через multipart/form-data.
    - ƒ **_perform_upload** (`Function`)
      - 📝 (Helper) Выполняет POST запрос с файлом.
    - ƒ **fetch_paginated_count** (`Function`)
      - 📝 Получает общее количество элементов для пагинации.
    - ƒ **fetch_paginated_data** (`Function`)
      - 📝 Автоматически собирает данные со всех страниц пагинированного эндпоинта.
  - ƒ **init_poolmanager** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.core.utils.matching** (`Module`)
  - 📝 Provides utility functions for fuzzy matching database names.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Confidence scores are returned as floats between 0.0 and 1.0.
  - 🔗 DEPENDS_ON -> `rapidfuzz`
  - ƒ **suggest_mappings** (`Function`)
    - 📝 Suggests mappings between source and target databases using fuzzy matching.
- 📦 **backend.core.utils.dataset_mapper** (`Module`)
  - 📝 Этот модуль отвечает за обновление метаданных (verbose_map) в датасетах Superset, извлекая их из PostgreSQL или XLSX-файлов.
  - 🏗️ Layer: Domain
  - 🔗 DEPENDS_ON -> `backend.core.superset_client`
  - 🔗 DEPENDS_ON -> `pandas`
  - 🔗 DEPENDS_ON -> `psycopg2`
  - ℂ **DatasetMapper** (`Class`)
    - 📝 Класс для меппинга и обновления verbose_map в датасетах Superset.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the mapper.
    - ƒ **get_postgres_comments** (`Function`)
      - 📝 Извлекает комментарии к колонкам из системного каталога PostgreSQL.
    - ƒ **load_excel_mappings** (`Function`)
      - 📝 Загружает меппинги 'column_name' -> 'column_comment' из XLSX файла.
    - ƒ **run_mapping** (`Function`)
      - 📝 Основная функция для выполнения меппинга и обновления verbose_map датасета в Superset.
      - 🔗 CALLS -> `self.get_postgres_comments`
      - 🔗 CALLS -> `self.load_excel_mappings`
      - 🔗 CALLS -> `superset_client.get_dataset`
      - 🔗 CALLS -> `superset_client.update_dataset`
- 📦 **test_logger** (`Module`)
  - 📝 Unit tests for logger module
  - 🏗️ Layer: Infra
  - ƒ **test_belief_scope_logs_entry_action_exit_at_debug** (`Function`)
    - 📝 Test that belief_scope generates [ID][Entry], [ID][Action], and [ID][Exit] logs at DEBUG level.
  - ƒ **test_belief_scope_error_handling** (`Function`)
    - 📝 Test that belief_scope logs Coherence:Failed on exception.
  - ƒ **test_belief_scope_success_coherence** (`Function`)
    - 📝 Test that belief_scope logs Coherence:OK on success.
  - ƒ **test_belief_scope_not_visible_at_info** (`Function`)
    - 📝 Test that belief_scope Entry/Exit/Coherence logs are NOT visible at INFO level.
  - ƒ **test_task_log_level_default** (`Function`)
    - 📝 Test that default task log level is INFO.
  - ƒ **test_should_log_task_level** (`Function`)
    - 📝 Test that should_log_task_level correctly filters log levels.
  - ƒ **test_configure_logger_task_log_level** (`Function`)
    - 📝 Test that configure_logger updates task_log_level.
  - ƒ **test_enable_belief_state_flag** (`Function`)
    - 📝 Test that enable_belief_state flag controls belief_scope logging.
    - ƒ **test_belief_scope_missing_anchor** (`Function`)
      - 📝 Test @PRE condition: anchor_id must be provided
    - ƒ **test_configure_logger_post_conditions** (`Function`)
      - 📝 Test @POST condition: Logger level, handlers, belief state flag, and task log level are updated.
  - ƒ **reset_logger_state** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.core.migration.dry_run_orchestrator** (`Module`) `[CRITICAL]`
  - 📝 Compute pre-flight migration diff and risk scoring without apply.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Dry run is informative only and must not mutate target environment.
  - 🔗 DEPENDS_ON -> `backend.src.core.superset_client`
  - 🔗 DEPENDS_ON -> `backend.src.core.migration_engine`
  - 🔗 DEPENDS_ON -> `backend.src.core.migration.archive_parser`
  - 🔗 DEPENDS_ON -> `backend.src.core.migration.risk_assessor`
  - ℂ **MigrationDryRunService** (`Class`) `[CRITICAL]`
    - 📝 Build deterministic diff/risk payload for migration pre-flight.
    - ƒ **__init__** (`Function`) `[CRITICAL]`
      - 📝 Wire parser dependency for archive object extraction.
    - ƒ **run** (`Function`) `[CRITICAL]`
      - 📝 Execute full dry-run computation for selected dashboards.
    - ƒ **_load_db_mapping** (`Function`) `[CRITICAL]`
      - 📝 Resolve UUID mapping for optional DB config replacement.
    - ƒ **_accumulate_objects** (`Function`) `[CRITICAL]`
      - 📝 Merge extracted resources by UUID to avoid duplicates.
    - ƒ **_index_by_uuid** (`Function`) `[CRITICAL]`
      - 📝 Build UUID-index map for normalized resources.
    - ƒ **_build_object_diff** (`Function`) `[CRITICAL]`
      - 📝 Compute create/update/delete buckets by UUID+signature.
    - ƒ **_build_target_signatures** (`Function`) `[CRITICAL]`
      - 📝 Pull target metadata and normalize it into comparable signatures.
    - ƒ **_build_risks** (`Function`) `[CRITICAL]`
      - 📝 Build risk items for missing datasource, broken refs, overwrite, owner mismatch.
- 📦 **backend.src.core.migration.archive_parser** (`Module`) `[CRITICAL]`
  - 📝 Parse Superset export ZIP archives into normalized object catalogs for diffing.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Parsing is read-only and never mutates archive files.
  - 🔗 DEPENDS_ON -> `backend.src.core.logger`
  - ℂ **MigrationArchiveParser** (`Class`) `[CRITICAL]`
    - 📝 Extract normalized dashboards/charts/datasets metadata from ZIP archives.
    - ƒ **extract_objects_from_zip** (`Function`) `[CRITICAL]`
      - 📝 Extract object catalogs from Superset archive.
    - ƒ **_collect_yaml_objects** (`Function`) `[CRITICAL]`
      - 📝 Read and normalize YAML manifests for one object type.
    - ƒ **_normalize_object_payload** (`Function`) `[CRITICAL]`
      - 📝 Convert raw YAML payload to stable diff signature shape.
- 📦 **backend.src.core.migration.risk_assessor** (`Module`) `[CRITICAL]`
  - 📝 Risk evaluation helpers for migration pre-flight reporting.
  - 🏗️ Layer: Core
  - ƒ **index_by_uuid** (`Function`) `[CRITICAL]`
    - 📝 Build UUID-index from normalized objects.
  - ƒ **extract_owner_identifiers** (`Function`) `[CRITICAL]`
    - 📝 Normalize owner payloads for stable comparison.
  - ƒ **build_risks** (`Function`) `[CRITICAL]`
    - 📝 Build risk list from computed diffs and target catalog state.
  - ƒ **score_risks** (`Function`) `[CRITICAL]`
    - 📝 Aggregate risk list into score and level.
- 📦 **backend.src.core.migration.__init__** (`Module`) `[TRIVIAL]`
  - 📝 Namespace package for migration pre-flight orchestration components.
  - 🏗️ Layer: Core
- 📦 **TaskLoggerModule** (`Module`) `[CRITICAL]`
  - 📝 Provides a dedicated logger for tasks with automatic source attribution.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Each TaskLogger instance is bound to a specific task_id and default source.
  - 🔗 DEPENDS_ON -> `TaskManager, CALLS -> TaskManager._add_log`
  - ℂ **TaskLogger** (`Class`) `[CRITICAL]`
    - 📝 A wrapper around TaskManager._add_log that carries task_id and source context.
    - 🔒 Invariant: All log calls include the task_id and source.
    - ƒ **__init__** (`Function`)
      - 📝 Initialize the TaskLogger with task context.
    - ƒ **with_source** (`Function`)
      - 📝 Create a sub-logger with a different default source.
    - ƒ **_log** (`Function`)
      - 📝 Internal method to log a message at a given level.
    - ƒ **debug** (`Function`)
      - 📝 Log a DEBUG level message.
    - ƒ **info** (`Function`)
      - 📝 Log an INFO level message.
    - ƒ **warning** (`Function`)
      - 📝 Log a WARNING level message.
    - ƒ **error** (`Function`)
      - 📝 Log an ERROR level message.
    - ƒ **progress** (`Function`)
      - 📝 Log a progress update with percentage.
- 📦 **TaskPersistenceModule** (`Module`) `[CRITICAL]`
  - 📝 Handles the persistence of tasks using SQLAlchemy and the tasks.db database.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Database schema must match the TaskRecord model structure.
  - ℂ **TaskPersistenceService** (`Class`) `[CRITICAL]`
    - 📝 Provides methods to save and load tasks from the tasks.db database using SQLAlchemy.
    - 🔒 Invariant: Persistence must handle potentially missing task fields natively.
    - ƒ **_json_load_if_needed** (`Function`)
      - 📝 Safely load JSON strings from DB if necessary
    - ƒ **_parse_datetime** (`Function`)
      - 📝 Safely parse a datetime string from the database
    - ƒ **_resolve_environment_id** (`Function`)
      - 📝 Resolve environment id based on provided value or fallback to default
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the persistence service.
    - ƒ **persist_task** (`Function`)
      - 📝 Persists or updates a single task in the database.
    - ƒ **persist_tasks** (`Function`)
      - 📝 Persists multiple tasks.
    - ƒ **load_tasks** (`Function`)
      - 📝 Loads tasks from the database.
    - ƒ **delete_tasks** (`Function`)
      - 📝 Deletes specific tasks from the database.
  - ℂ **TaskLogPersistenceService** (`Class`) `[CRITICAL]`
    - 📝 Provides methods to save and query task logs from the task_logs table.
    - 🔒 Invariant: Log entries are batch-inserted for performance.
    - 🔗 DEPENDS_ON -> `TaskLogRecord`
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the TaskLogPersistenceService
    - ƒ **add_logs** (`Function`)
      - 📝 Batch insert log entries for a task.
    - ƒ **get_logs** (`Function`)
      - 📝 Query logs for a task with filtering and pagination.
    - ƒ **get_log_stats** (`Function`)
      - 📝 Get statistics about logs for a task.
    - ƒ **get_sources** (`Function`)
      - 📝 Get unique sources for a task's logs.
    - ƒ **delete_logs_for_task** (`Function`)
      - 📝 Delete all logs for a specific task.
    - ƒ **delete_logs_for_tasks** (`Function`)
      - 📝 Delete all logs for multiple tasks.
  - ƒ **json_serializable** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **TaskManagerModule** (`Module`) `[CRITICAL]`
  - 📝 Manages the lifecycle of tasks, including their creation, execution, and state tracking. It uses a thread pool to run plugins asynchronously.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Task IDs are unique.
  - ℂ **TaskManager** (`Class`) `[CRITICAL]`
    - 📝 Manages the lifecycle of tasks, including their creation, execution, and state tracking.
    - 🔒 Invariant: Log entries are never deleted after being added to a task.
    - ƒ **__init__** (`Function`)
      - 📝 Initialize the TaskManager with dependencies.
    - ƒ **_flusher_loop** (`Function`)
      - 📝 Background thread that periodically flushes log buffer to database.
    - ƒ **_flush_logs** (`Function`)
      - 📝 Flush all buffered logs to the database.
    - ƒ **_flush_task_logs** (`Function`)
      - 📝 Flush logs for a specific task immediately.
    - ƒ **create_task** (`Function`)
      - 📝 Creates and queues a new task for execution.
    - ƒ **_run_task** (`Function`)
      - 📝 Internal method to execute a task with TaskContext support.
    - ƒ **resolve_task** (`Function`)
      - 📝 Resumes a task that is awaiting mapping.
    - ƒ **wait_for_resolution** (`Function`)
      - 📝 Pauses execution and waits for a resolution signal.
    - ƒ **wait_for_input** (`Function`)
      - 📝 Pauses execution and waits for user input.
    - ƒ **get_task** (`Function`)
      - 📝 Retrieves a task by its ID.
    - ƒ **get_all_tasks** (`Function`)
      - 📝 Retrieves all registered tasks.
    - ƒ **get_tasks** (`Function`)
      - 📝 Retrieves tasks with pagination and optional status filter.
    - ƒ **get_task_logs** (`Function`)
      - 📝 Retrieves logs for a specific task (from memory for running, persistence for completed).
    - ƒ **get_task_log_stats** (`Function`)
      - 📝 Get statistics about logs for a task.
    - ƒ **get_task_log_sources** (`Function`)
      - 📝 Get unique sources for a task's logs.
    - ƒ **_add_log** (`Function`)
      - 📝 Adds a log entry to a task buffer and notifies subscribers.
    - ƒ **subscribe_logs** (`Function`)
      - 📝 Subscribes to real-time logs for a task.
    - ƒ **unsubscribe_logs** (`Function`)
      - 📝 Unsubscribes from real-time logs for a task.
    - ƒ **load_persisted_tasks** (`Function`)
      - 📝 Load persisted tasks using persistence service.
    - ƒ **await_input** (`Function`)
      - 📝 Transition a task to AWAITING_INPUT state with input request.
    - ƒ **resume_task_with_password** (`Function`)
      - 📝 Resume a task that is awaiting input with provided passwords.
    - ƒ **clear_tasks** (`Function`)
      - 📝 Clears tasks based on status filter (also deletes associated logs).
  - ƒ **sort_key** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **TaskManagerModels** (`Module`)
  - 📝 Defines the data models and enumerations used by the Task Manager.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Task IDs are immutable once created.
  - 📦 **TaskStatus** (`Enum`) `[TRIVIAL]`
    - 📝 Defines the possible states a task can be in during its lifecycle.
  - 📦 **LogLevel** (`Enum`)
    - 📝 Defines the possible log levels for task logging.
  - ℂ **LogEntry** (`Class`) `[CRITICAL]`
    - 📝 A Pydantic model representing a single, structured log entry associated with a task.
    - 🔒 Invariant: Each log entry has a unique timestamp and source.
  - ℂ **TaskLog** (`Class`)
    - 📝 A Pydantic model representing a persisted log entry from the database.
  - ℂ **LogFilter** (`Class`)
    - 📝 Filter parameters for querying task logs.
  - ℂ **LogStats** (`Class`)
    - 📝 Statistics about log entries for a task.
  - ℂ **Task** (`Class`)
    - 📝 A Pydantic model representing a single execution instance of a plugin, including its status, parameters, and logs.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the Task model and validates input_request for AWAITING_INPUT status.
- 📦 **TaskCleanupModule** (`Module`)
  - 📝 Implements task cleanup and retention policies, including associated logs.
  - 🏗️ Layer: Core
  - ℂ **TaskCleanupService** (`Class`)
    - 📝 Provides methods to clean up old task records and their associated logs.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the cleanup service with dependencies.
    - ƒ **run_cleanup** (`Function`)
      - 📝 Deletes tasks older than the configured retention period and their logs.
    - ƒ **delete_task_with_logs** (`Function`)
      - 📝 Delete a single task and all its associated logs.
- 📦 **TaskManagerPackage** (`Module`) `[TRIVIAL]`
  - 📝 Exports the public API of the task manager package.
  - 🏗️ Layer: Core
- 📦 **TaskContextModule** (`Module`) `[CRITICAL]`
  - 📝 Provides execution context passed to plugins during task execution.
  - 🏗️ Layer: Core
  - 🔒 Invariant: Each TaskContext is bound to a single task execution.
  - 🔗 DEPENDS_ON -> `TaskLogger, USED_BY -> plugins`
  - ℂ **TaskContext** (`Class`) `[CRITICAL]`
    - 📝 A container passed to plugin.execute() providing the logger and other task-specific utilities.
    - 🔒 Invariant: logger is always a valid TaskLogger instance.
    - ƒ **__init__** (`Function`)
      - 📝 Initialize the TaskContext with task-specific resources.
    - ƒ **task_id** (`Function`)
      - 📝 Get the task ID.
    - ƒ **logger** (`Function`)
      - 📝 Get the TaskLogger instance for this context.
    - ƒ **params** (`Function`)
      - 📝 Get the task parameters.
    - ƒ **get_param** (`Function`)
      - 📝 Get a specific parameter value with optional default.
    - ƒ **create_sub_context** (`Function`)
      - 📝 Create a sub-context with a different default source.
  - ƒ **execute** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **test_task_logger** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/src/core/task_manager/__tests__/test_task_logger.py
  - 🏗️ Layer: Unknown
  - ƒ **mock_add_log** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **task_logger** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_task_logger_initialization** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_log_methods_delegation** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_with_source** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_missing_task_id** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_invalid_add_log_fn** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_progress_log** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.api.auth** (`Module`) `[CRITICAL]`
  - 📝 Authentication API endpoints.
  - 🏗️ Layer: API
  - 🔒 Invariant: All auth endpoints must return consistent error codes.
  - 📦 **router** (`Variable`) `[CRITICAL]`
    - 📝 APIRouter instance for authentication routes.
  - ƒ **login_for_access_token** (`Function`) `[CRITICAL]`
    - 📝 Authenticates a user and returns a JWT access token.
  - ƒ **read_users_me** (`Function`) `[CRITICAL]`
    - 📝 Retrieves the profile of the currently authenticated user.
  - ƒ **logout** (`Function`) `[CRITICAL]`
    - 📝 Logs out the current user (placeholder for session revocation).
  - ƒ **login_adfs** (`Function`) `[CRITICAL]`
    - 📝 Initiates the ADFS OIDC login flow.
  - ƒ **auth_callback_adfs** (`Function`) `[CRITICAL]`
    - 📝 Handles the callback from ADFS after successful authentication.
- 📦 **router** (`Global`)
  - 📝 APIRouter instance for LLM routes.
- ƒ **_is_valid_runtime_api_key** (`Function`)
  - 📝 Validate decrypted runtime API key presence/shape.
- ƒ **get_providers** (`Function`)
  - 📝 Retrieve all LLM provider configurations.
- ƒ **get_llm_status** (`Function`)
  - 📝 Returns whether LLM runtime is configured for dashboard validation.
- ƒ **create_provider** (`Function`)
  - 📝 Create a new LLM provider configuration.
- ƒ **update_provider** (`Function`)
  - 📝 Update an existing LLM provider configuration.
- ƒ **delete_provider** (`Function`)
  - 📝 Delete an LLM provider configuration.
- ƒ **test_connection** (`Function`)
  - 📝 Test connection to an LLM provider.
- ƒ **test_provider_config** (`Function`)
  - 📝 Test connection with a provided configuration (not yet saved).
- 📦 **backend.src.api.routes.datasets** (`Module`)
  - 📝 API endpoints for the Dataset Hub - listing datasets with mapping progress
  - 🏗️ Layer: API
  - 🔒 Invariant: All dataset responses include last_task metadata
  - 🔗 DEPENDS_ON -> `backend.src.dependencies`
  - 🔗 DEPENDS_ON -> `backend.src.services.resource_service`
  - 🔗 DEPENDS_ON -> `backend.src.core.superset_client`
  - 📦 **MappedFields** (`DataClass`)
  - 📦 **LastTask** (`DataClass`)
  - 📦 **DatasetItem** (`DataClass`)
  - 📦 **LinkedDashboard** (`DataClass`)
  - 📦 **DatasetColumn** (`DataClass`)
  - 📦 **DatasetDetailResponse** (`DataClass`)
  - 📦 **DatasetsResponse** (`DataClass`)
  - 📦 **TaskResponse** (`DataClass`)
  - ƒ **get_dataset_ids** (`Function`)
    - 📝 Fetch list of all dataset IDs from a specific environment (without pagination)
    - 🔗 CALLS -> `ResourceService.get_datasets_with_status`
  - ƒ **get_datasets** (`Function`)
    - 📝 Fetch list of datasets from a specific environment with mapping progress
    - 🔗 CALLS -> `ResourceService.get_datasets_with_status`
  - 📦 **MapColumnsRequest** (`DataClass`)
  - ƒ **map_columns** (`Function`)
    - 📝 Trigger bulk column mapping for datasets
    - 🔗 DISPATCHES -> `MapperPlugin`
    - 🔗 CALLS -> `task_manager.create_task`
  - 📦 **GenerateDocsRequest** (`DataClass`)
  - ƒ **generate_docs** (`Function`)
    - 📝 Trigger bulk documentation generation for datasets
    - 🔗 DISPATCHES -> `LLMAnalysisPlugin`
    - 🔗 CALLS -> `task_manager.create_task`
  - ƒ **get_dataset_detail** (`Function`)
    - 📝 Get detailed dataset information including columns and linked dashboards
    - 🔗 CALLS -> `SupersetClient.get_dataset_detail`
- 📦 **backend.src.api.routes.git** (`Module`)
  - 📝 Provides FastAPI endpoints for Git integration operations.
  - 🏗️ Layer: API
  - 🔒 Invariant: All Git operations must be routed through GitService.
  - ƒ **_build_no_repo_status_payload** (`Function`)
    - 📝 Build a consistent status payload for dashboards without initialized repositories.
  - ƒ **_handle_unexpected_git_route_error** (`Function`)
    - 📝 Convert unexpected route-level exceptions to stable 500 API responses.
  - ƒ **_resolve_repository_status** (`Function`)
    - 📝 Resolve repository status for one dashboard with graceful NO_REPO semantics.
  - ƒ **_get_git_config_or_404** (`Function`)
    - 📝 Resolve GitServerConfig by id or raise 404.
  - ƒ **_find_dashboard_id_by_slug** (`Function`)
    - 📝 Resolve dashboard numeric ID by slug in a specific environment.
  - ƒ **_resolve_dashboard_id_from_ref** (`Function`)
    - 📝 Resolve dashboard ID from slug-or-id reference for Git routes.
  - ƒ **_resolve_repo_key_from_ref** (`Function`)
    - 📝 Resolve repository folder key with slug-first strategy and deterministic fallback.
  - ƒ **get_git_configs** (`Function`)
    - 📝 List all configured Git servers.
  - ƒ **create_git_config** (`Function`)
    - 📝 Register a new Git server configuration.
  - ƒ **delete_git_config** (`Function`)
    - 📝 Remove a Git server configuration.
  - ƒ **test_git_config** (`Function`)
    - 📝 Validate connection to a Git server using provided credentials.
  - ƒ **list_gitea_repositories** (`Function`)
    - 📝 List repositories in Gitea for a saved Gitea config.
  - ƒ **create_gitea_repository** (`Function`)
    - 📝 Create a repository in Gitea for a saved Gitea config.
  - ƒ **create_remote_repository** (`Function`)
    - 📝 Create repository on remote Git server using selected provider config.
  - ƒ **delete_gitea_repository** (`Function`)
    - 📝 Delete repository in Gitea for a saved Gitea config.
  - ƒ **init_repository** (`Function`)
    - 📝 Link a dashboard to a Git repository and perform initial clone/init.
  - ƒ **get_branches** (`Function`)
    - 📝 List all branches for a dashboard's repository.
  - ƒ **create_branch** (`Function`)
    - 📝 Create a new branch in the dashboard's repository.
  - ƒ **checkout_branch** (`Function`)
    - 📝 Switch the dashboard's repository to a specific branch.
  - ƒ **commit_changes** (`Function`)
    - 📝 Stage and commit changes in the dashboard's repository.
  - ƒ **push_changes** (`Function`)
    - 📝 Push local commits to the remote repository.
  - ƒ **pull_changes** (`Function`)
    - 📝 Pull changes from the remote repository.
  - ƒ **sync_dashboard** (`Function`)
    - 📝 Sync dashboard state from Superset to Git using the GitPlugin.
  - ƒ **promote_dashboard** (`Function`)
    - 📝 Promote changes between branches via MR or direct merge.
  - ƒ **get_environments** (`Function`)
    - 📝 List all deployment environments.
  - ƒ **deploy_dashboard** (`Function`)
    - 📝 Deploy dashboard from Git to a target environment.
  - ƒ **get_history** (`Function`)
    - 📝 View commit history for a dashboard's repository.
  - ƒ **get_repository_status** (`Function`)
    - 📝 Get current Git status for a dashboard repository.
  - ƒ **get_repository_status_batch** (`Function`)
    - 📝 Get Git statuses for multiple dashboard repositories in one request.
  - ƒ **get_repository_diff** (`Function`)
    - 📝 Get Git diff for a dashboard repository.
  - ƒ **generate_commit_message** (`Function`)
    - 📝 Generate a suggested commit message using LLM.
- 📦 **ConnectionsRouter** (`Module`)
  - 📝 Defines the FastAPI router for managing external database connections.
  - 🏗️ Layer: UI (API)
  - ℂ **ConnectionSchema** (`Class`)
    - 📝 Pydantic model for connection response.
  - ℂ **ConnectionCreate** (`Class`)
    - 📝 Pydantic model for creating a connection.
  - ƒ **list_connections** (`Function`)
    - 📝 Lists all saved connections.
  - ƒ **create_connection** (`Function`)
    - 📝 Creates a new connection configuration.
  - ƒ **delete_connection** (`Function`)
    - 📝 Deletes a connection configuration.
- 📦 **backend.src.api.routes.environments** (`Module`)
  - 📝 API endpoints for listing environments and their databases.
  - 🏗️ Layer: API
  - 🔒 Invariant: Environment IDs must exist in the configuration.
  - 🔗 DEPENDS_ON -> `backend.src.dependencies`
  - 🔗 DEPENDS_ON -> `backend.src.core.superset_client`
  - ƒ **_normalize_superset_env_url** (`Function`)
    - 📝 Canonicalize Superset environment URL to base host/path without trailing /api/v1.
  - 📦 **ScheduleSchema** (`DataClass`)
  - 📦 **EnvironmentResponse** (`DataClass`)
  - 📦 **DatabaseResponse** (`DataClass`)
  - ƒ **get_environments** (`Function`)
    - 📝 List all configured environments.
    - 🏗️ Layer: API
  - ƒ **update_environment_schedule** (`Function`)
    - 📝 Update backup schedule for an environment.
    - 🏗️ Layer: API
  - ƒ **get_environment_databases** (`Function`)
    - 📝 Fetch the list of databases from a specific environment.
    - 🏗️ Layer: API
- 📦 **backend.src.api.routes.migration** (`Module`) `[CRITICAL]`
  - 📝 API endpoints for migration operations.
  - 🏗️ Layer: API
  - 🔗 DEPENDS_ON -> `backend.src.dependencies`
  - 🔗 DEPENDS_ON -> `backend.src.models.dashboard`
  - ƒ **get_dashboards** (`Function`) `[CRITICAL]`
    - 📝 Fetch all dashboards from the specified environment for the grid.
  - ƒ **execute_migration** (`Function`) `[CRITICAL]`
    - 📝 Execute the migration of selected dashboards.
  - ƒ **dry_run_migration** (`Function`) `[CRITICAL]`
    - 📝 Build pre-flight diff and risk summary without applying migration.
  - ƒ **get_migration_settings** (`Function`) `[CRITICAL]`
    - 📝 Get current migration Cron string explicitly.
  - ƒ **update_migration_settings** (`Function`) `[CRITICAL]`
    - 📝 Update migration Cron string.
  - ƒ **get_resource_mappings** (`Function`) `[CRITICAL]`
    - 📝 Fetch synchronized object mappings with search, filtering, and pagination.
  - ƒ **trigger_sync_now** (`Function`) `[CRITICAL]`
    - 📝 Triggers an immediate ID synchronization for all environments.
- 📦 **PluginsRouter** (`Module`)
  - 📝 Defines the FastAPI router for plugin-related endpoints, allowing clients to list available plugins.
  - 🏗️ Layer: UI (API)
  - ƒ **list_plugins** (`Function`)
    - 📝 Retrieve a list of all available plugins.
- 📦 **backend.src.api.routes.mappings** (`Module`)
  - 📝 API endpoints for managing database mappings and getting suggestions.
  - 🏗️ Layer: API
  - 🔒 Invariant: Mappings are persisted in the SQLite database.
  - 🔗 DEPENDS_ON -> `backend.src.dependencies`
  - 🔗 DEPENDS_ON -> `backend.src.core.database`
  - 🔗 DEPENDS_ON -> `backend.src.services.mapping_service`
  - 📦 **MappingCreate** (`DataClass`)
  - 📦 **MappingResponse** (`DataClass`)
  - 📦 **SuggestRequest** (`DataClass`)
  - ƒ **get_mappings** (`Function`)
    - 📝 List all saved database mappings.
  - ƒ **create_mapping** (`Function`)
    - 📝 Create or update a database mapping.
  - ƒ **suggest_mappings_api** (`Function`)
    - 📝 Get suggested mappings based on fuzzy matching.
- 📦 **SettingsRouter** (`Module`)
  - 📝 Provides API endpoints for managing application settings and Superset environments.
  - 🏗️ Layer: UI (API)
  - 🔒 Invariant: All settings changes must be persisted via ConfigManager.
  - 🔗 DEPENDS_ON -> `ConfigManager`
  - 🔗 DEPENDS_ON -> `ConfigModels`
  - ℂ **LoggingConfigResponse** (`Class`)
    - 📝 Response model for logging configuration with current task log level.
  - ƒ **_normalize_superset_env_url** (`Function`)
    - 📝 Canonicalize Superset environment URL to base host/path without trailing /api/v1.
  - ƒ **_validate_superset_connection_fast** (`Function`)
    - 📝 Run lightweight Superset connectivity validation without full pagination scan.
  - ƒ **get_settings** (`Function`)
    - 📝 Retrieves all application settings.
  - ƒ **update_global_settings** (`Function`)
    - 📝 Updates global application settings.
  - ƒ **get_storage_settings** (`Function`)
    - 📝 Retrieves storage-specific settings.
  - ƒ **update_storage_settings** (`Function`)
    - 📝 Updates storage-specific settings.
  - ƒ **get_environments** (`Function`)
    - 📝 Lists all configured Superset environments.
  - ƒ **add_environment** (`Function`)
    - 📝 Adds a new Superset environment.
  - ƒ **update_environment** (`Function`)
    - 📝 Updates an existing Superset environment.
  - ƒ **delete_environment** (`Function`)
    - 📝 Deletes a Superset environment.
  - ƒ **test_environment_connection** (`Function`)
    - 📝 Tests the connection to a Superset environment.
  - ƒ **get_logging_config** (`Function`)
    - 📝 Retrieves current logging configuration.
  - ƒ **update_logging_config** (`Function`)
    - 📝 Updates logging configuration.
  - ℂ **ConsolidatedSettingsResponse** (`Class`)
  - ƒ **get_consolidated_settings** (`Function`)
    - 📝 Retrieves all settings categories in a single call
  - ƒ **update_consolidated_settings** (`Function`)
    - 📝 Bulk update application settings from the consolidated view.
- 📦 **backend.src.api.routes.admin** (`Module`)
  - 📝 Admin API endpoints for user and role management.
  - 🏗️ Layer: API
  - 🔒 Invariant: All endpoints in this module require 'Admin' role or 'admin' scope.
  - 📦 **router** (`Variable`)
    - 📝 APIRouter instance for admin routes.
  - ƒ **list_users** (`Function`)
    - 📝 Lists all registered users.
  - ƒ **create_user** (`Function`)
    - 📝 Creates a new local user.
  - ƒ **update_user** (`Function`)
    - 📝 Updates an existing user.
  - ƒ **delete_user** (`Function`)
    - 📝 Deletes a user.
  - ƒ **list_roles** (`Function`)
    - 📝 Lists all available roles.
    - 🔗 CALLS -> `backend.src.models.auth.Role`
  - ƒ **create_role** (`Function`)
    - 📝 Creates a new system role with associated permissions.
    - 🔗 CALLS -> `backend.src.core.auth.repository.AuthRepository.get_permission_by_id`
  - ƒ **update_role** (`Function`)
    - 📝 Updates an existing role's metadata and permissions.
    - 🔗 CALLS -> `backend.src.core.auth.repository.AuthRepository.get_role_by_id`
  - ƒ **delete_role** (`Function`)
    - 📝 Removes a role from the system.
    - 🔗 CALLS -> `backend.src.core.auth.repository.AuthRepository.get_role_by_id`
  - ƒ **list_permissions** (`Function`)
    - 📝 Lists all available system permissions for assignment.
    - 🔗 CALLS -> `backend.src.core.auth.repository.AuthRepository.list_permissions`
  - ƒ **list_ad_mappings** (`Function`)
    - 📝 Lists all AD Group to Role mappings.
  - ƒ **create_ad_mapping** (`Function`)
    - 📝 Creates a new AD Group mapping.
- 📦 **backend.src.api.routes.git_schemas** (`Module`)
  - 📝 Defines Pydantic models for the Git integration API layer.
  - 🏗️ Layer: API
  - 🔒 Invariant: All schemas must be compatible with the FastAPI router.
  - 🔗 DEPENDS_ON -> `backend.src.models.git`
  - ℂ **GitServerConfigBase** (`Class`) `[TRIVIAL]`
    - 📝 Base schema for Git server configuration attributes.
  - ℂ **GitServerConfigCreate** (`Class`)
    - 📝 Schema for creating a new Git server configuration.
  - ℂ **GitServerConfigSchema** (`Class`)
    - 📝 Schema for representing a Git server configuration with metadata.
  - ℂ **GitRepositorySchema** (`Class`)
    - 📝 Schema for tracking a local Git repository linked to a dashboard.
  - ℂ **BranchSchema** (`Class`)
    - 📝 Schema for representing a Git branch metadata.
  - ℂ **CommitSchema** (`Class`)
    - 📝 Schema for representing Git commit details.
  - ℂ **BranchCreate** (`Class`)
    - 📝 Schema for branch creation requests.
  - ℂ **BranchCheckout** (`Class`)
    - 📝 Schema for branch checkout requests.
  - ℂ **CommitCreate** (`Class`)
    - 📝 Schema for staging and committing changes.
  - ℂ **ConflictResolution** (`Class`)
    - 📝 Schema for resolving merge conflicts.
  - ℂ **DeploymentEnvironmentSchema** (`Class`)
    - 📝 Schema for representing a target deployment environment.
  - ℂ **DeployRequest** (`Class`)
    - 📝 Schema for dashboard deployment requests.
  - ℂ **RepoInitRequest** (`Class`)
    - 📝 Schema for repository initialization requests.
  - ℂ **RepoStatusBatchRequest** (`Class`)
    - 📝 Schema for requesting repository statuses for multiple dashboards in a single call.
  - ℂ **RepoStatusBatchResponse** (`Class`)
    - 📝 Schema for returning repository statuses keyed by dashboard ID.
  - ℂ **GiteaRepoSchema** (`Class`)
    - 📝 Schema describing a Gitea repository.
  - ℂ **GiteaRepoCreateRequest** (`Class`)
    - 📝 Request schema for creating a Gitea repository.
  - ℂ **RemoteRepoSchema** (`Class`)
    - 📝 Provider-agnostic remote repository payload.
  - ℂ **RemoteRepoCreateRequest** (`Class`)
    - 📝 Provider-agnostic repository creation request.
  - ℂ **PromoteRequest** (`Class`)
    - 📝 Request schema for branch promotion workflow.
  - ℂ **PromoteResponse** (`Class`)
    - 📝 Response schema for promotion operation result.
- 📦 **backend.src.api.routes.assistant** (`Module`)
  - 📝 API routes for LLM assistant command parsing and safe execution orchestration.
  - 🏗️ Layer: API
  - 🔒 Invariant: Risky operations are never executed without valid confirmation token.
  - 🔗 DEPENDS_ON -> `backend.src.core.task_manager`
  - 🔗 DEPENDS_ON -> `backend.src.models.assistant`
  - ℂ **AssistantMessageRequest** (`Class`) `[TRIVIAL]`
    - 📝 Input payload for assistant message endpoint.
  - ℂ **AssistantAction** (`Class`) `[TRIVIAL]`
    - 📝 UI action descriptor returned with assistant responses.
  - ℂ **AssistantMessageResponse** (`Class`)
    - 📝 Output payload contract for assistant interaction endpoints.
  - ℂ **ConfirmationRecord** (`Class`)
    - 📝 In-memory confirmation token model for risky operation dispatch.
  - ƒ **_append_history** (`Function`)
    - 📝 Append conversation message to in-memory history buffer.
  - ƒ **_persist_message** (`Function`)
    - 📝 Persist assistant/user message record to database.
  - ƒ **_audit** (`Function`)
    - 📝 Append in-memory audit record for assistant decision trace.
  - ƒ **_persist_audit** (`Function`)
    - 📝 Persist structured assistant audit payload in database.
  - ƒ **_persist_confirmation** (`Function`)
    - 📝 Persist confirmation token record to database.
  - ƒ **_update_confirmation_state** (`Function`)
    - 📝 Update persistent confirmation token lifecycle state.
  - ƒ **_load_confirmation_from_db** (`Function`)
    - 📝 Load confirmation token from database into in-memory model.
  - ƒ **_ensure_conversation** (`Function`)
    - 📝 Resolve active conversation id in memory or create a new one.
  - ƒ **_resolve_or_create_conversation** (`Function`)
    - 📝 Resolve active conversation using explicit id, memory cache, or persisted history.
  - ƒ **_cleanup_history_ttl** (`Function`)
    - 📝 Enforce assistant message retention window by deleting expired rows and in-memory records.
  - ƒ **_is_conversation_archived** (`Function`)
    - 📝 Determine archived state for a conversation based on last update timestamp.
  - ƒ **_coerce_query_bool** (`Function`)
    - 📝 Normalize bool-like query values for compatibility in direct handler invocations/tests.
  - ƒ **_extract_id** (`Function`)
    - 📝 Extract first regex match group from text by ordered pattern list.
  - ƒ **_resolve_env_id** (`Function`)
    - 📝 Resolve environment identifier/name token to canonical environment id.
  - ƒ **_is_production_env** (`Function`)
    - 📝 Determine whether environment token resolves to production-like target.
  - ƒ **_resolve_provider_id** (`Function`)
    - 📝 Resolve provider token to provider id with active/default fallback.
  - ƒ **_get_default_environment_id** (`Function`)
    - 📝 Resolve default environment id from settings or first configured environment.
  - ƒ **_resolve_dashboard_id_by_ref** (`Function`)
    - 📝 Resolve dashboard id by title or slug reference in selected environment.
  - ƒ **_resolve_dashboard_id_entity** (`Function`)
    - 📝 Resolve dashboard id from intent entities using numeric id or dashboard_ref fallback.
  - ƒ **_get_environment_name_by_id** (`Function`)
    - 📝 Resolve human-readable environment name by id.
  - ƒ **_extract_result_deep_links** (`Function`)
    - 📝 Build deep-link actions to verify task result from assistant chat.
  - ƒ **_build_task_observability_summary** (`Function`)
    - 📝 Build compact textual summary for completed tasks to reduce "black box" effect.
  - ƒ **_parse_command** (`Function`)
    - 📝 Deterministically parse RU/EN command text into intent payload.
  - ƒ **_check_any_permission** (`Function`)
    - 📝 Validate user against alternative permission checks (logical OR).
  - ƒ **_has_any_permission** (`Function`)
    - 📝 Check whether user has at least one permission tuple from the provided list.
  - ƒ **_build_tool_catalog** (`Function`)
    - 📝 Build current-user tool catalog for LLM planner with operation contracts and defaults.
  - ƒ **_coerce_intent_entities** (`Function`)
    - 📝 Normalize intent entity value types from LLM output to route-compatible values.
  - ƒ **_confirmation_summary** (`Function`)
    - 📝 Build human-readable confirmation prompt for an intent before execution.
    - ƒ **_clarification_text_for_intent** (`Function`)
      - 📝 Convert technical missing-parameter errors into user-facing clarification prompts.
    - ƒ **_plan_intent_with_llm** (`Function`)
      - 📝 Use active LLM provider to select best tool/operation from dynamic catalog.
    - ƒ **_authorize_intent** (`Function`)
      - 📝 Validate user permissions for parsed intent before confirmation/dispatch.
    - ƒ **_dispatch_intent** (`Function`)
      - 📝 Execute parsed assistant intent via existing task/plugin/git services.
    - ƒ **send_message** (`Function`)
      - 📝 Parse assistant command, enforce safety gates, and dispatch executable intent.
    - ƒ **confirm_operation** (`Function`)
      - 📝 Execute previously requested risky operation after explicit user confirmation.
    - ƒ **cancel_operation** (`Function`)
      - 📝 Cancel pending risky operation and mark confirmation token as cancelled.
    - ƒ **list_conversations** (`Function`)
      - 📝 Return paginated conversation list for current user with archived flag and last message preview.
    - ƒ **delete_conversation** (`Function`)
      - 📝 Soft-delete or hard-delete a conversation and clear its in-memory trace.
    - ƒ **get_history** (`Function`)
      - 📝 Retrieve paginated assistant conversation history for current user.
    - ƒ **get_assistant_audit** (`Function`)
      - 📝 Return assistant audit decisions for current user from persistent and in-memory stores.
  - ƒ **_async_confirmation_summary** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_label** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **storage_routes** (`Module`)
  - 📝 API endpoints for file storage management (backups and repositories).
  - 🏗️ Layer: API
  - 🔒 Invariant: All paths must be validated against path traversal.
  - 🔗 DEPENDS_ON -> `backend.src.models.storage`
  - ƒ **list_files** (`Function`)
    - 📝 List all files and directories in the storage system.
    - 🔗 CALLS -> `StoragePlugin.list_files`
  - ƒ **upload_file** (`Function`)
    - 📝 Upload a file to the storage system.
    - 🔗 CALLS -> `StoragePlugin.save_file`
  - ƒ **delete_file** (`Function`)
    - 📝 Delete a specific file or directory.
    - 🔗 CALLS -> `StoragePlugin.delete_file`
  - ƒ **download_file** (`Function`)
    - 📝 Retrieve a file for download.
    - 🔗 CALLS -> `StoragePlugin.get_file_path`
  - ƒ **get_file_by_path** (`Function`)
    - 📝 Retrieve a file by validated absolute/relative path under storage root.
    - 🔗 CALLS -> `StoragePlugin.get_storage_root`
    - 🔗 CALLS -> `StoragePlugin.validate_path`
- 📦 **backend.src.api.routes.clean_release** (`Module`)
  - 📝 Expose clean release endpoints for candidate preparation and subsequent compliance flow.
  - 🏗️ Layer: API
  - 🔒 Invariant: API never reports prepared status if preparation errors are present.
  - 🔗 DEPENDS_ON -> `backend.src.dependencies.get_clean_release_repository`
  - 🔗 DEPENDS_ON -> `backend.src.services.clean_release.preparation_service`
  - ℂ **PrepareCandidateRequest** (`Class`)
    - 📝 Request schema for candidate preparation endpoint.
  - ℂ **StartCheckRequest** (`Class`)
    - 📝 Request schema for clean compliance check run startup.
  - ƒ **prepare_candidate_endpoint** (`Function`)
    - 📝 Prepare candidate with policy evaluation and deterministic manifest generation.
  - ƒ **start_check** (`Function`)
    - 📝 Start and finalize a clean compliance check run and persist report artifacts.
  - ƒ **get_check_status** (`Function`)
    - 📝 Return terminal/intermediate status payload for a check run.
  - ƒ **get_report** (`Function`)
    - 📝 Return persisted compliance report by report_id.
- 📦 **ReportsRouter** (`Module`) `[CRITICAL]`
  - 📝 FastAPI router for unified task report list and detail retrieval endpoints.
  - 🏗️ Layer: UI (API)
  - 🔒 Invariant: Endpoints are read-only and do not trigger long-running tasks.
  - 🔗 DEPENDS_ON -> `backend.src.services.reports.report_service.ReportsService`
  - 🔗 DEPENDS_ON -> `backend.src.dependencies`
  - ƒ **_parse_csv_enum_list** (`Function`)
    - 📝 Parse comma-separated query value into enum list.
  - ƒ **list_reports** (`Function`)
    - 📝 Return paginated unified reports list.
  - ƒ **get_report_detail** (`Function`)
    - 📝 Return one normalized report detail with diagnostics and next actions.
- 📦 **backend.src.api.routes.__init__** (`Module`)
  - 📝 Provide lazy route module loading to avoid heavyweight imports during tests.
  - 🏗️ Layer: API
  - 🔒 Invariant: Only names listed in __all__ are importable via __getattr__.
  - 🔗 DEPENDS_ON -> `importlib`
  - ƒ **__getattr__** (`Function`) `[TRIVIAL]`
    - 📝 Lazily import route module by attribute name.
- 📦 **TasksRouter** (`Module`)
  - 📝 Defines the FastAPI router for task-related endpoints, allowing clients to create, list, and get the status of tasks.
  - 🏗️ Layer: UI (API)
  - ƒ **create_task** (`Function`)
    - 📝 Create and start a new task for a given plugin.
  - ƒ **list_tasks** (`Function`)
    - 📝 Retrieve a list of tasks with pagination and optional status filter.
  - ƒ **get_task** (`Function`)
    - 📝 Retrieve the details of a specific task.
  - ƒ **get_task_logs** (`Function`) `[CRITICAL]`
    - 📝 Retrieve logs for a specific task with optional filtering.
  - ƒ **get_task_log_stats** (`Function`)
    - 📝 Get statistics about logs for a task (counts by level and source).
  - ƒ **get_task_log_sources** (`Function`)
    - 📝 Get unique sources for a task's logs.
  - ƒ **resolve_task** (`Function`)
    - 📝 Resolve a task that is awaiting mapping.
  - ƒ **resume_task** (`Function`)
    - 📝 Resume a task that is awaiting input (e.g., passwords).
  - ƒ **clear_tasks** (`Function`)
    - 📝 Clear tasks matching the status filter.
- 📦 **backend.src.api.routes.dashboards** (`Module`) `[CRITICAL]`
  - 📝 API endpoints for the Dashboard Hub - listing dashboards with Git and task status
  - 🏗️ Layer: API
  - 🔒 Invariant: All dashboard responses include git_status and last_task metadata
  - 🔗 DEPENDS_ON -> `backend.src.dependencies`
  - 🔗 DEPENDS_ON -> `backend.src.services.resource_service`
  - 🔗 DEPENDS_ON -> `backend.src.core.superset_client`
  - 📦 **GitStatus** (`DataClass`)
  - 📦 **LastTask** (`DataClass`)
  - 📦 **DashboardItem** (`DataClass`)
  - 📦 **DashboardsResponse** (`DataClass`)
  - 📦 **DashboardChartItem** (`DataClass`)
  - 📦 **DashboardDatasetItem** (`DataClass`)
  - 📦 **DashboardDetailResponse** (`DataClass`)
  - 📦 **DashboardTaskHistoryItem** (`DataClass`)
  - 📦 **DashboardTaskHistoryResponse** (`DataClass`)
  - 📦 **DatabaseMapping** (`DataClass`)
  - 📦 **DatabaseMappingsResponse** (`DataClass`)
  - ƒ **_find_dashboard_id_by_slug** (`Function`)
    - 📝 Resolve dashboard numeric ID by slug using Superset list endpoint.
  - ƒ **_resolve_dashboard_id_from_ref** (`Function`)
    - 📝 Resolve dashboard ID from slug-first reference with numeric fallback.
  - ƒ **_normalize_filter_values** (`Function`)
    - 📝 Normalize query filter values to lower-cased non-empty tokens.
  - ƒ **_dashboard_git_filter_value** (`Function`)
    - 📝 Build comparable git status token for dashboards filtering.
  - ƒ **get_dashboards** (`Function`)
    - 📝 Fetch list of dashboards from a specific environment with Git status and last task status
    - 🔗 CALLS -> `ResourceService.get_dashboards_with_status`
  - ƒ **get_database_mappings** (`Function`)
    - 📝 Get database mapping suggestions between source and target environments
    - 🔗 CALLS -> `MappingService.get_suggestions`
  - ƒ **get_dashboard_detail** (`Function`)
    - 📝 Fetch detailed dashboard info with related charts and datasets
    - 🔗 CALLS -> `SupersetClient.get_dashboard_detail`
  - ƒ **_task_matches_dashboard** (`Function`)
    - 📝 Checks whether task params are tied to a specific dashboard and environment.
  - ƒ **get_dashboard_tasks_history** (`Function`)
    - 📝 Returns history of backup and LLM validation tasks for a dashboard.
  - ƒ **get_dashboard_thumbnail** (`Function`)
    - 📝 Proxies Superset dashboard thumbnail with cache support.
  - 📦 **MigrateRequest** (`DataClass`)
  - 📦 **TaskResponse** (`DataClass`)
  - ƒ **migrate_dashboards** (`Function`)
    - 📝 Trigger bulk migration of dashboards from source to target environment
    - 🔗 DISPATCHES -> `MigrationPlugin`
    - 🔗 CALLS -> `task_manager.create_task`
  - 📦 **BackupRequest** (`DataClass`)
  - ƒ **backup_dashboards** (`Function`)
    - 📝 Trigger bulk backup of dashboards with optional cron schedule
    - 🔗 DISPATCHES -> `BackupPlugin`
    - 🔗 CALLS -> `task_manager.create_task`
  - ƒ **_matches_dashboard_filters** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_sort_key** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.api.routes.__tests__.test_dashboards** (`Module`)
  - 📝 Unit tests for Dashboards API endpoints
  - 🏗️ Layer: API
  - ƒ **test_get_dashboards_success** (`Function`)
  - ƒ **test_get_dashboards_with_search** (`Function`)
  - ƒ **test_get_dashboards_empty** (`Function`)
  - ƒ **test_get_dashboards_superset_failure** (`Function`)
  - ƒ **test_get_dashboards_env_not_found** (`Function`)
  - ƒ **test_get_dashboards_invalid_pagination** (`Function`)
  - ƒ **test_get_dashboard_detail_success** (`Function`)
  - ƒ **test_get_dashboard_detail_env_not_found** (`Function`)
  - ƒ **test_migrate_dashboards_success** (`Function`)
  - ƒ **test_migrate_dashboards_no_ids** (`Function`)
  - ƒ **test_migrate_dashboards_env_not_found** (`Function`)
  - ƒ **test_backup_dashboards_success** (`Function`)
  - ƒ **test_backup_dashboards_env_not_found** (`Function`)
  - ƒ **test_get_database_mappings_success** (`Function`)
  - ƒ **test_get_database_mappings_env_not_found** (`Function`)
  - ƒ **test_get_dashboard_tasks_history_filters_success** (`Function`)
  - ƒ **test_get_dashboard_thumbnail_success** (`Function`)
  - ƒ **mock_deps** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **mock_get_dashboards** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_network_request** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.api.routes.__tests__.test_git_status_route** (`Module`)
  - 📝 Validate status endpoint behavior for missing and error repository states.
  - 🏗️ Layer: Domain (Tests)
  - 🔗 CALLS -> `src.api.routes.git.get_repository_status`
  - ƒ **test_get_repository_status_returns_no_repo_payload_for_missing_repo** (`Function`)
    - 📝 Ensure missing local repository is represented as NO_REPO payload instead of an API error.
  - ƒ **test_get_repository_status_propagates_non_404_http_exception** (`Function`)
    - 📝 Ensure HTTP exceptions other than 404 are not masked.
  - ƒ **test_get_repository_diff_propagates_http_exception** (`Function`)
    - 📝 Ensure diff endpoint preserves domain HTTP errors from GitService.
  - ƒ **test_get_history_wraps_unexpected_error_as_500** (`Function`)
    - 📝 Ensure non-HTTP exceptions in history endpoint become deterministic 500 errors.
  - ƒ **test_commit_changes_wraps_unexpected_error_as_500** (`Function`)
    - 📝 Ensure commit endpoint does not leak unexpected errors as 400.
  - ƒ **test_get_repository_status_batch_returns_mixed_statuses** (`Function`)
    - 📝 Ensure batch endpoint returns per-dashboard statuses in one response.
  - ƒ **test_get_repository_status_batch_marks_item_as_error_on_service_failure** (`Function`)
    - 📝 Ensure batch endpoint marks failed items as ERROR without failing entire request.
  - ƒ **test_get_repository_status_batch_deduplicates_and_truncates_ids** (`Function`)
    - 📝 Ensure batch endpoint protects server from oversized payloads.
  - ƒ **_get_repo_path** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_status** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_get_repo_path** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_status** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_diff** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_commit_history** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **commit_changes** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_get_repo_path** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_status** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_get_repo_path** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_status** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_get_repo_path** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_status** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.test_reports_openapi_conformance** (`Module`)
  - 📝 Validate implemented reports payload shape against OpenAPI-required top-level contract fields.
  - 🏗️ Layer: Domain (Tests)
  - 🔒 Invariant: List and detail payloads include required contract keys.
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_all_tasks** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_admin_user** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_task** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_reports_list_openapi_required_keys** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_reports_detail_openapi_required_keys** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.api.routes.test_clean_release_source_policy** (`Module`)
  - 📝 Validate API behavior for source isolation violations in clean release preparation.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: External endpoints must produce blocking violation entries.
  - ƒ **_repo_with_seed_data** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_prepare_candidate_blocks_external_source** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.api.routes.test_clean_release_api** (`Module`)
  - 📝 Contract tests for clean release checks and reports endpoints.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: API returns deterministic payload shapes for checks and reports.
  - ƒ **_repo_with_seed_data** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_start_check_and_get_status_contract** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_report_not_found_returns_404** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_report_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_prepare_candidate_api_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **test_tasks_logs** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/src/api/routes/__tests__/test_tasks_logs.py
  - 🏗️ Layer: Unknown
  - ƒ **client** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_task_logs_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_task_logs_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_task_logs_invalid_limit** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_task_log_stats_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.test_reports_api** (`Module`)
  - 📝 Contract tests for GET /api/reports defaults, pagination, and filtering behavior.
  - 🏗️ Layer: Domain (Tests)
  - 🔒 Invariant: API response contract contains {items,total,page,page_size,has_next,applied_filters}.
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_all_tasks** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_admin_user** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_make_task** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_reports_default_pagination_contract** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_reports_filter_and_pagination** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_reports_handles_mixed_naive_and_aware_datetimes** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_reports_invalid_filter_returns_400** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.api.routes.__tests__.test_datasets** (`Module`)
  - 📝 Unit tests for Datasets API endpoints
  - 🏗️ Layer: API
  - 🔒 Invariant: Endpoint contracts remain stable for success and validation failure paths.
  - ƒ **test_get_datasets_success** (`Function`)
    - 📝 Validate successful datasets listing contract for an existing environment.
  - ƒ **test_get_datasets_env_not_found** (`Function`)
  - ƒ **test_get_datasets_invalid_pagination** (`Function`)
  - ƒ **test_map_columns_success** (`Function`)
  - ƒ **test_map_columns_invalid_source_type** (`Function`)
  - ƒ **test_generate_docs_success** (`Function`)
  - ƒ **test_map_columns_empty_ids** (`Function`)
  - ƒ **test_generate_docs_empty_ids** (`Function`)
  - ƒ **test_generate_docs_env_not_found** (`Function`)
  - ƒ **test_get_datasets_superset_failure** (`Function`)
  - ƒ **mock_deps** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.test_reports_detail_api** (`Module`)
  - 📝 Contract tests for GET /api/reports/{report_id} detail endpoint behavior.
  - 🏗️ Layer: Domain (Tests)
  - 🔒 Invariant: Detail endpoint tests must keep deterministic assertions for success and not-found contracts.
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_all_tasks** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_admin_user** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_make_task** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_report_detail_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_report_detail_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.api.routes.__tests__.test_assistant_authz** (`Module`)
  - 📝 Verify assistant confirmation ownership, expiration, and deny behavior for restricted users.
  - 🏗️ Layer: UI (API Tests)
  - 🔒 Invariant: Security-sensitive flows fail closed for unauthorized actors.
  - 🔗 DEPENDS_ON -> `backend.src.api.routes.assistant`
  - ƒ **_run_async** (`Function`) `[TRIVIAL]`
    - 📝 Execute async endpoint handler in synchronous test context.
  - ℂ **_FakeTask** (`Class`) `[TRIVIAL]`
    - 📝 Lightweight task model used for assistant authz tests.
  - ℂ **_FakeTaskManager** (`Class`) `[TRIVIAL]`
    - 📝 Minimal task manager for deterministic operation creation and lookup.
  - ℂ **_FakeConfigManager** (`Class`) `[TRIVIAL]`
    - 📝 Provide deterministic environment aliases required by intent parsing.
  - ƒ **_admin_user** (`Function`) `[TRIVIAL]`
    - 📝 Build admin principal fixture.
  - ƒ **_other_admin_user** (`Function`) `[TRIVIAL]`
    - 📝 Build second admin principal fixture for ownership tests.
  - ƒ **_limited_user** (`Function`) `[TRIVIAL]`
    - 📝 Build limited principal without required assistant execution privileges.
  - ℂ **_FakeQuery** (`Class`) `[TRIVIAL]`
    - 📝 Minimal chainable query object for fake DB interactions.
  - ℂ **_FakeDb** (`Class`) `[TRIVIAL]`
    - 📝 In-memory session substitute for assistant route persistence calls.
  - ƒ **_clear_assistant_state** (`Function`) `[TRIVIAL]`
    - 📝 Reset assistant process-local state between test cases.
  - ƒ **test_confirmation_owner_mismatch_returns_403** (`Function`)
    - 📝 Confirm endpoint should reject requests from user that does not own the confirmation token.
  - ƒ **test_expired_confirmation_cannot_be_confirmed** (`Function`)
    - 📝 Expired confirmation token should be rejected and not create task.
  - ƒ **test_limited_user_cannot_launch_restricted_operation** (`Function`)
    - 📝 Limited user should receive denied state for privileged operation.
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **create_task** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_task** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_tasks** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_environments** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **filter** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **order_by** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **first** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **all** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **limit** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **offset** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **count** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **add** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **merge** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **query** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **commit** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **rollback** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.api.routes.__tests__.test_assistant_api** (`Module`)
  - 📝 Validate assistant API endpoint logic via direct async handler invocation.
  - 🏗️ Layer: UI (API Tests)
  - 🔒 Invariant: Every test clears assistant in-memory state before execution.
  - 🔗 DEPENDS_ON -> `backend.src.api.routes.assistant`
  - ƒ **_run_async** (`Function`) `[TRIVIAL]`
    - 📝 Execute async endpoint handler in synchronous test context.
  - ℂ **_FakeTask** (`Class`) `[TRIVIAL]`
    - 📝 Lightweight task stub used by assistant API tests.
  - ℂ **_FakeTaskManager** (`Class`) `[TRIVIAL]`
    - 📝 Minimal async-compatible TaskManager fixture for deterministic test flows.
  - ℂ **_FakeConfigManager** (`Class`) `[TRIVIAL]`
    - 📝 Environment config fixture with dev/prod aliases for parser tests.
  - ƒ **_admin_user** (`Function`) `[TRIVIAL]`
    - 📝 Build admin principal fixture.
  - ƒ **_limited_user** (`Function`) `[TRIVIAL]`
    - 📝 Build non-admin principal fixture.
  - ℂ **_FakeQuery** (`Class`) `[TRIVIAL]`
    - 📝 Minimal chainable query object for fake SQLAlchemy-like DB behavior in tests.
  - ℂ **_FakeDb** (`Class`) `[TRIVIAL]`
    - 📝 In-memory fake database implementing subset of Session interface used by assistant routes.
  - ƒ **_clear_assistant_state** (`Function`) `[TRIVIAL]`
    - 📝 Reset in-memory assistant registries for isolation between tests.
  - ƒ **test_unknown_command_returns_needs_clarification** (`Function`)
    - 📝 Unknown command should return clarification state and unknown intent.
  - ƒ **test_capabilities_question_returns_successful_help** (`Function`)
    - 📝 Capability query should return deterministic help response, not clarification.
  - ƒ **test_non_admin_command_returns_denied** (`Function`)
    - 📝 Non-admin user must receive denied state for privileged command.
  - ƒ **test_migration_to_prod_requires_confirmation_and_can_be_confirmed** (`Function`)
    - 📝 Migration to prod must require confirmation and then start task after explicit confirm.
  - ƒ **test_status_query_returns_task_status** (`Function`)
    - 📝 Task status command must surface current status text for existing task id.
  - ƒ **test_status_query_without_task_id_returns_latest_user_task** (`Function`)
    - 📝 Status command without explicit task_id should resolve to latest task for current user.
  - ƒ **test_llm_validation_with_dashboard_ref_requires_confirmation** (`Function`)
    - 📝 LLM validation with dashboard_ref should now require confirmation before dispatch.
    - ƒ **test_list_conversations_groups_by_conversation_and_marks_archived** (`Function`)
      - 📝 Conversations endpoint must group messages and compute archived marker by inactivity threshold.
    - ƒ **test_history_from_latest_returns_recent_page_first** (`Function`)
      - 📝 History endpoint from_latest mode must return newest page while preserving chronological order in chunk.
    - ƒ **test_list_conversations_archived_only_filters_active** (`Function`)
      - 📝 archived_only mode must return only archived conversations.
    - ƒ **test_guarded_operation_always_requires_confirmation** (`Function`)
      - 📝 Non-dangerous (guarded) commands must still require confirmation before execution.
    - ƒ **test_guarded_operation_confirm_roundtrip** (`Function`)
      - 📝 Guarded operation must execute successfully after explicit confirmation.
      - ƒ **test_confirm_nonexistent_id_returns_404** (`Function`)
        - 📝 Confirming a non-existent ID should raise 404.
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **create_task** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_task** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_tasks** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_environments** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_config** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **filter** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **order_by** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **first** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **all** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **count** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **offset** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **limit** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **add** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **merge** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **query** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **commit** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **rollback** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **run** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.api.routes.__tests__.test_migration_routes** (`Module`)
  - 📝 Unit tests for migration API route handlers.
  - 🏗️ Layer: API
  - ƒ **db_session** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_make_config_manager** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_migration_settings_returns_default_cron** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_migration_settings_returns_fallback_when_no_cron** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_update_migration_settings_saves_cron** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_update_migration_settings_rejects_missing_cron** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_resource_mappings_returns_formatted_list** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_resource_mappings_respects_pagination** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_resource_mappings_search_by_name** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_resource_mappings_filter_by_env** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_resource_mappings_filter_by_type** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_mock_env** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_make_sync_config_manager** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_trigger_sync_now_creates_env_row_and_syncs** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_trigger_sync_now_rejects_empty_environments** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_trigger_sync_now_handles_partial_failure** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_trigger_sync_now_idempotent_env_upsert** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_invalid_env_raises_404** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_execute_migration_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_execute_migration_invalid_env_raises_400** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_dry_run_migration_returns_diff_and_risk** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_dry_run_migration_rejects_same_environment** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.models.config** (`Module`) `[CRITICAL]`
  - 📝 Defines database schema for persisted application configuration.
  - 🏗️ Layer: Domain
  - 🔗 DEPENDS_ON -> `sqlalchemy`
  - ℂ **AppConfigRecord** (`Class`) `[CRITICAL]`
    - 📝 Stores the single source of truth for application configuration.
- 📦 **backend.src.models.llm** (`Module`)
  - 📝 SQLAlchemy models for LLM provider configuration and validation results.
  - 🏗️ Layer: Domain
  - ℂ **LLMProvider** (`Class`)
    - 📝 SQLAlchemy model for LLM provider configuration.
  - ℂ **ValidationRecord** (`Class`)
    - 📝 SQLAlchemy model for dashboard validation history.
  - ƒ **generate_uuid** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **GitModels** (`Module`) `[TRIVIAL]`
  - 📝 Git-specific SQLAlchemy models for configuration and repository tracking.
  - 🏗️ Layer: Model
  - ℂ **GitServerConfig** (`Class`) `[TRIVIAL]`
    - 📝 Configuration for a Git server connection.
  - ℂ **GitRepository** (`Class`) `[TRIVIAL]`
    - 📝 Tracking for a local Git repository linked to a dashboard.
  - ℂ **DeploymentEnvironment** (`Class`) `[TRIVIAL]`
    - 📝 Target Superset environments for dashboard deployment.
- 📦 **backend.src.models.task** (`Module`) `[TRIVIAL]`
  - 📝 Defines the database schema for task execution records.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: All primary keys are UUID strings.
  - 🔗 DEPENDS_ON -> `sqlalchemy`
  - ℂ **TaskRecord** (`Class`) `[TRIVIAL]`
    - 📝 Represents a persistent record of a task execution.
  - ℂ **TaskLogRecord** (`Class`) `[CRITICAL]`
    - 📝 Represents a single persistent log entry for a task.
    - 🔒 Invariant: Each log entry belongs to exactly one task.
    - 🔗 DEPENDS_ON -> `TaskRecord`
- 📦 **backend.src.models.connection** (`Module`) `[TRIVIAL]`
  - 📝 Defines the database schema for external database connection configurations.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: All primary keys are UUID strings.
  - 🔗 DEPENDS_ON -> `sqlalchemy`
  - ℂ **ConnectionConfig** (`Class`) `[TRIVIAL]`
    - 📝 Stores credentials for external databases used for column mapping.
- 📦 **backend.src.models.mapping** (`Module`)
  - 📝 Defines the database schema for environment metadata and database mappings using SQLAlchemy.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: All primary keys are UUID strings.
  - 🔗 DEPENDS_ON -> `sqlalchemy`
  - ℂ **ResourceType** (`Class`) `[TRIVIAL]`
    - 📝 Enumeration of possible Superset resource types for ID mapping.
  - ℂ **MigrationStatus** (`Class`) `[TRIVIAL]`
    - 📝 Enumeration of possible migration job statuses.
  - ℂ **Environment** (`Class`)
    - 📝 Represents a Superset instance environment.
  - ℂ **DatabaseMapping** (`Class`)
    - 📝 Represents a mapping between source and target databases.
  - ℂ **MigrationJob** (`Class`) `[TRIVIAL]`
    - 📝 Represents a single migration execution job.
    - ℂ **ResourceMapping** (`Class`)
      - 📝 Maps a universal UUID for a resource to its actual ID on a specific environment.
- 📦 **backend.src.models.report** (`Module`) `[CRITICAL]`
  - 📝 Canonical report schemas for unified task reporting across heterogeneous task types.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Canonical report fields are always present for every report item.
  - 🔗 DEPENDS_ON -> `backend.src.core.task_manager.models`
  - ℂ **TaskType** (`Class`) `[CRITICAL]`
    - 📝 Supported normalized task report types.
    - 🔒 Invariant: Must contain valid generic task type mappings.
  - ℂ **ReportStatus** (`Class`) `[CRITICAL]`
    - 📝 Supported normalized report status values.
    - 🔒 Invariant: TaskStatus enum mapping logic holds.
  - ℂ **ErrorContext** (`Class`) `[CRITICAL]`
    - 📝 Error and recovery context for failed/partial reports.
    - 🔒 Invariant: The properties accurately describe error state.
  - ℂ **TaskReport** (`Class`) `[CRITICAL]`
    - 📝 Canonical normalized report envelope for one task execution.
    - 🔒 Invariant: Must represent canonical task record attributes.
  - ℂ **ReportQuery** (`Class`) `[CRITICAL]`
    - 📝 Query object for server-side report filtering, sorting, and pagination.
    - 🔒 Invariant: Time and pagination queries are mutually consistent.
  - ℂ **ReportCollection** (`Class`) `[CRITICAL]`
    - 📝 Paginated collection of normalized task reports.
    - 🔒 Invariant: Represents paginated data correctly.
  - ℂ **ReportDetailView** (`Class`) `[CRITICAL]`
    - 📝 Detailed report representation including diagnostics and recovery actions.
    - 🔒 Invariant: Incorporates a report and logs correctly.
  - ƒ **_non_empty_str** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_validate_sort_by** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_validate_sort_order** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_validate_time_range** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.models.assistant** (`Module`)
  - 📝 SQLAlchemy models for assistant audit trail and confirmation tokens.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Assistant records preserve immutable ids and creation timestamps.
  - 🔗 DEPENDS_ON -> `backend.src.models.mapping`
  - ℂ **AssistantAuditRecord** (`Class`)
    - 📝 Store audit decisions and outcomes produced by assistant command handling.
  - ℂ **AssistantMessageRecord** (`Class`)
    - 📝 Persist chat history entries for assistant conversations.
  - ℂ **AssistantConfirmationRecord** (`Class`)
    - 📝 Persist risky operation confirmation tokens with lifecycle state.
- 📦 **backend.src.models.storage** (`Module`) `[TRIVIAL]`
  - 📝 Data models for the storage system.
  - 🏗️ Layer: Domain
  - ℂ **FileCategory** (`Class`) `[TRIVIAL]`
    - 📝 Enumeration of supported file categories in the storage system.
  - ℂ **StorageConfig** (`Class`) `[TRIVIAL]`
    - 📝 Configuration model for the storage system, defining paths and naming patterns.
  - ℂ **StoredFile** (`Class`) `[TRIVIAL]`
    - 📝 Data model representing metadata for a file stored in the system.
- 📦 **backend.src.models.dashboard** (`Module`)
  - 📝 Defines data models for dashboard metadata and selection.
  - 🏗️ Layer: Model
  - ℂ **DashboardMetadata** (`Class`) `[TRIVIAL]`
    - 📝 Represents a dashboard available for migration.
  - ℂ **DashboardSelection** (`Class`) `[TRIVIAL]`
    - 📝 Represents the user's selection of dashboards to migrate.
- 📦 **backend.src.models.clean_release** (`Module`) `[CRITICAL]`
  - 📝 Define clean release domain entities and validation contracts for enterprise compliance flow.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Enterprise-clean policy always forbids external sources.
  - 🔗 BINDS_TO -> `specs/023-clean-repo-enterprise/data-model.md`
  - ℂ **ReleaseCandidateStatus** (`Class`)
    - 📝 Lifecycle states for release candidate.
  - ℂ **ProfileType** (`Class`)
    - 📝 Supported profile identifiers.
  - ℂ **ClassificationType** (`Class`)
    - 📝 Manifest classification outcomes for artifacts.
  - ℂ **RegistryStatus** (`Class`)
    - 📝 Registry lifecycle status.
  - ℂ **CheckFinalStatus** (`Class`)
    - 📝 Final status for compliance check run.
  - ℂ **ExecutionMode** (`Class`)
    - 📝 Execution channel for compliance checks.
  - ℂ **CheckStageName** (`Class`)
    - 📝 Mandatory check stages.
  - ℂ **CheckStageStatus** (`Class`)
    - 📝 Stage-level execution status.
  - ℂ **ViolationCategory** (`Class`)
    - 📝 Normalized compliance violation categories.
  - ℂ **ViolationSeverity** (`Class`)
    - 📝 Severity levels for violation triage.
  - ℂ **ReleaseCandidate** (`Class`)
    - 📝 Candidate metadata for clean-release workflow.
  - ℂ **CleanProfilePolicy** (`Class`)
    - 📝 Policy contract for artifact/source decisions.
  - ℂ **ResourceSourceEntry** (`Class`)
    - 📝 One internal source definition.
  - ℂ **ResourceSourceRegistry** (`Class`)
    - 📝 Allowlist of internal sources.
  - ℂ **ManifestItem** (`Class`)
    - 📝 One artifact entry in manifest.
  - ℂ **ManifestSummary** (`Class`)
    - 📝 Aggregate counters for manifest decisions.
  - ℂ **DistributionManifest** (`Class`)
    - 📝 Deterministic release composition for audit.
  - ℂ **CheckStageResult** (`Class`)
    - 📝 Per-stage compliance result.
  - ℂ **ComplianceCheckRun** (`Class`)
    - 📝 One execution run of compliance pipeline.
  - ℂ **ComplianceViolation** (`Class`)
    - 📝 Normalized violation row for triage and blocking decisions.
  - ℂ **ComplianceReport** (`Class`)
    - 📝 Final report payload for operator and audit systems.
  - ƒ **_validate_non_empty** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_validate_policy** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_validate_registry** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_validate_counts** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_validate_terminal_integrity** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_validate_violation** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_validate_report_counts** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.models.auth** (`Module`) `[CRITICAL]`
  - 📝 SQLAlchemy models for multi-user authentication and authorization.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Usernames and emails must be unique.
  - ƒ **generate_uuid** (`Function`) `[CRITICAL]`
    - 📝 Generates a unique UUID string.
  - 📦 **user_roles** (`Table`) `[CRITICAL]`
    - 📝 Association table for many-to-many relationship between Users and Roles.
  - 📦 **role_permissions** (`Table`) `[CRITICAL]`
    - 📝 Association table for many-to-many relationship between Roles and Permissions.
  - ℂ **User** (`Class`) `[CRITICAL]`
    - 📝 Represents an identity that can authenticate to the system.
  - ℂ **Role** (`Class`) `[CRITICAL]`
    - 📝 Represents a collection of permissions.
  - ℂ **Permission** (`Class`) `[CRITICAL]`
    - 📝 Represents a specific capability within the system.
  - ℂ **ADGroupMapping** (`Class`) `[CRITICAL]`
    - 📝 Maps an Active Directory group to a local System Role.
    - 🔗 DEPENDS_ON -> `Role`
- 📦 **test_models** (`Module`) `[TRIVIAL]`
  - 📝 Unit tests for data models
  - 🏗️ Layer: Domain
  - ƒ **test_environment_model** (`Function`)
    - 📝 Tests that Environment model correctly stores values.
- 📦 **test_report_models** (`Module`)
  - 📝 Unit tests for report Pydantic models and their validators
  - 🏗️ Layer: Domain
  - ƒ **test_enum_values** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_enum_values** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_valid_creation** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_minimal_creation** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_make_report** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_valid_creation** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_empty_report_id_raises** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_whitespace_report_id_raises** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_empty_task_id_raises** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_empty_summary_raises** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_summary_whitespace_trimmed** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_optional_fields** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_with_error_context** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_defaults** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_invalid_sort_by_raises** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_valid_sort_by_values** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_invalid_sort_order_raises** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_valid_sort_order_values** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_time_range_validation_valid** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_time_range_validation_invalid** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_page_ge_1** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_page_size_bounds** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_valid_creation** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_with_items** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_valid_creation** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_with_all_fields** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **test_clean_release** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/src/models/__tests__/test_clean_release.py
  - 🏗️ Layer: Unknown
  - ƒ **valid_candidate_data** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_release_candidate_valid** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_release_candidate_empty_id** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **valid_policy_data** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_enterprise_policy_valid** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_enterprise_policy_missing_prohibited** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_enterprise_policy_external_allowed** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_manifest_count_mismatch** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_compliant_run_validation** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_report_validation** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.resource_service** (`Module`)
  - 📝 Shared service for fetching resource data with Git status and task status
  - 🏗️ Layer: Service
  - 🔒 Invariant: All resources include metadata about their current state
  - 🔗 DEPENDS_ON -> `backend.src.core.superset_client`
  - 🔗 DEPENDS_ON -> `backend.src.core.task_manager`
  - 🔗 DEPENDS_ON -> `backend.src.services.git_service`
  - ℂ **ResourceService** (`Class`)
    - 📝 Provides centralized access to resource data with enhanced metadata
    - ƒ **__init__** (`Function`)
      - 📝 Initialize the resource service with dependencies
    - ƒ **get_dashboards_with_status** (`Function`)
      - 📝 Fetch dashboards from environment with Git status and last task status
      - 🔗 CALLS -> `SupersetClient.get_dashboards_summary`
      - 🔗 CALLS -> `self._get_git_status_for_dashboard`
      - 🔗 CALLS -> `self._get_last_llm_task_for_dashboard`
    - ƒ **get_dashboards_page_with_status** (`Function`)
      - 📝 Fetch one dashboard page from environment and enrich only that page with status metadata.
    - ƒ **_get_last_llm_task_for_dashboard** (`Function`)
      - 📝 Get most recent LLM validation task for a dashboard in an environment
    - ƒ **_normalize_task_status** (`Function`)
      - 📝 Normalize task status to stable uppercase values for UI/API projections
    - ƒ **_normalize_validation_status** (`Function`)
      - 📝 Normalize LLM validation status to PASS/FAIL/WARN/UNKNOWN
    - ƒ **get_datasets_with_status** (`Function`)
      - 📝 Fetch datasets from environment with mapping progress and last task status
      - 🔗 CALLS -> `SupersetClient.get_datasets_summary`
      - 🔗 CALLS -> `self._get_last_task_for_resource`
    - ƒ **get_activity_summary** (`Function`)
      - 📝 Get summary of active and recent tasks for the activity indicator
    - ƒ **_get_git_status_for_dashboard** (`Function`)
      - 📝 Get Git sync status for a dashboard
      - 🔗 CALLS -> `GitService.get_repo`
    - ƒ **_get_last_task_for_resource** (`Function`)
      - 📝 Get the most recent task for a specific resource
    - ƒ **_extract_resource_name_from_task** (`Function`)
      - 📝 Extract resource name from task params
    - ƒ **_extract_resource_type_from_task** (`Function`)
      - 📝 Extract resource type from task params
  - ƒ **_task_time** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.llm_prompt_templates** (`Module`)
  - 📝 Provide default LLM prompt templates and normalization helpers for runtime usage.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: All required prompt template keys are always present after normalization.
  - 🔗 DEPENDS_ON -> `backend.src.core.config_manager`
  - 📦 **DEFAULT_LLM_PROMPTS** (`Constant`)
    - 📝 Default prompt templates used by documentation, dashboard validation, and git commit generation.
  - 📦 **DEFAULT_LLM_PROVIDER_BINDINGS** (`Constant`)
    - 📝 Default provider binding per task domain.
  - 📦 **DEFAULT_LLM_ASSISTANT_SETTINGS** (`Constant`)
    - 📝 Default planner settings for assistant chat intent model/provider resolution.
  - ƒ **normalize_llm_settings** (`Function`)
    - 📝 Ensure llm settings contain stable schema with prompts section and default templates.
  - ƒ **is_multimodal_model** (`Function`)
    - 📝 Heuristically determine whether model supports image input required for dashboard validation.
  - ƒ **resolve_bound_provider_id** (`Function`)
    - 📝 Resolve provider id configured for a task binding with fallback to default provider.
  - ƒ **render_prompt** (`Function`)
    - 📝 Render prompt template using deterministic placeholder replacement with graceful fallback.
- 📦 **backend.src.services.llm_provider** (`Module`)
  - 📝 Service for managing LLM provider configurations with encrypted API keys.
  - 🏗️ Layer: Domain
  - 🔗 DEPENDS_ON -> `backend.src.core.database`
  - 🔗 DEPENDS_ON -> `backend.src.models.llm`
  - ℂ **EncryptionManager** (`Class`) `[CRITICAL]`
    - 📝 Handles encryption and decryption of sensitive data like API keys.
    - 🔒 Invariant: Uses a secret key from environment or a default one (fallback only for dev).
    - ƒ **EncryptionManager.__init__** (`Function`)
      - 📝 Initialize the encryption manager with a Fernet key.
    - ƒ **EncryptionManager.encrypt** (`Function`)
      - 📝 Encrypt a plaintext string.
    - ƒ **EncryptionManager.decrypt** (`Function`)
      - 📝 Decrypt an encrypted string.
  - ℂ **LLMProviderService** (`Class`)
    - 📝 Service to manage LLM provider lifecycle.
    - ƒ **LLMProviderService.__init__** (`Function`)
      - 📝 Initialize the service with database session.
    - ƒ **get_all_providers** (`Function`)
      - 📝 Returns all configured LLM providers.
    - ƒ **get_provider** (`Function`)
      - 📝 Returns a single LLM provider by ID.
    - ƒ **create_provider** (`Function`)
      - 📝 Creates a new LLM provider with encrypted API key.
    - ƒ **update_provider** (`Function`)
      - 📝 Updates an existing LLM provider.
    - ƒ **delete_provider** (`Function`)
      - 📝 Deletes an LLM provider.
    - ƒ **get_decrypted_api_key** (`Function`)
      - 📝 Returns the decrypted API key for a provider.
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **encrypt** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **decrypt** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services** (`Module`)
  - 📝 Package initialization for services module
  - 🏗️ Layer: Core
  - ƒ **__getattr__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.auth_service** (`Module`) `[CRITICAL]`
  - 📝 Orchestrates authentication business logic.
  - 🏗️ Layer: Service
  - 🔒 Invariant: Authentication must verify both credentials and account status.
  - ℂ **AuthService** (`Class`) `[CRITICAL]`
    - 📝 Provides high-level authentication services.
    - ƒ **__init__** (`Function`) `[CRITICAL]`
      - 📝 Initializes the service with a database session.
    - ƒ **authenticate_user** (`Function`) `[CRITICAL]`
      - 📝 Authenticates a user with username and password.
    - ƒ **create_session** (`Function`) `[CRITICAL]`
      - 📝 Creates a JWT session for an authenticated user.
    - ƒ **provision_adfs_user** (`Function`) `[CRITICAL]`
      - 📝 Just-In-Time (JIT) provisioning for ADFS users based on group mappings.
- 📦 **backend.src.services.git_service** (`Module`)
  - 📝 Core Git logic using GitPython to manage dashboard repositories.
  - 🏗️ Layer: Service
  - 🔒 Invariant: All Git operations must be performed on a valid local directory.
  - 🔗 DEPENDS_ON -> `src.core.database.SessionLocal`
  - 🔗 DEPENDS_ON -> `src.models.config.AppConfigRecord`
  - 🔗 DEPENDS_ON -> `src.models.git.GitRepository`
  - ℂ **GitService** (`Class`)
    - 📝 Wrapper for GitPython operations with semantic logging and error handling.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the GitService with a base path for repositories.
    - ƒ **_ensure_base_path_exists** (`Function`)
      - 📝 Ensure the repositories root directory exists and is a directory.
    - ƒ **_resolve_base_path** (`Function`)
      - 📝 Resolve base repository directory from explicit argument or global storage settings.
    - ƒ **_normalize_repo_key** (`Function`)
      - 📝 Convert user/dashboard-provided key to safe filesystem directory name.
    - ƒ **_update_repo_local_path** (`Function`)
      - 📝 Persist repository local_path in GitRepository table when record exists.
    - ƒ **_migrate_repo_directory** (`Function`)
      - 📝 Move legacy repository directory to target path and sync DB metadata.
    - ƒ **_get_repo_path** (`Function`)
      - 📝 Resolves the local filesystem path for a dashboard's repository.
    - ƒ **init_repo** (`Function`)
      - 📝 Initialize or clone a repository for a dashboard.
    - ƒ **get_repo** (`Function`)
      - 📝 Get Repo object for a dashboard.
    - ƒ **list_branches** (`Function`)
      - 📝 List all branches for a dashboard's repository.
    - ƒ **create_branch** (`Function`)
      - 📝 Create a new branch from an existing one.
    - ƒ **checkout_branch** (`Function`)
      - 📝 Switch to a specific branch.
    - ƒ **commit_changes** (`Function`)
      - 📝 Stage and commit changes.
    - ƒ **push_changes** (`Function`)
      - 📝 Push local commits to remote.
    - ƒ **pull_changes** (`Function`)
      - 📝 Pull changes from remote.
    - ƒ **get_status** (`Function`)
      - 📝 Get current repository status (dirty files, untracked, etc.)
    - ƒ **get_diff** (`Function`)
      - 📝 Generate diff for a file or the whole repository.
    - ƒ **get_commit_history** (`Function`)
      - 📝 Retrieve commit history for a repository.
    - ƒ **test_connection** (`Function`)
      - 📝 Test connection to Git provider using PAT.
    - ƒ **_normalize_git_server_url** (`Function`)
      - 📝 Normalize Git server URL for provider API calls.
    - ƒ **_gitea_headers** (`Function`)
      - 📝 Build Gitea API authorization headers.
    - ƒ **_gitea_request** (`Function`)
      - 📝 Execute HTTP request against Gitea API with stable error mapping.
    - ƒ **get_gitea_current_user** (`Function`)
      - 📝 Resolve current Gitea user for PAT.
    - ƒ **list_gitea_repositories** (`Function`)
      - 📝 List repositories visible to authenticated Gitea user.
    - ƒ **create_gitea_repository** (`Function`)
      - 📝 Create repository in Gitea for authenticated user.
    - ƒ **delete_gitea_repository** (`Function`)
      - 📝 Delete repository in Gitea.
    - ƒ **create_github_repository** (`Function`)
      - 📝 Create repository in GitHub or GitHub Enterprise.
    - ƒ **create_gitlab_repository** (`Function`)
      - 📝 Create repository(project) in GitLab.
    - ƒ **_parse_remote_repo_identity** (`Function`)
      - 📝 Parse owner/repo from remote URL for Git server API operations.
    - ƒ **_derive_server_url_from_remote** (`Function`)
      - 📝 Build API base URL from remote repository URL without credentials.
    - ƒ **promote_direct_merge** (`Function`)
      - 📝 Perform direct merge between branches in local repo and push target branch.
    - ƒ **create_gitea_pull_request** (`Function`)
      - 📝 Create pull request in Gitea.
    - ƒ **create_github_pull_request** (`Function`)
      - 📝 Create pull request in GitHub or GitHub Enterprise.
    - ƒ **create_gitlab_merge_request** (`Function`)
      - 📝 Create merge request in GitLab.
- 📦 **backend.src.services.mapping_service** (`Module`)
  - 📝 Orchestrates database fetching and fuzzy matching suggestions.
  - 🏗️ Layer: Service
  - 🔒 Invariant: Suggestions are based on database names.
  - 🔗 DEPENDS_ON -> `backend.src.core.superset_client`
  - 🔗 DEPENDS_ON -> `backend.src.core.utils.matching`
  - ℂ **MappingService** (`Class`)
    - 📝 Service for handling database mapping logic.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the mapping service with a config manager.
    - ƒ **_get_client** (`Function`)
      - 📝 Helper to get an initialized SupersetClient for an environment.
    - ƒ **get_suggestions** (`Function`)
      - 📝 Fetches databases from both environments and returns fuzzy matching suggestions.
- 📦 **test_encryption_manager** (`Module`)
  - 📝 Unit tests for EncryptionManager encrypt/decrypt functionality.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Encrypt+decrypt roundtrip always returns original plaintext.
  - ℂ **TestEncryptionManager** (`Class`)
    - 📝 Validate EncryptionManager encrypt/decrypt roundtrip, uniqueness, and error handling.
    - ƒ **test_encrypt_decrypt_roundtrip** (`Function`)
      - 📝 Encrypt then decrypt returns original plaintext.
    - ƒ **test_encrypt_produces_different_output** (`Function`)
      - 📝 Same plaintext produces different ciphertext (Fernet uses random IV).
    - ƒ **test_different_inputs_yield_different_ciphertext** (`Function`)
      - 📝 Different inputs produce different ciphertexts.
    - ƒ **test_decrypt_invalid_data_raises** (`Function`)
      - 📝 Decrypting invalid data raises InvalidToken.
    - ƒ **test_encrypt_empty_string** (`Function`)
      - 📝 Encrypting and decrypting an empty string works.
    - ƒ **test_custom_key_roundtrip** (`Function`)
      - 📝 Custom Fernet key produces valid roundtrip.
  - ƒ **_make_manager** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **encrypt** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **decrypt** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **encrypt** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **decrypt** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.__tests__.test_llm_prompt_templates** (`Module`)
  - 📝 Validate normalization and rendering behavior for configurable LLM prompt templates.
  - 🏗️ Layer: Domain Tests
  - 🔒 Invariant: All required prompt keys remain available after normalization.
  - 🔗 DEPENDS_ON -> `backend.src.services.llm_prompt_templates`
  - ƒ **test_normalize_llm_settings_adds_default_prompts** (`Function`)
    - 📝 Ensure legacy/partial llm settings are expanded with all prompt defaults.
  - ƒ **test_normalize_llm_settings_keeps_custom_prompt_values** (`Function`)
    - 📝 Ensure user-customized prompt values are preserved during normalization.
  - ƒ **test_render_prompt_replaces_known_placeholders** (`Function`)
    - 📝 Ensure template placeholders are deterministically replaced.
  - ƒ **test_is_multimodal_model_detects_known_vision_models** (`Function`)
    - 📝 Ensure multimodal model detection recognizes common vision-capable model names.
  - ƒ **test_resolve_bound_provider_id_prefers_binding_then_default** (`Function`)
    - 📝 Verify provider binding resolution priority.
  - ƒ **test_normalize_llm_settings_keeps_assistant_planner_settings** (`Function`)
    - 📝 Ensure assistant planner provider/model fields are preserved and normalized.
- 📦 **test_llm_provider** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/src/services/__tests__/test_llm_provider.py
  - 🏗️ Layer: Unknown
  - ƒ **test_encryption_cycle** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_empty_string_encryption** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_decrypt_invalid_data** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **mock_db** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **service** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_all_providers** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_create_provider** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_decrypted_api_key** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_decrypted_api_key_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.__tests__.test_resource_service** (`Module`)
  - 📝 Unit tests for ResourceService
  - 🏗️ Layer: Service
  - 🔒 Invariant: Resource summaries preserve task linkage and status projection behavior.
  - ƒ **test_get_dashboards_with_status** (`Function`)
    - 📝 Validate dashboard enrichment includes git/task status projections.
  - ƒ **test_get_datasets_with_status** (`Function`)
  - ƒ **test_get_activity_summary** (`Function`)
  - ƒ **test_get_git_status_for_dashboard_no_repo** (`Function`)
  - ƒ **test_get_last_task_for_resource** (`Function`)
  - ƒ **test_extract_resource_name_from_task** (`Function`)
  - ƒ **test_get_last_task_for_resource_empty_tasks** (`Function`)
  - ƒ **test_get_last_task_for_resource_no_match** (`Function`)
- 📦 **backend.src.services.clean_release.compliance_orchestrator** (`Module`) `[CRITICAL]`
  - 📝 Execute mandatory clean compliance stages and produce final COMPLIANT/BLOCKED/FAILED outcome.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: COMPLIANT is impossible when any mandatory stage fails.
  - 🔗 DEPENDS_ON -> `backend.src.services.clean_release.stages`
  - 🔗 DEPENDS_ON -> `backend.src.services.clean_release.report_builder`
  - 🔗 DEPENDS_ON -> `backend.src.services.clean_release.repository`
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **start_check_run** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **execute_stages** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **finalize_run** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.clean_release.manifest_builder** (`Module`)
  - 📝 Build deterministic distribution manifest from classified artifact input.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Equal semantic artifact sets produce identical deterministic hash values.
  - 🔗 DEPENDS_ON -> `backend.src.models.clean_release`
  - ƒ **build_distribution_manifest** (`Function`)
    - 📝 Build DistributionManifest with deterministic hash and validated counters.
  - ƒ **_stable_hash_payload** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.clean_release.policy_engine** (`Module`) `[CRITICAL]`
  - 📝 Evaluate artifact/source policies for enterprise clean profile with deterministic outcomes.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Enterprise-clean policy always treats non-registry sources as violations.
  - 🔗 DEPENDS_ON -> `backend.src.models.clean_release.CleanProfilePolicy`
  - 🔗 DEPENDS_ON -> `backend.src.models.clean_release.ResourceSourceRegistry`
  - ℂ **CleanPolicyEngine** (`Class`)
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **validate_policy** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **classify_artifact** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **validate_resource_source** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **evaluate_candidate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.clean_release.stages** (`Module`)
  - 📝 Define compliance stage order and helper functions for deterministic run-state evaluation.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Stage order remains deterministic for all compliance runs.
  - 🔗 DEPENDS_ON -> `backend.src.models.clean_release`
  - ƒ **stage_result_map** (`Function`)
    - 📝 Convert stage result list to dictionary by stage name.
  - ƒ **missing_mandatory_stages** (`Function`)
    - 📝 Identify mandatory stages that are absent from run results.
  - ƒ **derive_final_status** (`Function`)
    - 📝 Derive final run status from stage results with deterministic blocking behavior.
- 📦 **backend.src.services.clean_release.audit_service** (`Module`)
  - 📝 Provide lightweight audit hooks for clean release preparation/check/report lifecycle.
  - 🏗️ Layer: Infra
  - 🔒 Invariant: Audit hooks are append-only log actions.
  - 🔗 DEPENDS_ON -> `backend.src.core.logger`
  - ƒ **audit_preparation** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **audit_check_run** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **audit_report** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.clean_release.source_isolation** (`Module`)
  - 📝 Validate that all resource endpoints belong to the approved internal source registry.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Any endpoint outside enabled registry entries is treated as external-source violation.
  - 🔗 DEPENDS_ON -> `backend.src.models.clean_release.ResourceSourceRegistry`
  - ƒ **validate_internal_sources** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.clean_release.report_builder** (`Module`) `[CRITICAL]`
  - 📝 Build and persist compliance reports with consistent counter invariants.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: blocking_violations_count never exceeds violations_count.
  - 🔗 DEPENDS_ON -> `backend.src.models.clean_release`
  - 🔗 DEPENDS_ON -> `backend.src.services.clean_release.repository`
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **build_report_payload** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **persist_report** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.clean_release.repository** (`Module`)
  - 📝 Provide repository adapter for clean release entities with deterministic access methods.
  - 🏗️ Layer: Infra
  - 🔒 Invariant: Repository operations are side-effect free outside explicit save/update calls.
  - 🔗 DEPENDS_ON -> `backend.src.models.clean_release`
  - ƒ **save_candidate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_candidate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **save_policy** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_policy** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_active_policy** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **save_registry** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_registry** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **save_manifest** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_manifest** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **save_check_run** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_check_run** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **save_report** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_report** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **save_violation** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_violations_by_check_run** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.clean_release.preparation_service** (`Module`)
  - 📝 Prepare release candidate by policy evaluation and deterministic manifest creation.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Candidate preparation always persists manifest and candidate status deterministically.
  - 🔗 DEPENDS_ON -> `backend.src.services.clean_release.policy_engine`
  - 🔗 DEPENDS_ON -> `backend.src.services.clean_release.manifest_builder`
  - 🔗 DEPENDS_ON -> `backend.src.services.clean_release.repository`
  - ƒ **prepare_candidate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.clean_release** (`Module`)
  - 📝 Initialize clean release service package and provide explicit module exports.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Package import must not execute runtime side effects beyond symbol export setup.
- 📦 **backend.tests.services.clean_release.test_audit_service** (`Module`)
  - 📝 Validate audit hooks emit expected log patterns for clean release lifecycle.
  - 🏗️ Layer: Infra
  - ƒ **test_audit_preparation** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_audit_check_run** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_audit_report** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **test_policy_engine** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/src/services/clean_release/__tests__/test_policy_engine.py
  - 🏗️ Layer: Unknown
  - ƒ **enterprise_clean_setup** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_policy_valid** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_missing_registry_ref** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_conflicting_registry** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_classify_artifact** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_validate_resource_source** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_evaluate_candidate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.services.clean_release.test_compliance_orchestrator** (`Module`)
  - 📝 Validate compliance orchestrator stage transitions and final status derivation.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Failed mandatory stage forces BLOCKED terminal status.
  - ƒ **test_orchestrator_stage_failure_blocks_release** (`Function`)
    - 📝 Verify mandatory stage failure forces BLOCKED final status.
  - ƒ **test_orchestrator_compliant_candidate** (`Function`)
    - 📝 Verify happy path where all mandatory stages pass yields COMPLIANT.
  - ƒ **test_orchestrator_missing_stage_result** (`Function`)
    - 📝 Verify incomplete mandatory stage set cannot end as COMPLIANT and results in FAILED.
  - ƒ **test_orchestrator_report_generation_error** (`Function`)
    - 📝 Verify downstream report errors do not mutate orchestrator final status.
- 📦 **backend.tests.services.clean_release.test_report_builder** (`Module`)
  - 📝 Validate compliance report builder counter integrity and blocked-run constraints.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: blocked run requires at least one blocking violation.
  - ƒ **_terminal_run** (`Function`)
    - 📝 Build terminal/non-terminal run fixtures for report builder tests.
  - ƒ **_blocking_violation** (`Function`)
    - 📝 Build a blocking violation fixture for blocked report scenarios.
  - ƒ **test_report_builder_blocked_requires_blocking_violations** (`Function`)
    - 📝 Verify BLOCKED run requires at least one blocking violation.
  - ƒ **test_report_builder_blocked_with_two_violations** (`Function`)
    - 📝 Verify report builder generates conformant payload for a BLOCKED run with violations.
  - ƒ **test_report_builder_counter_consistency** (`Function`)
    - 📝 Verify violations counters remain consistent for blocking payload.
  - ƒ **test_missing_operator_summary** (`Function`)
    - 📝 Validate non-terminal run prevents operator summary/report generation.
- 📦 **backend.tests.services.clean_release.test_manifest_builder** (`Module`)
  - 📝 Validate deterministic manifest generation behavior for US1.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Same input artifacts produce identical deterministic hash.
  - ƒ **test_manifest_deterministic_hash_for_same_input** (`Function`)
    - 📝 Ensure hash is stable for same candidate/policy/artifact input.
- 📦 **backend.tests.services.clean_release.test_stages** (`Module`)
  - 📝 Validate final status derivation logic from stage results.
  - 🏗️ Layer: Domain
  - ƒ **test_derive_final_status_compliant** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_derive_final_status_blocked** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_derive_final_status_failed_missing** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_derive_final_status_failed_skipped** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.services.clean_release.test_source_isolation** (`Module`)
  - 📝 Verify internal source registry validation behavior.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: External endpoints always produce blocking violations.
  - ƒ **_registry** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_validate_internal_sources_all_internal_ok** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_validate_internal_sources_external_blocked** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.services.clean_release.test_preparation_service** (`Module`)
  - 📝 Validate release candidate preparation flow, including policy evaluation and manifest persisting.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Candidate preparation always persists manifest and candidate status deterministically.
  - ƒ **_mock_policy** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_mock_registry** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_mock_candidate** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_prepare_candidate_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_prepare_candidate_with_violations** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_prepare_candidate_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_prepare_candidate_no_active_policy** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.src.services.reports.normalizer** (`Module`) `[CRITICAL]`
  - 📝 Convert task manager task objects into canonical unified TaskReport entities with deterministic fallback behavior.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Unknown task types and partial payloads remain visible via fallback mapping.
  - 🔗 DEPENDS_ON -> `backend.src.core.task_manager.models.Task`
  - 🔗 DEPENDS_ON -> `backend.src.models.report`
  - 🔗 DEPENDS_ON -> `backend.src.services.reports.type_profiles`
  - ƒ **status_to_report_status** (`Function`)
    - 📝 Normalize internal task status to canonical report status.
  - ƒ **build_summary** (`Function`)
    - 📝 Build deterministic user-facing summary from task payload and status.
  - ƒ **extract_error_context** (`Function`)
    - 📝 Extract normalized error context and next actions for failed/partial reports.
  - ƒ **normalize_task_report** (`Function`)
    - 📝 Convert one Task to canonical TaskReport envelope.
- 📦 **backend.src.services.reports.type_profiles** (`Module`) `[CRITICAL]`
  - 📝 Deterministic mapping of plugin/task identifiers to canonical report task types and fallback profile metadata.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: Unknown input always resolves to TaskType.UNKNOWN with a single fallback profile.
  - 🔗 DEPENDS_ON -> `backend.src.models.report.TaskType`
  - 📦 **PLUGIN_TO_TASK_TYPE** (`Data`)
    - 📝 Maps plugin identifiers to normalized report task types.
  - 📦 **TASK_TYPE_PROFILES** (`Data`)
    - 📝 Profile metadata registry for each normalized task type.
  - ƒ **resolve_task_type** (`Function`)
    - 📝 Resolve canonical task type from plugin/task identifier with guaranteed fallback.
  - ƒ **get_type_profile** (`Function`)
    - 📝 Return deterministic profile metadata for a task type.
- 📦 **backend.src.services.reports.report_service** (`Module`) `[CRITICAL]`
  - 📝 Aggregate, normalize, filter, and paginate task reports for unified list/detail API use cases.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: List responses are deterministic and include applied filter echo metadata.
  - 🔗 DEPENDS_ON -> `backend.src.core.task_manager.manager.TaskManager`
  - 🔗 DEPENDS_ON -> `backend.src.models.report`
  - 🔗 DEPENDS_ON -> `backend.src.services.reports.normalizer`
  - ℂ **ReportsService** (`Class`) `[CRITICAL]`
    - 📝 Service layer for list/detail report retrieval and normalization.
    - 🔒 Invariant: Service methods are read-only over task history source.
    - ƒ **__init__** (`Function`) `[CRITICAL]`
      - 📝 Initialize service with TaskManager dependency.
      - 🔒 Invariant: Constructor performs no task mutations.
    - ƒ **_load_normalized_reports** (`Function`)
      - 📝 Build normalized reports from all available tasks.
      - 🔒 Invariant: Every returned item is a TaskReport.
    - ƒ **_to_utc_datetime** (`Function`)
      - 📝 Normalize naive/aware datetime values to UTC-aware datetime for safe comparisons.
      - 🔒 Invariant: Naive datetimes are interpreted as UTC to preserve deterministic ordering/filtering.
    - ƒ **_datetime_sort_key** (`Function`)
      - 📝 Produce stable numeric sort key for report timestamps.
      - 🔒 Invariant: Mixed naive/aware datetimes never raise TypeError.
    - ƒ **_matches_query** (`Function`)
      - 📝 Apply query filtering to a report.
      - 🔒 Invariant: Filter evaluation is side-effect free.
    - ƒ **_sort_reports** (`Function`)
      - 📝 Sort reports deterministically according to query settings.
      - 🔒 Invariant: Sorting criteria are deterministic for equal input.
    - ƒ **list_reports** (`Function`)
      - 📝 Return filtered, sorted, paginated report collection.
    - ƒ **get_report_detail** (`Function`)
      - 📝 Return one normalized report with timeline/diagnostics/next actions.
- 📦 **test_type_profiles** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/src/services/reports/__tests__/test_type_profiles.py
  - 🏗️ Layer: Unknown
  - ƒ **test_resolve_task_type_fallbacks** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_resolve_task_type_valid** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_type_profile_valid** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_type_profile_fallback** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **test_report_service** (`Module`)
  - 📝 Unit tests for ReportsService list/detail operations
  - 🏗️ Layer: Domain
  - ƒ **_make_task** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_make_service** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_empty_tasks_returns_empty_collection** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_single_task_normalized** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_pagination_first_page** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_pagination_last_page** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_filter_by_status** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_filter_by_task_type** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_search_filter** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_sort_by_status** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_applied_filters_echoed** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_make_service** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_detail_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_detail_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_detail_includes_timeline** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_detail_failed_task_has_next_actions** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_detail_success_task_no_error_next_actions** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.test_report_normalizer** (`Module`)
  - 📝 Validate unknown task type fallback and partial payload normalization behavior.
  - 🏗️ Layer: Domain (Tests)
  - 🔒 Invariant: Unknown plugin types are mapped to canonical unknown task type.
  - ƒ **test_unknown_type_maps_to_unknown_profile** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_partial_payload_keeps_report_visible_with_placeholders** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **BackupPlugin** (`Module`)
  - 📝 A plugin that provides functionality to back up Superset dashboards.
  - 🏗️ Layer: App
  - 🔗 IMPLEMENTS -> `PluginBase`
  - 🔗 DEPENDS_ON -> `superset_tool.client`
  - 🔗 DEPENDS_ON -> `superset_tool.utils`
  - ℂ **BackupPlugin** (`Class`)
    - 📝 Implementation of the backup plugin logic.
    - ƒ **id** (`Function`)
      - 📝 Returns the unique identifier for the backup plugin.
    - ƒ **name** (`Function`)
      - 📝 Returns the human-readable name of the backup plugin.
    - ƒ **description** (`Function`)
      - 📝 Returns a description of the backup plugin.
    - ƒ **version** (`Function`)
      - 📝 Returns the version of the backup plugin.
    - ƒ **ui_route** (`Function`)
      - 📝 Returns the frontend route for the backup plugin.
    - ƒ **get_schema** (`Function`)
      - 📝 Returns the JSON schema for backup plugin parameters.
    - ƒ **execute** (`Function`)
      - 📝 Executes the dashboard backup logic with TaskContext support.
- 📦 **DebugPluginModule** (`Module`)
  - 📝 Implements a plugin for system diagnostics and debugging Superset API responses.
  - 🏗️ Layer: Plugins
  - ℂ **DebugPlugin** (`Class`)
    - 📝 Plugin for system diagnostics and debugging.
    - ƒ **id** (`Function`)
      - 📝 Returns the unique identifier for the debug plugin.
    - ƒ **name** (`Function`)
      - 📝 Returns the human-readable name of the debug plugin.
    - ƒ **description** (`Function`)
      - 📝 Returns a description of the debug plugin.
    - ƒ **version** (`Function`)
      - 📝 Returns the version of the debug plugin.
    - ƒ **ui_route** (`Function`)
      - 📝 Returns the frontend route for the debug plugin.
    - ƒ **get_schema** (`Function`)
      - 📝 Returns the JSON schema for the debug plugin parameters.
    - ƒ **execute** (`Function`)
      - 📝 Executes the debug logic with TaskContext support.
    - ƒ **_test_db_api** (`Function`)
      - 📝 Tests database API connectivity for source and target environments.
    - ƒ **_get_dataset_structure** (`Function`)
      - 📝 Retrieves the structure of a dataset.
- 📦 **SearchPluginModule** (`Module`)
  - 📝 Implements a plugin for searching text patterns across all datasets in a specific Superset environment.
  - 🏗️ Layer: Plugins
  - ℂ **SearchPlugin** (`Class`)
    - 📝 Plugin for searching text patterns in Superset datasets.
    - ƒ **id** (`Function`)
      - 📝 Returns the unique identifier for the search plugin.
    - ƒ **name** (`Function`)
      - 📝 Returns the human-readable name of the search plugin.
    - ƒ **description** (`Function`)
      - 📝 Returns a description of the search plugin.
    - ƒ **version** (`Function`)
      - 📝 Returns the version of the search plugin.
    - ƒ **ui_route** (`Function`)
      - 📝 Returns the frontend route for the search plugin.
    - ƒ **get_schema** (`Function`)
      - 📝 Returns the JSON schema for the search plugin parameters.
    - ƒ **execute** (`Function`)
      - 📝 Executes the dataset search logic with TaskContext support.
    - ƒ **_get_context** (`Function`)
      - 📝 Extracts a small context around the match for display.
- 📦 **MapperPluginModule** (`Module`)
  - 📝 Implements a plugin for mapping dataset columns using external database connections or Excel files.
  - 🏗️ Layer: Plugins
  - ℂ **MapperPlugin** (`Class`)
    - 📝 Plugin for mapping dataset columns verbose names.
    - ƒ **id** (`Function`)
      - 📝 Returns the unique identifier for the mapper plugin.
    - ƒ **name** (`Function`)
      - 📝 Returns the human-readable name of the mapper plugin.
    - ƒ **description** (`Function`)
      - 📝 Returns a description of the mapper plugin.
    - ƒ **version** (`Function`)
      - 📝 Returns the version of the mapper plugin.
    - ƒ **ui_route** (`Function`)
      - 📝 Returns the frontend route for the mapper plugin.
    - ƒ **get_schema** (`Function`)
      - 📝 Returns the JSON schema for the mapper plugin parameters.
    - ƒ **execute** (`Function`)
      - 📝 Executes the dataset mapping logic with TaskContext support.
- 📦 **backend.src.plugins.git_plugin** (`Module`)
  - 📝 Предоставляет плагин для версионирования и развертывания дашбордов Superset.
  - 🏗️ Layer: Plugin
  - 🔒 Invariant: Все операции с Git должны выполняться через GitService.
  - ℂ **GitPlugin** (`Class`)
    - 📝 Реализация плагина Git Integration для управления версиями дашбордов.
    - ƒ **__init__** (`Function`)
      - 📝 Инициализирует плагин и его зависимости.
    - ƒ **id** (`Function`)
      - 📝 Returns the plugin identifier.
    - ƒ **name** (`Function`)
      - 📝 Returns the plugin name.
    - ƒ **description** (`Function`)
      - 📝 Returns the plugin description.
    - ƒ **version** (`Function`)
      - 📝 Returns the plugin version.
    - ƒ **ui_route** (`Function`)
      - 📝 Returns the frontend route for the git plugin.
    - ƒ **get_schema** (`Function`)
      - 📝 Возвращает JSON-схему параметров для выполнения задач плагина.
    - ƒ **initialize** (`Function`)
      - 📝 Выполняет начальную настройку плагина.
      - ƒ **execute** (`Function`)
        - 📝 Основной метод выполнения задач плагина с поддержкой TaskContext.
        - 🔗 CALLS -> `self._handle_sync`
        - 🔗 CALLS -> `self._handle_deploy`
      - ƒ **_handle_sync** (`Function`)
        - 📝 Экспортирует дашборд из Superset и распаковывает в Git-репозиторий.
        - 🔗 CALLS -> `src.services.git_service.GitService.get_repo`
        - 🔗 CALLS -> `src.core.superset_client.SupersetClient.export_dashboard`
      - ƒ **_handle_deploy** (`Function`)
        - 📝 Упаковывает репозиторий в ZIP и импортирует в целевое окружение Superset.
        - 🔗 CALLS -> `src.core.superset_client.SupersetClient.import_dashboard`
      - ƒ **_get_env** (`Function`)
        - 📝 Вспомогательный метод для получения конфигурации окружения.
- 📦 **MigrationPlugin** (`Module`) `[CRITICAL]`
  - 📝 A plugin that provides functionality to migrate Superset dashboards between environments.
  - 🏗️ Layer: App
  - 🔗 IMPLEMENTS -> `PluginBase`
  - 🔗 DEPENDS_ON -> `superset_tool.client`
  - 🔗 DEPENDS_ON -> `superset_tool.utils`
  - ℂ **MigrationPlugin** (`Class`) `[CRITICAL]`
    - 📝 Implementation of the migration plugin logic.
    - ƒ **id** (`Function`) `[CRITICAL]`
      - 📝 Returns the unique identifier for the migration plugin.
    - ƒ **name** (`Function`) `[CRITICAL]`
      - 📝 Returns the human-readable name of the migration plugin.
    - ƒ **description** (`Function`) `[CRITICAL]`
      - 📝 Returns a description of the migration plugin.
    - ƒ **version** (`Function`) `[CRITICAL]`
      - 📝 Returns the version of the migration plugin.
    - ƒ **ui_route** (`Function`) `[CRITICAL]`
      - 📝 Returns the frontend route for the migration plugin.
    - ƒ **get_schema** (`Function`) `[CRITICAL]`
      - 📝 Returns the JSON schema for migration plugin parameters.
    - ƒ **execute** (`Function`) `[CRITICAL]`
      - 📝 Executes the dashboard migration logic with TaskContext support.
      - 📦 **MigrationPlugin.execute** (`Action`) `[CRITICAL]`
        - 📝 Execute the migration logic with proper task logging.
- ƒ **schedule_dashboard_validation** (`Function`)
  - 📝 Schedules a recurring dashboard validation task.
- ƒ **_parse_cron** (`Function`)
  - 📝 Basic cron parser placeholder.
- 📦 **scheduler** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/src/plugins/llm_analysis/scheduler.py
  - 🏗️ Layer: Unknown
  - ƒ **job_func** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- ℂ **LLMProviderType** (`Class`)
  - 📝 Enum for supported LLM providers.
- ℂ **LLMProviderConfig** (`Class`)
  - 📝 Configuration for an LLM provider.
- ℂ **ValidationStatus** (`Class`)
  - 📝 Enum for dashboard validation status.
- ℂ **DetectedIssue** (`Class`)
  - 📝 Model for a single issue detected during validation.
- ℂ **ValidationResult** (`Class`)
  - 📝 Model for dashboard validation result.
- ƒ **_is_masked_or_invalid_api_key** (`Function`)
  - 📝 Guards against placeholder or malformed API keys in runtime.
- ƒ **_json_safe_value** (`Function`)
  - 📝 Recursively normalize payload values for JSON serialization.
- ℂ **DashboardValidationPlugin** (`Class`)
  - 📝 Plugin for automated dashboard health analysis using LLMs.
  - 🔗 IMPLEMENTS -> `backend.src.core.plugin_base.PluginBase`
  - ƒ **DashboardValidationPlugin.execute** (`Function`)
    - 📝 Executes the dashboard validation task with TaskContext support.
- ℂ **DocumentationPlugin** (`Class`)
  - 📝 Plugin for automated dataset documentation using LLMs.
  - 🔗 IMPLEMENTS -> `backend.src.core.plugin_base.PluginBase`
  - ƒ **DocumentationPlugin.execute** (`Function`)
    - 📝 Executes the dataset documentation task with TaskContext support.
- 📦 **plugin** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/src/plugins/llm_analysis/plugin.py
  - 🏗️ Layer: Unknown
  - ƒ **id** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **name** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **description** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **version** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_schema** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **execute** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **id** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **name** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **description** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **version** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_schema** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **execute** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- ℂ **ScreenshotService** (`Class`)
  - 📝 Handles capturing screenshots of Superset dashboards.
  - ƒ **ScreenshotService.__init__** (`Function`)
    - 📝 Initializes the ScreenshotService with environment configuration.
  - ƒ **ScreenshotService.capture_dashboard** (`Function`)
    - 📝 Captures a full-page screenshot of a dashboard using Playwright and CDP.
- ℂ **LLMClient** (`Class`)
  - 📝 Wrapper for LLM provider APIs.
  - ƒ **LLMClient.__init__** (`Function`)
    - 📝 Initializes the LLMClient with provider settings.
  - ƒ **LLMClient._supports_json_response_format** (`Function`)
    - 📝 Detect whether provider/model is likely compatible with response_format=json_object.
  - ƒ **LLMClient.get_json_completion** (`Function`)
    - 📝 Helper to handle LLM calls with JSON mode and fallback parsing.
  - ƒ **LLMClient.analyze_dashboard** (`Function`)
    - 📝 Sends dashboard data (screenshot + logs) to LLM for health analysis.
- 📦 **service** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/src/plugins/llm_analysis/service.py
  - 🏗️ Layer: Unknown
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **capture_dashboard** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **switch_tabs** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_supports_json_response_format** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_should_retry** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_json_completion** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **analyze_dashboard** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **StoragePlugin** (`Module`)
  - 📝 Provides core filesystem operations for managing backups and repositories.
  - 🏗️ Layer: App
  - 🔒 Invariant: All file operations must be restricted to the configured storage root.
  - 🔗 IMPLEMENTS -> `PluginBase`
  - 🔗 DEPENDS_ON -> `backend.src.models.storage`
  - ℂ **StoragePlugin** (`Class`)
    - 📝 Implementation of the storage management plugin.
    - ƒ **__init__** (`Function`)
      - 📝 Initializes the StoragePlugin and ensures required directories exist.
    - ƒ **id** (`Function`)
      - 📝 Returns the unique identifier for the storage plugin.
    - ƒ **name** (`Function`)
      - 📝 Returns the human-readable name of the storage plugin.
    - ƒ **description** (`Function`)
      - 📝 Returns a description of the storage plugin.
    - ƒ **version** (`Function`)
      - 📝 Returns the version of the storage plugin.
    - ƒ **ui_route** (`Function`)
      - 📝 Returns the frontend route for the storage plugin.
    - ƒ **get_schema** (`Function`)
      - 📝 Returns the JSON schema for storage plugin parameters.
    - ƒ **execute** (`Function`)
      - 📝 Executes storage-related tasks with TaskContext support.
    - ƒ **get_storage_root** (`Function`)
      - 📝 Resolves the absolute path to the storage root.
    - ƒ **resolve_path** (`Function`)
      - 📝 Resolves a dynamic path pattern using provided variables.
    - ƒ **ensure_directories** (`Function`)
      - 📝 Creates the storage root and category subdirectories if they don't exist.
    - ƒ **validate_path** (`Function`)
      - 📝 Prevents path traversal attacks by ensuring the path is within the storage root.
    - ƒ **list_files** (`Function`)
      - 📝 Lists all files and directories in a specific category and subpath.
    - ƒ **save_file** (`Function`)
      - 📝 Saves an uploaded file to the specified category and optional subpath.
    - ƒ **delete_file** (`Function`)
      - 📝 Deletes a file or directory from the specified category and path.
    - ƒ **get_file_path** (`Function`)
      - 📝 Returns the absolute path of a file for download.
- ℂ **GitLLMExtension** (`Class`)
  - 📝 Provides LLM capabilities to the Git plugin.
  - ƒ **suggest_commit_message** (`Function`)
    - 📝 Generates a suggested commit message based on a diff and history.
- 📦 **llm_extension** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/src/plugins/git/llm_extension.py
  - 🏗️ Layer: Unknown
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **test_task_persistence** (`Module`)
  - 📝 Unit tests for TaskPersistenceService.
  - 🏗️ Layer: Test
  - ℂ **TestTaskPersistenceHelpers** (`Class`)
    - 📝 Test suite for TaskPersistenceService static helper methods.
    - ƒ **test_json_load_if_needed_none** (`Function`)
      - 📝 Test _json_load_if_needed with None input.
    - ƒ **test_json_load_if_needed_dict** (`Function`)
      - 📝 Test _json_load_if_needed with dict input.
    - ƒ **test_json_load_if_needed_list** (`Function`)
      - 📝 Test _json_load_if_needed with list input.
    - ƒ **test_json_load_if_needed_json_string** (`Function`)
      - 📝 Test _json_load_if_needed with JSON string.
    - ƒ **test_json_load_if_needed_empty_string** (`Function`)
      - 📝 Test _json_load_if_needed with empty/null strings.
    - ƒ **test_json_load_if_needed_plain_string** (`Function`)
      - 📝 Test _json_load_if_needed with non-JSON string.
    - ƒ **test_json_load_if_needed_integer** (`Function`)
      - 📝 Test _json_load_if_needed with integer.
    - ƒ **test_parse_datetime_none** (`Function`)
      - 📝 Test _parse_datetime with None.
    - ƒ **test_parse_datetime_datetime_object** (`Function`)
      - 📝 Test _parse_datetime with datetime object.
    - ƒ **test_parse_datetime_iso_string** (`Function`)
      - 📝 Test _parse_datetime with ISO string.
    - ƒ **test_parse_datetime_invalid_string** (`Function`)
      - 📝 Test _parse_datetime with invalid string.
    - ƒ **test_parse_datetime_integer** (`Function`)
      - 📝 Test _parse_datetime with non-string, non-datetime.
  - ℂ **TestTaskPersistenceService** (`Class`)
    - 📝 Test suite for TaskPersistenceService CRUD operations.
    - ƒ **setup_class** (`Function`)
      - 📝 Setup in-memory test database.
    - ƒ **teardown_class** (`Function`)
      - 📝 Dispose of test database.
    - ƒ **setup_method** (`Function`)
      - 📝 Clean task_records table before each test.
    - ƒ **test_persist_task_new** (`Function`)
      - 📝 Test persisting a new task creates a record.
    - ƒ **test_persist_task_update** (`Function`)
      - 📝 Test updating an existing task.
    - ƒ **test_persist_task_with_logs** (`Function`)
      - 📝 Test persisting a task with log entries.
    - ƒ **test_persist_task_failed_extracts_error** (`Function`)
      - 📝 Test that FAILED task extracts last error message.
    - ƒ **test_persist_tasks_batch** (`Function`)
      - 📝 Test persisting multiple tasks.
    - ƒ **test_load_tasks** (`Function`)
      - 📝 Test loading tasks from database.
    - ƒ **test_load_tasks_with_status_filter** (`Function`)
      - 📝 Test loading tasks filtered by status.
    - ƒ **test_load_tasks_with_limit** (`Function`)
      - 📝 Test loading tasks with limit.
    - ƒ **test_delete_tasks** (`Function`)
      - 📝 Test deleting tasks by ID list.
    - ƒ **test_delete_tasks_empty_list** (`Function`)
      - 📝 Test deleting with empty list (no-op).
    - ƒ **test_persist_task_with_datetime_in_params** (`Function`)
      - 📝 Test json_serializable handles datetime in params.
  - ƒ **_patched** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_make_task** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- ƒ **test_environment_model** (`Function`)
  - 📝 Tests that Environment model correctly stores values.
- 📦 **test_task_manager** (`Module`)
  - 📝 Unit tests for TaskManager lifecycle, CRUD, log buffering, and filtering.
  - 🏗️ Layer: Core
  - 🔒 Invariant: TaskManager state changes are deterministic and testable with mocked dependencies.
  - ƒ **_make_manager** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_cleanup_manager** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_init_creates_empty_tasks** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_init_loads_persisted_tasks** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_init_starts_flusher_thread** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_task_returns_none_for_missing** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_task_returns_existing** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_all_tasks** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_tasks_with_status_filter** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_tasks_with_plugin_filter** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_tasks_with_pagination** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_tasks_completed_only** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_create_task_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_create_task_unknown_plugin_raises** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_create_task_invalid_params_raises** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_add_log_appends_to_task_and_buffer** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_add_log_skips_nonexistent_task** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_flush_logs_writes_to_persistence** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_flush_task_logs_writes_single_task** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_flush_logs_requeues_on_failure** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_clear_all_non_active** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_clear_by_status** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_clear_preserves_awaiting_input** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_subscribe_creates_queue** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_unsubscribe_removes_queue** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_multiple_subscribers** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_await_input_sets_status** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_await_input_not_running_raises** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_await_input_nonexistent_raises** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_resume_with_password** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_resume_not_awaiting_raises** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_resume_empty_passwords_raises** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.test_dashboards_api** (`Module`)
  - 📝 Comprehensive contract-driven tests for Dashboard Hub API
  - 🏗️ Layer: Domain (Tests)
  - ƒ **mock_deps** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_with_search** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_empty** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_superset_failure** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_env_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_invalid_pagination** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_database_mappings_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_database_mappings_env_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboard_detail_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboard_detail_env_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboard_tasks_history_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboard_tasks_history_sorting** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboard_thumbnail_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboard_thumbnail_env_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboard_thumbnail_202** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_migrate_dashboards_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_migrate_dashboards_pre_checks** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_migrate_dashboards_env_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_backup_dashboards_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_backup_dashboards_pre_checks** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_backup_dashboards_env_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_backup_dashboards_with_schedule** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_task_matches_dashboard_logic** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **test_dashboards_api** (`Test`)
  - 📝 Verify GET /api/dashboards contract compliance
- 📦 **test_datasets_api** (`Test`)
  - 📝 Verify GET /api/datasets contract compliance
- 📦 **test_pagination_boundaries** (`Test`)
  - 📝 Verify pagination validation for GET endpoints
- 📦 **test_resource_hubs** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/tests/test_resource_hubs.py
  - 🏗️ Layer: Unknown
  - ƒ **mock_deps** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_search** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_datasets_success** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_datasets_not_found** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_datasets_search** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_datasets_service_failure** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_pagination_zero_page** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_dashboards_pagination_oversize** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_datasets_pagination_zero_page** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_datasets_pagination_oversize** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **test_task_logger** (`Module`)
  - 📝 Unit tests for TaskLogger and TaskContext.
  - 🏗️ Layer: Test
  - ℂ **TestTaskLogger** (`Class`)
    - 📝 Test suite for TaskLogger.
    - ƒ **setup_method** (`Function`)
      - 📝 Setup for each test method.
    - ƒ **test_init** (`Function`)
      - 📝 Test TaskLogger initialization.
    - ƒ **test_with_source** (`Function`)
      - 📝 Test creating a sub-logger with different source.
    - ƒ **test_debug** (`Function`)
      - 📝 Test debug log level.
    - ƒ **test_info** (`Function`)
      - 📝 Test info log level.
    - ƒ **test_warning** (`Function`)
      - 📝 Test warning log level.
    - ƒ **test_error** (`Function`)
      - 📝 Test error log level.
    - ƒ **test_error_with_metadata** (`Function`)
      - 📝 Test error logging with metadata.
    - ƒ **test_progress** (`Function`)
      - 📝 Test progress logging.
    - ƒ **test_progress_clamping** (`Function`)
      - 📝 Test progress value clamping (0-100).
    - ƒ **test_source_override** (`Function`)
      - 📝 Test overriding the default source.
    - ƒ **test_sub_logger_source_independence** (`Function`)
      - 📝 Test sub-logger independence from parent.
  - ℂ **TestTaskContext** (`Class`)
    - 📝 Test suite for TaskContext.
    - ƒ **setup_method** (`Function`)
      - 📝 Setup for each test method.
    - ƒ **test_init** (`Function`)
      - 📝 Test TaskContext initialization.
    - ƒ **test_task_id_property** (`Function`)
      - 📝 Test task_id property.
    - ƒ **test_logger_property** (`Function`)
      - 📝 Test logger property.
    - ƒ **test_params_property** (`Function`)
      - 📝 Test params property.
    - ƒ **test_get_param** (`Function`)
      - 📝 Test getting a specific parameter.
    - ƒ **test_create_sub_context** (`Function`)
      - 📝 Test creating a sub-context with different source.
    - ƒ **test_context_logger_delegates_to_task_logger** (`Function`)
      - 📝 Test context logger delegates to TaskLogger.
    - ƒ **test_sub_context_with_source** (`Function`)
      - 📝 Test sub-context logger uses new source.
    - ƒ **test_multiple_sub_contexts** (`Function`)
      - 📝 Test creating multiple sub-contexts.
- 📦 **test_smoke_plugins** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/tests/test_smoke_plugins.py
  - 🏗️ Layer: Unknown
  - ƒ **test_plugins_load_successfully** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_task_manager_initializes_with_plugins** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **tests.test_logger** (`Module`)
  - 📝 Unit tests for the custom logger formatters and configuration context manager.
  - 🏗️ Layer: Logging (Tests)
  - 🔒 Invariant: All required log statements must correctly check the threshold.
  - ƒ **test_belief_scope_logs_entry_action_exit_at_debug** (`Function`)
    - 📝 Test that belief_scope generates [ID][Entry], [ID][Action], and [ID][Exit] logs at DEBUG level.
  - ƒ **test_belief_scope_error_handling** (`Function`)
    - 📝 Test that belief_scope logs Coherence:Failed on exception.
  - ƒ **test_belief_scope_success_coherence** (`Function`)
    - 📝 Test that belief_scope logs Coherence:OK on success.
  - ƒ **test_belief_scope_not_visible_at_info** (`Function`)
    - 📝 Test that belief_scope Entry/Exit/Coherence logs are NOT visible at INFO level.
  - ƒ **test_task_log_level_default** (`Function`)
    - 📝 Test that default task log level is INFO.
  - ƒ **test_should_log_task_level** (`Function`)
    - 📝 Test that should_log_task_level correctly filters log levels.
  - ƒ **test_configure_logger_task_log_level** (`Function`)
    - 📝 Test that configure_logger updates task_log_level.
  - ƒ **test_enable_belief_state_flag** (`Function`)
    - 📝 Test that enable_belief_state flag controls belief_scope logging.
- 📦 **test_auth** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/tests/test_auth.py
  - 🏗️ Layer: Unknown
  - ƒ **db_session** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **auth_service** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **auth_repo** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_create_user** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_authenticate_user** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_create_session** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_role_permission_association** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_user_role_association** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_ad_group_mapping** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **test_log_persistence** (`Module`)
  - 📝 Unit tests for TaskLogPersistenceService.
  - 🏗️ Layer: Test
  - ℂ **TestLogPersistence** (`Class`)
    - 📝 Test suite for TaskLogPersistenceService.
    - ƒ **setup_class** (`Function`)
      - 📝 Setup test database and service instance.
    - ƒ **teardown_class** (`Function`)
      - 📝 Clean up test database.
    - ƒ **setup_method** (`Function`)
      - 📝 Setup for each test method — clean task_logs table.
    - ƒ **test_add_logs_single** (`Function`)
      - 📝 Test adding a single log entry.
    - ƒ **test_add_logs_batch** (`Function`)
      - 📝 Test adding multiple log entries in batch.
    - ƒ **test_add_logs_empty** (`Function`)
      - 📝 Test adding empty log list (should be no-op).
    - ƒ **test_get_logs_by_task_id** (`Function`)
      - 📝 Test retrieving logs by task ID.
    - ƒ **test_get_logs_with_filters** (`Function`)
      - 📝 Test retrieving logs with level and source filters.
    - ƒ **test_get_logs_with_pagination** (`Function`)
      - 📝 Test retrieving logs with pagination.
    - ƒ **test_get_logs_with_search** (`Function`)
      - 📝 Test retrieving logs with search query.
    - ƒ **test_get_log_stats** (`Function`)
      - 📝 Test retrieving log statistics.
    - ƒ **test_get_sources** (`Function`)
      - 📝 Test retrieving unique log sources.
    - ƒ **test_delete_logs_for_task** (`Function`)
      - 📝 Test deleting logs by task ID.
    - ƒ **test_delete_logs_for_tasks** (`Function`)
      - 📝 Test deleting logs for multiple tasks.
    - ƒ **test_delete_logs_for_tasks_empty** (`Function`)
      - 📝 Test deleting with empty list (no-op).
  - ƒ **_patched** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.core.test_git_service_gitea_pr** (`Module`)
  - 📝 Validate Gitea PR creation fallback behavior when configured server URL is stale.
  - 🏗️ Layer: Domain
  - 🔒 Invariant: A 404 from primary Gitea URL retries once against remote-url host when different.
  - ƒ **test_derive_server_url_from_remote_strips_credentials** (`Function`)
    - 📝 Ensure helper returns host base URL and removes embedded credentials.
  - ƒ **test_create_gitea_pull_request_retries_with_remote_host_on_404** (`Function`)
    - 📝 Verify create_gitea_pull_request retries with remote URL host after primary 404.
  - ƒ **fake_gitea_request** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.core.test_mapping_service** (`Module`)
  - 📝 Unit tests for the IdMappingService matching UUIDs to integer IDs.
  - 🏗️ Layer: Domain
  - ƒ **db_session** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_all_resources** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_sync_environment_upserts_correctly** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_remote_id_returns_integer** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_remote_ids_batch_returns_dict** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_sync_environment_updates_existing_mapping** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_sync_environment_skips_resources_without_uuid** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_sync_environment_handles_api_error_gracefully** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_all_resources** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_remote_id_returns_none_for_missing** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_get_remote_ids_batch_returns_empty_for_empty_input** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_mapping_service_alignment_with_test_data** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_sync_environment_requires_existing_env** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_sync_environment_deletes_stale_mappings** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **test_defensive_guards** (`Module`) `[TRIVIAL]`
  - 📝 Auto-generated module for backend/tests/core/test_defensive_guards.py
  - 🏗️ Layer: Unknown
  - ƒ **test_git_service_get_repo_path_guard** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_git_service_get_repo_path_recreates_base_dir** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_superset_client_import_dashboard_guard** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.core.test_migration_engine** (`Module`)
  - 📝 Unit tests for MigrationEngine's cross-filter patching algorithms.
  - 🏗️ Layer: Domain
  - ƒ **__init__** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **get_remote_ids_batch** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_write_dashboard_yaml** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_patch_dashboard_metadata_replaces_chart_ids** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_patch_dashboard_metadata_replaces_dataset_ids** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_patch_dashboard_metadata_skips_when_no_metadata** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_patch_dashboard_metadata_handles_missing_targets** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_extract_chart_uuids_from_archive** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_transform_yaml_replaces_database_uuid** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_transform_yaml_ignores_unmapped_uuid** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_transform_zip_end_to_end** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_transform_zip_invalid_path** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_transform_yaml_nonexistent_file** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.core.migration.test_dry_run_orchestrator** (`Module`)
  - 📝 Unit tests for MigrationDryRunService diff and risk computation contracts.
  - 🏗️ Layer: Domain
  - ƒ **_load_fixture** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **_make_session** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
  - ƒ **test_migration_dry_run_service_builds_diff_and_risk** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
- 📦 **backend.tests.core.migration.test_archive_parser** (`Module`)
  - 📝 Unit tests for MigrationArchiveParser ZIP extraction contract.
  - 🏗️ Layer: Domain
  - ƒ **test_extract_objects_from_zip_collects_all_types** (`Function`) `[TRIVIAL]`
    - 📝 Auto-detected function (orphan)
