-
Notifications
You must be signed in to change notification settings - Fork 418
Open
Description
Reproduce
- POST
/v1/canvas/syncState
with payload below → returns 200{"success":true}
- Refresh page: node shows title + preview
- Click node: right panel is empty
Minimal code (redacted)
import aiohttp, uuid, time, json
from datetime import datetime, timezone
CANVAS_ID = "<REDACTED>"
COOKIE = {"_rf_access": "<REDACTED>", "_rf_uid": "<REDACTED>"}
async def create():
payload = {
"canvasId": CANVAS_ID,
"transactions": [{
"txId": f"tx-{int(time.time()*1000)}-{uuid.uuid4().hex[:8]}",
"createdAt": int(time.time()*1000),
"nodeDiffs": [{
"id": f"node-{uuid.uuid4().hex[:16]}",
"type": "add",
"to": {
"type": "skillResponse",
"position": {"x": 200, "y": 200},
"data": {
"title": "Test",
"entityId": f"ar-{uuid.uuid4().hex[:16]}",
"contentPreview": "short",
"content": "full content here",
"metadata": {"status": "finish", "sizeMode": "compact"}
}
}
}]
}]
}
async with aiohttp.ClientSession(cookies=COOKIE) as s:
async with s.post("https://<REDACTED>/v1/canvas/syncState", json=payload) as r:
print(await r.text()) # 200 {"success":true,"data":{}}
if __name__ == "__main__":
import asyncio
asyncio.run(create())
Expected
Node opens and shows full content in right panel.
Actual
Node visible, but panel empty.

Notes
All fields match working nodes returned by /v1/canvas/getState
, including content
.
jshpng
Metadata
Metadata
Assignees
Labels
No labels