Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
0c85bd7
docs: add Canvas Phase 1 plan — core canvas with home view and UX flow
prosdev Mar 15, 2026
5428329
feat(canvas): add test infra, shadcn UI components, and CanvasContext
prosdev Mar 15, 2026
3d544dc
feat(canvas): add BaseNodeShell and Start/LLM/End node components
prosdev Mar 15, 2026
3a3b8ce
feat(canvas): add GraphCanvas, Sidebar Toolbar, graphSlice extensions
prosdev Mar 15, 2026
5f6067d
feat(canvas): add NodeConfigPanel with Sheet and config forms
prosdev Mar 15, 2026
e86e718
feat(canvas): add home view, save/load, editable name, app flow
prosdev Mar 15, 2026
534c82d
fix(canvas): align API with backend and use useReducer for RF state
prosdev Mar 15, 2026
b0cce34
feat(canvas): apply indigo theme, card toolbar, and UI polish
prosdev Mar 15, 2026
eaf7209
feat(canvas): compact nodes, bezier edges, edge reconnect
prosdev Mar 15, 2026
a9a9da6
feat(canvas): add api key auth, error toasts, drop-on-edge
prosdev Mar 15, 2026
737787c
fix(canvas): center empty state vertically on home view
prosdev Mar 15, 2026
ed62157
fix(canvas): strict connection mode and styled connection line
prosdev Mar 16, 2026
fd3e6be
feat(canvas): add graph delete/rename from list view with card refactor
prosdev Mar 16, 2026
7aa36b9
fix(canvas): stamp click-to-place and toolbar position
prosdev Mar 16, 2026
839c28f
feat(canvas): prevent duplicate Start/End nodes with user feedback
prosdev Mar 16, 2026
29db307
feat(canvas): floating toolbar, stamp mode, routing, and cleanup
prosdev Mar 16, 2026
22f6466
fix(canvas): remove client-side API key, fix header merge order
prosdev Mar 16, 2026
bd6ea02
fix(canvas): atomic edge splice and fresh state in useNodePlacement
prosdev Mar 16, 2026
fb7c8f8
fix(canvas): remove 404 fallback in saveGraph, add ApiError class
prosdev Mar 16, 2026
df75710
fix(canvas): remove duplicate Escape handler from GraphCanvas
prosdev Mar 16, 2026
3ad0093
fix(canvas): encode graph ID in API URL paths
prosdev Mar 16, 2026
330ea17
refactor(canvas): unify toast, LLM type guard, remove unnecessary memo
prosdev Mar 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .claude/gw-plans/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ Implementation deviations are logged at the bottom of each plan file.

| Track | Description | Status |
|-------|-------------|--------|
| [Execution](execution/) | FastAPI + LangGraph backend | Phases 1-4 merged, 5 in progress |
| [Canvas](canvas/) | React + React Flow frontend | Not started |
| [Execution](execution/) | FastAPI + LangGraph backend | Phases 1-5 merged |
| [Canvas](canvas/) | React + React Flow frontend | Phase 1 in progress |
| Deployment | Cloud Run + Vercel + CI/CD | Not started (after both tracks) |

## Status Legend
Expand Down
29 changes: 20 additions & 9 deletions .claude/gw-plans/canvas/README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,25 @@
# Canvas Layer Plans
# Canvas Layer -- Plans

React 19 + React Flow frontend phases. Depends on execution phases 3-4 for API surface.

## Phases

| Phase | Plan | Proposal version | Status |
|-------|------|-----------------|--------|
| C1 | Canvas core — Start/LLM/End nodes, edge wiring, React Flow setup | v0.1 | Not started |
| C2 | SSE run panel — stream display, node highlighting, reconnection | v0.1 | Not started |
| C3 | Full node set — Tool/Condition/HumanInput nodes, settings page | v0.2 | Not started |
| C4 | Validation, run input modal, state panel | v0.2 | Not started |
| C5 | Error handling, run history, debug panel, JSON schema panel | v0.3 | Not started |
| C6 | Python export, JSON read/write, dark mode, polish | v0.4 | Not started |
| Phase | Plan | Status |
|-------|------|--------|
| 1 | [Canvas core](phase-1-canvas-core/overview.md) -- Home view, Start/LLM/End nodes, edge wiring, config panel, save/load | In progress |
| 2 | SSE run panel -- stream display, node highlighting, reconnection | Not started |
| 3 | Full node set -- Tool/Condition/HumanInput nodes, settings page | Not started |
| 4 | Validation, run input modal, state panel | Not started |
| 5 | Error handling, run history, debug panel, JSON schema panel | Not started |
| 6 | Python export, JSON read/write, dark mode, polish | Not started |

## Phase 1 Parts

| Part | Plan | Summary | Status |
|------|------|---------|--------|
| 1.1 | [phase-1.1-test-infra-ui-base.md](phase-1-canvas-core/phase-1.1-test-infra-ui-base.md) | Test infra (Vitest), lucide-react, 9 shadcn UI components (Button, Input, Select, Textarea, Dialog, Sheet, Sidebar, Tooltip, Card), CanvasContext | In progress |
| 1.2 | [phase-1.2-node-components.md](phase-1-canvas-core/phase-1.2-node-components.md) | BaseNodeShell + Start/LLM/End node presenters | Not started |
| 1.3 | [phase-1.3-graph-canvas.md](phase-1-canvas-core/phase-1.3-graph-canvas.md) | GraphCanvas container, Toolbar with tooltips, connection validation, canvas hint, starter template | Not started |
| 1.4 | [phase-1.4-config-panel.md](phase-1-canvas-core/phase-1.4-config-panel.md) | NodeConfigPanel with slide transition + config forms | Not started |
| 1.5 | [phase-1.5-save-load.md](phase-1-canvas-core/phase-1.5-save-load.md) | HomeView, GraphCard, NewGraphDialog, editable graph name, save/load, view routing | Not started |
| 1.6 | [phase-1.6-floating-toolbar.md](phase-1-canvas-core/phase-1.6-floating-toolbar.md) | Floating toolbar with stamp mode, replaces sidebar toolbar | Complete |
530 changes: 530 additions & 0 deletions .claude/gw-plans/canvas/phase-1-canvas-core/overview.md

Large diffs are not rendered by default.

Loading
Loading