feat(canvas): add visual annotation edit action

Add a VisualAnnotationPanel letting users mark regions on an image (brush,
circle, rectangle, cross) with per-mark edit instructions, composited into
an annotation guide image. The new "visual-annotation" node action sends
the unmarked source plus the annotated guide to the image model, editing
only numbered regions. Server validates the annotation image/instructions
and threads them through the generator task.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-11 10:03:59 +08:00
parent 114198f1d9
commit bb8946b79b
17 changed files with 1271 additions and 46 deletions
+10 -9
View File
@@ -781,15 +781,16 @@ type GenerateResponse {
}
type NodeActionRequest {
Id string `path:"id"`
NodeId string `path:"nodeId"`
Action string `json:"action"`
Prompt string `json:"prompt,optional"`
ImageModel string `json:"imageModel,optional"`
ImageSize string `json:"imageSize,optional"`
Mask string `json:"mask,optional"`
Selection string `json:"selection,optional"`
Options map[string]string `json:"options,optional"`
Id string `path:"id"`
NodeId string `path:"nodeId"`
Action string `json:"action"`
Prompt string `json:"prompt,optional"`
ImageModel string `json:"imageModel,optional"`
ImageSize string `json:"imageSize,optional"`
Mask string `json:"mask,optional"`
Selection string `json:"selection,optional"`
AnnotationImage string `json:"annotationImage,optional"`
Options map[string]string `json:"options,optional"`
}
type PrepareMockupSurfaceRequest {