Skip to content

feat: Sub-agent visualization on canvas grid#46

Merged
robinojw merged 18 commits intomainfrom
worktree-cw-20260318-151058-31582
Mar 18, 2026
Merged

feat: Sub-agent visualization on canvas grid#46
robinojw merged 18 commits intomainfrom
worktree-cw-20260318-151058-31582

Conversation

@robinojw
Copy link
Copy Markdown
Owner

Summary

  • Full JSON-RPC 2.0 protocol migration: Replace legacy {id, msg: {type}} protocol with standard JSON-RPC 2.0 envelope types (JSONRPCMessage, JSONRPCRequest, JSONRPCResponse), v2 method constants, thread/turn notifications, collaboration events, and approval request types
  • Sub-agent hierarchy visualization: Add ParentID, AgentNickname, AgentRole, Depth fields to ThreadState, depth-first TreeOrder() traversal, tree-ordered canvas layout, edge connectors between parent/child cards, and depth-prefix + role display on sub-agent cards
  • V2 event handling: Thread-scoped handlers for thread/started, turn/started, turn/completed, agent/message/delta, collab/spawn/end, collab/close/end, thread/statusChanged, and approval requests routed through V2MessageToMsg bridge
  • Legacy cleanup: Remove all legacy protocol types, bridge, methods, and unused message types; split large files to comply with 300-line limit and lint constraints

Test Plan

  • go test ./... -race — all packages pass with race detector
  • golangci-lint run — 0 issues (staticcheck, funlen, cyclop all clean)
  • All non-test .go files under 300 lines
  • Integration test with live Codex CLI (go test ./internal/appserver -v -tags=integration)

@robinojw robinojw force-pushed the worktree-cw-20260318-151058-31582 branch from 007aa19 to 7aea344 Compare March 18, 2026 20:50
@robinojw robinojw force-pushed the worktree-cw-20260318-151058-31582 branch from 7aea344 to d2d5719 Compare March 18, 2026 21:06
@robinojw robinojw merged commit 28f4806 into main Mar 18, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant