feat: complete workspace-first-ui cleanup and tests

- Delete dead repo-workspace code: RepoWorkspacePage, useRepoWorkspace,
  WorkspaceLayout, FileBrowser, old git components (git-toolbar, file-editor,
  commit-panel), and repo-workspace.css.
- Fix stale backend test imports for moved models/services.
- Add GitOperations unit tests.
- Add integration tests for workspace files, git, and instances endpoints.
- Add frontend tests for WorkspaceDetailPage and ProjectCard.
- Update OpenSpec workspace-first-ui tasks and mark change completed.
- Regenerate project maps.

Quality gates: npm run typecheck, npm run lint, npm test -- --run (87 passed),
python3 -m py_compile on changed backend files, pytest backend workspace tests.
This commit is contained in:
Developer
2026-06-12 17:25:09 +00:00
parent aa49efb236
commit c26e9eacfa
49 changed files with 993 additions and 2057 deletions
@@ -1,19 +1,20 @@
# workspace-first-ui
dir: workspace-first-ui
# openspec/changes/workspace-first-ui
dir: openspec/changes/workspace-first-ui
index: workspace-first-ui/.pi-map.index.md
index: openspec/changes/workspace-first-ui/.pi-map.index.md
## role
Design and planning documentation for a workspace-first UI refresh that restructures the application around persistent writable workspaces rather than direct repository browsing.
Product specification and design documentation package for a workspace-first UI refresh project that reorients the application around persistent writable workspaces rather than direct repository browsing.
## files
- .openspec.yaml | Defines metadata for a completed project specification named "workspace-first-ui"
- design.md | Design document for a workspace-first UI refresh, detailing backend API/services and frontend components for file management, git operations, and tool instances scoped to workspaces. | dep: FastAPI, SQLAlchemy/AsyncSession, React, React Router, asyncio, subprocess, os
- proposal.md | Proposes a UI refresh to replace the old repository workspace with a workspace-first navigation model centered around persistent writable clones.
- spec.md | Product specification document defining a workspace-first UI refresh that replaces direct repository file browsing with workspace-centric navigation, new routes, and redesigned pages for projects and workspace details. | dep: React/Next.js (implied by .tsx, routing), REST API backend, database (existing workspaces table), TypeScript, ruff, eslint
- tasks.md | A task planning document that breaks down a "Workspace-First UI Refresh" project into three sequential PRs with detailed backend/frontend tasks, acceptance criteria, and verification steps. | dep: FastAPI, React, TypeScript, pytest, ruff, eslint, tsc, git, workspace-files API, workspace-git API, workspace-instances API
- tasks.md | Project task tracking document for a workspace-first UI refresh, breaking work into 3 sequential PRs with backend endpoints, frontend workspace detail page, and projects page refresh with routing changes. | dep: markdown, pytest, ruff, TypeScript compiler, eslint, npm, git, python
## arch
Markdown-based documentation architecture using a four-layer specification hierarchy (proposal → design → spec → tasks) to progressively decompose a major UI/UX refactoring into implementable work units, with clear separation between product definition, technical design, and project management concerns.
Documentation-driven specification architecture using sequential PR-based task breakdown (backend → workspace detail page → projects page/routing), with layered design documents progressing from proposal → product spec → technical design → implementation tasks.
## tags
workspace, first, refresh, design, document, react, tasks, backend
workspace, first, refresh, design, document, project, specification, .openspec
## symbols
-
## workflows