Skip to content

[bug] 素材管理:仍被有效固定参考使用的素材从资产列表消失 #120

Closed

Description

@wuzhf9

问题与影响

没有对应画布节点的素材,被当前生成配置直接作为固定版本参考后,可能在生成完成时从资产列表消失,参考素材目录也将其标记为不可选择。此时原文件和有效参考仍然存在,生成面板仍能显示引用标签,造成素材状态不一致,影响查找、查看和再次复用。

复现步骤

  1. 通过 artifact.publish 登记一张图片素材,不为它创建画布节点。
  2. 创建生成配置,通过 binding=pinned 将该素材作为有效参考。
  3. 检查资产列表的“全部”“未显示”分类,以及 reference-catalog 返回值。
  4. 完成一次使用该参考的生成,使结果素材的 provenance.sources 包含该图片。在隔离环境可使用模拟服务登记结果,无需调用真实模型。
  5. 再次检查相同列表、目录、原文件和有效参考。

预期与实际

  • 预期:仍被当前配置有效引用的素材可以被查找和复用;没有画布节点时应表达为未显示,不能仅因成为结果来源而消失。
  • 实际:生成前可列出,结果登记后从“全部”“未显示”列表消失。目录仍返回该素材,但为 fileAvailable=true, available=false;固定参考标签和文件仍存在。
  • 本问题不要求所有参考都创建画布节点,也不要求将所有纯历史候选重新放进资产列表。

定位与证据

基线:6c83d43f32b335c63a0a1bb314967d6da91ec7d3,Linux,Python 3.12。通过只读持久化快照调用现有应用服务确认前后列表变化,核对文件内容指纹和当前有效参考;没有新增生成调用。本轮为存储与应用服务层验证,未新增浏览器端到端复现。

  • _inventory 将所有素材的 provenance.sources 加入 historical,但 current 未纳入当前有效固定参考。
  • asset_list 过滤 historical 中不属于 current 的素材;即便查询“全部”也会遗漏。
  • reference_catalog 复用相同分类,导致文件可读却被标记为不可选择。

删除依赖检查仍识别参考、任务和结果来源并阻止删除,因此不能将列表消失解释为文件被删除。

验收标准

  • 当前有效固定参考对应的素材,在结果登记前后均能通过资产列表的“全部”和适当的显示状态分类找到。
  • 列表、目录、文件可用性及参考关系状态一致;真实文件缺失与仅未显示到画布分别表达。
  • 覆盖无节点的固定参考、已有节点的参考及纯历史版本;保留合理的历史候选过滤规则。
  • 通过 UI 与 Agent 创建的同等参考得到一致查询结果,重开工程后保持一致。
  • 删除保护和旧任务输入快照保持有效,不因调整列表规则而放宽依赖校验。

Activity

  1. self-assigned this
    on Nov 6, 2026
  2. added a commit that references this issue on Nov 7, 2026
    4c05ef3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area:assetsAssets, library and reference inputstype:bugSomething is broken

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions