# Scoped Edit 与自然语言修订

## 有界编辑合同 (`IMG-06`)

每次局部编辑都声明准确目标和区域、变化、保持项及预期连续性影响。如果期望变更会
改写身份或已确认上游事实，交回负责该事实的技能，不要伪装成局部提示词修订。

## 目录

1. 两类修改
2. Edit-delta 配方
3. 自然语言要求 → 差异预览 → 确认 → 重写
4. 当前文件与旧预览不一致时的处理
5. 失败与检查

## 1. 两类修改

- **对画面目标的 edit**：产出 `edit_delta` 提示词，例如改变一件衣服局部状态；不执行图像编辑。
- **对提示词本身的 revision**：创作者用自然语言修改当前 `IMG-...` 条目；先展示差异，接受后更新可复制正文。

二者都不能改写 assets 拥有的身份/variant 事实。若请求是“把这扇门移到另一面墙”而地点地理尚未变更，先向资产负责技能提出修订，再请分镜核对受影响镜头；不能只改局部编辑提示词。

## 2. Edit-delta 配方

四个问题缺一不可：

```text
Target：哪个可见 `IMG-...`、对象和区域？
Change：哪些有边界、可观察的变化？
Preserve：身份、构图、光线、空间以及哪些未影响 entity/region 必须不变？
Continuity impact：预期对应哪个已确认状态或引用，有效到哪里？
```

### Target

- 元信息用准确 `IMG-...` 定位提示词条目；实际待编辑图片另用 `REF-...` 绑定。未提供图片时说明缺口，
  保留修改意图，不声称已检查图片。可复制正文用自然语言明确主体和区域。
- “改背景”“让她更狼狈”过宽；需要具体新 View/区域与可观察变化。
- 多个不相干 target 默认拆为多个 edit，防止 preserve 集失焦。

### Change

按位置、方向、范围、程度、材质/色彩结果写 delta。例如“右袖肘部以下呈雨水浸湿后的深色，衣料贴合但无撕裂”，比“衣服弄湿”可控。不得补写未接受的伤势或剧情因果。

### Preserve

先列最容易被误改的高价值事实：面部/体态身份、未变 Look 部件、固定地理、道具轮廓与文字、构图/机位、光向、未选区域。不要写“其他全部保持”代替边界思考；允许最后用它概括已经点名的 preserve set。

### Continuity impact

引用道具状态、造型或观察视角，必要时向其负责技能提出修订；记录受影响的图片提示词、镜头或关键帧，而非在 edit 中成为新的连续性权威。若没有影响，也明确 `none` 及理由。

- **`structural_invariant`**：目标、区域、变化、保持项和影响必须存在且没有显式冲突。
- **`reviewed_invariant`**：修改范围是否足够清楚、preserve 是否保护真正身份/地理，需要审查者引用证据判断。
- **`craft_default`**：一次 edit 聚焦少量相互关联的 delta；复杂重构改用新 variant/plate。
- **`taste_option`**：变化的视觉强度由创作者决定，只要状态事实未变。

## 3. 自然语言修订

用户不需要知道内部字段。对“把工作服换成深蓝，但保留脸和袖口油渍”执行：

1. 读取当前 `视觉设定.md` 条目和 `图片提示词.md` 的 `IMG-...`；
2. 区分提示词可改措辞、资产负责技能才能改的事实、含糊项和连续性影响；
3. 展示简短语义差异：改前、改后、理由、保持项、影响和是否需要上游修改；
4. 展示新的可复制正文，让创作者看到实际效果；
5. 确认后直接更新同一个 `IMG-...`；拒绝时当前文件保持不变；
6. 列出需要同步检查的 `SHOT-...` 或其他 `IMG-...`，不自动改用户未点名的文档。

建议预览：

```markdown
### 提议修改 `IMG-...`
- 深灰蓝工作服 → 深蓝工作服
- 保持：脸、服装剪裁、右袖口旧油渍的形状与位置、背景、构图、光向
- 影响：仅当前造型提示词；若 `视觉设定.md` 还没有深蓝变体，先交给 assets 修改

**新正文预览**
> ...
```

对“更有电影感”不能擅自堆一串风格词。给两三个互斥且可观察的候选，例如光比、构图或色彩关系，
作为 `taste_option` 让创作者选择。

## 4. 当前文件冲突

如果另一个编辑或人工修改已经改变当前 `IMG-...`，不要用旧预览覆盖：

- 重新读取当前条目；
- 展示人工改动与本次修改的语义差异；
- 能安全合并时生成新的完整预览；
- 无法无损对应、触及上游事实或存在冲突时保留当前文件，并交给创作者选择。

不得把“最后写入者获胜”当创作规则，也不得为了恢复格式丢掉人工增加的有效语义。

## 5. 失败与检查

### 失败征兆

- 只改可复制正文，却不核对 `视觉设定.md`；
- 差异只写“优化措辞”，没有语义影响和保持项；
- 把身份、地点地理或道具状态在提示词层擅自改掉；
- edit 只有 Change，没有 Preserve；
- 发现冲突后自动覆盖人工修改。

### 完成检查

- 上游事实请求已交给正确负责技能；
- 目标、区域、变化、保持项和连续性影响都清楚；
- 差异预览可读、可拒绝，新正文可直接复制；
- 拒绝不改变当前文件，冲突不静默吞掉；
- 本流程不调用媒体生成或 provider API；实际生产交 `$short-drama-produce`，并对精确任务预览单独确认。
