--- phase: "14" plan: "08" type: execute wave: 7 depends_on: - "14-03" - "14-07" files_modified: - frontend/src/views/SettingsView.vue - frontend/src/components/settings/SettingsCloudTab.vue - frontend/src/components/settings/__tests__/SettingsCloudTab.test.js - frontend/src/components/settings/__tests__/SettingsCloudTab.health.test.js - frontend/src/stores/cloudConnections.js - frontend/src/api/cloud.js - backend/tests/test_cloud_cache.py autonomous: true requirements: - ANALYZE-04 - ANALYZE-05 - CACHE-04 --- Expose Phase 14 user settings for cache limit, progress detail, and default failure behavior in Settings, backed by the cache/settings API and tier-bound validation. Scope fence: do not change backend cache internals except fixing issues found by Settings integration tests. @.planning/phases/14-selective-analysis-and-byte-cache/14-CONTEXT.md @frontend/src/views/SettingsView.vue @frontend/src/components/settings/SettingsCloudTab.vue @frontend/src/stores/cloudConnections.js @backend/api/cloud/cache.py Task 1: Add Settings API/store wiring frontend/src/api/cloud.js, frontend/src/stores/cloudConnections.js, frontend/src/stores/__tests__/cloudConnections.analysis.test.js - frontend/src/api/cloud.js - frontend/src/stores/cloudConnections.js - backend/api/cloud/cache.py Add client/store methods to load and update cache/settings state. Store tier cap, current usage, preferred limit, progress detail mode, and default failure behavior. Handle validation errors without clearing existing settings. - Store keeps settings in memory and never browser-stores credentials. - Invalid cache limit responses surface controlled messages. - Updated progress/failure settings affect analysis queue label/control behavior. cd frontend && npm run test -- cloudConnections.analysis.test.js Task 2: Add Settings Cloud tab controls frontend/src/components/settings/SettingsCloudTab.vue, frontend/src/components/settings/__tests__/SettingsCloudTab.test.js, frontend/src/components/settings/__tests__/SettingsCloudTab.health.test.js - frontend/src/components/settings/SettingsCloudTab.vue - frontend/src/components/settings/__tests__/SettingsCloudTab.test.js Add compact controls for cache limit up to tier maximum, simplified vs detailed analysis progress, and pause-batch vs continue-item failure behavior. Keep the existing connection health/test/reconnect UX intact. Use form controls appropriate to settings: slider/number for bytes, segmented/select controls for modes, and clear validation text. - Settings fit existing Cloud tab layout without nested cards. - Existing health/reconnect tests still pass. - Accessibility labels identify each control. - No visible explanatory tutorial copy is added beyond concise labels and validation messages. cd frontend && npm run test -- SettingsCloudTab.test.js SettingsCloudTab.health.test.js 1. `cd frontend && npm run test -- SettingsCloudTab.test.js SettingsCloudTab.health.test.js cloudConnections.analysis.test.js` 2. `cd backend && pytest -q tests/test_cloud_cache.py -k "settings"` 3. Render Settings at mobile and desktop widths if a dev server is available. Create `.planning/phases/14-selective-analysis-and-byte-cache/14-08-SUMMARY.md` when complete.