# Replay Verify Scripts

## `run_multi_rir_ccr_replay_verify.sh`

用途：
- 通用 multi-RIR CCR replay verify 入口
- 通过 `--rir` 指定一个或多个 RIR，按顺序执行
- 通过 `--mode` 指定 `snapshot`、`delta` 或 `both`
- 默认每个 RIR 的 RocksDB 目录在 compare/verify 结束后自动删除；传 `--keep-db` 才保留
- 同一次执行的所有产物都会先落到 `rpki/target/replay/<timestamp>/`
- 该时间戳目录下再按 RIR 分目录：
  - `<rir>_ccr_replay_<timestamp>`

默认输入：
- 历史 replay fixture root: `/home/yuyr/dev/rust_playground/routinator/bench/multi_rir_demo/runs/20260316-112341-multi-final3`
- 每个 RIR 的 TAL / TA / validation time / record CSV 由 `scripts/payload_replay/multi_rir_case_info.py` 解析

用法：
- 单个 RIR：
  - `./scripts/replay_verify/run_multi_rir_ccr_replay_verify.sh --rir apnic --mode both`
  - `./scripts/replay_verify/run_multi_rir_ccr_replay_verify.sh --rir apnic --mode snapshot`
  - `./scripts/replay_verify/run_multi_rir_ccr_replay_verify.sh --rir apnic --mode delta`
- `./scripts/replay_verify/run_multi_rir_ccr_replay_verify.sh --rir apnic --mode both`
- `./scripts/replay_verify/run_multi_rir_ccr_replay_verify.sh --rir apnic,ripe --mode snapshot`
- `./scripts/replay_verify/run_multi_rir_ccr_replay_verify.sh --rir afrinic,apnic,arin,lacnic,ripe --mode both`
- `./scripts/replay_verify/run_multi_rir_ccr_replay_verify.sh --rir apnic --mode delta --keep-db`

可覆盖环境变量：
- `BUNDLE_ROOT`
- `OUT_ROOT`（默认：`rpki/target/replay`）
- `RUN_TAG`

主要产物：
- 单次执行根目录：
  - `rpki/target/replay/<timestamp>/`
- 每个 RIR 子目录下：
  - `<rir>_snapshot.ccr`
  - `<rir>_delta.ccr`
  - `<rir>_*_report.json`
  - `<rir>_*_ccr_vrps.csv`
  - `<rir>_*_ccr_compare_summary.md`
  - `<rir>_*_ccr_verify.json`
- 同次执行总汇总：
  - `multi_rir_ccr_replay_verify_<timestamp>_summary.md`
  - `multi_rir_ccr_replay_verify_<timestamp>_summary.json`
