- generate_and_store_diff decrypts old+new snapshots, produces unified diff - Stores diff in router_config_diffs with line counts - Best-effort: decrypt/DB errors logged, never raised - Prometheus metrics: generated_total, errors_total, duration_seconds Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>