---
phase: 11-visual-design-responsive-layout-cleanup
plan: 6
subsystem: frontend
tags: [dead-code, bundle-analysis, performance, verification, cleanup]
dependency_graph:
  requires: [11-05]
  provides: [CODE-07, PERF-02]
  affects: [frontend/src/components, frontend/src/views, .planning/perf]
tech_stack:
  added: []
  patterns:
    - "Dead-code audit: grep-based cross-reference scan; delete only files with no active import in live code"
    - "FolderRow.vue deleted; stale FolderRow tests removed; DocumentCard Teleport tests retained"
key_files:
  created:
    - .planning/perf/phase11-final-summary.md
    - .planning/phases/11-visual-design-responsive-layout-cleanup/11-VERIFICATION.md
  modified:
    - frontend/src/components/ui/__tests__/dropdown.test.js
  deleted:
    - frontend/src/components/folders/FolderRow.vue
decisions:
  - "AdminAiConfigTab.test.js, AdminQuotasTab.test.js, AdminUsersTab.test.js: RETAINED — import and test live AdminXxxView.vue components; 'Tab' in filename is legacy naming only"
  - "FolderRow.vue: DELETED — no import in any live component; StorageBrowser renders folder rows inline; only test references were stale"
  - "FolderRow tests in dropdown.test.js: REMOVED — test dead component; DocumentCard Teleport tests in same file retained as they cover live surface"
  - "HomeView.vue, FolderView.vue, AdminView.vue: confirmed absent — no action required"
metrics:
  duration: ~30 minutes
  completed: 2026-06-17
  tasks_completed: 8
  tests_before: 270
  tests_after: 268
  files_deleted: 1
  files_created: 2
  files_modified: 1
---

# Phase 11 Plan 6: Dead-Code Cleanup & Final Measurement Summary

Dead-code audit, bundle comparison, and full Phase 11 requirement verification. AccountView.vue deletion and final bundle capture (tasks 1 and 6) were committed in prior runs; tasks 2–5 and 7–8 were completed here.

## One-liner

Dead-code sweep deleted FolderRow.vue and stale tests; verified 3 admin test files are live; wrote bundle comparison (−81 kB / −30.6%) and 12-requirement verification map.

## Tasks Completed

### Task 1 — Delete AccountView.vue (commit a8e0a19)
`frontend/src/views/AccountView.vue` deleted. The router has `{ path: '/account', redirect: '/settings' }` with no component import. The file had no live import anywhere in the codebase.

### Task 2 — Classify admin test files (commit a928b54)
Decision for each of the three known suspects:

| File | Decision | Evidence |
|------|----------|---------|
| `AdminAiConfigTab.test.js` | **RETAIN** | Imports `AdminAiView.vue` (live component at `/admin/ai`) |
| `AdminQuotasTab.test.js` | **RETAIN** | Imports `AdminQuotasView.vue` (live component at `/admin/quotas`) |
| `AdminUsersTab.test.js` | **RETAIN** | Imports `AdminUsersView.vue` (live component at `/admin/users`) |

The "Tab" suffix in these filenames is legacy from Phase 9 rearchitecture when the admin panel moved from tab-based layout to route-per-view. The test logic imports the live views and tests real behavior.

### Task 3 — Confirm deleted views remain absent (commit a928b54)
`HomeView.vue`, `FolderView.vue`, `AdminView.vue` — confirmed absent. No `find` results anywhere in `frontend/src`.

### Task 4 — Dead-code scan (commit a928b54)

Full cross-reference scan of all `.vue` and `.js` files against live code. One unreferenced component found:

- **`frontend/src/components/folders/FolderRow.vue`** — DELETED
  - No import in any live component or layout
  - StorageBrowser renders folder rows inline in its own template
  - No active route renders FolderRow
  - Only references were in `dropdown.test.js` (stale tests)

All other components, stores, helpers, and utilities confirmed active (each has at least one live import in a route component or layout).

### Task 5 — Remove unused imports and stale tests (commit a928b54)

`frontend/src/components/ui/__tests__/dropdown.test.js`:
- Removed 2 FolderRow tests (tested dead component): `FolderRow three-dot menu uses Teleport to body`, `FolderRow three-dot menu repositions on window scroll`
- Removed `import FolderRow from '../../folders/FolderRow.vue'`
- Removed `SAMPLE_FOLDER` fixture
- Removed `flushPromises` import (no longer needed)
- **Retained** 2 DocumentCard tests (cover live Teleport dropdown UX-13 behavior)

No unused named imports found in live component files. A style duplication in `AdminAiView.vue` (`import * as api` + named imports from same barrel) was not flagged — both import forms are in active use.

Test count: 270 → 268 (removed 2 stale tests, no live behavior lost).

### Task 6 — Final bundle analysis (commit 888d376, prior run)
`ANALYZE=true npm run build` completed. Artifact committed to `.planning/perf/phase11-final.html`.
Final metrics: **183.62 kB main / 64.84 kB gzip / 21 JS chunks**.

### Task 7 — Final summary (commit df981fb)
`.planning/perf/phase11-final-summary.md` written comparing baseline vs final:

| Metric | Baseline | Final | Delta |
|--------|---------|-------|-------|
| Main bundle (raw) | 264.63 kB | 183.62 kB | **−81.01 kB (−30.6%)** |
| Main bundle (gzip) | 89.34 kB | 64.83 kB | **−24.51 kB (−27.4%)** |
| JS chunks | 15 | 21 | +6 new lazy route chunks |

The 6 new chunks (SettingsView 62.7 kB, TopicsView 12.3 kB, DocumentView 10.2 kB, CloudStorageView 2.3 kB, CloudFolderView 2.0 kB, AppSpinner 0.5 kB) are loaded only on demand, saving ~640 ms download time on mobile 4G at the critical `/` initial load.

### Task 8 — Phase 11 verification (commit 9ad88ab)
`11-VERIFICATION.md` written mapping all 12 requirements to concrete evidence:

| Requirement | Status |
|-------------|--------|
| VISUAL-01 | SATISFIED |
| VISUAL-02 | SATISFIED |
| VISUAL-03 | SATISFIED |
| VISUAL-04 | SATISFIED |
| RESP-01 | SATISFIED |
| RESP-02 | SATISFIED |
| RESP-03 | SATISFIED |
| RESP-04 | SATISFIED |
| RESP-05 | SATISFIED |
| CODE-07 | SATISFIED |
| PERF-02 | SATISFIED |
| PERF-03 | SATISFIED |

## Deviations from Plan

None — plan executed exactly as written.

The ordering of task execution differed slightly (tasks 1 and 6 were completed in a prior run; tasks 2–8 were completed here after rebasing the worktree onto main), but all tasks from the plan are complete and correctly committed.

## Known Stubs

None. All data flows are wired to live API calls.

## Threat Flags

None. This plan deleted dead code and added documentation only. No new network endpoints, auth paths, or schema changes introduced.

## Self-Check

- [x] `frontend/src/components/folders/FolderRow.vue` deleted
- [x] `.planning/perf/phase11-final-summary.md` created
- [x] `.planning/phases/11-visual-design-responsive-layout-cleanup/11-VERIFICATION.md` created
- [x] `frontend/src/components/ui/__tests__/dropdown.test.js` updated (FolderRow tests removed)
- [x] `npm run test -- --run` passes: 268/268
- [x] `npm run build` passes: 183.62 kB main / 64.84 kB gzip
- [x] STATE.md not modified (orchestrator owns)
- [x] ROADMAP.md not modified (orchestrator owns)
