1.2 KiB
1.2 KiB
Canvas / A2UI Foundation Checklist
Date: 2026-02-16
Scope: Close OpenClaw "Canvas / A2UI" gap with a first gateway-level artifact API.
Goal
Add a minimal, testable visual-workspace foundation that companion clients/web UI can use to store and retrieve structured session artifacts.
Implemented
- Added in-memory canvas artifact store:
src/gateway/canvas-store.ts
- Added gateway canvas handlers:
canvas.putcanvas.getcanvas.listcanvas.deletecanvas.clear
- Wired handlers into gateway routing:
src/gateway/server.tssrc/gateway/handlers/index.ts
- Added docs updates:
README.mddocs/api/PROTOCOL.md
Test Coverage
src/gateway/canvas-store.test.ts- session scoping
- update semantics
- delete/clear lifecycle
- per-session cap eviction
src/gateway/handlers/handlers.test.ts- full
canvas.*lifecycle handler flow - request validation error paths
- full
src/gateway/server.test.ts- end-to-end gateway RPC canvas flow
Validation Run
pnpm test:run src/gateway/canvas-store.test.ts src/gateway/handlers/handlers.test.ts src/gateway/server.test.ts
pnpm typecheck
pnpm build