fix: 支持 AI 任务栏跟随图片目标并修复本地图恢复#197
Merged
chenpingan666 merged 6 commits intoJul 23, 2026
Merged
Conversation
问题描述:生成图片插入画布后,AI任务栏始终固定在底部,无法恢复目标提示词,编辑后也不能稳定替换原图片。 修复思路:为图片、任务与anchor建立轻量绑定;单选生成图片时吸附现有任务栏;编辑提交创建新任务,成功后原位更新元素,失败或目标丢失时不新增图片。 代码架构:目标识别与布局收敛在AIInputBar,任务字段由workflow converter和image MCP透传,useAutoInsertToCanvas负责首次绑定、批量独立绑定和原位替换。
|
Someone is attempting to deploy a commit to the ljquan's projects Team on Vercel. A member of the Team first needs to authorize it. |
✅ Deploy Preview for ai-tu ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
added 2 commits
July 15, 2026 15:53
问题描述:AI任务栏跟随 PR 的 Web 类型检查因结构化图片参数扩展为 unknown 后,视频参数仍声明为全字符串映射而失败;Vitest 测试模式又误启用开发代理,导致 provider-routing 回归测试把绝对地址改写成相对地址。 修复思路:视频参数仅保留字符串值,保持原有请求协议;开发代理增加 test 模式守卫,仅在真实开发环境改写 Tuzi 地址。 代码架构:参数类型收窄保留在 workflow converter,环境路由判断收敛在 provider transport,不修改依赖清单和锁文件。
问题描述:上一提交为验证 develop 基线测试临时加入了供应商路由测试环境守卫,超出任务栏跟随功能范围。 修复思路:撤回路由基线调整,仅保留任务栏参数类型修复;provider-routing 与全量测试红灯继续按 develop 基线问题处理。 代码架构:任务栏 PR 只修改任务栏跟随及其直接参数链路,不夹带供应商路由修复。
Contributor
Author
|
检查说明:
|
问题描述:\n局域网环境导入本地图后,任务栏可能显示旧图片、继承旧提示词,或因缓存能力不可用导致图片无法恢复。 修复思路:\n按当前图片目标隔离提示词、附件和知识库上下文;缩略图统一通过 RetryImage 读取稳定虚拟 URL,并隔离旧 Blob 请求与重试定时器。 更新代码架构:\n白板持久化稳定 URL,Cache Storage 不可用时 Blob 降级存入 IndexedDB;哈希按分块处理,四类本地图片入口统一 MIME 识别,临时 Object URL 仅用于渲染。
Contributor
Author
CI 结果说明本次提交
主 CI 仍为红色,但失败来自仓库既有全量测试与预算基线:
因此本次功能回归已通过,剩余红灯继续属于仓库基线和部署授权问题。 |
Contributor
Author
依赖冲突已处理已将最新 验证结果:
|
问题描述:传入 contentHash 的缓存选项会被误判为普通元数据,导致局域网本地图缓存重复计算哈希;新增缓存测试使用 Node 全局注入后还会影响 Drawnix 的 jsdom 测试环境。 修复思路:将 contentHash 纳入结构化选项识别,保留调用方已计算的哈希;测试改为文件内独立 IndexedDB,并兼容 jsdom Blob 的结构化克隆和读取。 更新代码架构:缓存选项归一化继续收敛在 UnifiedCacheService,测试环境适配只保留在 unified-cache-service.test.ts,不修改全局 Vitest 配置。
Contributor
Author
最新修复与 CI 复验已追加提交
GitHub CI Run 29884218138 已复验:
PR 当前仍为 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

问题描述
生成图片插入画布后,AI 任务栏无法稳定跟随当前图片目标。局域网环境导入普通本地图时,还可能继承上一目标的提示词或附件、显示旧缩略图,或因 Service Worker / Cache Storage /
crypto.subtle不可用而无法恢复图片。修复思路
/asset-library/...的历史生成任务RetryImage,隔离旧 Blob 请求和重试定时器,释放旧 Object URLcrypto.subtle不可用时使用分块 SHA-256,避免大文件一次性读取更新代码架构
AIInputBar:当前图片目标识别、上下文隔离、提示词恢复、吸附布局和替换任务提交RetryImage/SelectedContentPreview:稳定虚拟 URL 渲染、快速换源竞态隔离和 Object URL 生命周期管理UnifiedCacheService:IndexedDB v2media-blobs降级仓库,删除、批量删除、清空和旧数据自愈@aitu/utils/blob:浏览器无 SubtleCrypto 时的分块 SHA-256验证
pnpm exec nx run drawnix:typecheck通过git diff --check通过pnpm-lock.yaml仅新增 Drawnix 的fake-indexeddb测试依赖本机未安装
openspecCLI,因此未执行openspec validate update-target-bound-ai-taskbar --strict。