# Partial adjustment layer coverage (/docs/rules/no-partial-adjustment-layer-coverage)

Reports adjustment layers whose start or end falls inside a clip below them.



{/* Generated by scripts/generate-docs.ts. Do not edit. */}

| Property         | Value                                                                                               |
| :--------------- | :-------------------------------------------------------------------------------------------------- |
| Id               | `no-partial-adjustment-layer-coverage`                                                              |
| Category         | Static                                                                                              |
| Default severity | info                                                                                                |
| Scope            | [`adjustment-layer-edges`](/docs/reference/computed-scopes#adjustment-layer-edges) (computed scope) |

## Options [#options]

| Option            | Type     | Default | Description                                                                      |
| :---------------- | :------- | :------ | :------------------------------------------------------------------------------- |
| `toleranceFrames` | `number` | `0`     | An edge within this many frames of the clip edge counts as aligned.              |
| `minFrames`       | `number` | `12`    | Adjustment layers shorter than this are deliberate mid-clip effects and skipped. |

## Customize it [#customize-it]

Turn the rule on or off in the panel's Rules settings. To change its options, severity or wording, open it with its cogwheel in the rule editor and save: your copy replaces the built-in rule until you revert it. You can also copy the file below into your rules folder as `no-partial-adjustment-layer-coverage.rule.json` and edit it. See [Change a built-in rule](/docs/editor/saving#change-a-built-in-rule).

## Rule file [#rule-file]

```json title="no-partial-adjustment-layer-coverage.rule.json"
{
  "formatVersion": 1,
  "id": "no-partial-adjustment-layer-coverage",
  "name": {
    "en_US": "Partial adjustment layer coverage",
    "de_DE": "Teilweise Abdeckung durch Einstellungsebenen",
    "es_ES": "Cobertura parcial de capas de ajuste",
    "fr_FR": "Couverture partielle par un calque d'effets",
    "it_IT": "Copertura parziale dei livelli di regolazione",
    "ja_JP": "調整レイヤーの部分的な適用範囲",
    "ko_KR": "조정 레이어의 부분 적용",
    "pt_BR": "Cobertura parcial de camada de ajuste",
    "ru_RU": "Частичное покрытие корректирующим слоем",
    "zh_CN": "调整图层部分覆盖"
  },
  "description": {
    "en_US": "Reports adjustment layers whose start or end falls inside a clip below them.",
    "de_DE": "Meldet Einstellungsebenen, deren Anfang oder Ende innerhalb eines darunterliegenden Clips liegt.",
    "es_ES": "Detecta capas de ajuste cuyo inicio o final cae dentro de un clip situado debajo.",
    "fr_FR": "Signale les calques d'effets dont le début ou la fin tombe à l'intérieur d'un élément situé en dessous.",
    "it_IT": "Segnala i livelli di regolazione il cui inizio o fine cade all'interno di una clip sottostante.",
    "ja_JP": "開始または終了が下のクリップの途中にある調整レイヤーを報告します。",
    "ko_KR": "시작 또는 끝이 아래쪽 클립 내부에 있는 조정 레이어를 보고합니다.",
    "pt_BR": "Relata camadas de ajuste cujo início ou fim cai dentro de um clipe abaixo delas.",
    "ru_RU": "Сообщает о корректирующих слоях, начало или конец которых приходится на середину клипа под ними.",
    "zh_CN": "报告开头或结尾落在其下方剪辑内部的调整图层。"
  },
  "category": "static",
  "scope": "adjustment-layer-edges",
  "severity": "info",
  "options": {
    "toleranceFrames": {
      "type": "number",
      "default": 0,
      "description": "An edge within this many frames of the clip edge counts as aligned."
    },
    "minFrames": {
      "type": "number",
      "default": 12,
      "description": "Adjustment layers shorter than this are deliberate mid-clip effects and skipped."
    }
  },
  "checks": [
    {
      "condition": {
        "all": [
          {
            "field": "clip.durationFrames",
            "operator": "greaterThanOrEqual",
            "value": {
              "field": "options.minFrames"
            }
          },
          {
            "field": "edge.offsetFrames",
            "operator": "greaterThan",
            "value": {
              "field": "options.toleranceFrames"
            }
          },
          {
            "field": "edge.side",
            "operator": "equals",
            "value": "start"
          }
        ]
      },
      "message": {
        "en_US": {
          "count": "edge.offsetFramesRounded",
          "one": "Adjustment layer \"{clip.name}\" on {clip.track} starts inside clip \"{edge.clipName}\" on {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} frame after its start.",
          "other": "Adjustment layer \"{clip.name}\" on {clip.track} starts inside clip \"{edge.clipName}\" on {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} frames after its start."
        },
        "de_DE": {
          "count": "edge.offsetFramesRounded",
          "one": "Einstellungsebene „{clip.name}“ auf {clip.track} beginnt innerhalb von Clip „{edge.clipName}“ auf {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} Frame nach dessen Beginn.",
          "other": "Einstellungsebene „{clip.name}“ auf {clip.track} beginnt innerhalb von Clip „{edge.clipName}“ auf {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} Frames nach dessen Beginn."
        },
        "es_ES": {
          "count": "edge.offsetFramesRounded",
          "one": "La capa de ajuste \"{clip.name}\" en {clip.track} empieza dentro del clip \"{edge.clipName}\" en {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} fotograma después de su inicio.",
          "other": "La capa de ajuste \"{clip.name}\" en {clip.track} empieza dentro del clip \"{edge.clipName}\" en {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} fotogramas después de su inicio."
        },
        "fr_FR": {
          "count": "edge.offsetFramesRounded",
          "one": "Le calque d'effets « {clip.name} » sur {clip.track} commence à l'intérieur de l'élément « {edge.clipName} » sur {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} image après son début.",
          "other": "Le calque d'effets « {clip.name} » sur {clip.track} commence à l'intérieur de l'élément « {edge.clipName} » sur {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} images après son début."
        },
        "it_IT": {
          "count": "edge.offsetFramesRounded",
          "one": "Il livello di regolazione \"{clip.name}\" su {clip.track} inizia all'interno della clip \"{edge.clipName}\" su {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} fotogramma dopo il suo inizio.",
          "other": "Il livello di regolazione \"{clip.name}\" su {clip.track} inizia all'interno della clip \"{edge.clipName}\" su {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} fotogrammi dopo il suo inizio."
        },
        "ja_JP": "調整レイヤー「{clip.name}」（{clip.track}）がクリップ「{edge.clipName}」（{edge.clipTrack}）の途中（{edge.timecode}、クリップの開始から{edge.offsetFramesRounded}フレーム後）で始まっています。",
        "ko_KR": "조정 레이어 {clip.track}의 \"{clip.name}\"이(가) 클립 {edge.clipTrack}의 \"{edge.clipName}\" 내부({edge.timecode})에서 시작합니다. 클립 시작 후 {edge.offsetFramesRounded}프레임 지점입니다.",
        "pt_BR": {
          "count": "edge.offsetFramesRounded",
          "one": "A camada de ajuste \"{clip.name}\" em {clip.track} começa dentro do clipe \"{edge.clipName}\" em {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} quadro após o início dele.",
          "other": "A camada de ajuste \"{clip.name}\" em {clip.track} começa dentro do clipe \"{edge.clipName}\" em {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} quadros após o início dele."
        },
        "ru_RU": {
          "count": "edge.offsetFramesRounded",
          "one": "Корректирующий слой «{clip.name}» на {clip.track} начинается внутри клипа «{edge.clipName}» на {edge.clipTrack} ({edge.timecode}), через {edge.offsetFramesRounded} кадр после его начала.",
          "few": "Корректирующий слой «{clip.name}» на {clip.track} начинается внутри клипа «{edge.clipName}» на {edge.clipTrack} ({edge.timecode}), через {edge.offsetFramesRounded} кадра после его начала.",
          "many": "Корректирующий слой «{clip.name}» на {clip.track} начинается внутри клипа «{edge.clipName}» на {edge.clipTrack} ({edge.timecode}), через {edge.offsetFramesRounded} кадров после его начала.",
          "other": "Корректирующий слой «{clip.name}» на {clip.track} начинается внутри клипа «{edge.clipName}» на {edge.clipTrack} ({edge.timecode}), через {edge.offsetFramesRounded} кадра после его начала."
        },
        "zh_CN": "调整图层 {clip.track} 上的“{clip.name}” 的开头位于剪辑 {edge.clipTrack} 上的“{edge.clipName}” 内部（{edge.timecode}），距该剪辑开头 {edge.offsetFramesRounded} 帧。"
      }
    },
    {
      "condition": {
        "all": [
          {
            "field": "clip.durationFrames",
            "operator": "greaterThanOrEqual",
            "value": {
              "field": "options.minFrames"
            }
          },
          {
            "field": "edge.offsetFrames",
            "operator": "greaterThan",
            "value": {
              "field": "options.toleranceFrames"
            }
          },
          {
            "field": "edge.side",
            "operator": "equals",
            "value": "end"
          }
        ]
      },
      "message": {
        "en_US": {
          "count": "edge.offsetFramesRounded",
          "one": "Adjustment layer \"{clip.name}\" on {clip.track} ends inside clip \"{edge.clipName}\" on {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} frame before its end.",
          "other": "Adjustment layer \"{clip.name}\" on {clip.track} ends inside clip \"{edge.clipName}\" on {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} frames before its end."
        },
        "de_DE": {
          "count": "edge.offsetFramesRounded",
          "one": "Einstellungsebene „{clip.name}“ auf {clip.track} endet innerhalb von Clip „{edge.clipName}“ auf {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} Frame vor dessen Ende.",
          "other": "Einstellungsebene „{clip.name}“ auf {clip.track} endet innerhalb von Clip „{edge.clipName}“ auf {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} Frames vor dessen Ende."
        },
        "es_ES": {
          "count": "edge.offsetFramesRounded",
          "one": "La capa de ajuste \"{clip.name}\" en {clip.track} termina dentro del clip \"{edge.clipName}\" en {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} fotograma antes de su final.",
          "other": "La capa de ajuste \"{clip.name}\" en {clip.track} termina dentro del clip \"{edge.clipName}\" en {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} fotogramas antes de su final."
        },
        "fr_FR": {
          "count": "edge.offsetFramesRounded",
          "one": "Le calque d'effets « {clip.name} » sur {clip.track} se termine à l'intérieur de l'élément « {edge.clipName} » sur {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} image avant sa fin.",
          "other": "Le calque d'effets « {clip.name} » sur {clip.track} se termine à l'intérieur de l'élément « {edge.clipName} » sur {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} images avant sa fin."
        },
        "it_IT": {
          "count": "edge.offsetFramesRounded",
          "one": "Il livello di regolazione \"{clip.name}\" su {clip.track} termina all'interno della clip \"{edge.clipName}\" su {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} fotogramma prima della sua fine.",
          "other": "Il livello di regolazione \"{clip.name}\" su {clip.track} termina all'interno della clip \"{edge.clipName}\" su {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} fotogrammi prima della sua fine."
        },
        "ja_JP": "調整レイヤー「{clip.name}」（{clip.track}）がクリップ「{edge.clipName}」（{edge.clipTrack}）の途中（{edge.timecode}、クリップの終了の{edge.offsetFramesRounded}フレーム前）で終わっています。",
        "ko_KR": "조정 레이어 {clip.track}의 \"{clip.name}\"이(가) 클립 {edge.clipTrack}의 \"{edge.clipName}\" 내부({edge.timecode})에서 끝납니다. 클립 끝 {edge.offsetFramesRounded}프레임 전 지점입니다.",
        "pt_BR": {
          "count": "edge.offsetFramesRounded",
          "one": "A camada de ajuste \"{clip.name}\" em {clip.track} termina dentro do clipe \"{edge.clipName}\" em {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} quadro antes do fim dele.",
          "other": "A camada de ajuste \"{clip.name}\" em {clip.track} termina dentro do clipe \"{edge.clipName}\" em {edge.clipTrack} ({edge.timecode}), {edge.offsetFramesRounded} quadros antes do fim dele."
        },
        "ru_RU": {
          "count": "edge.offsetFramesRounded",
          "one": "Корректирующий слой «{clip.name}» на {clip.track} заканчивается внутри клипа «{edge.clipName}» на {edge.clipTrack} ({edge.timecode}), за {edge.offsetFramesRounded} кадр до его конца.",
          "few": "Корректирующий слой «{clip.name}» на {clip.track} заканчивается внутри клипа «{edge.clipName}» на {edge.clipTrack} ({edge.timecode}), за {edge.offsetFramesRounded} кадра до его конца.",
          "many": "Корректирующий слой «{clip.name}» на {clip.track} заканчивается внутри клипа «{edge.clipName}» на {edge.clipTrack} ({edge.timecode}), за {edge.offsetFramesRounded} кадров до его конца.",
          "other": "Корректирующий слой «{clip.name}» на {clip.track} заканчивается внутри клипа «{edge.clipName}» на {edge.clipTrack} ({edge.timecode}), за {edge.offsetFramesRounded} кадра до его конца."
        },
        "zh_CN": "调整图层 {clip.track} 上的“{clip.name}” 的结尾位于剪辑 {edge.clipTrack} 上的“{edge.clipName}” 内部（{edge.timecode}），距该剪辑结尾 {edge.offsetFramesRounded} 帧。"
      }
    }
  ],
  "matching": "all",
  "data": {
    "edge": "edge.side",
    "offsetTicks": "edge.offsetTicks",
    "offsetFrames": "edge.offsetFrames",
    "toleranceFrames": "options.toleranceFrames"
  }
}
```
