Releases
v2.8.1
Compare
Sorry, something went wrong.
No results found
v2.8.1 — 元数据真实性核对、Token Level 截断修正、客户端与面板小修
⭐ Highlights
技能元数据与实现一致 :194 个会改场景或写资产的技能补齐了 MutatesScene / MutatesAssets 声明,?wire=v2 的 flags 不再漏报,noSceneAuthoring 档不再放过仍会改场景的技能;新增守卫测试防止再次漂移。
参数必填声明可信 :98 个技能此前空 body 也能通过 dryRun,现在在执行前就返回 MISSING_PARAM / SEMANTIC_INVALID;32 个批量技能的必填令牌改为真实参数 items。
Token Level 截断按档位生效 :Minimal 档(页大小 5)下 6–10 项数组此前原样全返、Full 档(页大小 20)下 11–20 项被误包截断元数据,现阈值与页大小同源;/health 新增 summaryAutoTruncate / summaryPageSize / tokenLevel,调用方无需再事后反推。
Python 客户端修三处并补封装 :set_unity_version("6.2") 不再误匹配任意 6000.x 实例;get_job_logs 改走轻量 GET /jobs/{id}/logs;find_skills 新增 include_schema / wire;新增 get_meta()、execute_batch() 与 CLI --meta / --batch。
面板与 CI 细节 :切换 Surface Profile 后已隐藏技能不再残留在详情栏;内联样式收敛为 USS class;删除 27 个无引用本地化键;check_locales.py 补上三元表达式与格式化重载的检测盲区。
Added
/health 暴露 Token Level 设置 — 新增 summaryAutoTruncate、summaryPageSize、tokenLevel(minimal / standard / full / maximum / custom)三个字段;references/protocol-operating-mode.md 新增 Token Level 一节,给出四档预设与 (SurfaceProfile, SummaryAutoTruncate, SummaryPageSize) 的精确映射及分页方式。
Python 客户端新封装 — get_meta(force_refresh=False)(GET /skills/meta,会话内缓存)与 execute_batch(steps, dry_run, continue_on_error, diff, mode)(POST /skills/batch,只发送服务端接受的键);find_skills 新增 include_schema / wire;CLI 新增 --meta、--batch FILE、--batch-mode、--diff。
守卫测试 — SkillsRecordingUndoOrSnapshots_DeclareMutatesSceneOrAssets、RequiresInput_SingleTokensNameARealParameterOrGroupKey、截断阈值两条端到端用例;三个测试类补钉 Full 档,避免在 guide / noSceneAuthoring 档的机器上误红。
Changed
194 个技能补齐 MutatesScene / MutatesAssets(行为变更) — 场景对象操作(GameObject / Camera / Cinemachine / Component / Light / NavMesh / ProBuilder / Sample / Smart / UI / XR 等)标 MutatesScene;写 .asset / ProjectSettings 的操作(Terrain / Timeline / Animator / Audio / Physics / Prefab / ScriptableObject / Shader / Graphics / Project / Debug 等)标 MutatesAssets。noSceneAuthoring 档新增隐藏 validate_fix_missing_scripts;7 个只写 EditorPrefs 或只记录快照的技能有据豁免。URP 家族无 URP stub 的声明与真实现逐字对齐。
98 个技能改为前置拒绝空 body(行为变更) — 24 个 RequiresInput 语义定位令牌(vcam / terrain / director / animatorController / audioAsset 等)登记为组键或改为真实参数名;66 个技能补上缺失的 RequiresInput;selection / selectedGameObjects 改为专用语义检查。Timeline 文档 trackName / bindingObjectName 的 Required 列改为 Yes。
32 个批量技能的 RequiresInput 改为 items — schema required 与 dryRun 对齐,只传 items 的合法调用不受影响。
面板 — 切换 Surface Profile / Token Level 后清除失效选中;新增 .is-hidden 工具类与 UiVisibility.SetVisible,约 34 处内联 style.display / 固定布局常量改为 class;删除昨日 topbar 提交的死代码(ApplySettingsIcon、💡 剥离),窄屏权限徽章让位改为 USS 变量。
删除 27 个无引用本地化键(三语同步,1086 → 1059) 。
PlayCaptureService 参数校验先于编辑器忙检查 。
版本号更新 — SkillsLogger.Version / package.json / Python helper __version__ / agent.md 同步提升到 2.8.1。
Fixed
Token Level 自动截断阈值未随档位变化 — 触发条件硬编码"超过 10 项",现与 SummaryPageSize 同源。
Python _version_matches 丢弃 Unity 6 小版本 — 仅裸 "6" 通配,"6.N" 精确到 6000.N. 前缀。
Python get_job_logs 走主线程重路径 — 改用服务端既有的轻量 GET /jobs/{id}/logs?limit=N;skills/batch/SKILL.md 补交叉引用。
7 个导入设置技能的 RequiresInput 幽灵令牌 — textureAsset / modelAsset / audioAsset 改为真实参数 assetPath。
check_locales.py 假绿盲区 — 三元表达式、Get(key, args) 重载、TryGet / Has 此前全部漏检,现识别 352 处引用。
Localization.cs 直调 Debug.LogError — 改走 SkillsLogger.LogError。
docs/SETUP_GUIDE(_CN).md 过期 — 指定版本安装示例与模块计数(54 REST + 28 advisory = 82、805 技能)更新。
Compatibility
技能总数不变(805),端点集合不变;/health 仅新增字段,v1 已有字段逐字节不变。
行为变更集中在"此前错误放行"的路径:空 body 由 valid:true 改为前置拒绝、?wire=v2 的 flags 更真实、noSceneAuthoring 档多隐藏 1 个技能。合法调用不受影响。
Unity 6000.3 与 2022.3 EditMode 全量回归均 0 失败。
You can’t perform that action at this time.