支持 Canvas 框选区、成员归属与名称显示模式 #9
Reference in New Issue
Block a user
Delete Branch "codex/canvas-frames"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
此前 Canvas 校验拒绝前端新增的框选区,导致包含框的快照无法保存。本 PR 接受 kind/type=frame、data.frameId 和 data.labelMode(hidden/fixed/scaled),保留中文名称、几何及显式成员关系;允许先成员后框的节点顺序。Core 不根据位置重叠创建归属,移动框不自动吸收内容。
校验拒绝不存在或指向非框的 frameId、框嵌套、非零框旋转、框连线和无效名称模式。忽略前端生成的 zIndex/style 显示状态。沿用现有事务、权限、版本和 JSONB,无需新迁移。
测试包含三种名称模式的 PostgreSQL PATCH/GET 往返、前向引用、多类成员、重叠但无归属、无效引用不改变版本及旧快照兼容。ces-control CI #874 已成功:https://gitea.entroia.com/Zayden-Jung/foundry-core/actions/runs/874 。包含格式检查、Go 测试/构建、隔离数据库迁移与集成测试。
前端继续负责拖入/移出时设置 frameId、移动框时移动已有成员,以及固定/缩放标题渲染。已由用户手动合并至 main(022086b);自动部署 #877 已成功:https://gitea.entroia.com/Zayden-Jung/foundry-core/actions/runs/877 。公网 /healthz、/readyz 均返回 200。