From d3b8bdfddc6b9b608f1169370ad29e566c5b9d15 Mon Sep 17 00:00:00 2001 From: Hare Date: Mon, 22 Jun 2026 01:45:46 +0900 Subject: [PATCH] feat: add workspace sidebar skeleton --- .../ObjectivesNavSection.svelte | 157 ++++++++++++++ .../RepositoriesNavSection.svelte | 106 ++++++++++ .../WorkersNavSection.svelte | 198 ++++++++++++++++++ .../workspace-sidebar/WorkspaceSidebar.svelte | 124 +++++++++++ .../src/lib/workspace-sidebar/types.ts | 38 ++++ web/workspace/src/routes/+page.svelte | 170 +++++++++------ 6 files changed, 727 insertions(+), 66 deletions(-) create mode 100644 web/workspace/src/lib/workspace-sidebar/ObjectivesNavSection.svelte create mode 100644 web/workspace/src/lib/workspace-sidebar/RepositoriesNavSection.svelte create mode 100644 web/workspace/src/lib/workspace-sidebar/WorkersNavSection.svelte create mode 100644 web/workspace/src/lib/workspace-sidebar/WorkspaceSidebar.svelte create mode 100644 web/workspace/src/lib/workspace-sidebar/types.ts diff --git a/web/workspace/src/lib/workspace-sidebar/ObjectivesNavSection.svelte b/web/workspace/src/lib/workspace-sidebar/ObjectivesNavSection.svelte new file mode 100644 index 00000000..e448e99e --- /dev/null +++ b/web/workspace/src/lib/workspace-sidebar/ObjectivesNavSection.svelte @@ -0,0 +1,157 @@ + + + + + diff --git a/web/workspace/src/lib/workspace-sidebar/RepositoriesNavSection.svelte b/web/workspace/src/lib/workspace-sidebar/RepositoriesNavSection.svelte new file mode 100644 index 00000000..759e8899 --- /dev/null +++ b/web/workspace/src/lib/workspace-sidebar/RepositoriesNavSection.svelte @@ -0,0 +1,106 @@ + + + + + diff --git a/web/workspace/src/lib/workspace-sidebar/WorkersNavSection.svelte b/web/workspace/src/lib/workspace-sidebar/WorkersNavSection.svelte new file mode 100644 index 00000000..90a7f19d --- /dev/null +++ b/web/workspace/src/lib/workspace-sidebar/WorkersNavSection.svelte @@ -0,0 +1,198 @@ + + + + + diff --git a/web/workspace/src/lib/workspace-sidebar/WorkspaceSidebar.svelte b/web/workspace/src/lib/workspace-sidebar/WorkspaceSidebar.svelte new file mode 100644 index 00000000..ecc85e69 --- /dev/null +++ b/web/workspace/src/lib/workspace-sidebar/WorkspaceSidebar.svelte @@ -0,0 +1,124 @@ + + + + + diff --git a/web/workspace/src/lib/workspace-sidebar/types.ts b/web/workspace/src/lib/workspace-sidebar/types.ts new file mode 100644 index 00000000..deaaddc9 --- /dev/null +++ b/web/workspace/src/lib/workspace-sidebar/types.ts @@ -0,0 +1,38 @@ +export type WorkspaceResponse = { + workspace_id: string; + display_name: string; + record_authority: string; + extension_points: { + event_stream: { status: string; note: string }; + runner_connection: { status: string; note: string }; + }; +}; + +export type ObjectiveSummary = { + id: string; + title: string; + state: string; + updated_at?: string | null; + linked_tickets?: string[]; + record_source?: string; +}; + +export type InvalidProjectRecord = { + label: string; + reason: string; +}; + +export type ObjectiveListResponse = { + workspace_id: string; + limit: number; + items: ObjectiveSummary[]; + invalid_records: InvalidProjectRecord[]; + record_authority: string; +}; + +export type WorkerSummary = { + id: string; + label: string; + status: string; + detail?: string | null; +}; diff --git a/web/workspace/src/routes/+page.svelte b/web/workspace/src/routes/+page.svelte index d905974c..c7a60db8 100644 --- a/web/workspace/src/routes/+page.svelte +++ b/web/workspace/src/routes/+page.svelte @@ -1,13 +1,6 @@