@uzooai/anime-ai-cli 0.5.0 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/.agents/skills/uzoo-anime-cli/SKILL.md +10 -4
  2. package/.agents/skills/uzoo-anime-cli/references/agreement-workflow.md +0 -10
  3. package/.agents/skills/uzoo-anime-cli/references/commands.md +8 -16
  4. package/.agents/skills/uzoo-anime-cli/references/generation-workflow.md +3 -13
  5. package/.agents/skills/uzoo-anime-cli/references/image-tools-workflow.md +5 -27
  6. package/.agents/skills/uzoo-anime-cli/references/interaction-workflow.md +1 -1
  7. package/.agents/skills/uzoo-anime-cli/references/material-graph-workflow.md +7 -17
  8. package/.agents/skills/uzoo-anime-cli/references/node-capabilities.md +19 -50
  9. package/.agents/skills/uzoo-anime-cli/references/node-workflow.md +3 -7
  10. package/.agents/skills/uzoo-anime-cli/references/remake-workflow.md +1 -1
  11. package/.agents/skills/uzoo-anime-cli/references/repaint-workflow.md +7 -294
  12. package/.agents/skills/uzoo-anime-cli/references/seedance-review-workflow.md +1 -5
  13. package/.agents/skills/uzoo-anime-cli/references/video-tools-workflow.md +3 -7
  14. package/CHANGELOG.md +9 -85
  15. package/README.md +27 -219
  16. package/docs/Agent/346/216/245/345/205/245/344/270/216/347/211/210/346/234/254/346/233/264/346/226/260.md +41 -0
  17. package/package.json +11 -13
  18. package/src/cli.js +5 -0
  19. package/src/group-membership.js +0 -1
  20. package/src/install.js +237 -0
  21. package/assets/README.md +0 -4
  22. package/docs/CLI/345/275/223/345/211/215/350/214/203/345/233/264/344/270/216/346/234/254/345/234/260/346/211/223/345/214/205-20261103.md +0 -134
  23. package/docs/CLI/346/216/210/346/235/203/346/216/245/345/217/243/344/270/216/344/273/244/347/211/214/350/207/252/345/212/250/345/210/267/346/226/260/350/256/276/350/256/241.md +0 -540
  24. package/docs/CLI/347/274/272/345/217/243/346/240/270/345/257/271/344/270/216/346/224/266/345/260/276-20261105.md +0 -65
  25. package/docs/CLI/347/275/221/351/241/265/344/277/235/345/255/230/350/212/202/347/202/271/347/274/272/345/244/261/344/272/244/346/216/245.md +0 -52
  26. package/docs/M0-M5/345/256/236/346/226/275/344/270/216/351/252/214/346/224/266.md +0 -89
  27. package/docs/npm/347/272/277/344/270/212/345/217/221/345/270/203/344/270/216/345/256/211/350/243/205/344/275/277/347/224/250.md +0 -151
  28. package/docs//344/270/213/350/275/275/346/216/245/345/217/243/351/200/202/351/205/215/344/270/216/351/252/214/346/224/266.md +0 -107
  29. package/docs//344/270/232/345/212/241/350/203/275/345/212/233/350/241/245/345/205/250/344/270/216Skill/347/273/223/346/236/204/350/247/204/345/210/222.md +0 -311
  30. package/docs//345/205/250/345/261/200/351/231/204/344/273/266/350/265/204/346/272/220/345/234/260/345/235/200/344/270/216/346/250/241/345/236/213/350/257/273/345/217/226/345/267/256/345/274/202.md +0 -47
  31. package/docs//345/206/205/351/203/250Windows/345/256/211/350/243/205/344/270/216/345/215/207/347/272/247/351/252/214/346/224/266/346/270/205/345/215/225.md +0 -34
  32. package/docs//345/233/276/347/211/207/346/212/240/345/233/276/346/216/245/345/205/245/344/270/216/351/252/214/346/224/266-20261104.md +0 -110
  33. package/docs//345/274/200/345/217/221/350/256/241/345/210/222.md +0 -127
  34. package/docs//345/274/202/346/255/245/346/212/240/345/233/276CLI/346/235/203/351/231/220/344/272/244/346/216/245-20261105.md +0 -50
  35. package/docs//345/274/202/346/255/245/346/212/240/345/233/276/347/234/237/345/256/236/351/252/214/346/224/266-20261105.md +0 -44
  36. package/docs//346/226/260/344/274/232/350/257/235/344/273/273/345/212/241/344/272/244/344/273/243-/351/230/266/346/256/2652A.md +0 -79
  37. package/docs//346/226/260/351/203/250/347/275/262/347/224/273/345/270/203/345/206/262/347/252/201/351/252/214/346/224/266-20261102.md +0 -61
  38. package/docs//346/231/256/351/200/232/346/265/217/350/247/210/345/231/250/347/231/273/345/275/225.md +0 -53
  39. package/docs//346/255/243/345/274/217/347/253/231/345/210/207/346/215/242/344/270/216/351/252/214/346/224/266-20261104.md +0 -90
  40. package/docs//347/224/273/345/270/203CLI/344/270/213/344/270/200/351/230/266/346/256/265/345/274/200/345/217/221/350/256/241/345/210/222.md +0 -136
  41. package/docs//347/224/273/345/270/203CLI/351/235/236/350/275/254/347/273/230/345/256/214/345/226/204/350/256/241/345/210/222.md +0 -183
  42. package/docs//347/224/273/345/270/203/350/203/275/345/212/233/345/245/221/347/272/246/346/240/270/345/257/271.md +0 -59
  43. package/docs//347/234/237/345/256/236/344/270/232/345/212/241/346/216/245/345/205/245/344/270/216/346/265/213/350/257/225.md +0 -1004
  44. package/docs//347/264/240/346/235/220/345/205/245/345/272/223/344/270/216/347/224/273/345/270/203/344/277/235/345/255/230/351/227/256/351/242/230/345/256/232/344/275/215.md +0 -52
  45. package/docs//351/230/266/346/256/2653B/351/252/214/346/224/266/344/272/244/346/216/245.md +0 -44
  46. package/docs//351/230/266/346/256/265/344/270/200/351/252/214/346/224/266.md +0 -60
  47. package/docs//351/235/236/350/275/254/347/273/230/346/214/201/347/273/255/345/256/214/345/226/204/344/270/216/351/252/214/346/224/266-20261103.md +0 -76
  48. package/docs//351/235/236/350/275/254/347/273/230/347/254/254/344/272/214/346/211/271/345/256/236/346/226/275/344/270/216/351/252/214/346/224/266.md +0 -39
  49. package/docs//351/235/236/350/275/254/347/273/230/350/241/245/345/205/205/346/235/241/344/273/266/351/252/214/346/224/266-20261103.md +0 -113
  50. package/docs//351/235/236/350/275/254/347/273/230/351/246/226/346/211/271/345/256/236/346/226/275/344/270/216/351/252/214/346/224/266.md +0 -71
  51. package/examples/real-business/image-request.template.json +0 -7
  52. package/examples/real-business/node-patch.template.json +0 -11
  53. package/scripts/check-package-resources.mjs +0 -56
  54. package/scripts/check-release.mjs +0 -19
  55. package/scripts/pack-local.mjs +0 -33
  56. package/scripts/release-policy.mjs +0 -22
@@ -1,65 +0,0 @@
1
- # CLI缺口核对与收尾(2026-11-05)
2
-
3
- 当前判断:已实现的非转绘主线可进入收尾。用户随后明确正式站就是已验开发版本部署,不再把同版正式站全量重测列为必做;边界专项先不处理。本轮剩余重心为npm发布准备,不把历史单条元数据问题冒称新发现的下载故障。最新实际服务为https://uzooai.com,开发站stage3b-test历史证据与正式站uzooai-online分开,不能用相同数字任务ID跨服务认领结果。
4
-
5
- 本轮只做本地审计、完整模拟回归、文档/skill校正、版本和包检查。没有访问真实提交接口、写画布、上传、生成或处理,没有费用;保留所有已有工作区修改、operation和产物。不开展N5、转绘、去字幕、独立转绘页或整片拼接,不提交/推送/发布npm。
6
-
7
- ## 已完成,不应再列成主线阻塞
8
-
9
- | 路线 | 实现与模拟 | 已有真实证据 | 网页证据与边界 |
10
- |---|---|---|---|
11
- | 文字/媒体单个及批量复制 | 新ID、任务归属、来源历史、审核/文件/持久参考及批内@映射,busy保护,一次CAS/未知不重放 | 普通图片/视频结果及三类素材复制,批内文本引用/标记读回 | 复制结果及文本引用保存重开通过;不扩大为全部混合组合 |
12
- | 普通画布编辑 | 改名、拆组、断线、删除、组移动/组框调整/组内三布局 | 实际断线/模式、退出和重叠拆组、删除、改名等通过 | 改名组框、复制/删除/分组、保留引用等网页重开通过;组框缩放不缩放媒体 |
13
- | 图片/视频审核与普通生成 | 显式单个/批量审核、状态回填、prepare映射、已审任务复用 | 图片1986+视频1989双Active请求关联,2069实际34 OO | 审核标记及视频完整播放通过;图片+视频+音频三类仅prepare/模拟,没有付费补造组合 |
14
- | 普通图片历史/历史添加到画布 | 选择/恢复、输出副本与来源历史分离、版本保护及读回 | 1986/2071切换恢复;图片1986/视频2069历史新增 | 图片旧项采用/保存重开/恢复新项再重开,新增图片/视频重开通过 |
15
- | Seedance样片→正片 | 专用父任务、报价/提交、独立节点与恢复 | 2072样片52 OO→2073正片260 OO,父子任务/交付通过 | 正片网页重开和完整播放通过;不是重新生成独立无关联视频 |
16
- | 新协议阻断→本人签署→原operation继续 | 协议前检、本人签署、原请求和幂等键、报价复核 | v3原operation仅一次生成2078,实际16 OO,回填/下载/解码通过 | 本次是真实CLI前检阻断,不是服务端生成POST返回4401的并发竞态验收 |
17
- | 裁剪/标注/剪辑/截帧/素材107导入 | 原任务/媒体保护,处理/上传/结果保存/恢复 | 对应原任务及0 OO上传/媒体读取通过 | 2026-11-02用户确认裁剪、矩形标注、2秒剪辑正常;两帧及素材107导入保存重开、536版只读核验通过 |
18
- | 免费抠图 | 旧同步/本地后台保留,优先服务端job;已知ID查询/原PNG/一次CAS | 2026-11-05 job 42740a87-7308-4099-9d80-62c3781c5f17,CLI退出后原ID恢复、实际0 OO、105→106一次保存 | 用户确认新结果/来源线保存重开;109版独立只读通过。无job_id的未知提交仍不自动重做 |
19
- | 原文件下载与响应命名 | 原业务入口取新链接、匿名受限307、完整性检查、filename*/filename | 素材107原文件;2069/2071大小修复复测通过;非成员素材107拒绝已验证 | 当前下载按服务端响应名称交付;显式output只是本地路径,不是服务端改名或格式转换 |
20
-
21
- 主线证据以[持续记录](非转绘持续完善与验收-20261103.md)、[补充条件及协议v3记录](非转绘补充条件验收-20261103.md)、[最新异步抠图验收](异步抠图真实验收-20261105.md)、[业务总记录](真实业务接入与测试.md)的日期与具体范围为准。旧“待验/未接入”保留为历史,不反向覆盖新证据。
22
-
23
- 表中普通编辑/生成/历史/审核及多数工具证据来自此前开发部署;用户确认该已验版本已经部署为正式站,正式站授权/抠图链路也已实测。因此不要求同版功能再全量重跑。原证据的具体任务/服务归属仍保留,不能跨profile认领数字ID;这不与版本一致相冲突。
24
-
25
- ## 已登记历史交接及覆盖边界(边界专项先不处理)
26
-
27
- | 剩余项 | 目前结论 | 最小下一步/依赖 | 是否现成CLI代码缺口 |
28
- |---|---|---|---|
29
- | 任务2078大小元数据 | 最后实测GET记录937487,稳定交付602870字节,摘要/完整解码一致;这是2026-11-04的旧证据,本轮没有重下或发现新的失败,不能据此断言当前下载又出问题 | 服务端核对原最终交付字段,再使用stage3b-test原任务/专属download只读复核;原服务不可用则提供可信迁移关联,不去正式站认领数字2078 | 服务端交付元数据问题;不通过CLI改写记录或转码掩盖 |
30
- | 真实过期307/不可续期、私有/下架等下载边界 | 模拟通过;常规每次取新链接;非成员107拒绝已通过,其他组合未证明 | 提供未篡改的自然过期引用、受控不可续期/私有/下架素材和安全profile;不退队、删除或改token造场景 | 已实现防护的真实矩阵缺口;不是原文件下载未接入 |
31
- | 三类媒体及更多审核组合 | 三类prepare映射/类型编号有模拟与前端对照,真实收费生成选择了图片+视频 | 仅在需要该代表性创作验收时确定实际模型/素材/参数并重新报价、取得当次确认;没有必要全量收费 | 真实组合覆盖,不为凑测试重审/生成 |
32
- | 历史新增的来源模式/时间修正 | 修正已模拟及前端对照通过;已有两真实新增节点产生于该元数据修正之前,保留原记录 | 若要求该修正也有真实新节点证明,复用原历史、先取得当前画布关闭确认,仅新增测试副本,不重新生成或覆盖旧节点 | 已实现修正的真实补验 |
33
- | 新入库结果再次导入/更多素材类型 | 普通图片入库和原键恢复通过;素材107导入网页已通过 | 区分已有素材导入与刚入库结果再导入,选已有受控产物及真实目录,确认画布关闭后补需要的路径 | 已接能力的覆盖边界,不能把107证据扩大到所有类型 |
34
- | 抠图真实排队/失败/取消/跨账号拒绝/提交丢响应 | 五态及不重放模拟通过,正常202及退出后恢复、网页真实通过 | 使用受控任务/身份;未知提交无job_id仍缺服务端幂等或按请求键查回契约;不制造费用或强杀服务凑测试 | 无ID未知恢复是接口边界,不能宣称全部断线恢复 |
35
- | 协议并发更新导致真实4401 | 当前已覆盖真实CLI前检阻断→本人签署→同operation一次提交;服务端POST实际4401仅模拟 | 受控版本切换/账号及费用授权;不撤销本人签署或伪造协议 | 竞态覆盖,不是主线续接未完成 |
36
-
37
- 用户已明确边界问题本轮先不处理,上述矩阵只登记为已知限制,不主动凑测试/额外收费。2078保留历史交接,当前没有新实测,既不写成已修复,也不说下载接口再次失败;它不等于CLI下载链路不可用。当前未发现另一个已确认且可直接修复的CLI业务错误,不将回归通过等同无缺陷保证。
38
-
39
- ## 当前不应扩成必做项
40
-
41
- - 普通图片数量以已核节点控件为准,目前单张;同节点多任务历史已经有,不依据目录上限猜批量提交。
42
- - 音频生成、跨会话撤销重做、额外重拍模式、ZIP/断点续传/任意节点播放器,缺完整入口/契约的部分保持未接入;已有音频上传/复制不等于音频生成。
43
- - 标注文字旋转、更多格式/方向元数据等不在当前支持范围;当前支持的其他图形旋转/静态PNG/JPEG路径分别声明,不冒称所有网页工具等效。
44
- - 含generation_config/node_output的未核节点配置变种,复制/断线明确拒绝;普通已验协议的支持不能写成“任意节点协议均等效”。
45
- - 服务端自定义命名请求/格式转换没有当前完整产品契约;CLI读取Content-Disposition与本地output已实现,不将“不支持转码”当作下载失败后静默回退的理由。
46
- - N5继续排除;干净Windows、真实跨版本升级/回退、其他操作系统实机未验证,不因此扩大本轮任务或宣传范围。转绘/去字幕及范围外页面继续保持暂停/排除。
47
- - macOS安全凭据适配器在代码中明确尚未实现,不能写成仅“未经实机验证”;Linux依赖secret-tool且未实机验收。当前实际验证平台为Windows,不在本轮扩平台。
48
-
49
- ## npm上线前仍需处理
50
-
51
- 包名@uzooai/anime-ai-cli、MIT、Node.js>=22、原生ESM/无npm运行依赖、bin/skill/授权资源、版本查询和本地打包已经具备。正式站HTTPS、本人正常CLI授权及独立会话已有真实证据;不再把正式站“未启用授权”列为当前阻塞。
52
-
53
- 1. 用户已本人完成npm CLI网页登录授权,whoami核验通过。用户新建uzooai组织后已读回当前账号为owner,目标尚未查到已发布版本;账户two-factor auth最后为disabled,待本人设置并核验。已登录不等于scope可发布,E404也不单独证明scope不存在或包名可用。
54
- 2. 确定要发布的版本/通道及公开范围。已按用户选择准备0.5.0/latest及private=false/public/官方registry,统一策略与prepublishOnly本地检查就绪;尚未上传,仍需2FA及当次明确发布确认。候选通道/正式通道按届时确认处理。
55
- 3. 按首发实际支持范围声明功能、平台和未验证边界;npm安装不会自动注册宿主skill,更新时也需保留宿主自定义修改。
56
- 4. 得到当次明确发布授权;当前不提交、推送、创建发布或上传npm。此清单是准备工作,不恢复N5。
57
-
58
- ## 本轮已做的收尾
59
-
60
- - 重新执行44组完整npm test,通过;暂停转绘的已有模拟仅作为仓库回归,不代表恢复转绘真实任务。
61
- - 核对最新证据,修正skill能力表中审核、组框、裁剪/剪辑/截帧、下载命名和异步抠图等陈旧状态;日期历史记录仍保留。
62
- - 本地旧文档校验助手存在硬编码包计数169/214和固定证据文件名,已改为不冒称测量包数据、输出新的时间戳证据;包内文件/运行资源以npm check:resources及本轮pack manifest实测为准,旧证据不覆盖。
63
- - 候选rc.8只同步本次审计/说明及版本,不改变CLI业务实现;语法、skill、UTF-8/换行/本地链接及实际包资源检查与打包结果另按本轮执行记录核对。仍private、不发布。
64
-
65
- 按用户最新决定,收尾顺序调整为:核实npm发布身份和scope权限 → 确定首发版本/通道 → 成套调整private与构建发布门禁并重新验证最终产物 → 取得当次明确发布授权。正式站同版全量重测、边界专项不再放进当前队列;2078仅保留旧证据说明,不冒称发生新的下载故障。
@@ -1,52 +0,0 @@
1
- # CLI与网页交替保存的节点缺失交接
2
-
3
- 日期:2026-10-31。前后端只读核对,本轮不修其源码或配置。此文供部署/前端协作定位,不授权恢复远端画布。
4
-
5
- ## 已观察事实
6
-
7
- 1. 原cli团队画布519版、48节点/31线。用户明确两帧取第1/2秒后,CLI完成本地截帧、两条0 OO上传任务与来源线,复用先前已入库图片导入,不重复入库/上传。
8
- 2. 525版51节点/33线:新两帧640×640 JPEG可读,新导入图与原素材SHA一致,其他48节点/31线、meta/viewport/name逐项相同;重复frame-get只读且completed。
9
- 3. 用户原浏览器停在工作台。为做网页重开验收,打开同一实际画布后页面出现“保存中”;DOM中只有旧截帧/裁剪/标注节点,没有本次三节点。
10
- 4. 只读GET返回526版、48节点/31线,本次两帧及导入节点/来源线缺失。随后离开画布回工作台,最终GET为527版、48节点/31线,部分原节点数据也改变、旧边保持;frame-get因源绑定变化停止,未自动重建。
11
- 5. 原两帧远端任务仍completed、credit_cost=0,result引用有效;素材107仍在库中。CLI没有再PUT、再上传、再保存入库或生成,不把UI后的缺失用反复覆盖“修复”。
12
-
13
- 这表明网页重新打开到后续保存之间内容缺失;未捕获当时网页网络请求/事务及部署版本,不能仅凭时间顺序认定唯一根因、某个成员或某一源码分支确实执行。
14
-
15
- ## 本地源码风险线索
16
-
17
- 只读路径:前端src/app/flow/stores/flow/helpers.js的AUTO_OVERRIDE_CANVAS_VERSION_CONFLICT=true;actions/persistence.js的resolveCanvasVersionConflict读取latest后,可更新docVersion并将当前本地节点快照再保存。该机制存在用新version写入旧内容的风险,CLI单次CAS无法防止后续客户端这样保存。
18
-
19
- 上述是源码机制和本次表现一致的线索,不是对真实部署执行分支的证明。actions/session.js的openProject本身会调用getDoc/applyCanvasDocRecord,还需检查实际部署、路由切换、残留store、自动保存队列/keepalive和内容序列化;不直接将此归为localStorage缓存。
20
-
21
- ## 协作核验条件
22
-
23
- - 先冻结该画布写入并保留服务端版本历史/请求日志及本地证据;比较519/525/526/527的目标节点、源绑定和PUT body/version/request_id,确认网页加载GET与保存队列的时序。
24
- - 部署侧确认实际前端bundle/后端版本与本地源码一致性,冲突分支是否自动覆盖,载入/切换中是否仍有旧session保存。
25
- - 修复方案与回归由对应工程师在前后端任务实施;本CLI任务不修改其代码。没有可靠版本/内容合并前不要把“换最新version重试PUT”作为恢复办法。
26
- - 原帧任务可保留;恢复哪些节点、目标位置和最新画布合并范围需用户另行明确,必须复用原产物,不能重传/重新生成或自动复活用户可能删除的内容。
27
-
28
- 含原始task/节点/文件引用的证据位于忽略目录.local/non-repaint-plan-20261031;本交接不复制file_ref或令牌。网页端到端验收保持失败/受阻,CLI原媒体产出单独记成功。
29
-
30
- ## 2026-10-31只读复查:覆盖链路已在本地源码复现
31
-
32
- 实际服务只读复查仍为527版、48节点/31线,没有再变化;未打开真实画布或提交任何业务写入。逐项快照比较确认525→526不仅删掉本次三节点/两线,还改动了原视频节点的prompt、model_name、extra.draft/file_ref、result.url/task_id/file_ref,以及asset-10的width;526→527这些内容保持。原媒体产出仍与画布当前状态分开保留。
33
-
34
- 本地源码证据补齐:
35
-
36
- 1. `src/app/flow/composables/useFlowProjectSession.js:61`:路由目标与store.activeProjectId相同即return,不调用openProject/getDoc。该composable离开到工作台时没有清空flow store;因此“从工作台再打开同画布”不能保证重新获取服务器内容,不应直接归因为localStorage。
37
- 2. 同文件`:98`与`:114`:flushProjectSession在onBeforeUnmount执行,并传quiet/keepAlive/force=true;即使没有新编辑,离开页面也可强制提交旧快照。
38
- 3. `src/app/flow/stores/flow/helpers.js:29`启用自动覆盖;`actions/persistence.js:345`遇版本冲突进入resolveCanvasVersionConflict。`:380`读取latest,`:412`仅更新docVersion,然后`:419`序列化本地节点、`:422`再次PUT,没有先装载或合并latest.nodes/edges。
39
-
40
- 隔离脚本`.local/non-repaint-plan-20261031/reproduce-web-save.mjs`已执行通过:Vite只读加载真实persistenceActions、snapshot、runtime及canvasService,提取实际useFlowProjectSession函数,替换业务服务为内存CAS与生命周期桩。没有连接远端业务或运行生成。复现两条路线:同ID重开不GET→视口改变后自动保存,以及同ID重开不GET→内容未改但离开强制保存。两者请求序列均为PUT旧v1冲突→GET最新v2→PUT v2携旧节点,最后v3丢失三个新增节点。对照:不同活动ID重新加载后新增节点保留;使用既有preventConflictOverwrite选项则停在冲突、保留服务器v2。
41
-
42
- 结论:本地源码的完整覆盖机制已证实,能解释本次现象;仍未取得发生时实际GET/PUT请求日志与部署bundle,不能据隔离复现认定那次请求必经该分支,也不能归责具体成员。527只读复查和隔离复现证据分别在investigation.json、web-save-reproduction.json,不保存令牌到交接文档。
43
-
44
- 建议前端修复范围:同画布重开重新核验服务器版本/内容;自动保存冲突暂停并提示加载/合并,不仅替换版本号覆盖;离开页面的强制保存也必须遵守冲突保护。仅调整一个开关仍须检查quiet分支更新版本后是否可能再次保存旧内容。修复时覆盖上述四个场景,并检查旧保存队列跨画布切换。此次只定位与记录,未改前后端、未恢复三节点。
45
-
46
- ## 2026-11-02执行决定:暂记前端缺陷,先采用关闭标签规避
47
-
48
- 用户要求本阶段不修改前端冲突实现,保留上述复现与建议修复范围。当前临时执行规则已写入CLI项目规则、skill入口和[交互指南](../.agents/skills/uzoo-anime-cli/references/interaction-workflow.md#画布标签关闭确认):CLI画布操作前先确认用户已关闭目标画布的相关标签页(含其他窗口/设备并协调其他编辑者),等待离开保存结束;仅暂停编辑或退回工作台不能代替关闭。
49
-
50
- 确认后重新GET最新画布并核验来源/版本,再执行已授权操作;同一连续任务未重开时复用确认,换目标/重新打开/状态不明时重新问。结果回填的wait/sync/recover同样适用,纯只读查询和独立素材库下载不适用。新建画布尚无对应标签时无需无意义确认,创建后保持关闭。CLI完成读回后由用户从新标签页打开,确保重新获取服务端内容。
51
-
52
- 关闭页面自身可能触发最后一次旧快照保存,故此措施不能恢复此前丢失内容,也不是并发冲突已修复。保留原产物,来源变化或CAS冲突时停止;不自动重建节点、重传、生成或覆盖。后续前端修复仍需验证同ID重开、冲突自动保存、离开强制保存及跨画布队列。
@@ -1,89 +0,0 @@
1
- # M0–M5 实施与验收进展
2
-
3
- **当前决定(2026-10-31)**:转绘重新设计,旧M0–M5转绘开发/专项补验冻结,原记录和结果保留,不标全部完成,也不自动恢复。普通画布及交付缺口重新归入[非转绘完善计划](画布CLI非转绘完善计划.md)。下文里程碑表与批次均为此前实施历史,不能作为继续多段、附件或拼接的授权。
4
-
5
- 日期:2026-10-31。本文区分已开发、已验证、范围限制和待验收,不将整个 M0–M5 标为完成。当前仅修改 CLI、skill、测试与文档,前后端保持只读;不提交、推送或发布,npm 保持 private。
6
-
7
- ## 里程碑状态
8
-
9
- | 阶段 | 本轮交付 | 剩余条件 |
10
- |---|---|---|
11
- | M0 | 已核对画布逐段入口、批量调用归属、额外参考、历史读取与整片入口;见[契约核对](画布能力契约核对.md) | 新入口或部署变化时重新核对 |
12
- | M1 | 原 reverse/delivery/video 结果 export、本地已核验快照、配置变化后的视频下载权限路径、不中断占用目标文件的交付 | 原最终提示词真实导出通过;原转绘成品已通过专用入口真实下载/解码补验。转绘任意轮次历史切换/写回未实现;普通节点历史选择见M4 |
13
- | M2 | sequence、sequence-get、sequence-next、sequence-recover;单项实时估价/确认、过期步骤授权保护、原子操作恢复及重启续接 | 本地两段与三类步骤通过;真实两段未完成,用户明确保留待验 |
14
- | M3 | 完成入口核对,未找到当前画布转绘的拼接入口/请求 | 保持未接入;不以独立页或重拍 compose 接口代替,不擅自添加本地合成 |
15
- | M4 | 本地回归、前端兼容、原结果导出、短素材预检及非首段绑定;普通图片/视频历史选择/恢复,普通视频真实切换后恢复通过 | 其他模型/多素材真实组合、网页人工播放/编辑、多帧与附件真实处理等按项待验 |
16
- | M5 | 实际打包、离线隔离安装、命令入口、13份skill参考复制、Windows DPAPI/退出;同版本重新安装保留配置/凭据/各类operation及归档,普通生成/转绘列表可读取 | 全新 Windows 环境、真实浏览器登录、跨版本升级与缺工具安装体验未完成;其他平台不扩大支持声明 |
17
-
18
- ## 实现细节与行为
19
-
20
- - `repaint export` 与 `video-download` 使用原运行读取校验,不改变 submit/recover 的严格配置绑定;导出不保存画布、不重提任务。视频始终先请求原专用 download 接口,2001 保留 HTTP/业务码/request_id 并停止。
21
- - 反推/最终提示词/视频成功恢复时归档已核验结果;显式 remote 导出也会归档。视频快照仅存元数据,不存可下载的结果 URL/file_ref;文本快照可显式 archive 导出。无先前快照的历史原轮不能补造;归档摘要检查完整性,不作为服务端签名。
22
- - 文件交付先写本次临时文件,再在同目录独占发布,已有目标拒绝覆盖;中断仅清理本次临时文件。并发目标竞争不会覆盖获胜文件。
23
- - 多段调度只保存选定步骤,复用单段 reverse/delivery/video。一次只准备、提交或恢复一项;`--step` 必须等于当前子 operation,费用仍由原阶段实时核对。未完成、未知、失败或 fallback 不自动跳过,后续不沿用上一项确认。
24
- - 非首段绑定其上一段真实切片来源及区间,与服务端读取上一段尾部视频的行为一致;前序来源改变停止。调度同时绑定全局规则、附件、方案及节点关系。
25
- - `source_preview` 报告已有媒体时长证据、未知状态及均匀分段限制。不把普通生成节点的请求时长视为真实媒体时长;每段至少 4 秒,两段至少需要 8 秒,间隔不保证段数。真实时长不足时不承诺多段。
26
- - Skill 保持一个入口和 13 份参考,新增内容写入原 repaint/commands/能力指南;安装用户仍通过 `uzoo-anime` 使用,不依赖前端仓库或开发端口。
27
-
28
- ## 真实验证与远端副作用
29
-
30
- 原任务只读核验:配置变化后,原最终提示词成功导出 2756 字节,SHA-256 `da142d295f9d5b510f881caf191b16b9cdf69d3d8e103bf0c6a1bab2efc51035`。原视频任务完成但专用下载权限接口返回 2001;未改用 result URL。原首轮反推被新轮次替换,返回结果不可用,没有伪造归档。
31
-
32
- 上述原结果验证前后画布均 508 版、47 节点/31 线,原 operation 记录不变,业务请求均为 GET。
33
-
34
- 随后用户明确选择沿用“cli团队画布”、暂停网页编辑,复用原走廊,按 4 秒均匀分段、最终提示词不替换,拟用 mini/480p/16:9/4秒输出。免费创建一个普通转绘入口后,展示猫猫队共享钱包快照和实时 0 OO 准备费用;取得该项明确确认后,仅提交一次均匀分段准备。
35
-
36
- 服务端实际返回源时长 6385 ms,方案只有 0–6385 ms 一段;每段至少 4 秒,末段余量合并,不能作为两段验收。此次仅验证准备阶段,未确认切片、执行反推、最终提示词处理或视频生成。
37
-
38
- 原准备详情和系统线曾在 514 版保存成功;下一次读回 515 版只余 48 节点/31 线,详情、相关系统线及流程标记缺失,新增普通入口仍在。CLI 正确停止,没有重建或再次 complete。现有证据只说明发生了后续保存与内容缺失,不能认定是谁操作或确认唯一根因。原任务仍可查询,停在 awaiting_review。
39
-
40
- 用户随后明确“先完成其余开发,多段真实验收保留待验”。因此保留原任务和入口,不重复上传、不重新提交、不恢复缺失详情,也不新增收费任务。团队共享余额仅是快照,不能据其变化归因本轮消费。
41
-
42
- ## 验证范围
43
-
44
- - 29 组本地回归(原 28 组加独立归档/文件交付组),覆盖实际 CLI 子进程分发、签名 HTTP、三类调度、两段串行、重启、过期步骤授权、价格变化、未知提交、CAS/删除保护与归档完整性。
45
- - 反推、最终提示词和视频的真实前端 builder/服务调用/codec 兼容核对;分段、媒体和其他边界补验按实际运行报告记录。
46
- - `npm run check`、skill validator、UTF-8/原换行格式、本地链接、差异检查及 npm 包清单。
47
- - `npm run test:package` 在仓库忽略目录打包并离线安装到隔离前缀,验证 `.bin` 命令、运行资源、13 份参考、隔离项目 skill 复制和模拟凭据的 Windows DPAPI/退出;测试产物自动清理,不改全局安装或真实账号。
48
-
49
- 以上是本轮验证项;最终运行结果以本文件后续记录为准。本地模拟、当前机器隔离安装及前端协议兼容不能代替真实多段模型效果、网页人工操作或全新机器验收。
50
-
51
- ## 恢复与交付
52
-
53
- 新增能力均可在后续会话使用同 profile、父 operation、sequence 及子 operation 恢复。不要编辑旧记录来适配新配置,不对 unknown 换键重提。
54
-
55
- 需要继续真实两段时,先取得至少 8 秒且可按实际方案分成两段的用户指定素材,再沿原空间和已明确范围准备;源素材与任务绑定改变须使用独立、明确的操作,不将旧单段 operation 改绑。画布内容缺失按既有显式详情恢复流程处理,不能因这次开发请求自动重建。
56
-
57
- 本轮继续受限:附件模型地址链、抠图报价与恢复契约、下载白名单、整片入口及网页旧快照覆盖协作。独立视频转绘页面暂不实现,去字幕继续暂停。后续应按这些具体条件推进,不以多写命令或重新生成代替验收。
58
-
59
- ## 前一批交付检查
60
-
61
- 本轮最终代码的 `npm run check` 与 29 组 `npm test` 全部通过。四类前端兼容(分段、反推、最终提示词、单段视频)及三组真实媒体测试通过;新增子进程用例确认 export/source 与 sequence/step 参数能从实际 CLI 分发。
62
-
63
- 最终 `npm run test:package` 通过:131 个包文件,13 份 skill 参考,离线安装、源码工作目录外的命令与 `.bin` 入口、隔离 skill 复制、Windows 模拟账号 DPAPI/退出均通过。没有公开发布,`private: true`。当前环境的真实浏览器重新登录和全新 Windows 机器继续未测。
64
-
65
- 38 份相关文件的 UTF-8/原换行格式、161 处 Markdown 本地链接、skill validator 与 `git diff --check` 通过。测试曾受沙箱临时文件/回环连接限制,取得系统执行批准后在本机完成;没有把环境阻塞改成业务成功或关闭原权限校验。
66
-
67
- 未完成的真实两段、白名单视频导出、整片入口、附件/抠图及干净机器验收继续保留上述状态,本轮未将 M0–M5 整体标为完成。累计修改仍未提交或推送。
68
-
69
- ## M4/M5补充:普通历史与覆盖重装(2026-10-31)
70
-
71
- 新增generation history/history-select/history-get/history-recover,普通图片/视频的真实条目分页、预览、明确选择后单次CAS写回及只读核验。持久化账号/服务/空间/原节点和历史身份;引用续签通过匿名原媒体摘要确认,预览后历史配置变化停止。保存前记录pendingNode,响应未知/冲突不重发;节点删除/后续编辑保留,不自动重建或恢复。当前输入参考、审核元数据、其他节点/边/meta保留;下游不重新生成。不支持文本/素材/派生/转正和添加历史为新节点。
72
-
73
- 用户明确授权后,仅两次真实画布PUT:517→518切到已有2秒结果2006,518→519恢复原4秒结果1989;48节点/31线,其他内容保持。恢复的是1989的历史mini模型及原提示词,覆盖切换前另行编辑的Draft和空提示词,符合前端历史选择语义。原核验脚本误要求恢复编辑前快照而在写入完成后断言失败;修正后只GET/只读恢复确认,未重复写入。原多段任务仍保留awaiting_review,没有恢复缺失详情,也未追加上传、生成或入库。
74
-
75
- 打包测试增加同版本tarball覆盖重装,隔离配置/凭据及普通生成、转绘各阶段、sequence、archive、node-history原字节保留,实际普通生成/转绘operation列表能查询保留记录;退出保留operation。它不代表跨版本schema迁移、全新机器或真实授权页验收。新增模块、测试及文档使用原UTF-8/换行格式,skill仍一个入口/13份参考。
76
-
77
- ## 本次补验最终检查
78
-
79
- 最终30组CLI回归、语法检查通过;新增普通图片/视频历史兼容测试实际提取前端selectHistory及normalizer/codec,四种配置用例保存重开一致。包括预览后extra比例/分辨率变化停止的回归,避免以旧预览授权新配置。此前四类转绘前端兼容及三组真实媒体结果保留,不重复追加真实生成。
80
-
81
- 最终npm包134项、完整13份参考;离线安装、.bin入口、隔离skill复制、Windows模拟DPAPI/退出以及同版本实际重新安装保留原记录通过。重装前将隔离安装包移动到已核验的临时边界内,再离线重新安装并比较实际入口/新模块,避免把npm的“已是最新”当作重装验收。仅普通生成/转绘operation列表进行了实际CLI查询,其他阶段/归档/历史记录核验原字节保留,不宣称已完成跨版本schema恢复。
82
-
83
- 42份相关文件的UTF-8/原换行格式、168处Markdown本地引用、skill validator及git diff --check通过。普通回归和打包曾受沙箱临时文件/子命令限制,系统执行批准后本机验证成功;测试仅使用模拟服务/账号。真实历史写回仅前述两次,之后没有再提交真实业务写入。前后端未改,未提交/推送/发布,private仍true。
84
-
85
- ## 下载接口后续适配与解阻(2026-10-31)
86
-
87
- 收到新后端下载说明后,补齐匿名文件GET的307续期、完整URL/query保留、错误JSON与完整文件响应校验,业务权限入口不变。当前账号的普通原视频和此前受限的原转绘成品均经业务入口成功导出,大小/摘要、FFprobe及FFmpeg视频流解码通过;画布519/48节点31线完全不变,没有新任务或写回。旧白名单阻塞不再作为这两条结果的当前限制,不能据此扩大到所有成员权限或格式转换/真实过期引用已验证。详情见[下载适配与验收](下载接口适配与验收.md)。真实两段继续按用户选择待验,其他既有限制不变。
88
-
89
- 下载适配最终检查:31组回归、语法、skill及UTF-8/换行/引用检查通过;最新包136项、13份参考、离线安装与同版本实际重装记录保留通过。其他范围继续按各项未验证条件保留。
@@ -1,151 +0,0 @@
1
- # npm线上发布、版本更新与安装后使用
2
-
3
- ## 发布准备快照(2026-11-05)
4
-
5
- 用户确认正式包名为@uzooai/anime-ai-cli,采用MIT开源。用户已选择待发布正式版本0.5.0、latest通道;package.json、package-lock.json、CLI版本查询和CHANGELOG保持一致。旧@uzooai/anime-ai-cli-demo的0.4.0本地归档保留。当前private=false,publishConfig明确public/官方registry/latest,尚未发布registry,下面registry安装命令仅在发布对应版本后可执行。
6
-
7
- 包为原生ESM JavaScript,Node.js >=22,无新增npm运行依赖;命令名仍为uzoo-anime。随包有完整skill入口及13份参考、浏览器授权资源、MIT LICENSE、更新记录与使用文档。已提供本地构建/打包和归档摘要检查。
8
-
9
- ## 线上发布还需完成什么
10
-
11
- | 项目 | 当前结论 |
12
- |---|---|
13
- | 包名与许可证 | 已确认正式名称,已写入MIT/LICENSE;description、repository、bugs已补齐 |
14
- | npm组织及发布身份 | 正常CLI已登录,liuwql为新建uzooai组织owner;包尚未查到已发布版本。2FA最后读回disabled,仍待本人启用及发布前再核验;不收集或公开令牌/验证码 |
15
- | 正式服务 | https://uzooai.com已有人本人正常CLI授权、独立会话读回及异步抠图真实证据;仅覆盖已验路线,上线后仍自检。历史5174代理不交给线上用户 |
16
- | Windows安装/更新验证 | 目前有源码回归及本地包;干净环境安装、真实跨版本更新/保留/回退仍未做N5,不标通过。用户明确恢复后再做 |
17
- | 功能范围 | 图片历史网页、有效样片正片、协议原operation续接和异步抠图均有真实证据;剩余边界见[当前范围](CLI当前范围与本地打包-20261103.md),首发能力按已验路线声明 |
18
- | 发布放行 | 用户已选择0.5.0/latest并授权准备配置,当前private=false,公开策略及prepublishOnly已准备;仍需2FA及当次实际发布确认,不自动上传/提交/推送 |
19
- | 版本通道 | 候选版建议next标签,正式版用latest;RC不能误覆盖稳定通道。每个版本都保留CHANGELOG、manifest及对应tgz |
20
-
21
- scoped公开包需明确public可见性及npm发布认证,具体按[npm官方发布指南](https://docs.npmjs.com/creating-and-publishing-scoped-public-packages/)执行。MIT只适用于本CLI代码授权,不替代平台账号、服务协议、素材授权或生成费用规则。
22
-
23
- ## 用户安装后的首次使用
24
-
25
- 发布后安装稳定版;若尚未发布,改用维护者提供的候选tgz,不要把示例理解为registry已经有包:
26
-
27
- ```powershell
28
- # 正式发布后
29
- npm install --global @uzooai/anime-ai-cli@latest
30
-
31
- # 目前可使用本地候选包,将路径替换为收到的实际文件
32
- npm install --global "C:\Downloads\uzooai-anime-ai-cli-0.5.0.tgz"
33
-
34
- uzoo-anime --version
35
- uzoo-anime --help
36
- uzoo-anime skill path
37
- ```
38
-
39
- 三条本地查询不读取登录态、不创建profile、不联网。--version输出纯版本;version输出包含包名、版本和Node要求的JSON。skill path只定位随包目录,不自动写入宿主技能目录。
40
-
41
- 若正式服务确实部署在内置https://uzooai.com,按下面流程使用;该地址已完成正常CLI授权及代表性真实路线,用户首次使用仍应先自检,不因内置profile就假定所有接口均就绪:
42
-
43
- ```powershell
44
- uzoo-anime --profile uzooai-online service status
45
- uzoo-anime --profile uzooai-online auth login
46
- uzoo-anime --profile uzooai-online auth status
47
- uzoo-anime --profile uzooai-online account info
48
- ```
49
-
50
- 用户在普通浏览器本人完成登录、滑块/验证码及CLI授权;CLI建立独立会话并用Windows CurrentUser DPAPI保存凭据。无需复制token、无需安装旧登录扩展。平台协议仍由本人签署。
51
-
52
- 若生产地址不同,请用新profile绑定用户实际提供并已部署的HTTPS根地址:
53
-
54
- ```powershell
55
- uzoo-anime --profile production config set --base-url https://YOUR_DEPLOYED_HOST
56
- uzoo-anime --profile production service status
57
- uzoo-anime --profile production auth login
58
- uzoo-anime --profile production auth status
59
- ```
60
-
61
- 不要把已有profile改绑到其他服务、退出登录或把开发代理作为线上默认地址。后续每条命令持续使用同一已选profile。先选个人或真实团队,再列该空间画布及模型;不因没有团队就自动改用个人付款。
62
-
63
- ```powershell
64
- # 用户明确选择个人空间后
65
- uzoo-anime --profile uzooai-online canvas list --space personal
66
- uzoo-anime --profile uzooai-online model options --space personal --type image
67
- ```
68
-
69
- 团队路线替换为--space team --team-uid真实UID。收费生成须准备真实素材映射、估价并取得当次确认,再提交同一operation;不会因为npm安装而自动生成、上传或扣费。画布写入前仍按当前协作规则确认相关网页标签关闭。
70
-
71
- ## 交给Agent使用
72
-
73
- npm安装CLI不会自动注册Agent skill。运行uzoo-anime skill path取得包内目录,再将完整uzoo-anime-cli目录(含references)放入宿主支持的技能位置。以已支持该约定的项目.agents/skills为例,首次复制可使用:
74
-
75
- ```powershell
76
- $sourceSkill = (uzoo-anime skill path --format json | ConvertFrom-Json).directory
77
- $targetSkill = Join-Path (Get-Location) '.agents\skills\uzoo-anime-cli'
78
- if (Test-Path -LiteralPath $targetSkill) {
79
- throw '目标已有skill,请先保留并核对自定义修改,再决定更新;不要直接覆盖。'
80
- }
81
- New-Item -ItemType Directory -Force (Split-Path -Parent $targetSkill) | Out-Null
82
- Copy-Item -LiteralPath $sourceSkill -Destination $targetSkill -Recurse
83
- ```
84
-
85
- 让宿主重新发现技能或开启新会话后,可以对Agent说:“使用uzoo-anime-cli,沿用production profile,先查询我的团队和画布让我选择,再按我提供的素材准备生成,报价后等我确认。”Agent使用已安装命令及随包skill,不需要前后端源码或本仓库路径。Seedance 2.5提示词优化的sd25-pe是独立可选skill,未捆绑进本npm包,不能假定用户已安装。
86
-
87
- ## 版本更新、候选通道与回退
88
-
89
- 普通用户主动查询并更新稳定版本;CLI不后台自动安装,也不因新版本可用而重提原任务:
90
-
91
- ```powershell
92
- npm view @uzooai/anime-ai-cli version
93
- npm install --global @uzooai/anime-ai-cli@latest
94
- uzoo-anime --version
95
- uzoo-anime --profile uzooai-online auth status
96
- ```
97
-
98
- 自愿测试者可在对应候选版已发布后使用@next;正式0.5.0发布后固定版本可用@0.5.0。卸载/升级npm代码不等于退出平台账号,当前配置路径固定为Windows %APPDATA%/uzoo-anime-cli,独立于npm安装目录;profile、DPAPI和原operation不迁移、不清空。该设计已有存储回归,真实跨版本升级尚待N5验证。
99
-
100
- 已全局安装旧demo包的用户迁移到正式包名时,两个包会提供同一个uzoo-anime命令。先用npm卸载旧代码包,再安装正式包,避免--force覆盖冲突;不要调用auth logout、删除配置目录或删除操作记录。此迁移流程本轮未实际执行。
101
-
102
- ```powershell
103
- npm uninstall --global @uzooai/anime-ai-cli-demo
104
- npm install --global @uzooai/anime-ai-cli@latest
105
- ```
106
-
107
- 回退时指定确实已发布的旧版本,或使用保留的旧tgz;先核对更新记录中的operation格式兼容声明。不要让旧版去重提它不认识的新流程记录,也不要通过换operation“修复”升级问题。更新后,手动复制到Agent目录的skill不会自动跟随npm更新;先保留自定义内容,再从skill path所示的新包同步完整目录。
108
-
109
- 维护者递增版本时同步manifest/lock/CHANGELOG,遵循[npm语义化版本规则](https://docs.npmjs.com/about-semantic-versioning/);若使用npm version,带--no-git-tag-version避免自动提交/打tag,见[官方命令说明](https://docs.npmjs.com/cli/v11/commands/npm-version/)。本次候选仅修改本地文件并重新打包,不自动发布。
110
-
111
- 候选rc.5包含独立抠图后台worker,运行资源随src一起打包;按包内[后台流程](../.agents/skills/uzoo-anime-cli/references/image-tools-workflow.md#抠图独立后台执行与本地查询)执行。后台仅缓存、同operation显式回填;升级包内skill后,另行更新宿主复制的skill目录。仍未发布,不开展N5安装/升级专项。
112
-
113
- rc.6另含服务端异步抠图适配,运行资源matting-jobs.js随包打包;新接口真实成功验收待条件,旧operation保持原恢复路径。仍private、未发布。
114
-
115
- rc.7为异步抠图真实验收记录更新:正式站202、原job查询/取回、0 OO、一次CAS及用户网页保存重开通过;CLI业务实现未变,旧operation兼容及未知无ID不重放边界继续适用。仍仅本地候选包,未发布registry。
116
-
117
- ## 2026-11-05 用户收敛范围及npm只读核验
118
-
119
- 用户明确正式站就是已验开发版本部署,取消“正式站其余主线必须重跑”的本轮要求;边界问题先不处理。保留原证据归属和已知限制,不迁移profile/operation,不自行恢复边界测试。2078是2026-11-04单条旧证据:任务result.file_size=937487,实际稳定交付602870字节且两份摘要/完整解码通过;本轮没有重新下载或发现新失败,不能表达为“下载接口又坏了”。只能确认当时元数据与最终交付字节不一致,具体根因及当前是否已修复没有新证据。
120
-
121
- 本轮npm只读检查:npm版本11.6.2;指定https://registry.npmjs.org/执行whoami返回ENEEDAUTH,当前机器未登录npm。npm view @uzooai/anime-ai-cli返回E404;无认证时不据此判定包名一定空闲,也不能证明该scope发布权。缓存/日志仅写本地忽略目录.local/npm-release-audit-cache,未输出或收集令牌,没有执行login/publish。
122
-
123
- 当前发布前仍需:本人登录有@uzooai发布权限的npm账号并满足发布认证/2FA;确认包名权限和首发版本/通道(候选next或正式latest);将package.json的private=true与scripts/check-package-resources.mjs的强制private断言成套调整为明确发布策略,公开scoped包明确access=public;同步manifest/lock/CHANGELOG并重新检查最终归档,最后取得当次发布授权。当前尚未修改任何发布门禁、上传包或创建发布,N5仍排除。CI trusted publishing是可选后续,不额外列为首次手工发布的必做。
124
-
125
- 已具备的包名/MIT/CLI入口/Node要求/运行资源/skill/安装及更新说明不需要重做。npm安装不会自动注册宿主skill,说明仍保留。认证与公开scoped发布依据[npm官方发布说明](https://docs.npmjs.com/creating-and-publishing-scoped-public-packages/)及[2FA说明](https://docs.npmjs.com/requiring-2fa-for-package-publishing-and-settings-modification/);private拒绝发布见[package.json文档](https://docs.npmjs.com/cli/v11/configuring-npm/package-json/)。
126
-
127
- ## 2026-11-05 npm本机CLI认证已完成,scope与2FA待确认
128
-
129
- 用户已在npm网站登录,并本人完成本机CLI网页登录授权。首次等待通道过期,CLI未保存凭据;重新发起正常npm login --auth-type=web,由本人完成新授权后npm明确返回Logged in,随后whoami只读核验成功。不读取/复制浏览器令牌,不索取密码、验证码或恢复码;凭据由npm保存于本机正常用户配置。
130
-
131
- 当前机器已认证,但目标@uzooai/anime-ai-cli仍返回E404,可写包查询未给该包权限,组织查询也为E404,不能据此断言scope不存在或已拥有发布权。账户two-factor auth只读结果为disabled。已用交互卡片收集npm组织归属/发布权限配置和本人2FA设置;GitHub组织权限不等于npm scope权限。发布账号身份、scope权限、2FA和平台CLI授权分别核对,不把平台账号已授权当成npm可发布。
132
-
133
- 当前private=true、发布门禁、版本/通道及所有业务operation不变,没有npm包发布、权限修改或真实业务任务/费用。本次只完善维护者发布准备状态,未重跑44组回归、未安装软件、未重新打包。证据为忽略目录.local/frontend-conflict-20261102/npm-identity-audit-1793862189235.json,仅保留必要身份/状态,不含令牌、密码或其他组织成员信息。
134
-
135
- ## 2026-11-05 组织确认与0.5.0发布准备
136
-
137
- 用户已创建npm组织uzooai;正常CLI只读核验当前账号liuwql为组织owner,npm本机登录成功。目标包未查到已发布版本;首次尚未发布的目标没有包级可写列表条目,不再把组织创建/owner身份误列为未确认。账户2FA最后读回disabled,仍需本人设置及再次读回。
138
-
139
- 用户明确选择正式0.5.0/latest,并同意先同步版本、发布配置和最终产物检查;该选择不授权实际上传。已准备package.json private=false与publishConfig public/https://registry.npmjs.org//latest,lock/CHANGELOG/说明同步。包检查改用统一显式策略:内部private候选仍可本地打包,公开包须完整匹配名称、入口、MIT、官方registry、稳定/RC通道。pack:local输出改读实际private与通道,不再硬编码private=true。安装专项脚本同样读取策略兼容,但本轮不执行N5。
140
-
141
- 新增npm run check:release(本地构建+版本/lock/独立更新记录/许可证/入口检查)及prepublishOnly挂钩;它们不执行登录、2FA、权限变更或发布。脚本和新运行依赖纳入包资源检查,拒绝缺失发布策略模块。新增策略模拟覆盖私有/公开、非官方registry、缺显式private、错误入口/许可、RC串latest等;具体检查结果按本轮实际执行记录,不因配置存在就宣称已发布。
142
-
143
- 等待2FA本人启用及最终归档复核后,才展示具体包/版本/通道/摘要并收集当次上传授权。当前不npm publish、不提交/推送,不新建真实业务任务/写画布,不恢复边界专项/N5/转绘/去字幕。旧候选包、全部凭据/profile/operation保留;公开发布配置并非切换平台账号或修改业务请求。
144
-
145
- ## 0.5.0本地发布准备最终检查
146
-
147
- 用户选择0.5.0/latest,配置与统一发布策略本地检查通过;Windows原子rename修复及策略测试加入后,46组完整npm test实际通过。此前两次45组在截帧Temp的EPERM中断、针对性复验和修正记录均保留,不抹掉失败,也不将重试描述为网络重放。完整回归仍只是模拟/本地检查,已有真实业务证据范围不扩大。
148
-
149
- 最新npm只读身份核验:本机已登录,liuwql为uzooai组织owner;two-factor auth仍disabled,目标包未查到可见已发布版本。正式发布配置已经准备,不表示已获实际上传授权。下一步为本人启用2FA并核验,然后展示最终归档与摘要取得当次发布确认;未执行npm publish、安装专项、Git提交/推送或真实业务写入。
150
-
151
- 本轮静态及包检查保留13份skill参考、公开运行模块和新的发布校验模块,排除.local、outputs、测试/凭据和内部远程联调记录;归档以本轮pack:local生成的独立目录和manifest校验为准。README安装入口使用版本/通道和条件性发布表述,避免归档发布后仍把“尚未上传”的准备快照当成用户功能状态。
@@ -1,107 +0,0 @@
1
- # 下载接口适配与验收
2
-
3
- 日期:2026-10-31。输入为用户提供的《下载接口对接说明.md》(文内标题《下载接口与参数说明》,更新日期2026-10-31)。文档明确包含尚未提交/部署的后端变更;将其作为拟接契约,不把其中前端调用示例当作修改前后端或部署授权。此次仅修改CLI、配套skill、测试与文档。
4
-
5
- ## 契约与范围
6
-
7
- | 路线 | 新说明 | CLI适配 |
8
- |---|---|---|
9
- | 普通生成下载 | GET /canvas/generations/{task_id}/download,canvas客户端头,无名称/格式参数,返回original完整url | 沿用业务入口,自动认证/签名;先检查HTTP/业务code,再匿名取文件 |
10
- | 画布转绘版本 | GET /video-segmentation/{job_id}/redraw-tasks/{task_id}/download,无/jobs层,取消白名单,保留可见性/审计 | 原operation、原结果校验和权限入口保留,2001不再推定白名单原因;生成状态与下载状态分开 |
11
- | 分割下载列表 | GET /video-segmentation/{job_id}/downloads,多文件列表,无ZIP/名称/格式参数 | 既有切片落图使用列表的完整url,不新建批量下载命令或独立页面流程 |
12
- | 实际文件 | GET /files/{file_ref},匿名能力凭证,支持307续期,完整url可能带format | 新增requestFile,仅匿名文件GET可逐跳续期,最多5次,共用超时,不转发任何API凭据;保留返回url及查询参数 |
13
- | 素材命名/转换 | 独立素材空间下载入口接filename/format,转换在实际文件GET时发生 | 当前CLI没有该命令,未向生成/转绘或素材list/get塞入专属参数;前端仍旧直接下载素材,无新格式控件,继续单列未接范围 |
14
- | 预览/Range | 预览有202/503等状态,原文件可206 | CLI现有完整下载不使用预览或Range,不把部分响应当作完整产物;不新增播放/续传能力 |
15
-
16
- 素材转换若由服务器执行,FFmpeg依赖也在服务器;不能套用本机裁剪/截帧依赖安装流程。转换失败不自动改为原文件或重复转码。下载授权和媒体下架仍遵循实际业务/文件响应;expires_at=null不表示永久有效。
17
-
18
- ## 实现与保护
19
-
20
- - 公共request仍拒绝全部跳转,登录、签名业务API和预签名PUT保持原规则;独立匿名文件requestFile只跟随307,每跳复用原HTTPS/本机HTTP地址约束,额外禁止HTTPS降级。不会向资源地址发送Authorization、Cookie、设备、CSRF或签名头,也不回传续期响应的Set-Cookie。
21
- - 普通生成下载、转绘视频导出、图片/视频工具的源媒体读取、引用SHA-256核验和分段源文件读取统一使用该匿名文件请求。服务端完整url优先,不解码凭证或自行丢弃query重拼。保持原任务/画布/来源绑定,不以续期为由跳过原媒体一致性检查。
22
- - HTTP200错误JSON也报错,诊断限HTTP/业务码及安全request_id,不回显供应商正文或完整file_ref。错误JSON最多读取64KiB;即使缺data字段,非零业务code也不能被当成成功。非预期202/206、HTML、传输中断、空文件/长度或预期摘要不符均停止;最终文件不覆盖,失败清理本次临时文件。
23
- - 不自动重新请求未知业务操作、重新生成或更换下载来源。业务入口拒绝时不能绕到旧result.url;文件引用不可续期时从同一有权限的业务入口刷新。没有扩大为独立视频转绘页面、素材转换、预览、ZIP或整片拼接。
24
-
25
- ## 文档、源码及部署差异
26
-
27
- 本地只读核对:canvas.py的普通生成业务下载结构与新说明相符;但当前app/modules/video_segmentation/api/redraw.py仍调用_require_download_allowed并检查旧白名单,app/api/v1/files.py的get_file未接format参数,续期源码也未体现新说明中的转换参数保留。素材前端仍直接使用列表url,没有新命名/格式选择流程。因此模拟新版接口与当前服务真实验收分开报告;不修改、重启或部署前后端。
28
-
29
- CLI仍1个skill入口/13份参考。新的下载规则写入既有commands/generation/repaint/material指南;历史被拒记录作为当时部署证据保留,当前操作不能继续将2001固定解释为白名单。含实际签名引用、账号与业务ID的原始证据仅在忽略目录.local/download-contract-20261031。
30
-
31
- ## 验证记录
32
-
33
- 专项签名HTTP模拟通过:业务入口没有名称/格式query,匿名跨地址/相对307续期、完整query保留、有限次数、地址/凭据保护、API/上传不跳转、错误JSON/HTML/部分状态/传输中断、摘要和已有文件保护。调用日志确认没有生成或业务写入。最终回归、打包与当前服务验收按后续记录补充。
34
-
35
- ## 当前服务真实验收
36
-
37
- 沿用原profile/账号、猫猫队和原画布,通过业务GET核验已完成任务后下载,不提交生成、处理、上传、入库或画布保存。普通原4秒任务和原6秒转绘成品均成功通过各自业务download入口取得链接并完成原文件导出,当前账号/原任务的下载阻塞已解除。画布前后均519版、48节点/31线,完整快照一致。
38
-
39
- | 原结果 | 文件字节 | SHA-256 | 实际媒体 |
40
- |---|---|---|---|
41
- | 普通视频 | 1392973 | 617d5a010a544f4c12e709c3fbc0f083f5888297db206c7dc4734dbc6237007e | 640×640、H.264、24fps、4.041667秒 |
42
- | 画布转绘视频 | 1304964 | 10870bb79b16c54c94dc82577ee9455718519c040ce7cadc18b8c5cc0c96f583 | 864×496、H.264、24fps、6.041667秒 |
43
-
44
- 二者都重新计算本地大小/摘要,FFprobe读取及FFmpeg整条视频流解码通过;复用原已安装工具,没有安装新依赖。实际容器/视频流时长与请求标称4秒/6秒分开记录,不修改原任务参数。网页人工播放、音频效果和其他模型未据此验收。
45
-
46
- 本次成功只证明当前账号可下载这两条原结果,不证明所有成员的白名单已移除或完整权限矩阵已部署,也没有真实触发已过期引用的307续期;新版续期行为通过模拟协议验证,其他账号/公开私有/下架/格式转换及真实过期引用留待按实际部署验收。原视频从旧业务2001恢复到可用,不重新生成,也不根据团队余额差额认定本次费用。此前“下载白名单阻塞”作为旧部署历史记录保留,当前能力状态以本节为准。
47
-
48
- 原文件、报告和签名引用保留在忽略目录.local/download-contract-20261031,不进入npm包或skill。没有提交/推送/发布或更改前后端。
49
-
50
- ## 最终交付检查
51
-
52
- 31组完整CLI回归、npm run check、skill validator通过。新增独立文件传输组覆盖真实签名HTTP与匿名文件边界;原转绘测试中HTML源读取的断言由旧MIME文案改为API_ERROR/HTTP200,仍核验未发起上传,不静默跳过用例。
53
-
54
- 最新包136项,13份参考齐全;离线隔离安装、.bin入口、模拟DPAPI/退出和同版本实际重新安装保留凭据/operation/归档通过,排除.local/outputs/真实媒体。全新机器/跨版本仍不扩大声明。48份相关文件UTF-8/原换行格式、178处Markdown本地引用与git diff --check通过。普通模拟/打包/真实只读测试遇到沙箱回环或临时权限限制后通过系统执行审批在本机完成,没有改变业务权限或关闭校验。
55
-
56
- ## 后续素材原文件命令接入(2026-10-31)
57
-
58
- 用户开始非转绘N1/N5/N2后新增material download原文件路线。此前“素材下载无CLI命令”的描述为旧批次时点;当前仅original已实现,名称/转换/预览仍未开放。真实团队素材107专属入口返回HTTP200/code2001,CLI按业务错误停止且未回退列表url;已读取素材不等于下载获准。两条原生成/转绘视频此前成功记录不受此素材独立权限拒绝推翻。详见[非转绘首批验收](非转绘首批实施与验收.md)。
59
-
60
- ## 素材拒绝原因补查(2026-10-31)
61
-
62
- 只读复查取得原始安全message:“CLI 无权调用此接口,请在网页端操作”;HTTP200/code2001,request_id=`e575843a-71c8-482e-b795-dfc12d681f3d`,接口没有返回链接。同一CLI身份的团队状态active/member、目录21及素材107详情可读。当前明确是CLI接口准入拒绝,不能按该响应归因于原转绘团队下载白名单、素材丢失或FFmpeg;也不能证明素材下载路由的后续权限/文件校验已执行。
63
-
64
- 本地后端未发现新素材download路由和该拒绝文案,配置中的Vite代理指向另一实际服务地址;因此以当前实际响应为准,不把本地源码当作部署证明。部署侧需核查真实版本及CLI接口允许规则是否包含`GET /api/v1/material-space/assets/{asset_id}/download`,保留原有素材/团队/文件权限检查。未更改服务、身份、准入规则或请求列表url;N2真实文件交付仍受阻。细节见[首批验收](非转绘首批实施与验收.md#2026-10-31后续只读定位结果)。
65
-
66
- ## 2026-11-02后端权限修复复测:连接受阻,尚未验证权限
67
-
68
- 用户反馈素材库下载的后端CLI权限已修改。本次沿用stage3b-test、猫猫队素材107,执行现有material download原格式命令,目标为忽略目录中的material-107-20261102.png,不传转换/名称参数,不读取列表URL绕过下载入口。
69
-
70
- 原配置为本机5174代理,目标后端仍是现有配置的192.168.30.196:8208。先发现代理未运行;启动原Vite代理后,live/ready均超时。实际CLI下载命令在GET /api/v1/auth/sign-session阶段返回HTTP502;代理明确记录connect ETIMEDOUT 192.168.30.196:8208。命令退出码3,目标文件不存在,尚未执行素材专属download请求。
71
-
72
- 结论:当前阻塞是后端连接,不能将其称为仍无权限,也不能据用户反馈直接标通过;此前2001/message/request_id保留为历史。已向用户询问修复部署地址及服务/网络状态。恢复后需通过原CLI身份调用素材专属下载入口、完整下载并验证媒体类型/文件摘要,再更新N2状态;不据健康检查或链接存在单独宣称文件交付成功。本次未操作画布、上传、入库或提交AI任务。
73
-
74
- ## 2026-11-02连接恢复与素材下载复验通过
75
-
76
- 2026-11-02 13:14(Asia/Shanghai)续测:原stage3b-test服务live/ready均HTTP200/code0,database/redis均ok;直连192.168.30.196:8208及经192.168.30.108:5174、127.0.0.1:5174的live探针均正常。沿用猫猫队素材107,通过现有material download专属入口成功获取original并完成匿名文件下载,1503859字节,SHA-256为760560e81026b08eef61287913c767ac3cc004d9d436b50ee1cb585a00513c90;本地重算摘要及PNG签名/尺寸检查通过。产物位于忽略目录.local/non-repaint-plan-20261031/material-107-20261102-recheck.png。本条原素材的CLI准入及文件交付已验证,不扩大为全部素材/账号/格式转换验证。先前502/ETIMEDOUT与2001保留为历史证据;当前恢复不能证明此前故障原因。未改配置或前后端、未写画布、上传、入库或提交生成。
77
-
78
-
79
- ## 2026-11-03指定新部署复核
80
-
81
- 固定4174回环代理到192.168.30.106:4173,原profile凭据绑定不改。素材107经空间/目录验证及专属download入口返回original可用;归档1989原文件引用不改token,首响应200,1392973字节、SHA-256 617d5a010a544f4c12e709c3fbc0f083f5888297db206c7dc4734dbc6237007e,与原记录一致,不能据此标真实过期307通过。没有受控不可续期、非成员/私有/下架身份和素材,用户明确条件不足,不通过退队/删除或篡改凭证造场景。
82
-
83
- 新普通任务2069仅提交一次、实际34 OO;通过原业务download下载1434805字节,SHA-256 b44f830662095c53c5d2dcf8ee2a003a4fa4365203503ba40c27d224933c7897,两次读取一致,H.264/AAC完整解码与网页播放通过。任务result.file_size=1680617不同于交付字节,需后端确认元数据所属处理版本;第二次响应无Content-Length,未冒称长度字段一致。
84
-
85
- 自定义服务端文件名/格式转换仍缺当前部署产品入口及完整计费/结果查询/未知恢复契约。当前素材库源码批量下载为逐文件blob/本地命名,不是服务端命名或ZIP。没有探测收费转码、降级原格式、列表URL绕过或重复转码。完整范围和证据见[集中记录](非转绘持续完善与验收-20261103.md)。
86
-
87
- ## 2026-11-03 用户补充后的下载口径
88
-
89
- 用户确认下载引用时效30分钟;常规下载每次重新调用有权限的原业务download接口,不复用上次签名链接。本次新取2069链接与文件响应名称一致,Content-Disposition为2069_cfe1d71c.wm.mp4;CLI默认命名新增读取UTF-8 filename*及filename,拒绝路径/设备名,显式--output只指定本地保存路径。素材下载保留必填--output,另返回server_filename。没有服务端改名请求,也不添加format或转码能力。真实自然过期307/不可续期仍须观察,重新取链不算307验收通过。
90
-
91
- ## 后端修复再次复核(2026-11-03 14:47)
92
-
93
- 原2069/2071再次通过各自有权限的业务download入口新取链、完整读取:分别1434805/1236991字节,原摘要一致,但GET result.file_size仍1680617/1325862;download未提供独立交付大小字段。当前原任务一致性仍未通过,不假定新任务修复无效,不为复核再付费生成。详情见同目录非转绘补充条件验收-20261103.md本节。
94
-
95
- ## 大小一致性修复复测通过(2026-11-03 15:24)
96
-
97
- 按用户要求再次使用原5174代理固定连接新部署,业务download每次取新链接并完整实读。2069的result.file_size=1434805,实际1434805;2071的result.file_size=1236991,实际1236991,两项均一致。两份SHA-256与原产物一致,未重做生成、未改画布、未签署或扣费。当前受控协议v2仍agreed=true。
98
-
99
- 证据.local/frontend-conflict-20261102/backend-fix-recheck-1793690669809.json。此次更新原任务大小不一致阻塞为真实服务通过,不抹去旧失败记录,也不扩大为所有素材或新生成路径的大小验收。npm发布、版本更新与安装使用准备见同目录npm线上发布与安装使用.md;未恢复N5、转绘或去字幕。
100
-
101
- ## 2026-11-04 任务2078下载元数据补验
102
-
103
- 新协议v3验收生成的2078已完成/charged/16 OO。两次均通过原任务专属下载入口重新取链,实际交付602870字节、SHA-256 b273d50132379c984106fd0d4cf07d92273715463460586c323d845130aeb2c7,两次完全一致;H.264 640×640/24fps,容器4.096秒,整片完整解码通过。原任务GET的result.file_size前后仍为937487,与实际交付不一致。
104
-
105
- 本次协议原operation续接及媒体交付可用通过;大小元数据一致性不通过,交后端核对最终交付版本/更新时点,未擅自认定根因。此前2069/2071大小一致复测仍是各自条目的有效历史证据,不扩大为新任务均已修复。未修改前后端、篡改凭证、转码、重新生成或覆盖旧文件。
106
-
107
- 证据:.local/frontend-conflict-20261102/agreement-v3-finish-1793757654901.json、size2078-recheck-1793757700987.json;两份MP4均保留。原operation=seedance-agreement-v3-20261104、task_id=2078。共享钱包2665→2641仅为快照,任务实际结算16 OO,不从余额差额推定其他消费。