
 Usage: root diff [OPTIONS] {base_ref}

 Classify each contract the change touched and require the version bump it needs.

 Each contract on disk is compared with the same file at `base_ref`. Every change is reported
 with its level (`diff/breaking`, `diff/additive`, `diff/descriptive`, severity info), and a
 contract whose `version` moved less than its largest change needs fails
 `diff/version-not-bumped`. A new contract needs only a valid version. A removed contract is a
 warning, `diff/contract-removed`: the relation's removal is the change, and it is the
 consumer-facing one.

 `--contracts` names the directory directly, for a caller such as Domain CI that reads no
 repo map; the root is then `--root`, else the working directory.

╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────╮
│ *    base_ref      <str>  git ref the change is compared against [required]                      │
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮
│ --root             <str>                                                                         │
│ --contracts        <str>  the contracts directory, relative to the root; given, no repo-map.json │
│                           is read                                                                │
│ --help                    Show this message and exit.                                            │
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
