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.