Implement the shared-browser Phase 14 analysis experience: row action, toolbar actions, estimate dialog, aggregate progress, expandable queue, and per-item/batch controls using the backend analysis API.
Scope fence: do not build Settings controls in this plan beyond consuming already-returned settings values.
@.planning/phases/14-selective-analysis-and-byte-cache/14-CONTEXT.md
@.planning/phases/14-selective-analysis-and-byte-cache/14-PATTERNS.md
@frontend/src/components/storage/StorageBrowser.vue
@frontend/src/views/CloudFolderView.vue
@frontend/src/stores/cloudConnections.js
@frontend/src/api/cloud.js
Task 1: Add API/store analysis queue surface
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
- frontend/src/stores/__tests__/cloudConnections.test.js
Add API helpers for estimate, start, list/status, cancel batch, cancel item, skip item, and retry item. Extend the store with analysis jobs, aggregate queue state, status label mapping, simplified/detailed progress mode, and failure behavior. Keep tokens in Pinia memory only and never persist queue credentials or provider refs outside route/session semantics already allowed.
- Store translates backend statuses in one place.
- API helpers use connection UUID and opaque provider item ids.
- Tests cover current/already-indexed, failed, cancelled, retry, and aggregate states.
cd frontend && npm run test -- cloudConnections.analysis.test.js
Task 2: Extend StorageBrowser and CloudFolderView
frontend/src/components/storage/StorageBrowser.vue, frontend/src/views/CloudFolderView.vue, frontend/src/components/storage/__tests__/StorageBrowser.analysis-queue.test.js, frontend/src/views/__tests__/CloudFolderRenderedFlow.test.js
- frontend/src/components/storage/StorageBrowser.vue
- frontend/src/views/CloudFolderView.vue
- frontend/src/components/storage/__tests__/StorageBrowser.cloud-queue.test.js
- frontend/src/views/__tests__/CloudFolderRenderedFlow.test.js
Add file-row analyze action, toolbar actions for selected items/current folder/current connection, folder current-only vs recursive prompt, estimate review dialog, aggregate analysis progress, expandable item queue, retry/skip/cancel controls, and cancel-all. `StorageBrowser` emits actions; `CloudFolderView` handles API/store calls and refresh behavior. Use icons/tooltips consistent with existing AppIcon patterns and keep text compact enough for mobile.
- No parallel file grid or cloud-only browser component is introduced.
- Individual file, multi-select, folder, and connection analysis can be initiated.
- Whole connection and thresholded large scopes show estimate before start.
- Aggregate and per-item statuses render with accessible controls.
cd frontend && npm run test -- StorageBrowser.analysis-queue.test.js CloudFolderRenderedFlow.test.js
1. `cd frontend && npm run test -- StorageBrowser.analysis-queue.test.js cloudConnections.analysis.test.js CloudFolderRenderedFlow.test.js`
2. `rg "analysis" frontend/src/components/storage frontend/src/views/CloudFolderView.vue frontend/src/stores/cloudConnections.js`
3. Rendered smoke check in browser if the dev server is available.
Create .planning/phases/14-selective-analysis-and-byte-cache/14-07-SUMMARY.md when complete.