feat(storage): implement storage manager for centralized management and cleanup

- Added a new Storage Manager component to handle storage statistics, project cleanup, and configuration for CCW centralized storage.
- Introduced functions to calculate directory sizes, get project storage stats, and clean specific or all storage.
- Enhanced SQLiteStore with a public API for executing queries securely.
- Updated tests to utilize the new execute_query method and validate storage management functionalities.
- Improved performance by implementing connection pooling with idle timeout management in SQLiteStore.
- Added new fields (token_count, symbol_type) to the symbols table and adjusted related insertions.
- Enhanced error handling and logging for storage operations.
This commit is contained in:
catlog22
2025-12-15 17:39:38 +08:00
parent ee0886fc48
commit 97640a517a
36 changed files with 2108 additions and 841 deletions

View File

@@ -297,6 +297,10 @@ async function renderCliManager() {
if (statsGrid) statsGrid.style.display = 'none';
if (searchInput) searchInput.parentElement.style.display = 'none';
// Show storage card (only visible in CLI Manager view)
var storageCard = document.getElementById('storageCard');
if (storageCard) storageCard.style.display = '';
// Load data (including CodexLens status for tools section)
await Promise.all([
loadCliToolStatus(),
@@ -320,6 +324,11 @@ async function renderCliManager() {
renderCliSettingsSection();
renderCcwEndpointToolsSection();
// Initialize storage manager card
if (typeof initStorageManager === 'function') {
initStorageManager();
}
// Initialize Lucide icons
if (window.lucide) lucide.createIcons();
}