Files
20260512-skg-tk/web/canvas-app
kang b56d5177e5 fix(canvas): persist video uploads and fix media cache/polling
- VideoNode upload now goes through backend (/jobs/upload via uploadCanvasVideo)
  for a stable reloadable URL instead of a session-only blob: that leaked and
  broke on reload; cleanNodeForStorage also strips blob: URLs
- useCachedMediaUrl: record real blob.size (chunked videos reported 0, making the
  LRU byte cap a no-op); guard the catch path with the race token
- useApi: send credentials when reading reference images; drop the node-level
  video poll that duplicated the Canvas-level syncPendingVideoNodes loop
- request.js: 60s timeout (was ~8.3h) + withCredentials
- remove dead getVideoTaskStatus/pollVideoTask that ignored taskId

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-30 02:04:59 +08:00
..

SKG 画布

这是 SKG 营销内容生产平台的内部画布模块,部署在主站 /canvas/ 路径下。

内部使用方式

  • /canvas/:项目入口和本机项目列表。
  • /canvas/p/new:直接进入一个新画布。
  • 画布里的生图、生视频请求统一走主后端 /api,员工不需要填写模型密钥。
  • 生成的图片和视频仍由主后端保存到当前登录用户可访问的任务数据里,画布状态保存在当前浏览器本地。

开发

cd web/canvas-app
pnpm install
pnpm dev

主站构建会自动执行 web/package.json 里的 build:canvas,把 Vite 输出同步到 web/public/canvas/ 后再执行 Next 静态导出。