ticket: complete workspace sidebar

This commit is contained in:
Keisuke Hirata 2026-06-22 02:01:22 +09:00
parent 613f412659
commit c29eba0c70
No known key found for this signature in database
3 changed files with 108 additions and 2 deletions

View File

@ -1,8 +1,8 @@
--- ---
title: 'Workspace web UI: add sidebar navigation panel' title: 'Workspace web UI: add sidebar navigation panel'
state: 'inprogress' state: 'closed'
created_at: '2026-06-21T16:30:12Z' created_at: '2026-06-21T16:30:12Z'
updated_at: '2026-06-21T17:00:16Z' updated_at: '2026-06-21T17:01:13Z'
assignee: null assignee: null
queued_by: 'workspace-panel' queued_by: 'workspace-panel'
queued_at: '2026-06-21T16:35:06Z' queued_at: '2026-06-21T16:35:06Z'

View File

@ -0,0 +1,26 @@
Workspace web UI に sidebar navigation panel を追加し、Orchestrator worktree の `orchestration` branch に統合した。
主な成果:
- `web/workspace/src/lib/workspace-sidebar/` に sidebar components を追加:
- `WorkspaceSidebar.svelte`
- `RepositoriesNavSection.svelte`
- `ObjectivesNavSection.svelte`
- `WorkersNavSection.svelte`
- `types.ts`
- `web/workspace/src/routes/+page.svelte` を sidebar + main content の responsive two-column layout に更新。
- Sidebar header に workspace label/name と disabled settings placeholder を表示。
- `repositories`, `objectives`, `workers` sections を追加。
- Objectives section は `/api/objectives` を読み、title/state と empty/error states を section-local に表示。
- Workers section は `/api/workers` を読み、Worker label/state/status/role を表示し、Pod を primary UI naming として露出しない。
- Repository section は future Repository API に繋げやすい placeholder seam として実装。
- Host/Worker API/UI merge 後の `+page.svelte` conflict を解消し、main Host/Worker content と sidebar skeleton を両方維持。
- Backend/API authority, SSR, mutation/business logic は追加していない。
統合・検証:
- Merge commit: `613f4126 merge: workspace sidebar navigation`
- Implementation commits: `d3b8bdfd`, `4ab696b4`
- Reviewer final verdict: approve
- Validation passed: `git diff --check HEAD^1..HEAD`, `deno task check`, `deno task build`, `cargo test -p yoi-workspace-server`, `cargo run -p yoi -- ticket doctor`, and `nix build .#yoi --no-link`
範囲外:
- Settings page, Repository CRUD/API, Objective edit/detail UI, Worker start/stop/attach controls, drag/drop/collapsible tree, auth, multi-workspace switcher は実装していない。

View File

@ -280,3 +280,83 @@ Worktree status:
- Clean tracked state on `impl/00001KVNG9B9Z-workspace-sidebar` at `4ab696b4` - Clean tracked state on `impl/00001KVNG9B9Z-workspace-sidebar` at `4ab696b4`
--- ---
<!-- event: implementation_report author: yoi-orchestrator at: 2026-06-21T17:00:46Z -->
## Implementation report
Reviewer r1 approvalを受けて、実装ブランチを Orchestrator worktree の `orchestration` branch に統合した。
統合:
- Merge commit: `613f4126 merge: workspace sidebar navigation`
- Merged branch: `impl/00001KVNG9B9Z-workspace-sidebar`
- Implementation commits:
- `d3b8bdfd feat: add workspace sidebar skeleton`
- `4ab696b4` merge/conflict-resolution commit from current `orchestration`
Orchestrator worktree validation:
- `git diff --check HEAD^1..HEAD`: passed
- `cd web/workspace && rm -rf node_modules .svelte-kit build && deno task check`: passed (`svelte-check found 0 errors and 0 warnings`)
- `cd web/workspace && deno task build`: passed
- `cargo test -p yoi-workspace-server`: passed (`6 passed`)
- `cargo run -p yoi -- ticket doctor`: passed (`doctor: ok`)
- `nix build .#yoi --no-link`: passed
Validation generated ignored frontend artifacts in Orchestrator worktree:
- `web/workspace/node_modules/`
- `web/workspace/.svelte-kit/`
- `web/workspace/build/`
These were removed after validation. Final Orchestrator worktree status after validation cleanup is clean on `orchestration` at `613f4126`
---
<!-- event: state_changed author: yoi-orchestrator at: 2026-06-21T17:00:59Z from: inprogress to: done reason: implementation_merged_and_validated field: state -->
## State changed
Reviewer approval、Orchestrator worktree への統合、Deno check/build、workspace-server tests、Ticket doctor、Nix build が完了したため `done` に遷移する。
---
<!-- event: state_changed author: hare at: 2026-06-21T17:01:13Z from: done to: closed reason: closed field: state -->
## State changed
Ticket を closed にしました。
---
<!-- event: close author: hare at: 2026-06-21T17:01:13Z status: closed -->
## 完了
Workspace web UI に sidebar navigation panel を追加し、Orchestrator worktree の `orchestration` branch に統合した。
主な成果:
- `web/workspace/src/lib/workspace-sidebar/` に sidebar components を追加:
- `WorkspaceSidebar.svelte`
- `RepositoriesNavSection.svelte`
- `ObjectivesNavSection.svelte`
- `WorkersNavSection.svelte`
- `types.ts`
- `web/workspace/src/routes/+page.svelte` を sidebar + main content の responsive two-column layout に更新。
- Sidebar header に workspace label/name と disabled settings placeholder を表示。
- `repositories`, `objectives`, `workers` sections を追加。
- Objectives section は `/api/objectives` を読み、title/state と empty/error states を section-local に表示。
- Workers section は `/api/workers` を読み、Worker label/state/status/role を表示し、Pod を primary UI naming として露出しない。
- Repository section は future Repository API に繋げやすい placeholder seam として実装。
- Host/Worker API/UI merge 後の `+page.svelte` conflict を解消し、main Host/Worker content と sidebar skeleton を両方維持。
- Backend/API authority, SSR, mutation/business logic は追加していない。
統合・検証:
- Merge commit: `613f4126 merge: workspace sidebar navigation`
- Implementation commits: `d3b8bdfd`, `4ab696b4`
- Reviewer final verdict: approve
- Validation passed: `git diff --check HEAD^1..HEAD`, `deno task check`, `deno task build`, `cargo test -p yoi-workspace-server`, `cargo run -p yoi -- ticket doctor`, and `nix build .#yoi --no-link`
範囲外:
- Settings page, Repository CRUD/API, Objective edit/detail UI, Worker start/stop/attach controls, drag/drop/collapsible tree, auth, multi-workspace switcher は実装していない。
---