Files
kite/.planning/phases/14-selective-analysis-and-byte-cache/14-07-PLAN.md
T

4.5 KiB

phase, plan, type, wave, depends_on, files_modified, autonomous, requirements
phase plan type wave depends_on files_modified autonomous requirements
14 07 execute 6
14-04
14-05
frontend/src/api/cloud.js
frontend/src/stores/cloudConnections.js
frontend/src/views/CloudFolderView.vue
frontend/src/components/storage/StorageBrowser.vue
frontend/src/components/storage/__tests__/StorageBrowser.analysis-queue.test.js
frontend/src/stores/__tests__/cloudConnections.analysis.test.js
frontend/src/views/__tests__/CloudFolderRenderedFlow.test.js
true
ANALYZE-01
ANALYZE-02
ANALYZE-03
ANALYZE-04
ANALYZE-05
ANALYZE-06
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.