SuperAPI AI 工具集

report-bug

办公与效率

查看项目

更新于 10-15 17:24

技能介绍

用途:在 ButterCut 自身出问题时,判断是否值得上报,清除用户工作内容后把错误发给 ButterCut 团队。仅当本应成功的工作因 ButterCut 崩溃、堆栈跟踪、XML 畸形、导出无结果,或库中标记就绪的素材某步骤失败时才上报;调用命令写错、文件或库不存在、缺依赖、按设计工作的提示(如每日更新检查)都不上报,同一会话同一失败不重复上报。

主要能力与流程:先用 ruby lib/buttercut/report.rb consent 查看 consent 状态(error_reporting=always|ask|never|unset 与 email)。never 则不再发送或提及;always 直接发送;ask 则生成报告并以 --dry-run 预览,用通俗语言向用户概括,得到同意再发;unset 时用 AskUserQuestion 询问是否发送及是否附邮箱,并把结果写入 libraries/settings.yaml 的 error_reporting 与 error_report_email。

上报前必须脱敏:路径改为 ~/…,库、片段、粗剪名称替换为占位符,删除转录、摘要、脚本引文及人名公司名,仅保留异常类、消息形态、失败步骤、lib/buttercut/*.rb:行号与版本号。发送命令为 ruby lib/buttercut/report.rb send,需要 --kind bug、--action(export/transcribe/contact_sheet/process/cut/backup/other)、--class,可选 --frame 与 --narrative。

限制:报告不含素材、转录、联络表、库或片段名称;邮箱仅在用户同意时附带;命令打印 sent bug report <uuid> 或一行未发送原因,之后不得重试、不得重复发送,也不向用户展示 JSON、UUID、状态码或文件路径;开发者模式下(存在 .buttercut_mode)send 会拒绝发送,只能用 --dry-run 预览。