photo-archive-organizerlisted
Install: claude install-skill huangjun124114/skills
# 照片归档整理 SOP
## 1. 模式判定(开工第一步,必做)
先判断走哪条路,再进入流程。术语见 `references/terminology.md`。
| | **模式 A:迁移合并** | **模式 B:筛选归档** |
|---|---|---|
| 目标 | 多来源目录 → 共享相册 | 散乱照片 → 精选主题相册 |
| 动作 | **迁移**,一张不丢 | **筛选**,大量剔除 |
| 命名 | `YYYYMM-事件-来源` | `YYYYMM-事件名(AI整理)` |
| 判定去留 | 能否推断日期 | 日期 **+** 内容语义 |
| 特有模块 | 来源后缀映射、待溯源协议 | 规则过滤、质量精选、语义清理、上下限 |
**判定问题**:「这些照片是都要保留,还是只要好看的?」——前者走 A,后者走 B。
判定不清时直接问用户,不要假设。
两套模式共用第 3 章的 P0–P2、P8,以及第 7–10 章全部。
### 1.1 模式串联(B → A)
两种模式可以先后作用于同一批照片:先用 B 从散乱照片中精选出 `YYYYMM-事件名(AI整理)`,再用 A 把这些结果合并进更大的共享相册大区(如 `家人照片/`)。串联时遵守四条规则:
| # | 规则 | 说明 |
|---|---|---|
| 1 | **保留源文件夹信息** | 模式 A 合并时主要做**日期识别**,尽量保留源文件夹已有的语义信息,不推倒重来 |
| 2 | **已知来源不重复追加** | `(AI整理)` 本身即一种来源标记。识别到它即视为来源已知,**不再追加** `-帅哥`/`-闺女` 等额外后缀 |
| 3 | **来源为非必需项** | 是否在文件夹名上体现来源,须**询问使用者**;不询问时默认不追加 |
| 4 | **语义不重复识别** | 模式 A **仅在文件夹名无法识别语义时**,才对图片内容做事件/场景识别。凡已由 B 命名过的,��接沿用 |
**命名过渡**(规则 1 + 2 + 3 的合成结果):
```
B 产出: 201809-动物园孔雀(AI整理)
↓ 进入 A,日期已识别、语义已明确、来源已知
A 结果: 201809-动物园孔雀(AI整理) ← 保持不变
✗ 不得变成 201809-动物园孔雀-闺女
```
需要在 A 阶段附加来源时(如确有 `帅哥`/`闺女` 之分),先问用户;用户确认后才追加,且对带 `(AI整理)` 的目录一律跳过。
## 2. 四区模型
| 区域 | 权限 | 要点 |
|---|---|---|
| **源区** source | 只读,仅 P8 可删 | 删前必须过双闸门 |
| **归档区** archive | 只增不改 | 写入必须幂等(md5 索引去重) |
| **隔离区** quarantine | 可写 | 软删除区,按轮次建子目录 |
| **备份区** backup | **全程只读** | 删除源区的唯一凭据 |
关键:**归档区与隔离区可以存在同名文件夹**(混合事件部分剔除时)。判定去留必须按文件 md5,不能按文件夹名。
## 3. SOP 主流程
按顺序执行,标注 `[自动]` 的可直接跑,标注 `[需确认]` 的必须先取得用户同意。
| 步 | 动作 | 决策权 | 关键判据 / 参数 |
|---|---|---|---|
| **P0** | 确