# 输入输出与恢复约定

## 输入

| 项目 | 规则 |
| --- | --- |
| 目录 | 只扫描输入目录第一层；输入与输出必须不同，输出不得位于输入目录内。 |
| 格式 | 当前版本支持 UTF-8 `.csv`、`.txt`。其他文件不会被处理。 |
| 原件 | 只读；不会重命名、删除、覆盖或移动。 |
| 冲突 | `skip`、`version`、`error` 三选一，必须在预览中可见。 |

## 输出

每个成功项先在输出目录创建临时文件，写完后比对 SHA-256，并重新以文本/CSV 方式打开；三项都成功才原子替换为最终名称。中断或取消会清理临时文件，不留下最终文件。

每次任务都会生成 JSON 回执：任务 ID、起止时间、模式、成功/跳过/失败计数、每个文件的源路径、目标路径、状态和原因。失败项可从报告中筛选后重新执行；已成功输出的项目再次运行会遵循冲突策略，不会静默覆盖。

## 已知限制

本版本不处理二进制图片、PDF、Office 或音视频文件。接入这些格式前，应分别增加“写后重新打开”的格式验证器、样本测试与依赖锁定。超长路径、只读目录和磁盘不足会在预检或执行阶段以明确错误返回。
