Skip to content

Releases: Wilson520403/fgui-agent-bridge

Release list

v0.8.6

Choose a tag to compare

@Wilson520403 Wilson520403 released this 16 Oct 05:07

本仓库的第一个 GitHub Release,汇总 v0.6.0 以来的 32 个提交。

核心变化:写操作全面接入统一写验证

0.8.4 → 0.8.6 把写类 Action 迁入同一条验证梯子:

save → 磁盘 XML 比对 → externalReload(关闭并重开文档)

响应统一为 {ok, target, before/after, documentModified, saved, persisted, strength, verification, note},并在 MCP / CLI 上暴露 save、verify、external_reload 三个开关。

  • 0.8.4 — external reload 验证与 strength 分级(reload / disk / none),界定 persisted 的验证强度;关闭方式在运行时探测 CloseDocuments → CloseDocument 并在响应中回报
  • 0.8.5 — set_property / insert_object / remove_object 迁入统一写验证;验证层新增已钉住序列化含义的通用属性:scaleX/scaleY、rotation、alpha、visible、touchable、grayed、text、icon
  • 0.8.6 — 动画(<transition>)与包资源写 Action 迁入统一写验证;新增 writePackageVerification;mutateTransitions 拆分 mutation 与验证,验证失败不再触发快照回滚

修复

  • 修复 FairyGUI 序列化省略默认值属性导致的虚假 persistence_failed:缺失属性按 FairyGUI 默认值解析,期望默认值通过、期望非默认值仍失败关闭
  • remove_object 改为缺失性验证:编辑器不可解析 + 磁盘 XML 无节点 + external reload 重开后仍缺失,才判定 persisted
  • 树快照比对剥离运行时节点 id(List item 等 id 由编辑器按会话分配,如 n0_dftm → n0_jrnu),消除跨会话必然发生的假失败
  • 队列自愈、心跳按真实时间写入(0.8.2)
  • 包资源名称比对按去扩展名归一化(item.name 注册归一化时机不一致)
  • 修正错误语义:XML / 重载阶段不匹配报 persistence_failed 而非 editor_rejected

新能力

  • 支持从源仓库拉取更新并同步插件与 Skill(--pull / update 命令)
  • P0 对象资源替换、文本样式与文档验证、持久化 XML 验证
  • 字体资源导入/替换(import_font)及文本 font 属性设置(0.7.0)
  • 完整 FairyGUI 动画支持;大图拆分独立图集
  • 新增 CI:compileall + unittest + tsc 编译 + main.js 与 main.ts 同步校验
  • 新增版本一致性测试:pyproject.toml / plugin/package.json / src/fairygui_agent/__init__.py 三处版本号必须一致

验证状态

  • CI 全绿;单元测试通过
  • FairyGUI Editor 6.1.4 真机验证:transition reload、movieclip asset reload、create/remove 缺失性验证、set_text_style 关闭重开后回读一致(证据见 tests/reports/external-reload-live.json)
  • 模拟宿主覆盖扩至 71 项;Phase 0 八类对象隔离夹具落地

升级提示

从 v0.6.0 升级请重新同步插件(sync 或 update 命令),确保 main.js 与当前 main.ts 一致。详见 README。